* lily/note-spacing.cc (get_spacing): heighten threshold where
[lilypond.git] / ChangeLog
blob0a381b3fadfba65841da3dbfe2d2c332b5529426
1 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3         * lily/note-spacing.cc (get_spacing): heighten threshold where
4         accidentals/arpeggios influence previous spacing fully.
6         * lily/rest.cc (y_offset_callback): only use direction if
7         staff-position wasn't set before.
9         * lily/bar-number-engraver.cc: add support for
10         barNumberAlignSymbol. 
11         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
13         * lily/pointer-group-interface.cc (set_ordered): new function. 
14         (add_unordered_grob): new function.
16         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
17         to ordered, unless the opposite has been proved.  This fixes
18         random reordering of large object groups across linebreaks,
19         eg. beams.
21         * lily/main.cc (do_chroot_jail): printf format fix.
23         * lily/tie-formatting-problem.cc (generate_configuration):
24         multiply y-shift for dot with direction.
26         * scm/define-markup-commands.scm (note-by-number): put (magstep
27         size) in y-attach too.
29         * Documentation/topdocs/NEWS.tely (Top): show override.
31         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
32         direction for stems.
33         
34 2006-03-15  Graham Percival  <gpermus@gmail.com>
36         * Documentation/user/ changing-defaults, global: minor
37         fixes from mailist.
39 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
41         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
43         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
44         breakable items after uniformly stretched notes.
46         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
47         outline with outer edge of note heads. This prevents infinity
48         problems with tied whole notes.
50         * scripts/lilypond-book.py (do_file): use os.popen
52         * python/convertrules.py (conv): add rule for Stem #'beamed-*
54 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
56         * Documentation/user/invoking.itely: Add ragged-right to bug report
57         guidelines.
59 2006-03-14  Graham Percival  <gpermus@gmail.com>
61         * Documentation/user/global.itely: small fix from mailist.
63 2006-03-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
65         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
66         file descriptor returned by tempfile.mkstemp() when writing
67         to tmpfile and closing it. Solves problem with unlink(tmpfile)
68         on mingw.
70 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
72         * po/fi.po: newline bugfix.
74 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
76         * scm/paper.scm (paper-alist): Rounding fixes.
78 2006-03-13  Graham Percival  <gpermus@gmail.com>
80         * Documentation/user/ changing-defaults, instrument-notation,
81         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
83 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
85         * po/fi.po: update.
87 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
89         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
90         mailto: to http:// 
92         * python/lilylib.py (print_environment): move ps_page_count to
93         lilypond-book.py
95 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
97         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
99         * scm/framework-ps.scm (embed-document): new function. Use to
100         embed PFA files.
102         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
104 2006-03-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
106         * Documentation/user/instrument-notation.itely (Setting simple
107         songs): Added \book{...} around the full example, so the separate
108         markups are included in the printed example. 
110 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
112         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
113         tmphandle.
115         * python/lilylib.py (system): rewrite system() using
116         subprocess. Remove >& redirection trickery.
118 2006-03-11  Graham Percival  <gpermus@gmail.com>
120         * Documentation/user/ changing-defaults, global, scheme-tutorial,
121         notation-appendices.itely: minor fixes from mailist.
123 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
125         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
126         unsplit man also needs images.
128         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
130         * VERSION (PACKAGE_NAME): 2.7.38 released.
132 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
134         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
135         log in output dir.
137 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
139         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
140         respects the Score.skipTypesetting property.
141         
142 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
144         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
145         Prolog. No %%EOF after CFF file.
147 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
148         
149         * lily/constrained-breaking.cc (get_max_systems): used to return a
150         much too big value
151         (combine_demerits): use pointers to reduce copying data
152         (calc_subproblem): idem
153         (get_page_penalty): add page turn penalties
154         
155 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
157         * Documentation/user/invoking.itely (Invoking lilypond): better
158         explanation of -e usage.
160         * lily/main.cc (main_with_guile): don't append to
161         init_scheme_code_string
163         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
165         * Documentation/user/invoking.itely: add note about MacOS X scripts.
167         * scripts/convert-ly.py (do_options): don't print help for
168         --show-rules rule.
170         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
171         @code and @example. Update from texinfo.tex from CVS.
173 2006-03-08  Graham Percival  <gpermus@gmail.com>
175         * Documentation/user/scheme-tutorial.itely: clarifies distances
176         measured in staff-spaces.
178 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
180         * lily/slur.cc (outside_slur_callback): only calculate offsets if
181         consider[k] is true.
183         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
185         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
186         consider columns that have originals.  Unifies spacing for mm
187         rests around line breaks.
189         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
190         (set_text_rods): idem.
191         (calculate_spacing_rods): new function: share code between
192         set_text_rods and set_spacing_rods.
193         (set_text_rods): take extents of bounds into account.  
195 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
197         * Documentation/user/basic-notation.itely (Writing music in
198         parallel): don't use relative.
200 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
202         * ly/music-functions-init.ly (Module): add shiftDurations
204         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
206         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
208         * ly/engraver-init.ly: init vocalName to nil.
210 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
212         * scm/music-functions.scm (music->make-music): bugfix,
213         KeyChangeEvents are now handled correctly.
215         * scripts/lilypond-book.py: Add --debug option.
217 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
219         * python/lilylib.py: add tempfile.
221 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
223         * VERSION (PACKAGE_NAME): release 2.7.37
225         * python/lilylib.py (ps_page_count): remove make_ps_images().
226         (ps_page_count): remove mkdir_p
227         (system): remove cleanup_temp.
228         (exit): remove lilypond_version_(check)
229         (error_log): remove pseudo_filter_p
230         remove read_pipe
231         remove cp_to_dir
232         remove identify
234         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
235         use __main__
237         * lily/accidental-engraver.cc (make_standard_accidental): only add
238         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
240         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
241         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
242         Make incompatibilities.
244         * scm/output-ps.scm (grob-cause): replace backslashes by /
245         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
247 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
249         * cygwin/GNUmakefile: Install fixes.
251         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
253         * lily/note-head.cc (head::get_balltype): Compile fix.
255         * flower/file-name.cc (dos_to_posix): Flower string fix.
257 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
259         * python/lilylib.py: pychecker cleanups.
261         * scripts/lilypond-book.py
262         (Lilypond_snippet.output_print_filename): pychecker cleanups
264         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
266         * python/lilylib.py (underscore): remove identify() , warranty()
268         * ps/music-drawing-routines.ps: change Border routine for GSView
269         compatibility.
271         * lily/stem.cc (height): use quantize-positions.  This triggers
272         set_stem_lengths, so scripts on beamed stems are handled correctly.
274         * lily/side-position-interface.cc (aligned_side): check if edges
275         of script are inside staff. Fixes accent of edge of the staff.
277         * input/regression/staccato-pos.ly: more examples.
279         * stepmake/aclocal.m4 (depth): fix bashism.
281         * lily/lyric-combine-music-iterator.cc: move from
282         new-lyric-combine-iterator.cc
283         (process): add pending_grace_lyric_ member to delay lyrics on
284         grace notes.
286         * lily/system-start-text.cc (print): suicide if we don't have any
287         elements. Fixes hara kiri'd instrument names.
289         * scripts/mup2ly.py (Module): remove.
291 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
293         * Documentation/user/global.itely (A single music expression):
294         close @lilypond properly
296         * lily/volta-bracket.cc (modify_edge_height): change from
297         after_line_breaking_callback. Suicide last bracket if appropriate.
299         * python/lilylib.py: strip getopt support
301         * scripts/etf2ly.py (do_options): use optparse
303         * scripts/midi2ly.py: optparse, strip lilylib copy. 
305         * scripts/abc2ly.py (voices): use optparse.
307         * stepmake/stepmake/generic-vars.make: new function absdir.
309         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
311         * scripts/lilypond-book.py (find_file): use global_options for
312         include path
314         * scm/ps-to-png.scm (ps-page-count): prevent null characters
315         entering C code.
317 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
319         * python/lilylib.py (get_global_option): ughness for extracting
320         global options from lilylib.
321         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
323         * scripts/lilypond-book.py (get_option_parser): use optparse for
324         option handling.  Put options in global_options variable.
326 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
328         * Documentation/index.html.in: clarify.
330 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
332         * scm/layout-page-layout.scm (write-page-breaks): add a
333         music-system-heights property to the page layout output.
335         * scm/page.scm (make-page-stencil): take footer into account when
336         computing the 'space-left page property
337         (annotate-space-left): take footer into account when annonating
338         space left.
340 2006-02-28  Graham Percival  <gpermus@gmail.com>
342         * Documentation/user/ advanced-notation, global: more (final)
343         docs for music expressions, removed special fermatas.
345 2006-02-27  Graham Percival  <gpermus@gmail.com>
347         * Documentation/user/ basic-notation, global: minor changes
348         from mailist.
350 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
352         * scm/framework-ps.scm:         
353         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
354         layer for inf? and nan? from framework-ps to lily-library.
356 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
358         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
359         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
361         * buildscripts/substitute-encoding.py (Module): remove file.
363         * mf/GNUmakefile: more PFA strippage.
365         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
367         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
368         generation
370         * scm/framework-ps.scm: remove font name munging.
372         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
374 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
376         * scm/markup.scm (define-markup-command): change
377         def-markup-command to define-markup-command
379         * scm/music-functions.scm (define-music-function): change
380         def-music-function to define-music-function.
382         * python/convertrules.py (conv): rules for def-music-function
383         and def-markup-commands
385         * Documentation/user/programming-interface.itely,
386         input/no-notation/display-lily-tests.ly,
387         input/regression/lily-in-scheme.ly,
388         input/regression/markup-user.ly,
389         input/regression/music-function.ly, input/regression/tie-chord.ly,
390         scm/fret-diagrams.scm, ly/music-functions-init.ly,
391         ly/gregorian-init.ly: use new macro names (define-music-function,
392         define-markup-command).
394 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
396         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
397         (output): add comments to lp-book latex output.
399         * GNUmakefile.in (footifymail): use gmane address for webpage bug
400         address.
402 2006-02-23  Graham Percival  <gpermus@gmail.com>
404         * Documentation/user/ tutorial, global: minor changes.
406 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
408         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
409         blocks (for make 3.80)
411         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
412         \notemode so that user should not have to explicitely type it.
414         * scm/define-music-display-methods.scm: various
415         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
416         constructs)
418         * input/no-notation/display-lily-tests.ly: new tests for
419         \applyOutput and \applyContext
421 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
423         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
424         changed it slightly so that the number of systems returned by
425         solve () will be the same as the last value passed to resize
426         (). I've also added more documentation, removed casts, fixed style
427         problems and put in some recovery if constraints aren't satisfied."
429 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
431         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
432         for emacs < 22 compatibility.
433         (count-rexp): Use it.
434         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
435         substring juggling (Milan Zamazal).
437 2006-02-23  Graham Percival  <gpermus@gmail.com>
439         * Documentation/user/ basic-notation, advanced-notation,
440         global.itely, invoking.itely, tutorial,itely:
441         minor fixes from mailist.
443         * scm/define-markup-commands.scm: improve docs of \filled-box.
445 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
447         * Documentation/index.html.in: changes concern the previous release.
449         * input/regression/+.ly: cultivate typographical terminology.
451 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
453         * scm/define-grob-interfaces.scm (parentheses-interface): add
454         padding to parentheses-interface.
456         * Documentation/user/GNUmakefile: remove $(CROSS) support from
457         Documentation/user/GNUmakefile. Use --disable-documentation for that.
459         * VERSION (PATCH_LEVEL): release 2.7.36
461         * lily/slur.cc: add avoid-slur (ugh.)
462         
463         * lily/slur-configuration.cc (fit_factor): oops, skip point if
464         intersection gets smaller. This fixes slurs over extreme points.
466         * lily/melody-engraver.cc (stop_translation_timestep): ignore
467         stems with neutral-direction set.
469         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
471         * lily/open-type-font.cc (load_table): format error.
473         * lily/change-iterator.cc (process): format fix.
475         * flower/include/international.hh (_f): idem.
477         * flower/include/std-string.hh: add format printf attribute.
479         * scm/define-grobs.scm (all-grob-descriptions): height of all
480         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
482         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
483         ambitus lines.
485         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
487 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
489         * input/regression/: upgraded syntax for some files.
491         * THANKS: Add bughunters.
493 2006-02-22  Graham Percival  <gpermus@gmail.com>
495         * Documentation/user/ invoking.itely, advanced-notation.itely,
496         global.itely: long-awaited "let's make chapter 10 not suck"
497         update.  Rearrange chapter 10; now called "global issues",
498         addresses file structure, etc.  Some info from other files
499         moved into global.itely.
501 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
503         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
504         catch trill-span-event notes.
506         * Documentation/user/examples.itely (Ancient notation templates): typo.
507         (Jazz combo): typo.
509         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
511         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
513         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
515         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
517         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
518         froum Laissez_vibrer_engraver.
520         * ly/declarations-init.ly (repeatTie): add \repeatTie
522         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
524         * scm/define-grob-properties.scm (all-user-grob-properties): add
525         head-direction property.
527         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
528         from_lv_ties. Take head direction argument.
530         * lily/semi-tie-column.cc: rename from
531         laissez-vibrer-tie-column.cc. Rename class too.
533         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
534         class too.
536         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
538         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
539         0 case.
540         (find_breaks): idem.
542 2006-02-21  Graham Percival  <gpermus@gmail.com>
544         * Documentation/user/advanced-notation.itely: fixed make-moment]
545         example.
547         * Documentation/user/basic-notation.itely: more clarification to
548         transpose.
550 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
552         * lily/include/constrained-breaking.hh (class
553         Constrained_breaking): new file.
555         * lily/constrained-breaking.cc (resize): new file.
557         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
559         * Documentation/user/advanced-notation.itely (Clusters): insert
560         end ignore too.
562         * lily/tie-column.cc (calc_positioning_done): support for
563         tie-score debugging
565         * lily/tie-formatting-problem.cc
566         (generate_extremal_tie_variations): factor out.
567         (score_ties_configuration): annotate all tie 
568         (print_ties_configuration): new routine.
569         (generate_configuration): nudge extremal ties outside of the head
570         Y extents.
571         (score_ties_configuration): oops. convert to staff-space before
572         determining position symmetry.
574 2006-02-20  Graham Percival  <gpermus@gmail.com>
576         * Documentation/user/*-notation.itely: misc minor editing,
577         shifting doc sections around.
579         * Documentation/user/*-notation-itely, global.itely,
580         changing-defaults.itely: added new stuff from NEWS.
582 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
584         * po/fi.po: update.
586 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
588         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
589         lilypond --verbose for lp-book.
591         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
592         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
594         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
595         $(buildscript-dir) iso. absolute depth.
597         * buildscripts/genicon.py (dir): thinko.
599         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
601 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
603         * scm/output-lib.scm: swap darkcyan/darkyellow
605         * THANKS: Add bughunters.
607 2006-02-19  Graham Percival  <gpermus@gmail.com>
609         * Documentation/user/programming-interfaces.itely: fixed example.
611         * Documentation/user/instrument-notation.itely: fix @{ @}.
613         * scm/script.scm: add avoid-slur for \open.
615 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
617         * lily/tie-formatting-problem.cc (score_configuration): use
618         sliding score for min-length. 
620         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
621         spaghetti for icons.
623         * buildscripts/genicon.py (program_name): new file.
625         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
626         in outline too.  
627         (generate_configuration): for small ties, also look for collisions
628         at Y + DIR*h + DELTA_Y.
629         (get_variations): consider variation for dot positions too.
631         * lily/side-position-interface.cc (aligned_side): take abs for
632         quantized rounded position. Fixes tenuto below staff.
634         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
635         markers when necessary.
637         * lily/program-option.cc (internal_set_option): add
638         strict_infinity_checking option.
640         * scm/output-lib.scm (cyan): swap yellow and cyan.
642 2006-02-19  Graham Percival  <gpermus@gmail.com>
644         * darwin.patch: trivial linenumber update.
646         * Documentation/user/ {various}: `\context foo = named' changed
647         to `\new foo = "name"' in docs.
649 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
651         * scm/stencil.scm (annotate-y-interval): use it.
653         * scm/lily-library.scm (interval-sane?): new function.
655         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
656         tfm_checksum stuff.
658         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
659         common refpoint.
661         * flower/include/std-vector.hh (iterof): add iterof macro.
663         * lily/enclosing-bracket.cc (width): new function.
665         * lily/align-interface.cc (align_elements_to_extents): reinstate
666         warning.
668 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
670         * Documentation/index.html.in: fix spelling: thankyous.
672 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
674         * lily/lyric-hyphen.cc: typo.
676 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
678         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
679         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
680         builds don't work. 
682         * VERSION: release 2.7.35
684         * lily/beam.cc (get_default_dir): oops. Take abs () for
685         extremes[DOWN].
686         (get_default_dir): use extreme position criterion only in absence
687         of forced stem directions.
689         * VERSION (PATCH_LEVEL): bump VERSION.
691         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
692         dependencies. Necessary for -jX builds.  
694 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
696         * lily/relocate.cc (setup_paths): Yet another const fix.
698 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
700         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
702         * lily/relocate.cc (setup_paths): oops.
704 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
706         * Documentation/index.html.in: order links: html before PDF.
708 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
710         * lily/tie-column-format.cc (Module): remove.
712         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
714         * lily/text-spanner.cc (print): idem.
716         * lily/dynamic-text-spanner.cc (print): only print line if longer
717         than dash-period.
719         * lily/auto-change-iterator.cc (change_to): formatting.
721         * lily/beam.cc (get_default_dir): take extreme note head as input
722         for stem direction.
724         * lily/tie.cc (get_default_dir): only look directions for visible
725         stems. 
727         * lily/side-position-interface.cc (aligned_side): oops. Don't
728         mutiply with direction. This fixes quantized (staccato, tenuto)
729         scripts below notes.
731         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
732         direction. Fixes c-lyrics-center-align.ly
734 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
736         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
737         constructor.
739         * lily/std-string.cc:
740         * lily/include/std-vector.hh (split_string): Move and rename from
741         lily/include/misc.hh, lily/misc.cc.  Update callers.
743 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
745         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
747 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
749         * flower/test-file.cc: New file.
751         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
752         libraries.
754         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
756 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
758         * flower/include/file-storage.hh: remove file.
760         * lily/include/midi-item.hh (class Midi_track): idem.
762         * lily/include/source.hh (class Sources): idem.
764         * lily/include/performance.hh (class Performance): use vector
765         iso. Cons<>
767         * flower/include/cons.hh (class Cons): remove file.
769         * flower/include/flower-proto.hh: remove template cruft.
771         * lily/include/font-metric.hh: use size_t not vsize for indices.
773         * flower/include/flower-proto.hh (Module): remove std-vector.hh
774         from proto.
776         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
778         * lily/include/paper-book.hh (class Paper_book):
779         make get_system_specs() public.
781         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
782         the force=10000 case if we don't have a current-best. 
784         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
785         vsize 
787         * flower/include/flower-proto.hh: remove outdated templates.
789         * scm/page.scm: use annotate-spacing
791 2006-02-15  Graham Percival  <gpermus@gmail.com>
793         * scm/translation-functions.scm: circle patch from Erlend, thanks!
795         * THANKS: moved Erlend Aasland to contributors.
797 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
799         * config.hh.in: remove HAVE_PANGO_16
801         * lily/tuplet-bracket.cc (calc_positions): multiply with
802         staff-space for beam case. This fixes tuplets+beams on scaled
803         staves.
805         * config.hh.in: remove all Kpathsea related defines.
807         * lily/dot-column.cc (side_position): reach stem via dots->
808         head->stem. Inspect all stems for dot collisions. 
810         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
811         stem handling.
813         * lily/bar-number-engraver.cc (process_music): document function
814         of whichBar.
816         * lily/score.cc (default_rendering): add pscore, not systems
817         themselves.
819         * lily/paper-book.cc (get_system_specs): separate generation of
820         titles and systems.
822         * flower/include/std-vector.hh: don't include config.hh
824 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
826         * flower/include/std-vector.hh: Better wrapper compatibility with
827         std::vector.
829         * flower/include/flower-proto.hh: Remove cheap forward declaration
830         attempts.
832         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
834 2006-02-14  Graham Percival  <gpermus@gmail.com>
836         * Documentation/user/invoking.itely: add warning about command line.
838 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
840         * lily/include/lily-proto.hh: add Prob, rm Page.
842         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
844         * VERSION: release 2.7.34
846         * lily/relocate.cc (framework_relocation): show canary if
847         GHOSTSCRIPT_VERSION undefined.
849         * GNUmakefile.in: remove $(VERSION) symlink.
851         * lily/relocate.cc (setup_paths): add + 
853 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
855         * Documentation/index.html.in: specify sizes for all big HTML pages.
857 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
859         * config.hh.in: remove @FRAMEWORKDIR@
861         * lily/system-start-text.cc (get_stencil): new file: separate out
862         system-start-delimiter text support.
864         * input/**ly: replace \context with \new where appropriate.
865         
866         * THANKS: add Don.
868         * lily/slur-scoring.cc (get_base_attachments): use
869         robust_relative_extent. This fixes problems with empty paper-columns. 
871 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
873         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
875         * scm/define-music-properties.scm (all-music-properties):
876         create-new property.
878         * lily/context-specced-music-iterator.cc (construct_children):
879         inspect 'create-new property iso. magical $uniqueContextId context
880         id.
882         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
884         * lily/context-key-manager.cc (Module): new file. Encapsulate
885         object key generation.
887         * lily/include/context-key-manager.hh (Module): new file.
889 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
891         * scm/define-grobs.scm (all-grob-descriptions): center instrument
892         names vertically
894         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
895         options.
896         (reloc_b): excise --enable-framework-dir
898         * lily/relocate.cc (framework_relocation): use getenv
899         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
901 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
903         * flower/include/std-string.hh: 
904         * flower/include/std-vector.hh: Finish std:: conversion; move
905         flower extensions from std:: namespace.  Update users.
907         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
908         their expansion to vector<*>.  Update users.
910 2006-02-10  Graham Percival  <gpermus@gmail.com>
912         * Documentation/user/invoking.itely: add example to File structure.
914         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
915         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
917 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
919         * ly/paper-defaults.ly: typo.
921         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
922         set_parent() for parentheses. This will make it show up in bbox
923         calculations.
925         * scm/output-lib.scm (parentheses-item::print): rewrite, using
926         ly:grob-common* functions.
928         * lily/grob-scheme.cc (LY_DEFINE):
929         ly:grob-common-refpoint-of-array: new function 
930         ly:grob-common-refpoint: new function 
931         ly:grob-relative-coordinate: new function 
933         * lily/instrument-name-engraver.cc (process_music): use
934         Text_interface::is_markup(). This fixes \markup on instrument names.  
936         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
937         for ties and slurs.
939         * lily/slur.cc (print): idem.
941         * lily/tie.cc: add line-thickness for ties. 
943 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
945         * scm/output-svg.scm: Document diversion from GNU coding standards
946         as a workaround for a bug in Microsoft Internet Explorer.
948 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
950         * lily/instrument-name-engraver.cc (process_music): use
951         is_markup() iso. is_string()
953         * Documentation/user/changing-defaults.itely (Module): add menu entry.
955         * lily/percent-repeat-engraver.cc (process_music): only look at
956         main_part_ for % repeats.
958         * lily/stem-tremolo.cc (get_beam_translation): new function.
959         (calc_slope): new function.
960         (height): don't use real slope.
962 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
964         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
965         new connect-to-neighbor, control-points and staff-padding
966         properties to make ligature brackets showing up again.
968 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
970         * VERSION: release 2.7.33
972         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
973         too many.
975         * Documentation/user/changing-defaults.itely (Difficult tweaks):
976         remove applyOutput example.
977         (Objects connected to the input): document \tweak, \parenthesize
979         * lily/relocate.cc (prefix_relocation): allow "current"
980         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
981         changing VERSION in a lily tree less painful.
983         * input/regression/parenthesize.ly: new file. 
985         * scm/output-lib.scm (parenthesize-element): new function.
987         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
989         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
991         * lily/accidental-engraver.cc (make_standard_accidental): reroute
992         cause: accidentals are caused by note heads, not note events. 
994 2006-02-08  Graham Percival  <gpermus@gmail.com>
996         * darwin.patch: small patch from Erlend, thanks!
998         * Documentation/user/basic-notation.itely: add stem-neutral example.
1000         * Documentation/user/putting.itely: clarifications.
1002 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1004         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
1005         note, add more guidelines to what should go into NEWS.
1007         * input/sakura-sakura.ly: document how to override font.
1009         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
1011 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1013         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
1015 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1017         * scripts/convert-ly.py (lilypond_version_re_str): Move from
1018         convertrules.  Add explicit grouping, needed for python2.2.
1020 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1022         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
1024 2006-02-07  Graham Percival  <gpermus@gmail.com>
1026         * Documentation/user/global.itely: fix line-width in (text) docs.
1028         * Documentation/user/lilypond-book.itely: same.
1030 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1032         * VERSION (PACKAGE_NAME): release 2.7.32
1034         * Documentation/topdocs/NEWS.tely (Top): document new variable
1035         naming.
1037         * flower/include/array.icc (Message): remove file.
1039         * flower/include/std-vector.hh: make sure vsize and VPOS are
1040         defined for binary_search_bounds().
1042         * flower/std-string.cc (std): add to_string(long unsigned).
1044         * configure.in (gui_b): excise std_string option.
1045         (gui_b): excise std_vector option.
1047         * flower/string.cc (Module): excise flower array & string
1049         * flower/include/std-string.hh: excise flower string.
1051         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
1053         * python/convertrules.py (lilypond_version_re_str): require
1054         only numbers and dots in \version string.
1056 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1058         * lily/system-start-delimiter.cc (print): allow style = text too.
1060         * lily/system-start-delimiter-engraver.cc
1061         (acknowledge_system_start_text): new function, also add add to
1062         support of system-start-text (instrument names). This fixes
1063         instrument names on piano staves.
1065         * lily/instrument-name-engraver.cc: rewrite. Use
1066         system-start-delimiter approach. This save memory and cpu.
1068         * scm/define-grobs.scm (all-grob-descriptions): remove
1069         instrument-name from break-alignment.
1071         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
1073 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1075         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
1076         jobserver going.
1078         * configure.in (std_vector): On by default.
1080         * lily/include/font-metric.hh:
1081         * lily/include/tfm-reader.hh: 
1082         * lily/include/spanner.hh: Use unsigned for indices and sizes.
1083         Update users.
1085         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
1087 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1089         * VERSION (PACKAGE_NAME): 2.7.31
1091         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
1092         EPS edge at 0, but take minimum with left-overshoot. This fixes
1093         cut off system start delims. 
1095         * lily/instrument-name-engraver.cc (stop_translation_timestep):
1096         hack: add to axis group if not added yet. This fixes hara kiri'd
1097         piano staves.
1099         * lily/hara-kiri-group-spanner.cc
1100         (force_hara_kiri_in_y_parent_callback): fix signatures.
1102         * lily/hairpin.cc (print): check next hairpin to see whether or
1103         not to be continuing.
1105 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1107         * Remove trailing whitespace from makefiles.
1108         
1109         * flower/include/std-vector.hh: Add binary_search_bounds workaround
1110         for earlier gcc.
1112         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
1114         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
1116         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
1118         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
1120         * configure.in: Use it.
1122 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1124         * scm/music-functions.scm (pitch-of-note): new function.
1126         * ly/music-functions-init.ly: add \octave and \addquote
1128         * lily/parser.yy (music_function_chord_body): softcode \octave.
1129         (lilypond_header): softcode \addquote
1131 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1133         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
1134         array.hh, parray.hh at all.  Getting ready to flip the
1135         configure default.
1137         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
1139         * lily/source-file.cc (file::get_line): Help binary_search_bounds
1140         a bit.
1142         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
1144 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1146         * flower/include/array.hh: typo. 
1148 2006-02-02  Graham Percival  <gpermus@gmail.com>
1150         * Documentation/user/advanced-notation.itely: doc "\#" in text.
1152 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1154         * flower/include/pqueue.hh: Derive from std::vector.
1156         * flower/include/parray.hh: Conform to std::vector interface.
1157         Update users.
1159 2006-02-02  Graham Percival  <gpermus@gmail.com>
1161         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
1163 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1165         * flower/file-path.cc (is_file): remove if 0 section.
1167         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
1168         selecting afii61352.
1170 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1172         * flower/include/std-vector.hh (boundary): Oops, reverse.
1174         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
1175         remove superfluous `d'.
1177         * flower/include/std-vector.hh (boundary, top): Detach from class.
1178         Remove empty vector shell.
1180         * flower/include/array.hh (reverse, swap): Detach from class.
1181         Update users.
1182         
1183         * flower/include/std-vector.hh
1184         * flower/include/array.hh (concat): Globally change to insert ().
1186         
1187         * flower/include/std-vector.hh
1188         * flower/include/parray.hh
1189         * flower/include/array.hh (elem, elem_ref): Globally replace by
1190         at ().
1192 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1194         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
1196         * python/convertrules.py (FatalConversionError.sub_cxx_id):
1197         anticipate on identifier substitutions.
1199 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1201         * flower/include/std-vector.hh (insert): Remove, replace by
1202         std::vector interface.  Update callers.
1204         * flower/include/array.icc (insert): Change signature to
1205         match std::vector interface.
1206         
1207         * flower/include/array.icc (vector_sort): Bugfix.
1209 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1211         * lily/parser.yy (output_def_head_with_mode_switch): new
1212         production. Result: dashes and underscores may be used in the
1213         \paper block.
1215         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
1217         * python/convertrules.py (conv): oops. One slash too much.
1219 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1221         * flower/include/std-vector.hh (sort): Remove, replace by
1222         ::vector_sort.  Update callers.
1224         * flower/include/std-vector.hh (slice): Remove.  Update callers.
1225         (sort): Bugfix.
1227         * flower/test-std.cc (vector_sort): New test.
1229 2006-02-01  Graham Percival  <gpermus@gmail.com>
1231         * Documentation/user/putting.itely: fixes from Erik.
1233 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1235         * flower/test-std.cc: Add simple unit test for vector migration.
1237         * stepmake/stepmake/test*: Unit test support.
1239         * flower/include/std-vector.hh (del): Remove.  Use erase (),
1240         update callers.
1242         * flower/include/array.hh (begin, end): Add.
1243         (del, get): Remove.
1245 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1247         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
1248         std::string not String. 
1250         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
1251         iso UINT_MAX.
1253         * lily/prob.cc (Prob): copy type_ too.
1255         * lily/lily-guile.cc (mangle_cxx_identifier): new
1256         function. Class_bla::foo_bar_[px] ->
1257         ly:class-bla::foo-bar[?!]. Changes throughout
1259 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1261         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
1263         * lily/beam.cc (calc_direction): take dir from visible stem in
1264         degenerate case.
1266 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1268         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
1269         Fix -1, >=0 boundary checks for unsigned vsize.
1271         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
1272         loop for unsigned vsize.
1274         * configure.in (--enable-std-vector): New option.
1275         (--enable-std-string): On by default.
1277         * flower/include/std-vector.hh: New file.  Enable switch to
1278         std::vector, update client code.
1280 2006-01-30  Graham Percival  <gpermus@gmail.com>
1282         * scm/document-translation.scm: clarify "this context is also
1283         known as".  Thanks, Werner!
1285         * Documentation/user/putting.itely: small fixes from Don Blaheta.
1287         * Documentation/user/invoking.itely: small fix from Don.
1289 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1291         * scm/lily.scm (define-scheme-options): rename option
1292         preview-include-book-title to book-title-preview
1293         (define-scheme-options): move force-eps-font-include (from paper
1294         block) to eps-font-include -d option.
1296         * VERSION (PATCH_LEVEL): release 2.7.30
1298         * input/bach-schenker.ly (staffPiano): new file.
1300         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
1302         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
1303         credits to Nicolas.
1305         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
1307         * ps/lilyponddefs.ps: remove start-system, stop-system,
1308         start-page fluff. This saves putting { } code on the stack, fixing
1309         stack overflows when including EPS files.
1311 2006-01-29  Graham Percival  <gpermus@gmail.com>
1313         * Documentation/user/putting.itely: minor fixes (comments on -devel).
1315 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1317         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
1319 2006-01-28  Graham Percival  <gpermus@gmail.com>
1321         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
1323 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1325         * input/mutopia/claop.py: Update.
1327 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1329         * input/regression/completion-heads.ly (texidoc): fix.
1331         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
1333         * lily/tie-formatting-problem.cc
1334         (set_ties_config_standard_directions): use abs iso fabs for ints.
1336         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
1338         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
1339         little less than noteheight, to prevent overlaps in chords.
1341         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
1342         head, and fudge stem-attachment.
1344         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
1346         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
1348 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1350         * lily/main.cc (main): Debugging aid: catch exceptions.
1352         * flower/std-string.cc (to_string): Robustification.  Fixes midi
1353         output with std::string.
1355 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1357         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
1359 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1361         * Fix -DSTRING_UTILS_INLINED.
1363 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1365         * VERSION (PATCH_LEVEL): release 2.7.29
1367         * lily/relocate.cc (setup_paths): mingw uses std string too.
1369         * lily/*.cc: various fixes for substr(ARG).
1371         * lily/sustain-pedal.cc (print): 
1373         * flower/file-name.cc (slashify): use std strings.
1375         * flower/string-convert.cc: remove publib.h
1377         * scm/define-markup-commands.scm (verbatim-file): new markup
1378         command \verbatim-file
1380         * Documentation/topdocs/NEWS.tely: fixup URLs
1382         * input/regression/alignment-vertical-manual-setting.ly (Module):
1383         new file.
1385         * lily/align-interface.cc (align_elements_to_extents): overwrite
1386         translations with numbers in alignment-offsets from left bound
1388         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
1389         (page-translate-systems): new function: take into account Y-offset.
1391         * Documentation/topdocs/NEWS.tely (Top): document new features.
1393         * input/regression/page-layout-manual-position.ly (Module): new
1394         file.
1396 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1398         * flower/file-path.cc (path::parse_path): Oops.
1400         * Finish std::string interface.  For now, use std:: marker
1401         throughout for easy s/r.
1403 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1405         * Documentation/user/putting.itely (Score is a single musical
1406         expression): typo.
1407         (Score is a single musical expression): more typos.
1409         * scm/page.scm (annotate-space-left): thinko.
1410         (annotate-page): more thinkos.
1412 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1414         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
1415         for different \score blocks separately.
1416         (post-process-pages): put write-page-layout into paper block.
1418         * lily/output-def.cc (get_parser): new file.
1420         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
1421         file.
1423         * lily/include/output-def.hh (class Output_def): add parser_ member.
1425         * input/regression/page-layout-twopass.ly (Module): new file.
1427         * scm/lily.scm: remove cpp hack.
1429         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
1431 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1433         * GNUmakefile.in (c-clean): New target.
1435         * flower/include/std-string.hh: String/std::string compatibility:
1436         Use NPOS for `not found' (iso -1), use ssize for length () and pos
1437         type.
1439         * flower/rational.cc: 
1440         * flower/include/rational.hh: 
1442         * flower/offset.cc: 
1443         * flower/include/offset.hh: 
1445         * flower/interval.cc: 
1446         * flower/include/interval.hh: 
1448         * flower/string-convert.cc: 
1449         * flower/include/string-convert.hh: Use std::string [interface].
1450         Update callers.
1452 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
1454         * Documentation/index.html.in: clean up.
1456 2006-01-25  Graham Percival  <gpermus@gmail.com>
1458         * Documentation/user/putting.itely: another new untested doc section.
1460 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1462         * scm/layout-page-layout.scm (write-page-breaks): write
1463         \spacingTweaks #ALIST. Handle grace timing.
1465         * scm/: more imports.
1467         * scm/page.scm (make-page): add footer/header.
1468         (annotate-space-left): revise: only take page argument.
1469         (layout->page-init): new function.
1471         * scm/layout-page-layout.scm (write-page-breaks): preliminary
1472         version of the system/spacing/linebreak hack writing to the output
1474         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
1475         ly:make-prob.
1477         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
1478         ly:spanner-bound
1480 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1482         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
1484         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
1486         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
1487         handling to page.scm
1489         * lily/prob-scheme.cc (LY_DEFINE): new file.
1490         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
1492         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
1493         prob functions.
1495         * lily/music.cc (derived_mark): derive Music from Prob.
1497         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
1499         * lily/prob.cc (Module): Implement Prob (Property Object), object
1500         with shared and r/w property alists.  
1502         * lily/include/prob.hh (Module): new file. Declare Prob.
1504         * flower/string.cc: remove is_empty().
1506         * flower/include/string.hh (class String): remove String:: qualifier.
1508         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
1509         substitute appropriate functions.
1511         * flower/include/string.hh (class String): remove to_str0 and
1512         is_empty(). S&R everywhere.
1514 2006-01-23  Graham Percival  <gpermus@gmail.com>
1516         * Documentation/user/basic-notation.itely: add hairpin
1517         after-linebreak tweak to commonprop.
1519         * Documentation/user/putting.itely: added two new sections.
1521 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1523         * flower/international.cc: 
1524         * flower/include/international.hh: 
1526         * flower/getopt-long.cc: 
1527         * flower/include/getopt-long.hh: Use std::string [interface].
1528         Update callers.
1530         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
1532         * stepmake/stepmake/executable-rules.make: Add dependency on
1533         module libraries.
1535 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1537         * flower/file-path.cc: 
1538         * flower/include/file-path.hh: Use std::string [interface].
1539         Update callers.
1541         * flower/direction.cc: 
1542         * flower/axis.cc: Unused.  Remove.
1544         * configure.in (--enable-std-string): New option.
1546         * flower/std-string.cc: 
1547         * flower/include/std-string.hh: New file.
1549         * flower/file-name.cc[STD_STRING]:
1550         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
1552 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1554         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
1556         * scm/define-markup-commands.scm (with-dimensions):
1557         with-dimensions markup command.
1559         * input/test/font-table.ly: use it.
1561         * lily/open-type-font.cc (glyph_list): new function.
1563         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
1565         * lily/ttf.cc: remove ly:font-glyph-list scheme function
1567 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1569         * ly/music-functions-init.ly (parallelMusic): new music function
1570         for parallel music entry.
1572         * scm/define-music-properties.scm (all-music-properties): new
1573         'void music property
1575         * scm/music-functions.scm (ly:music-message): make public, to be
1576         used in music function definitions
1578         * scm/lily-library.scm (collect-music-for-book): discard music
1579         when the 'void property is set.
1581 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1583         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
1585         * mf/GNUmakefile: idem.
1587         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
1589         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
1591         * Documentation/user/notation-appendices.itely (The Feta font):
1592         use it.
1594         * input/test/font-table.ly: new file. Generate font table within lily.
1596         * Documentation/user/notation-appendices.itely (The Feta font):
1597         use new font-table.ly file. 
1599         * stepmake/stepmake/install-out-targets.make
1600         (local-install-outfiles): only create directory if
1601         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
1603 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1605         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
1607         * VERSION (PACKAGE_NAME): release 2.7.28
1609         * scm/framework-ps.scm (write-preamble): use it to pick exactly
1610         the right font from a Mac dfont.
1611         (write-preamble): don't forget directory, only look at files.
1613         This fixes problems with TTF files in dfonts that don't match
1614         their PostScript names.
1615          
1616         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
1617         PS name from TTF font.
1619         * input/regression/tie-manual.ly: document new feature.
1621         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
1623         * VERSION (MY_PATCH_LEVEL): bump to .28
1625         * Documentation/user/basic-notation.itely (Ties): add tie examples
1626         refs.
1628         * lily/tie-formatting-problem.cc (score_ties_configuration):
1629         symmetry penalties for outer ties.
1631 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1633         * lily/tie-formatting-problem.cc (generate_configuration) 
1634         (set_manual_tie_configuration): skip non-pair manual
1635         tie-configuration, so you can set individual ties as
1637           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
1639         * input/regression/tie-chord.ly: use generateTiePattern to
1640         simplify file.
1642         * lily/tie-formatting-problem.cc (peak_around): new function.
1643         (score_configuration): use sliding criterion for staff line collisions. 
1644         (score_configuration): idem for dot collisions.
1645         (generate_configuration): use separate stem_gap for gap to stem.
1647         * lily/include/tie-formatting-problem.hh (struct Tie_details):
1648         separate penalty factors for x and y distance.
1649         (struct Tie_details): separate penalties for tip and center line collisions.
1651 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
1653         * lily/tie-formatting-problem.cc (generate_configuration): make
1654         large ties avoid stafflines in the horizontal section.
1655         (score_configuration): use softcoded penalties
1656         (score_aptitude): idem.
1658         * lily/tie-helper.cc (from_grob): softcode tie details
1660         * lily/staff-symbol-referencer.cc (on_staff_line): new function
1662         * lily/staff-symbol-referencer.cc (on_line): rename from
1663         on_staffline 
1665 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1667         * ly/music-functions-init.ly: remove duplicate tag.
1669         * lily/include/*.hh: GCC 4.1 fixes.
1671 006-01-16  Erlend Aasland  <erlenda@gmail.com>
1673         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
1675         * scm/define-music-types.scm: fix bug in desc. string
1676         for OverrideProperty
1678 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
1680         * scripts/lilypond-book.py: bugfix
1682         * scm/define-music-types.scm: fix typos.
1684 2006-01-14  Graham Percival  <gpermus@gmail.com>
1686         * Documentation/user/ basic-notation.itely, global.itely,
1687         advanced-notation.itely, instrument-notation.itely: small
1688         additions (bugs and commonly tweaked properties).
1690 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1692         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
1693         detection of mingw build.
1694         (MINGW_BUILD): opps.
1696 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1698         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
1699         i686-mingw32.
1701 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1703         * scm/music-functions.scm (skip->rest): add skip->rest
1705 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1707         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
1708         explicitly.
1710         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
1711         config dirs. Aids debugging. 
1712         (display_config): also display config files.
1714 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1716         * VERSION: release 2.7.27
1718         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
1719         for determining bar size.
1721         * lily/staff-symbol.cc (print): place lines at distance line-positions
1723         * scm/define-grob-properties.scm (all-user-grob-properties): add
1724         line-positions.
1726         * lily/staff-symbol.cc (height): new function.
1728         * input/regression/staff-line-positions.ly:  new file.
1730 2006-01-06  Graham Percival  <gpermus@gmail.com>
1732         * input/test/add-staccato.ly: remove reference to old file.
1734 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1736         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
1737         lilypond binary too.
1739 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1741         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
1743 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1745         * scripts/midi2ly.py: Bugfix: Declare datadir.
1747         * make/ly-rules.make:
1748         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
1749         that seems to be gone). Fixes make web.
1751         * The grand 2005-2006 replace.
1753         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
1755 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1757         * make/lilypond-vars.make: set LILYPOND_BINARY variable
1758         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
1759         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
1760         like -dgs-font-load.
1762         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
1763         remove absolute path to lilypond binary.
1764         
1765 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
1767         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
1769 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1771         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
1773         * mf/GNUmakefile: remove broken dvips map symlink.
1775 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1777         * lily/main.cc: 
1778         * configure.in: Cosmetic fixes.
1780 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1782         * Documentation/user/music-glossary.tely (Pitch names): Added
1783         Spanish pitch names and durations, thanks to Ernesto Gancedo
1785 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1787         * scm/lily.scm (define-scheme-options): use quasi-quote for option
1788         init. Fixes verbose printing of .scm files.
1790         * stepmake/aclocal.m4: add spaces before - options.
1791         
1792 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1794         * lily/relocate.cc (setup_paths): Bugfix: do not store result
1795         of path search in local block variable.
1797 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1799         * configure.in (NCSB_DIR): --enable-ncsb-dir
1800         (LINK_GXX_STATICALLY): denko.
1802         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
1804         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
1805         use locate to find c059033l.pfb. 
1806         
1807 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1809         * lily/tie-formatting-problem.cc
1810         (problem::generate_base_chord_configuration): Use my_round (was
1811         round).
1813         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
1814         do not invoke mbrtowc.
1816         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
1818 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1820         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
1822 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
1824         * Documentation/user/invoking.itely (svg): revise.
1826 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1828         * lily/lexer.ll: use sourcefilename iso. renameinput.
1830 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1832         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
1833         <PostScriptName>.ttf instead of c059XXXttf.
1835         * lily/program-option.cc (LY_DEFINE): special support for
1836         --verbose, so it works before option init too.
1838         * mf/GNUmakefile (local-install): oops.
1840         * lily/lyric-hyphen.cc (print): oops.
1842         * buildscripts/pfx2ttf.fontforge: new file.
1843         
1844         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
1845         ($(outdir)/%.ttf): new rule. 
1847         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
1848         to LyricHyphen.
1850         * lily/lyric-hyphen.cc (print): multiply hyphen height by
1851         font-size
1853 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1855         * VERSION: release 2.7.26
1856         
1857         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
1859 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1861         * lily/font-config.cc (init_fontconfig): verbosity.
1863         * THANKS: add Muziekacademie Lede. 
1865         * scripts/musicxml2ly.py (print_voice_definitions): new function 
1866         (print_score_setup): new function
1867         (convert): read part definition to output staves properly.
1869         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
1870         Music_xml notes.
1872         * python/musicexp.py (Output_printer.__init__): use _ in data
1873         members.
1874         (Output_printer.unformatted_output): new function: no formatting,
1875         but count braces.
1876         (Duration.get_length): remove isinstance() checks for
1877         Output_printer everywhere.
1879         * input/regression/lyrics-bar.ly (texidoc): add
1880         Separating_line_group_engraver.
1882 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1884         * lily/relocate.cc (framework_relocation): New function,
1885         factored from set_relocation ().
1886         (prefix_relocation): Rename from set_relocation ().
1887         (setup_paths): Use it.
1889 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1891         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
1892         numbers. Patch by Erlend Aasland.
1894 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1896         * lily/font-config.cc (init_fontconfig): print warning if cache
1897         file is not existant.
1899         * lily/main.cc: don't use #ifdef but #if
1901 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1903         * lily/grob-property.cc (internal_set_property): don't abort on
1904         calculation-in-progress.
1906         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
1908         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
1909         connect-to-neighbor property not connect-to-other
1911         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
1912         (LY_DEFINE): oops. don't forget protection.
1914         * flower/parse-afm.cc (Module): strip AFM handling completely.
1916         * lily/stencil-expression.cc: idem.
1918         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
1920         * lily/function-documentation.cc (ly_add_function_documentation):
1921         use static member iso. Protected_scm
1923         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
1925         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
1927 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1929         * lily/relocate.cc (set_env_dir): New function.
1930         (set_relocation): Use it to fix setting PANGO_PREFIX.
1932 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1934         * input/regression/stem-direction-context.ly: remove rest.
1936         * lily/melody-engraver.cc (process_music): restart for bar lines.
1937         (acknowledge_slur): restart for slurs.
1939 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
1941         * Documentation/user/invoking.itely: describe how to view SVG 
1942         output using Inkscape which replace embedded fonts with OTF fonts.
1944 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1946         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
1948 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1950         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
1951         comment.
1953 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1955         * VERSION (PACKAGE_NAME): release 2.7.25
1957         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1959         * input/regression/stem-direction-context.ly: new file.
1961         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
1963         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
1964         on rest.
1966         * ly/engraver-init.ly: add Melody_engraver
1968         * lily/beam.cc (calc_direction): use default-direction
1969         iso. get_default_direction()
1971         * scm/define-grob-properties.scm (all-user-grob-properties): add
1972         default-direction property.
1974         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
1976         * lily/stem.cc (calc_default_direction): remove
1977         Stem::get_default_direction, use default-direction with callback
1978         instead.
1980         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
1982         * lily/melody-engraver.cc: new file. Acknowledge stems for
1983         interpolated stem directions. 
1985         * lily/melody-spanner.cc: new file. Interpolate stem directions.
1987         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
1989         * lily/slur-configuration.cc (fit_factor): more robust check for
1990         point in curve X-extent.
1992         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
1993         (outside_slur_callback): check for 'outside avoidance.
1995         * lily/slur-configuration.cc (score_extra_encompass): don't use
1996         bound->column() == avoid->column() for checking extents, as this
1997         doesn't work for accidentals. 
1999         * lily/slur-engraver.cc (acknowledge_extra_object): remove
2000         DynamicText hardcoding.
2002         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
2003         crash if bound stem is NULL
2005         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
2006         pedals.
2008 2005-12-22  Graham Percival  <gpermus@gmail.com>
2010         * scm/define-markup-commands.scm: typo.  @code{\raise}
2011         => @code{\\raise}.
2013         * darwin.patch: now used again, includes a
2014         required patch from fink.
2016 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
2018         * po/TODO: mention gtranslator along with kbabel.
2019         * po/fi.po: update translations.
2021 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2023         * lily/relocate.cc (setup_paths): Bugfix.
2025 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2027         * lily/slur-configuration.cc (score_extra_encompass): don't use
2028         "avoid" choice for avoid-slur.
2030         * stepmake/bin/install.py (dest): don't create existing dir.
2032 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2034         * stepmake/bin/install.py: Remove file before copying.
2036         * config.make.in: 
2037         * stepmake/aclocal.m4: Do not substitute INSTALL.
2039 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2041         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
2042         depend on link-tree.
2044         * lily/relocate.cc (setup_paths): only check path for non-absolute
2045         dir without directory part.
2047         * flower/file-name.cc (is_absolute):  new method.
2048         (is_absolute): check root_ too.
2050 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2052         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
2053         relocation code.  Oops, don't comment out too much.
2055         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
2056         iso itself.
2058         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
2059         compile.
2061 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2063         * .cvsignore: Add install-sh.
2065         * autogen.sh (srcdir): Typo.
2067 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2069         * autogen.sh (srcdir): urg. Touch install-sh.
2071         * stepmake/bin/install-sh (Module): remove.
2073         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
2075         * lily/include/relocate.hh: new file.
2077         * lily/relocate.cc: new file. Contain relocation logic.
2079         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
2080         (main): read LILYPOND_VERBOSE as the first thing.
2082         * stepmake/aclocal.m4: remove INSTALL variable.
2084         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
2085         separate target for making font symlinks.
2086         (documentation-dir): use $(if $(findstring )) for switching off
2087         Documentation.
2089         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
2090         something if DOCUMENTATION is no.
2092 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2094         * VERSION: release 2.7.24
2096         * lily/script-column-engraver.cc (stop_translation_timestep):
2097         delay adding to script-column.
2099         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
2101         * python/convertrules.py (conv): rule for number-visibility
2103         * lily/slur-configuration.cc (score_extra_encompass): different
2104         distance measure for avoid and inside avoidance.
2105         (score_extra_encompass): use 1/(distance+eps) as penalty.
2107         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
2108         encompass objects for generating slur curves.
2110         * lily/slur.cc: use details iso. slur-details property.
2112         * input/regression/slur-tuplet.ly: new file.
2114         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
2116         * flower/include/offset.hh (class Offset): new operator /=
2118         * lily/tuplet-number.cc (print): new file, new interface.
2120         * scm/define-grob-properties.scm (all-user-grob-properties):
2121         remove number-visibility property.
2123         * lily/tuplet-bracket.cc (calc_control_points): new function
2124         (calc_connect_to_neighbors): new function.
2125         (print): remove text handling for tuplet numberdef.
2127         * lily/tuplet-engraver.cc (struct Tuplet_description): create
2128         TupletNumbers too. 
2130         * lily/lily-guile.cc (robust_scm2booldrul): new function
2132         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
2134         * lily/tuplet-bracket.cc (calc_position_and_height): use
2135         staff-padding to control whether tuplet brackets are over staves.
2137         * lily/grob.cc (suicide): clear dim_caches_.
2139         * lily/dimension-cache.cc (clear): new function.
2141         * lily/grob.cc (extent): swap order of min-extent and extent
2142         calculations. This fixes hara kiri staves. 
2144 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2146         * lily/main.cc: Nitpick: relocation is not based on path, but on
2147         directory (location).
2149 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2151         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
2153         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
2155         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
2157         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
2159         * stepmake/stepmake/generic-vars.make (Module): idem.
2161         * stepmake/stepmake/executable-targets.make (default): use it.
2163         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
2165         * make/GNUmakefile: don't install make rules.
2167         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
2168         slashes.
2169         (prepend_env_path): more verbosity.
2171 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2173         * GNUmakefile.in: add dir argument for find command.
2175         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
2176         fixes weird line numbers for point & click.
2178         * lily/source-file.cc (get_counts): init line/column/char counts.
2180 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2182         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
2184 2005-12-16  Graham Percival  <gpermus@gmail.com>
2186         * Documentation/user/basic-notation.itely, advanced-notation.itely:
2187         minor fixes from Fredric.  Thanks!
2189 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2191         * ly/music-functions-init.ly: add \bar and \clef music function 
2193         * lily/lily-lexer.cc: idem.
2195         * lily/parser.yy (FIXME): remove BAR and CLEF.
2197 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2199         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
2201         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
2202         function arguments too
2204         * lily/main.cc (set_relocation): new function.
2206         * scripts/musicxml2ly.py (convert): add \version
2208         * lily/tie.cc: remove get_default_attachments()
2210         * VERSION (PACKAGE_NAME): release 2.7.23
2211         
2212         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
2213         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
2215         * Documentation/topdocs/NEWS.tely (Top): document new feature.
2217         * lily/tie-formatting-problem.cc (score_ties): new function
2218         (get_variations): new function. Try flipping dirs for collisions.
2219         (generate_optimal_chord_configuration): new function. 1-opt search
2220         for better configuration.
2222         * lily/tie-configuration.cc: new file.
2224         * lily/tie.cc: junk Tie::get_configuration()
2226         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
2227         (score_ties_configuration): new function.
2228         (generate_ties_configuration): new function.
2229         (generate_base_chord_configuration): new function.
2230         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
2231         (set_manual_tie_configuration): Move body from tie-column-format.cc 
2233         * input/regression/tie-dot.ly: new file.
2235         * lily/tie-formatting-problem.cc (score_configuration): score
2236         tie/dot collisions.
2238         * lily/tie-helper.cc (get_transformed_bezier): new function
2240         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
2242         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
2243         -undefined suppress iso. -framework Python 
2245         * scm/define-grobs.scm (all-grob-descriptions): set
2246         springs-and-rods (thanks Joe Neeman!)
2248 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2250         * input/no-notation/display-lily-tests.ly (test): 
2251         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
2252         changed from \tag #'(a b) to \tag #'a \tag #'b
2254 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2256         * Documentation/topdocs/NEWS.tely: strip out-www.
2258         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
2260         * config.make.in (AR): add AR and RANLIB
2262         * flower/libc-extension.cc: include cassert
2264         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
2265         darwin check.
2267 2005-12-11  Graham Percival  <gpermus@gmail.com>
2269         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
2271         * stepmake/stepmake/python-modules-vars.make: define
2272         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
2274         * THANKS: added Johannes Schindelin.
2276 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2278         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
2280         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2281         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
2283         * lily/parser.yy: reorganize file layout.
2285         * ly/music-functions-init.ly: add tweak music function.
2287         * lily/grob-info.cc (ultimate_music_cause): new function:
2288         recursively lookup causes. 
2290         * lily/parser.yy (chord_body_element): allow music functions for
2291         post-events, allow music functions for chord elements. 
2293         * lily/font-config-scheme.cc (display_fontset): add cast.
2295         * python/convertrules.py (FatalConversionError.sub_syms): \tag
2296         #'(a b) -> \tag #'a \tag #'b rule.
2298         * python/musicexp.py (Output_printer.dump_version): new function
2300 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2302         * lily/parser.yy (FIXME): remove \tag
2303         (FIXME): remove tag_music() function.
2305         * lily/lily-lexer.cc: remove \tag
2307         * ly/music-functions-init.ly: define music-function "tag"
2309         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
2311 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2313         * VERSION (PATCH_LEVEL): release 2.7.22
2315         * input/regression/lyric-hyphen-retain.ly: renew.
2317         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
2318         grob
2320         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
2321         iso. minimum-length property for rods.
2323         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
2324         LyricSpace item to keep lyrics spaced apart.
2326         * ly/engraver-init.ly: remove Separating_line_group_engraver
2328         * Documentation/user/music-glossary.tely: do setfilename before
2329         music-glossary.
2331 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
2333         * Documentation/user/lilypond-book.itely: use `,´ after xref:
2334         See xref documentation, for example.
2336 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2338         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
2339         pending_skip iso. ly_voice[-1]
2340         (main): add if __main__ for debugging.
2342         * python/musicxml.py (Accidental.__init__): new class.
2344         * scripts/musicxml2ly.py (progress): new function
2345         (musicxml_key_to_lily): don't barf on modeless keys.
2346         (create_skip_music): new function.
2347         (musicxml_spanner_to_lily_event): new function. Handle beams too.
2348         (musicxml_note_to_lily_main_event): new function.
2350         * python/musicexp.py (Music.__init__): add comment field.
2351         (NestedMusic.append): new routine.
2352         (SequentialMusic.print_ly): print comment.
2353         (ArpeggioEvent.ly_expression): new class
2354         (BeamEvent.ly_expression): new class
2355         (NoteEvent.__init__): support for cautionary/forced accs.
2357         * lily/lookup.cc (slur): normal order for array loop.
2359         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
2360         to 0.0.
2362         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
2363         collapsed.
2365 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
2367         * scm/music-functions.scm: Make phrasing slurs follow voice direction
2369         * scripts/lilypond-book.py: Introduce option
2370         --preserve-line-breaks, for usage with srcltx
2372 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2374         * scm/output-lib.scm (print-circled-text-callback): draw circle
2375         around text using make-circle-markup.
2377         * Documentation/user/*: strip out-www from file names.
2379 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
2381         * Documentation/user/lilypond.tely (direntry): remove empty lines;
2382         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
2384 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2386         * Documentation/user/GNUmakefile: idem.
2388         * Documentation/user/macros.itexi: strip out-www
2390         * python/rational.py: python 2.3 compat.
2392         * VERSION (PATCH_LEVEL): release 2.7.21
2394         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
2395         option formatting, lilypond style.
2397         * python/musicexp.py: grab from Ikebana: a library for composing
2398         ly music expressions. 
2399         (Output_printer): class for advanced .ly printing.
2400         (eg. tupletting) 
2402         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
2403         convert to pythonesque structure.
2405         * python/rational.py: PD rational number class.
2407         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
2409 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
2411         * lily/part-combine-iterator.cc: Minor bugfix
2412         
2413         * THANKS: Update bughunters
2415 2005-12-02  Werner Lemberg  <wl@gnu.org>
2417         * mf/README: Document process for proper mf2pt1 conversion.
2419         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
2420         overlapping.
2422         * mf/feta-harmonica.mf: Removed.  Unused.
2424 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2426         * scripts/lilypond-book.py (do_file): fix thinkos.
2428 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2430         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
2431         ($(outdir)/parser.cc): 
2432         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
2434 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
2436         * ly/titling-init.ly (tagline): it should be a space between
2437         "Music engraving by LilyPond" and the version number.
2439 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2441         * VERSION (PACKAGE_NAME): release 2.7.20
2443 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2445         * scm/define-markup-commands.scm (pad-to-box): new markup command.
2447         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
2448         1.0.
2449         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
2451 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2453         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
2455         * kpath-guile/: remove directory
2457         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
2458         file. Encapsulate kpathsea using commandline tools.
2460         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
2461         kpathsea) module.
2463 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2465         * Documentation/user/advanced-notation.itely (Setting automatic
2466         beam behavior): Correct a few typos. Thanks to David Bobroff.
2468         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
2469         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
2471 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2473         * scripts/*.py: gmane address for bugs.
2475 2005-11-28 Pal Benko <benkop@freestart.hu>
2476         
2477         * make/ly-rules.make: add -f switch to mv
2479         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
2481         * lily/bar-line.cc: interpret it
2483 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2485         * configure.in (--disable-documentation): New switch.
2487         * GNUmakefile.in: Use it.
2489         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
2491 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2493         * scripts/lilypond-book.py (do_file): search chunks for
2494         \\begin{document}
2496         * GNUmakefile.in: add copy step in between so we can lose the
2497         out-www directories.
2499 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2501         * lily/pango-font.cc (pango_item_string_stencil): put
2502         geometry.width into glyph-string too.
2504 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2506         * scm/define-music-display-methods.scm (RevertProperty):
2507         (OverrideProperty): Use grob-property-path property, a list of
2508         symbols, instead of grob-property, which used to be a single
2509         symbol.
2510         (BassFigureEvent): a figure can be a plain number, not necessarily a
2511         markup.
2513 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2515         * VERSION: release 2.7.19
2516         
2517         * lily/figured-bass-engraver.cc (process_music): check
2518         figuredBassCenterContinuations first.
2520         * scm/translation-functions.scm (format-bass-figure): make double
2521         sharp larger. 
2523         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
2524         determine X-parent.
2526         * lily/system-start-delimiter-engraver.cc: move from
2527         Nested_system_start_delimiter_engraver, rename
2528         Nested_system_start_delimiter_engraver ->
2529         System_start_delimiter_engraver.
2531         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
2532         bracket type from hierarchy.
2534 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2536         * lily/rest.cc (y_offset_callback): read staff-position.
2538         * scm/define-grob-properties.scm (all-user-grob-properties): don't
2539         mark after-line-breaking-callback as internal.
2541         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
2543 2005-11-25  Werner Lemberg  <wl@gnu.org>
2545         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
2547 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2549         * stepmake/bin/add-html-footer.py (do_file): add google
2551         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
2552         staff if first_start_ is true.
2554 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2556         * scripts/midi2ly.py (split_track): add __repr__ members.
2557         (track_first_item): only return Item if not None. This fixes a
2558         problem when dumping a track that starts with an empty channel.
2560         * python/midi.c: doc module.
2562 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2564         * Documentation/user/global.itely (Creating MIDI files): Fix
2565         compilation problem.
2567 2005-11-22  Graham Percival  <gpermus@gmail.com>
2569         * Documentation/user/basic-notation.itely: clarify dynamic
2570         padding text.
2572         * Documentation/user/advanced-notation.itely: add unicode
2573         escape control example, whatever that is.  :)
2575         * Documentation/user/global.itely: added "removing dynamics
2576         from MIDI" code.
2578 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2580         * VERSION (PATCH_LEVEL): release 2.7.18
2582         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
2583         System_start_delimiter_engraver by
2584         Nested_system_start_delimiter_engraver.
2586         * lily/nested-system-start-delimiter-engraver.cc (struct
2587         Bracket_nesting_node): new class.
2588         (struct Bracket_nesting_group): new class
2589         (struct Bracket_nesting_staff): new class.
2590         (process_music): create hierarchy of grobs. This allows separate
2591         tuning of different SSDs. 
2593         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
2594         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
2596 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2598         * lily/side-position-interface.cc (aligned_side): multiply
2599         staff_radius by 2.
2601         * lily/script-engraver.cc (make_script_from_event): allow setting
2602         values to '()
2604 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2606         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
2608         * scm/define-grobs.scm (all-grob-descriptions): new grob
2609         NestedSystemStartDelimiter.
2611         * input/regression/system-start-heavy-bar.ly: new file.
2613         * lily/nested-system-start-delimiter-engraver.cc: new file.
2615         * lily/nested-system-start-delimiter.cc: new file.
2617         * input/regression/system-start-nesting.ly: new file.
2619         * scm/define-grobs.scm (all-grob-descriptions): use X side
2620         positioning for positioning braces for nested contexts.
2622         * lily/system-start-delimiter.cc (print): don't divide extent by
2623         staff_space.
2624         (print): use style iso. glyph.
2625         (staff_bracket): translate glyph inside routine already.
2627 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
2629         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
2630         names.
2632 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2634         * scm/define-context-properties.scm
2635         (all-user-translation-properties): rename figuredBassFormatter
2636         from newFiguredBassFormatter.
2638         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
2640         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
2642         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
2644         * lily/beam.cc (calc_beaming): new function.
2645         (calc_shorten): new function.
2647         * THANKS: add Edward Neeman.
2649         * input/regression/accidental-clef-change.ly: new file.
2651         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
2653         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
2655         * lily/clef-engraver.cc (inspect_clef_properties): reset
2656         localKeySignature for clef changes.
2658 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2660         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
2661         add dummy definition that works in Linux and add information in
2662         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
2664         * Documentation/user/changing-defaults.itely (Modifying context
2665         plug-ins): Add index for \with.
2667         * Documentation/user/music-glossary.tely (dal segno): Updated
2668         example to version >=2.6.
2670 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2672         * Documentation/user/instrument-notation.itely (Printing chord
2673         names): Reorder \chordmode and \repeat in one example.
2675 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2677         * VERSION: release 2.7.17
2678         
2679         * Documentation/topdocs/NEWS.tely (Top): add note about
2680         refactoring.
2682         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
2683         new function. Search region of 3 positions for best tie.
2684         (score_configuration): new function.
2685         (score_aptitude): new function.
2686         (generate_configuration): new function.
2687         (get_configuration): new function.
2688         (Tie_formatting_problem): new function
2690         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
2692         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
2694         * THANKS: add Eduardo Vieira & Ralph Little
2696         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
2697         narrower.
2699         * lily/include/tie-formatting-problem.hh (class
2700         Tie_formatting_problem): add Tie_details to
2701         Tie_formatting_problem. Update calling conventions.
2703         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
2704         config.make.
2706         * Documentation/user/lilypond.tely: remove musedata2ly entry.
2708 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
2710         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
2711         scm/define-context-properties.scm: Maintenance bugfix: make
2712         ligature brackets work again by removing obsolete ligature
2713         primitive callback push/pop.
2715         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
2716         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
2717         value.
2719 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2721         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
2722         used and do not call it a path.
2723         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
2725 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2727         * lily/include/tie-formatting-problem.hh (class
2728         Tie_formatting_problem): new file.
2730         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
2732         * Documentation/misc/ChangeLog-2.3:  new file.
2734         * lily/audio-staff.cc (output): degarianize.
2736 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2738         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
2739         Unset PYTHONOPTIMIZE.  Fixes install if set.
2741 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2743         * python/convertrules.py (conv): add warning about drums. 
2745         * make/stepmake.make: include toplevel-version.make after config.make.
2747         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
2748         also allow python2.4
2750         * config.make.in (configure-srcdir): remove GXX GCC vars.
2752         * stepmake/aclocal.m4: don't do non-srcdir build with
2753         symlinks. Use inclusion, so the src directory name can be changed.
2755 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2757         * make/mutopia-vars.make:
2758         * make/ly-vars.make: Use src-wildcard iso wildcard for source
2759         files.
2761 2005-11-13  Werner Lemberg  <wl@gnu.org>
2763         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
2764         but the affected path.  This ensures that the (overlapping) outlines
2765         have the same direction, which is a necessary prerequisite for
2766         FontForge's algorithm to remove overlaps.
2767         Formatting.
2769         * mf/feta-haak.mf: Formatting.
2770         (draw_bracket): Slightly modify outline to avoid an unnecessary
2771         corner.
2772         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
2773         them from the affected paths.
2775 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2777         * mf/README: remove xpm / accordion notes.
2779         * lily/tie-column-format.cc (set_chord_outline): add dots into
2780         skyline extents. This fixes tie formatting if the left head has dots.
2782         * lily/tie.cc (get_configuration): only shift tie by a whole staff
2783         space inside the staff.
2784         (get_configuration): shift another position if necessary in case
2785         of left head tie  
2787 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2789         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
2790         buildscript-dir iso. $(depth)/buildscripts.
2792         * tex/GNUmakefile (local-uninstall): remove
2793         music-drawing-routines.ps juggling.
2795         * stepmake/stepmake/install-targets.make (local-install-files):
2796         prepend src-dir to install targets.
2798         * lily/system-start-delimiter-engraver.cc
2799         (acknowledge_system_start_delimiter): use
2800         add_offset_callback(). This fixes translation of nested
2801         staffgroups.
2803         * lily/grob-closure.cc (add_offset_callback): only encaps in
2804         simple_closure if it's a procedure.
2805         
2806         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
2807         from bar-line.
2809         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
2810         remove-empty where pertinent.
2812 2005-11-12  Graham Percival  <gpermus@gmail.com>
2814         * Documentation/user/instrument-notation.itely: added
2815         Cameron Horsburgh's multiple stanzas docs.  Thanks!
2817 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2819         * lily/GNUmakefile
2820         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
2821         make picture in builddir, not srcdir.
2823 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2825         * VERSION: release 2.7.16
2826         
2827         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
2828         shell arguments. 
2830 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2832         * Documentation/user/examples.itely (Piano templates): Minor
2833         modification to the Piano centered lyrics example.
2835 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2837         * scripts/lilypond-invoke-editor.scm (run-browser): look at
2838         $BROWSER.
2840         * Documentation/user/point-and-click.itely: simplify p&c
2841         instruction: don't configure firefox. Put lilypond-invoke-editor
2842         in front of the browser.
2844         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
2845         (run-browser): new function.
2847         * lily/parser.yy (Lily_lexer): recognize Book
2849         * lily/book.cc (clone): new function
2851         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
2853 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
2855         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
2856         Maintenance bugfix: reduce number of font related warnings by
2857         updating naming conventions for glyph-name.
2859 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2861         * scm/define-grobs.scm (all-grob-descriptions): add
2862         rhythmic-grob-interface to TabNoteHead.
2864         * scm/layout-beam.scm (check-quant-callbacks): remove
2865         set_stem_lengths()
2867 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
2869         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
2870         alignment of centered divisiones.
2872         * scm/scripts.scm (articulations): Maintenance bugfix:
2873         follow-into-staff -> quantize-position.
2875         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
2876         plica head in porrectus deminutus.
2878 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2880         * make/lilypond.fedora.spec.in (Group): add %clean section.
2882         * lily/tuplet-bracket.cc (print): change check: remove bracket if
2883         less then 1/5th of total length.  
2884         (print): use gap too.  Fixes tupletUp-single-bracket.ly
2886         * scm/music-functions.scm (glue-mm-rest-texts): also put other
2887         events into EventChord. This fixes textspanners on mm rests. Fixes
2888         spanner-rest.ly
2890         * lily/side-position-interface.cc (get_axis): read side-axis
2891         (set_axis): set side-axis.
2893         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
2894         properties everywhere.
2896         * lily/spacing-spanner.cc (breakable_column_spacing): add
2897         average-spacing-wishes. Take maximum if not set.
2898         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
2900         * scm/define-grobs.scm (all-grob-descriptions): add
2901         average-spacing-wishes.
2903         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
2904         offset callbacks. This fixes alignment for Fingering objects.
2906         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
2907         space for key - timesig combination. 
2909         * input/regression/script-stem-tremolo.ly (Module): new file.
2911         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
2912         to key sig.
2914         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
2915         Fixes: c-tremolo-script.ly.
2916         
2917         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
2919         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
2920         
2921         * scm/define-grobs.scm (all-grob-descriptions): remove
2922         self-X-offset. Fixes alignment of octavate-8.
2924         * scripts/lilypond-book.py (datadir): look in
2925         LILYPONDPREFIX/share/lilypond/current/
2927         * GNUmakefile.in: symlink current to <VERSION>. 
2929 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
2931         * lily/main.cc: eps listed as a backend.
2933 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2935         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
2937 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2939         * lily/include/score.hh (class Score): remove texts_ member.
2941         * lily/beam.cc (set_stem_lengths): force direction callback.
2942         (print): read quantized-positions, so we can force
2943         Beam::set_stem_lengths to occur.
2944         (rest_collision_callback): use common X parent. 
2946 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2948         * flower/file-path.cc (find): Bugfix: Return name of file found.
2950         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
2951         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
2952         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
2954 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2956         * flower/offset.cc: idem.
2958         * mf/*.mf: update email address.
2960         * lily/font-config-scheme.cc:  new file.
2962         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
2964         * lily/*:  cs.uu.nl -> xs4all.nl
2966         * VERSION (PATCH_LEVEL): release 2.7.15
2968         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
2969         spec files.
2971         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
2973 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2975         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
2977         * lily/staff-performer.cc (process_music): add audio
2978         elements. This makes MIDI instrument changes work once again.
2980         * lily/main.cc (LY_DEFINE): add gmane address.
2982         * lily/beam.cc: remove calc_positions()
2984         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
2985         original_ in private scope.
2986         (class Grob): drop pscore_ pointer, change to output_def pointer.
2987         (class Grob): cleanup class definition.
2989         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
2991 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2993         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
2994         absolute.  Better diagnostics.
2996         * GNUmakefile.in: Add bin/ to tree and populate with some links.
2997         This makes lilypond run from the build directory using argv0
2998         relocation (without any --prefix or LILYPONDPREFIX setting).
3000 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3002         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
3004         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
3005         with simple-closure.
3007         * lily/self-aligment-interface.cc (set_align_self): new function
3008         (set_center_parent): new function.
3010         * lily/side-position-interface.cc (set_axis): new function.
3012         * lily/new-fingering-engraver.cc (position_scripts): use drul for
3013         generic code. 
3015         * scm/define-grob-properties.scm (all-user-grob-properties):
3016         remove [XY]-offset-callbacks add [YX]-offset
3017         
3018 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3020         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
3021         entry for time signatures after breathing signs. Bug report by
3022         Scott Russell.
3024 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3026         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
3027         not absolute, make it absolute using PATH.
3029 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3031         * python/midi.c (initmidi): Fix type for mingw.
3033 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3035         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
3037         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
3038         cross compiling.
3040         * stepmake/aclocal.m4: Support python cross compiling.
3042         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
3043         Add mingw section.
3045 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3047         * scm/output-lib.scm (chain-grob-member-functions): replace
3048         chained-callback.cc
3050         * lily/chained-callback.cc (Module): remove file.
3052         * lily/rest-collision.cc (force_shift_callback_rest): change to
3053         chained callback.
3055         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
3057         * lily/grob.cc (y_parent_positioning): remove axis argument from
3058         parent_positioning callbacks.
3059         (Grob): junk init code
3060         (get_offset): use generic property callbacks for
3061         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
3062         (axis_parent_positioning): new function
3063         (axis_offset_symbol): new function
3064         (chain_offset_callback): new function
3065         (add_offset_callback): new function
3067         * lily/beam.cc (rest_collision_callback): change signature; this
3068         is now a chained callback.
3070         * lily/include/dimension-cache.hh (class Dimension_cache): remove
3071         callback administration.
3073         * lily/simple-closure.cc: new file. Smob type that allows "grob
3074         member functions",
3076             (ly:make-simple-closure FUNC A B)
3078         is evaluated as (FUNC grob A B). This allows chaining of callbacks
3079         in various ways.
3081         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
3082         callbacks.
3084         * lily/slur.cc (outside_slur_callback): take 2 arguments.
3086         * lily/rest.cc (polyphonic_offset_callback): remove.
3088         * lily/script-engraver.cc (try_music): remove bool* argument.
3090         * scm/script.scm (default-script-alist): set quantize-position
3091         appropriately.
3093         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
3095         * lily/side-position-interface.cc (aligned_side): move staff
3096         position quantization from
3097         Side_position_interface::quantised_position().
3098         (quantised_position): remove
3099         
3100 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3102         * input/regression/beam-quant-standard.ly: reindent, set
3103         debug-beam-quanting to #t.
3105         * lily/beam-concave.cc (calc_concaveness): set concaveness to
3106         10000 if this is a "hard" concave beam.
3108         * lily/beam.cc (calc_least_squares_positions): change from
3109         calc_least_squares_dy
3110         (set_stem_lengths): this is now a chained callback.
3112         * lily/context-property.cc (execute_general_pushpop_property):
3113         bugfix override with procedure should have effect.
3115         * scm/define-grob-properties.scm (all-internal-grob-properties):
3116         remove position-callbacks.
3118         * scm/define-grobs.scm (all-grob-descriptions): use
3119         ly:make-callback-chain for positions property.
3121         * scm/layout-beam.scm (check-quant-callbacks): return list of
3122         chained callbacks.
3124         * scm/lily.scm (type-p-name-alist): add callback-chain
3126         * lily/lily-guile.cc (type_check_assignment): type check failure
3127         is warning not message.
3129         * lily/grob-property.cc (try_callback): walk callback chain if
3130         appropriate.
3132         * lily/chained-callback.cc: new file. new smob type.
3134         * lily/lily-guile.cc (procedure_arity): new function.
3136 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3138         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
3140 2005-10-25  John Mandereau  <john.mandereau@free.fr>
3142         * Documentation/user/instrument-notation.itely (Figured bass):
3143         describe new features
3145 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3147         * lily/beam.cc (calc_least_squares_dy): use property callback.
3149         * lily/beam-concave.cc (calc_concaveness): use property callback.
3151         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
3153 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3155         * HACKING: Update.
3157 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3159         * scm/layout-page-layout.scm (page-headfoot): annotate
3160         pagetopspace too.
3162         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
3164         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
3165         doesn't take y-space.
3167         * scm/paper.scm (paper-alist): fix A7 dimensions. 
3169 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
3171         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
3172         src-wildcard, remove $(wildcard).
3174         * po/GNUmakefile (PO_FILES): 
3175         * ps/GNUmakefile (PS_FILES): 
3176         * tex/GNUmakefile (TEX_FILES): 
3177         * cygwin/GNUmakefile (POSTINSTALLS):
3178         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
3179         some wildcard calls.
3181 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3183         * THANKS: add Thomas Bushnell.
3185 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3187         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
3188         (lilypond-main): Redirect to gui-main if 'gui is set.
3189         Backportme.
3191         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
3192         for alternative installations kludging s/share/lib/g
3193         LILYPONDPREFIX. Backportme.
3195         * SConstruct (libdir_package_version): Define.
3197         * python/SConscript: 
3198         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
3199         module in libdir.  Backportme.
3201 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3203         * lily/main.cc: clarify --safe.
3205 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3207         * VERSION: release 2.7.14
3208         
3209         * Documentation/user/*.itely: remove minimumVerticalExtent.
3211         * scm/define-grobs.scm (all-grob-descriptions): remove
3212         RemoveEmptyVerticalGroup
3214         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
3216         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
3217         compile on MOSX
3219         * python/convertrules.py (conv): add rules.
3221         * lily/grob.cc: remove is_empty()
3223         * lily/grob-property.cc: remove add_to_list_property().
3225         * scripts/convert-ly.py (datadir): add prefix switching hack to
3226         .py too.
3228         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
3229         space-function tweak.
3231         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
3233         * scm/define-grob-properties.scm (all-user-grob-properties):
3234         remove callback property.
3236         * lily/include/grob.hh (class Grob): remove property_callbacks_
3237         member. Properties of procedure type are assumed to be callbacks.
3239         * lily/ligature-engraver.cc (override_stencil_callback):
3240         rewrite. Use noteHeadLigaturePrimitive as source.
3242         * scm/define-grob-properties.scm (all-internal-grob-properties):
3243         remove ligature-primitive-callback
3245         * lily/include/dimension-cache.hh (class Dimension_cache): make
3246         class, with Grob as friend.
3248         * lily/grob.cc: remove set_extent_callback(), set_extent() and
3249         has_extent_callback()
3251         * scm/translation-functions.scm (format-new-bass-figure): read
3252         figuredBassPlusDirection
3254         * scm/define-context-properties.scm
3255         (all-user-translation-properties): add figuredBassPlusDirection.
3257         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
3259         * lily/align-interface.cc (set_ordered): new function.
3261         * lily/grob.cc (flush_extent_cache): rewrite.
3263         * lily/dimension-cache.cc (Dimension_cache): cache extent as
3264         Interval pointer directly.
3266         * lily/main.cc (setup_paths): insert extra / .
3267         (setup_paths): junk cff entry.
3269         * lily/font-config.cc (init_fontconfig): only add type1 / otf
3270         directories.
3272         * lily/axis-group-engraver.cc (finalize): remove
3273         extraVerticalExtent, minimumVerticalExtent verticalExtent.
3275         * lily/grob.cc (Grob): don't set extent from ctor.
3276         (extent): use property callbacks. 
3278         * lily/axis-group-interface.cc: remove set_axes() function.
3280         * lily/grob-property.cc (del_property): new function.
3282 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3284         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
3285         
3286 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3288         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
3290 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3292         * mf/SConscript: Updates.
3294         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
3296         * stepmake/stepmake/*:
3297         * */GNUmakefile:
3298         * config.make.in:
3299         * GNUmakefile.in:
3300         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
3301         from any directory in build-dir.  Cleanups.
3303         * make/srcdir.make.in: Remove.
3305         * lily/main.cc (setup_paths): Fix and document build-dir hack.
3307         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
3308         main).
3310         * lily/SConscript: Remove ttftools.
3312         * SConstruct: Resurrect.
3314 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3316         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
3317         Y coordinate. 
3319         * lily/paper-book.cc (add_score_title): put Paper_score title into
3320         systems_ list.
3322         * scm/translation-functions.scm (format-new-bass-figure): also
3323         allow plus in combination with _
3325 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3327         * VERSION: 2.7.13 released.
3329         * lily/note-collision.cc (check_meshing_chords): don't wipe
3330         stencil, merely set transparent.
3332         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
3333         (Top): document #'callbacks.
3334         (Top): document nested \override.
3336         * input/regression/figured-bass.ly: update for slash and pluses.
3338         * input/regression/figured-bass-continuation-forbid.ly (Module):
3339         new file.
3341         * scm/translation-functions.scm (format-new-bass-figure): use
3342         slashed-digit if diminished is set.
3343         (format-new-bass-figure): add + if 'augmented is set.
3345         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
3347         * input/test/piano-staff-distance.ly: remove file.
3349         * Documentation/user/advanced-notation.itely (Formatting cue
3350         notes): use length-fraction for making stems/beams smaller.
3352         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
3353         modifications.
3355         * lily/new-figured-bass-engraver.cc: new property
3356         centerFiguredBassContinuations
3358         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3359         use callbacks.
3361         * lily/context-property.cc (execute_general_pushpop_property):
3362         robustness checks.
3364         * input/regression/override-nest.ly: new file.
3366         * python/convertrules.py (FatalConversionError.subber): conversion
3367         rule for #'callbacks
3369         * input/regression/override-nest.ly: new function.
3371         * lily/parser.yy (music_property_def): allow \override #'a #'b =
3372         #c too. 
3374         * lily/context-property.cc (lookup_nested_property): new function.
3375         (evict_from_alist): new function.
3376         (general_pushpop_property): new function.
3377         (execute_general_pushpop_property): rewrite. Support nested
3378         properties too.
3380 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3382         * lily/beam.cc: use length-fraction too.
3384         * scm/define-grob-properties.scm (all-user-grob-properties):
3385         remove property flag-width-function
3386         (all-user-grob-properties): remove space-function.
3388         * scm/layout-beam.scm: remove flag-width-function.
3390         * lily/beam.cc: remove flag-width-function
3392         * scm/layout-beam.scm: remove beam dir functions.
3394         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
3396         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
3397         for easier grace tweaks.
3399         * lily/beam.cc: remove dir-function.
3401         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
3403         * lily/grob.cc: remove spacing-procedure.
3405         * lily/note-head.cc (calc_stem_attachment): new function.
3406         (internal_print): use callback to get glyph-name.
3408         * lily/grob-property.cc (get_interfaces): new function.
3410         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
3412         * lily/stem.cc (calc_stem_end_position): new function.
3413         (calc_length): new function.
3414         document details for stem.
3415         remove Stem::get_direction()
3417         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
3419         * lily/grob-property.cc (set_callback): new function.
3421         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
3423         * lily/item-scheme.cc: new file.
3425         * lily/bar-line.cc (before_line_breaking): remove function.
3426         remove bar-size-procedure, break-glyph-function
3428         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
3430         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
3432         * lily/system-start-delimiter.cc (print): suicide from
3433         here. Remove after_line_breaking_callback.
3435         * lily/script-interface.cc (calc_direction): use callback for direction.
3437         * lily/side-position-interface.cc (aligned_side): don't use
3438         Side_position_interface::get_direction directly. Use callback. 
3440         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
3441         calculate stencil.
3442         (get_print_stencil): rename from get_stencil: create stencil with
3443         transparency, color and cause. 
3445         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
3447         * python/convertrules.py (conv): insert temporary warning rule.
3449         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
3451         * lily/grob-property.cc (try_callback): remove marker if applicable.
3453         * lily/grob.cc: elucidate doc about after/before-line-breaking
3455         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
3457         * lily/stem.cc (height): idem.
3459         * lily/stem-tremolo.cc: idem.
3461         * lily/slur.cc (height): don't use get_uncached_stencil()
3463         * lily/rest.cc (y_offset_callback): use offset callback
3464         iso. after-line-breaking callback.
3466         * lily/grob.cc: change after/before-line-breaking-callback to
3467         after/before-line-breaking dummy properties.
3469         * lily/include/grob.hh: remove Grob_status.
3471         * scm/define-context-properties.scm
3472         (all-user-translation-properties): remove verticalAlignmentChildCallback
3474         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
3475         (calc_direction): use callback
3476         (calc_positions): use callback.
3478         * lily/tie.cc (calc_direction): use callback. Only call parent
3479         positioning for more than one tie.
3481         * lily/tie-column.cc (calc_positioning_done): use callback
3483         * lily/slur-scoring.cc (calc_control_points): use callback
3485         * lily/slur.cc (calc_direction): use callback.
3487         * lily/note-collision.cc (force_shift_callback): remove.
3489         * lily/dot-column.cc (force_shift_callback): remove. Use
3490         other_axis_parent_positioning.
3492         * lily/grob.cc (other_axis_parent_positioning): new function.
3493         (same_axis_parent_positioning): new function
3495         * lily/align-interface.cc (alignment_callback): remove function.
3497         * lily/note-collision.cc (calc_positioning_done): use callback.
3499         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
3500         (calc_direction): idem.
3501         remove print function.
3503         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
3505         * lily/dot-column.cc (calc_positioning_done): use callback.
3507         * lily/break-align-interface.cc (calc_positioning_done): use callback.
3509         * lily/beam.cc (calc_direction): use pseudo-property for beam
3510         direction callback.
3511         (calc_positions): use callback 
3513         * lily/align-interface.cc (calc_positioning_done): use
3514         callback. Fold fixed  distance and normal alignment in one function.
3516         * lily/stem.cc (calc_stem_end_position): use callback.
3517         (calc_positioning_done): idem.
3518         (calc_direction): idem.
3519         (calc_stem_end_position): idem
3520         (calc_stem_info): idem.
3522         * lily/grob-property.cc (get_property_data): new function: 
3523         (try_callback): new function.
3525         * scm/define-grob-properties.scm (all-user-grob-properties): doc
3526         callbacks property.
3528         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
3530 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3532         * lily/tie.cc (get_position): robustness fix. Don't crash if a
3533         tie
3534         has no heads.
3535         
3536         * lily/include/*.hh (Module): compile fixes.
3538 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
3540         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
3541         as an argument for char-syntax: use (char-syntax (or nil 0)) 
3542         instead of (char-syntax nil), thanks to Milan Zamazal.
3544 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3546         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
3547         dist.
3549         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
3550         themselves.
3552 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3554         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
3555         add class_name() method.
3557         * lily/music-scheme.cc: remove ly:music-name.
3559 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3561         * cygwin/postinstall-lilypond.sh: Remove cruft.
3563         * cygwin/postremove-lilypond.sh: Remove.
3565         * cygwin/GNUmakefile (default): Remove postremove rules.
3567 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3569         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
3570         even header too.
3571         
3572         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
3573         MacOS 9 users.
3575         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
3576         consider break index for broken spanner.
3578         * scm/define-markup-commands.scm (wordwrap-string): remove \r
3579         characters from string before splitting.
3581 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3583         * scm/framework-ps.scm (output-preview-framework): use
3584         is-book-title to determine whether to chop off the booktitle.
3586         * lily/paper-book.cc (systems): init from book-title-properties
3587         (add_score_title): init score-title-properties.
3589         * ly/paper-defaults.ly: add {score,book}-title-properties.
3591         * scm/document-backend.scm (lookup-interface): error message if
3592         using unknown interface.
3594         * lily/volta-bracket.cc (after_line_breaking): new function. Set
3595         edge-height.
3597         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
3598         make_bracket.
3599         (make_bracket): new function.
3601         * scm/lily.scm (define-scheme-options): add paper-size option.
3603         * ly/declarations-init.ly (laissezVibrer): get paper size from
3604         -dpaper-size
3606         * scm/translation-functions.scm: use \fontsize for changing the
3607         fontsize.
3609         * scm/define-grobs.scm (all-grob-descriptions): set
3610         between-length-limit to 1.0
3612         * lily/tie-helper.cc: add between_length_limit_ detail property.
3614         * mf/feta-bolletjes.mf: typos.
3616         * lily/note-head.cc (internal_print): don't shadow idx
3617         parameter. This fixes wrong attachment for do shape heads.
3619 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3621         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
3623         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
3625         * scm/layout-slur.scm: rename from slur.scm
3627         * scm/layout-page-layout.scm: rename from page-layout.scm
3629         * scm/layout-beam.scm: rename from beam.scm
3631         * scm/define-grob-interfaces.scm (bass-figure-interface): add
3632         bass-figure-interface
3634         * lily/new-figured-bass-engraver.cc (process_music): add
3635         implicitBassFigures property.
3636         
3637         * scm/define-markup-commands.scm (pad-x): new markup.
3639         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
3640         minimumVerticalExtent on FiguredBass context.
3642         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
3643         case the continuation crosses a line break.
3645 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3647         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
3648         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
3649         absolute file name bug.  Backportme.
3651 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3653         * VERSION (PACKAGE_NAME): release 2.7.12
3655         * input/regression/figured-bass-continuation-center.ly: new file.
3657         * input/regression/beam-outside-beamlets.ly: new file.
3659         * lily/beam.cc (set_beaming): don't clip edges.
3660         (connect_beams): don't clip edges.
3662         * lily/beaming-info.cc (clip_edges): new function.
3664         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
3666         * Documentation/user/instrument-notation.itely (Figured bass):
3667         demonstrate extenders, update seealso links.
3669         * scm/titling.scm (marked-up-headfoot): change tagline
3670         handling. tagline = ##f will blank the tagline as well.
3672 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3674         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
3676         * lily/new-figured-bass-engraver.cc (struct
3677         New_figured_bass_engraver): add new_music_found_ member.
3679         * lily/lilypond-version.cc (Lilypond_version): deal with
3680         incorrectly formatted version strings. 
3682         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
3683         New_figured_bass_engraver by default.
3685         * lily/ttf.cc (print_trailer): only define glyph names when
3686         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
3688 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3690         * lily/horizontal-bracket.cc (make_bracket): new function.
3692         * scm/define-grobs.scm (all-grob-descriptions): new grobs
3693         NewBassFigure, BassFigureBracket, BassFigureContinuation,
3694         BassFigureLine, BassFigureAlignment
3696         * lily/new-figured-bass-engraver.cc (process_music): new file.
3698         * lily/figured-bass-continuation.cc: new file.
3700         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
3701         new file.
3703 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3705         * scripts/lilypond-book.py: Bug fix, put the quote around the
3706         actual score for LaTeX documents.
3708         * scm/define-grobs.scm (all-grob-descriptions): Change
3709         collapse-height of the SystemStartBracket grob to 5.0, 
3710         so the bracket disappears for single stave score lines (similarly
3711         to SystemStartBraces). 
3713         * Documentation/user/advanced-notation.itely (Polymetric
3714         notation): Clarify the use of compressMusic.
3716         * Documentation/user/basic-notation.itely (Grace notes): Clarify
3717         that the grace spacer note in other staves need the same duration
3718         and document the stroke-style property.
3720 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3722         * Documentation/user/global.itely (Vertical spacing): document
3723         alignment-extra-space and fixed-alignment-extra-space.
3725         * Documentation/topdocs/NEWS.tely (Top): add entry.
3727         * input/regression/alignment-vertical-spacing.ly: new file.
3729         * python/convertrules.py (conv): add rule.
3731         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
3733         * lily/align-interface.cc (stretch_after_break): new
3734         function. Read fixed-alignment-extra-space property.
3735         (align_elements_to_extents): read alignment-extra-space property.
3737         * lily/lily-guile.cc (robust_scm2dir): new function.
3739         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
3740         (annotate-space-left): new function. Annotate space left on page. 
3741         (annotate-y-interval): new function.
3742         (paper-system-annotate-last): new function. Annotate bottom-space.
3744         * mf/feta-beugel.mf (y): 
3746 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3748         * VERSION (PACKAGE_NAME):  release 2.7.11
3750         * scm/lily-library.scm (interval-translate): new function
3751         (interval-center): new function. 
3753         * scm/page-layout.scm (paper-system-annotate): new function. Add
3754         arrows for dimensions.
3756         * scm/stencil.scm (dimension-arrows): new function.
3758         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
3760         * input/regression/page-spacing.ly: add annotatespacing
3762         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
3763         (LY_DEFINE): new function ly:paper-system-set-property!
3765         * Documentation/user/global.itely (Paper size): explain how to add
3766         sizes.
3768         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
3769         correspond to GS's definition.
3771         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
3772         tuplet bracket.
3773         (print): only connect to next bracket if the next one is alive.
3774         (print): set padding to 0.0 if the bound is a breakable
3775         column. This makes tupletFullLength brackets reach up to the staff
3776         line if it doesn't connect to the next line.
3778 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3780         * lily/bar-number-engraver.cc: correct docs.
3782         * scm/output-lib.scm (first-bar-number-invisible): rename from
3783         default-bar-number-visibility
3785 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3787         * scm/define-music-properties.scm (all-music-properties): remove
3788         predicate property.
3790 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
3792         * po/fi.po: refresh.
3794 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3796         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
3797         superfluous s1.
3798         (disappear): bugfix.
3800         * lily/stem-tremolo.cc (raw_stencil): read slope property.
3802         * lily/include/paper-system.hh (class Paper_system): remove
3803         staff_extents_ member.
3805         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
3807         * lily/include/paper-system.hh (class Paper_system): remove
3808         number_ variable. Remove is_title_. Remove break_before_penalty_
3810         * lily/paper-book.cc (systems): use 'number property iso. number_
3811         member.
3813         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
3814         remove ly:paper-system-number.
3816         * scm/lily-library.scm (paper-system-title?): new function.
3818         * lily/book.cc (process): bugfix: flip ?: cases. 
3820         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3821         add outputProperty.
3823         * ly/music-functions-init.ly: add outputProperty music function.
3825         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
3827         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
3828         and next-padding.
3829         (optimal-page-breaks): rename from ly:optimal-page-breaks.
3831         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
3833         * lily/paper-system.cc (internal_get_property): new function.
3835         * Documentation/user/global.itely (Vertical spacing): refer to
3836         page-spacing.ly
3838         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
3839         pagetopspace
3841         * input/regression/page-spacing.ly: new file.
3843         * input/regression/page-top-space.ly: new file.
3845         * lily/spacing-spanner.cc: cmath -> math.h
3847         * lily/paper-system.cc (read_left_bound): new function. Read
3848         line-break-system-details from left bound to determine extents.
3850         * Documentation/user/programming-interface.itely (Using LilyPond
3851         syntax inside Scheme): change applyxxx -> applyXxx.
3853         * ly/music-functions-init.ly: add outputProperty music function.
3855         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
3857         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
3859         * python/convertrules.py (conv): rule
3861         * ly/music-functions-init.ly: applyxxx -> applyXxx
3863         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
3864         TabVoice to Voice.
3866 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3868         * flower/include/real.hh: include <math.h> iso. <cmath>
3870         * flower/include/offset.hh: include real.hh
3872 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3874         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3875         fix example, now that 'interfaces is no longer directly available.
3877         * lily/book.cc (process): don't crash if paper == NULL.
3879         * po/fr.po: update.
3881 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3883         * scm/define-music-types.scm (music-descriptions): set length and
3884         start-callback for QuoteMusic
3886 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3888         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
3889         arguments. Fixes compilation error with gcc 3.3.
3891 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3893         * VERSION: release 2.7.10
3895         * stepmake/stepmake/python-module-rules.make
3896         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
3898         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
3899         real.hh
3901 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3903         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
3904         -Werror. Otherwise GCC barfs over various optimizations.
3906         * scm/define-grob-properties.scm (all-internal-grob-properties):
3907         add note-head property
3909         * Documentation/user/instrument-notation.itely (Laissez vibrer
3910         ties): new node.
3912         * input/regression/laissez-vibrer-ties.ly: new file.
3914         * lily/laissez-vibrer-engraver.cc: new file.    
3916         * lily/include/tie-column-format.hh: new file.
3918         * lily/tie-column-format.cc: new file. 
3920         * lily/tie-column.cc (set_manual_tie_configuration): new function.
3922         * lily/laissez-vibrer-tie.cc: new file.
3924         * lily/include/laissez-vibrer-tie.hh: new file.
3926         * ly/engraver-init.ly: add Laissez_vibrer_engraver
3928         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
3930         * scm/define-grobs.scm (all-grob-descriptions): add
3931         LaissezVibrerTie, LaissezVibrerTieColumn
3933         * lily/tie-column.cc (set_tie_config_directions): new function
3934         (final_shape_adjustment): new function.
3935         (shift_small_ties): new function.
3937         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
3939         * lily/include/tie.hh (struct Tie_details): add x_gap_
3940         (struct Tie_configuration): add head_position_
3942         * lily/tie-column.cc (set_chord_outline): new function.
3944         * mf/cmr.enc.in:  remove file.
3946 2005-09-11  Graham Percival  <gpermus@gmail.com>
3948         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
3950 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3952         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
3953         reduce aliasing effects.
3955         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
3956         box in skyline.
3958 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3960         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
3962         * flower/include/real.hh: std::fabs too.
3964 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3966         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
3968         * lily, flower: Include C++ iso C headers.  Import namespace std
3969         throughout.
3971         * lily/side-position-interface.cc: 
3972         * lily/scm-hash.cc: 
3973         * lily/note-head.cc: 
3974         * lily/include/includable-lexer.hh: 
3975         * flower/include/string-data.icc: Remove using std::*.
3977         * lily, flower: Include C++ iso C headers.  Import namespace std
3978         throughout.
3980         * lily/side-position-interface.cc: 
3981         * lily/scm-hash.cc: 
3982         * lily/note-head.cc: 
3983         * lily/include/includable-lexer.hh: 
3984         * flower/include/string-data.icc: Remove using std::*.
3986         * Documentation/user/instrument-notation.itely (Entering lyrics):
3987         Multiple latin-1->utf-8 conversion fix.
3989         * Documentation/user/*tely: Update Emacs cookie to utf-8.
3991 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3993         * lily/tie.cc (get_configuration): also avoid dots for non-space
3994         situations.
3996 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3998         * Documentation/user/instrument-notation.itely: Bugfix.
4000 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4002         * tex/GNUmakefile: don't install texinfo.tex
4004         * tex/ : cleanup: remove unused files.
4006         * lily/general-scheme.cc: remove my_{isinf,isnan}.
4008         * flower/include/real.hh: using std::{isnan,isinf}
4009         
4010         * VERSION (PATCH_LEVEL): release 2.7.9
4012 2005-09-05  Graham Percival  <gpermus@gmail.com>
4014         * Documentation/user/ instrument-notation.itely,
4015         advanced-notation.itely: minor tweaks.
4017         * input/test/script-chart.ly: add item padding.
4019 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4021         * flower/offset.cc: use math.h iso. <cmath>
4023         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
4024         of IE users.
4026         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
4027         (widen-left-stencil-edges): new function. Fix alignment problems
4028         with LaTeX includegraphics.
4030         * lily/text-interface.cc (interpret_markup): use abort().
4032 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4034         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
4036         * lily/tie.cc (get_configuration): update bezier shape as we
4037         change Y positions.
4038         (get_configuration): don't move large ties if we're outside of the
4039         staff.
4041 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4043         * scm/define-markup-commands.scm (strut): swap X and Y dims.
4044         
4045 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4047         * .cvsignore: Add auto-generated configure files and then some.
4049 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4051         * scm/define-grobs.scm (DynamicLineSpanner): Add
4052         X-extent-callback.  Fixes hairpin-slur collision.
4054 2005-08-31  Graham Percival  <gpermus@gmail.com>
4056         * Documentation/user/advanced-notation.itely,
4057         basic-notation.itely: minor changes.
4059 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4061         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
4062         \linebreak between each .eps file if \betweenLilyPondSystem is
4063         undefined. 
4065         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
4066         music): Document the \linebreak
4068         * Documentation/user/lilypond-book.itely,
4069         input/tutorial/lbook-latex-test.tex,
4070         Documentation/user/examples.itely: Remove \usepackage{graphics}
4072 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4074         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
4076         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
4077         compat bugfix.
4079         * scripts/lilypond-book.py (PREAMBLE_LY): define
4080         inside-lilypond-book
4081         (modify_preamble): new function. Insert \RequirePackage{graphics}
4082         when no {graphics found in preamble.  
4084 2005-08030  Graham Percival  <gpermus@gmail.com>
4086         * Documentation/user/basic-notation.itely, global.itely,
4087         tutorial.itely: misc small changes.
4089 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4091         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
4092         VERSION.
4094 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4096         * lily/tie-column.cc (new_directions): put Tie down on center
4097         staff line. 
4099         * lily/script-interface.cc (before_line_breaking): use
4100         Grob::programming_error
4102         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
4104         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
4105         of splitext.
4107 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4109         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
4111 2005-08-29  Werner Lemberg  <wl@gnu.org>
4113         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
4114         the `*.scale.pfa' files to avoid warnings.
4116 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4118         * lily/tempo-performer.cc (process_music): idem.
4120         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
4122 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4124         * Documentation/user/advanced-notation.itely (Text markup): not a
4125         fragment.
4127         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
4129         * lily/staff-performer.cc (initialize): add tempo/name to
4130         audio_staff_
4133 2005-08-26  Graham Percival  <gpermus@gmail.com>
4135         * Documentation/user/advanced.itely: add text-only example.
4137         * Documentation/user/invoking.itely: add index entries for
4138         convert-ly.
4140         * Documentation/user/ tutorial.itely, basic-notation.itely:
4141         small fixes suggested by Steve D.  Thanks!
4143 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4145         * input/regression/markup-bidi-pango.ly: new file.
4147         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
4148         standard. Remove #ifdef. Remove memleak.
4149         (text_stencil): use text_dir to decide how to composite items.
4150         (text_stencil): determine uniform text direction for the entire
4151         string.
4153         * scripts/lilypond-book.py (output_name): remove
4154         latex_filter_cmd. Non-portable to non-Unix systems. 
4155         (get_latex_textwidth): use File.write and os.unlink() instead.
4157         * THANKS: add Vicente & Trevor.
4159         * lily/grob.cc (discretionary_processing): look up origin for
4160         programming_error too. 
4162         * input/regression/tie-broken.ly: new file.
4164         * lily/tie-column.cc (set_chord_outlines): set outline for line
4165         break case too.
4166         
4167 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4169         * lily/pango-font.cc (text_stencil): don't translate glyphs in
4170         unscaled transform, just translate stencils.
4172         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
4173         MIDI.
4175         * scm/define-markup-commands.scm (wordwrap-string): use
4176         text-direction
4177         (wordwrap-stencils): idem.
4178         (line): idem.
4179         (fill-line): idem.
4180         (wordwrap-stencils): translate last line to right for
4181         text-direction = LEFT.
4183         * scm/define-grob-properties.scm (all-user-grob-properties): add
4184         text-direction.
4186 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4188         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
4189         when copying a Lily_parser object.
4191 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4193         * scm/define-markup-commands.scm (null): add null markup.
4195 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4197         * lily/item.cc: Add documentation of center-invisible
4199 2005-08-24  Graham Percival  <gpermus@gmail.com>
4201         * Documentation/user/advanced-notation.itely: add info about
4202         raising text.
4204         * Documentation/user/programming-interface.itely: fix example
4205         involving raised text.
4207 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4209         * lily/beam.cc (print): fix X start/end points of isolated
4210         beamlets.
4212         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
4214         * lily/multi-measure-rest.cc (set_text_rods): new function.
4216         * lily/vertical-align-engraver.cc (process_music): call
4217         Align_interface::set_axis(). This forces #'elements to be ordered,
4218         preventing random vertical reordering of staves.
4220         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
4221         add avoid-slur property. 
4223         * Documentation/user/basic-notation.itely (Measure repeats): add
4224         countPercentRepeats example.
4226         * Documentation/user/advanced-notation.itely (Other text markup
4227         issues): remove remark about normal-font.  We have \normal-text
4229         * input/regression/tie-chord.ly: add note about remaining bugs.
4231         * lily/tie.cc (print): try Tie_column::set_directions () if
4232         control-points not yet defined.
4234 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4236         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
4237         extent. This fixes braces falling out of the EPS bbox.
4239         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
4240         exactly to bbox.
4242 2005-08-23  Graham Percival  <gpermus@gmail.com>
4244         * {various} : change #up->#UP and #down->#DOWN.
4246         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
4248         * Documentation/user/advanced-notation.itely: clarify
4249         what objects handles text on a multimeasure rest.
4251 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4253         * VERSION (PATCH_LEVEL): release 2.7.7
4255 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4257         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
4259         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
4261         * input/regression/*.ly: formatting clean-up. Default layout
4262         before music expression.
4264         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
4265         romanze28-2 example.
4267         * scm/ps-to-png.scm: remove dir-re function.
4268         (make-ps-images): generate page names, instead of globbing them.
4269         This brings down LilyPond memory usage for make web by a factor
4270         10. (backportme?) 
4272         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
4273         don't use glob. With 3000 files, globbing
4274         Documentation/user/out-www/ can take too much time. (backportme?)
4275         
4276         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
4278         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
4280         * input/regression/tie-manual.ly: new file
4282         * input/regression/tie-chord.ly: update.
4284         * flower/include/interval.hh (struct Interval_t): 
4286         * lily/tie.cc (distance): new function 
4287         (height): new function.
4288         (init): new function
4289         (Tie_details): new struct.
4291         * lily/skyline.cc (skyline_height): new function.
4293         * lily/tie-column.cc (set_chord_outlines): new function.
4294         (new_directions): read tie-configuration
4296         * lily/skyline.cc: fix ASCII art.
4297         
4298 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4300         * python/convertrules.py (string_or_scheme): Fix spelling error
4302 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4303         
4304         * lily/tie-column.cc (set_directions): set directions only once.
4305         (add_configuration): new function.
4307         * lily/tie.cc (set_control_points): new function
4309         * lily/tie-column.cc (new_directions): new function.
4311         * ly/music-functions-init.ly: set 'pitch property
4312         iso. trill-pitch. This makes \relative work with \pitchedTrill
4314         * lily/tie.cc (get_configuration): new function. Don't generate
4315         control points, rather, generate configuration.
4316         remove head-pair property.
4318         * lily/include/tie.hh (struct Tie_configuration): new struct.
4320 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
4322         * Documentation/topdocs/NEWS.tely: clarify.
4324 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4326         * lily/tie.cc: remove minimum-length
4328         * scm/define-grob-properties.scm (all-user-grob-properties):
4329         remove staffline-clearance, y-offset 
4331         * input/regression/tie-dots.ly (Module): remove.
4333         * lily/tie.cc (get_control_points): rewrite. Put short ties in
4334         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
4336         * input/regression/tie-single.ly: new file.
4338 2005-08-21  Graham Percival  <gpermus@gmail.com>
4340         * ly/bagpipe.ly: fix compile problem.
4342 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4344         * lily/midi-item.cc (name): new method.
4346         * lily/staff-performer.cc (acknowledge_audio_element): use
4347         signature of baseclass.
4349         * lily/engraver-group.cc (do_announces): move recursion call out
4350         of while loop. 
4352         * lily/drum-note-performer.cc (class Drum_note_performer): use
4353         process_music everywhere.
4355         * ly/performer-init.ly: add default children everywhere.
4357         * lily/paper-book.cc (output): call paper-book-write-midis
4358         directly: always write MIDI, even if no \layout {} block. 
4360 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4362         * VERSION (PACKAGE_NAME): release 2.7.6
4364         * lily/percent-repeat-engraver.cc (try_music): don't print warning
4365         about not being able to handle repeat.
4367 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4369         * Documentation/user/examples.itely (Piano templates):
4370         * lily/include/performer-group.hh: Remove last traces of
4371         Performer_group_performer.  Fixes make web.
4373 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4375         * Documentation/user/examples.itely (Piano templates): change
4376         Engraver_group_engraver -> Engraver_group
4378         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
4379         scm_stand_in_procs is not weak_any.
4381         * lily/volta-bracket.cc (print): don't use strcmp().
4383         * lily/volta-engraver.cc (process_music): use
4384         Text_interface::is_markup() for setting the 'text property of the
4385         volta bracket.
4387         * input/mutopia/claop.py (accents): update syntax to 2.6
4389         * scm/define-context-properties.scm
4390         (all-user-translation-properties): add countPercentRepeats.
4392         * Documentation/user/basic-notation.itely (Measure repeats): add
4393         isolated percent example.
4395 2005-08-18  Graham Percival  <gpermus@gmail.com>
4397         * input/ {various}: change direction #1, #-1 to
4398         #up/#down or \fooUp, \fooDown.
4400         * Documentation/user/music-glossary.tely: #-1 to #down.
4402         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
4403         to #up, #-1 to #down.
4405 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4407         * lily/include/engraver-group.hh: rename.
4409         * lily/include/performer-group.hh: rename.
4411 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4413         * input/test/script-abbreviations.ly: Removed some old LaTeX
4414         left overs.
4416 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4418         * python/convertrules.py (conv): inside-slur -> avoid-slur.
4419         Remove functions.  Remove if 1: constructs, reindent.
4421         * scripts/convert-ly.py (add_version): Add functions from
4422         convertrules.py
4424         * scm/script.scm (default-script-alist):
4425         s/priority/script-priority.  Fixes script stacking.  Backportme.
4426         (Fermata): Very low priority.
4428 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4430         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
4432         * input/regression/slur-script.ly: remove padding tweaks. Add
4433         comment strings.
4435         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
4436         time sigs and related stuff.
4438         * scm/define-grob-properties.scm (all-user-grob-properties): add
4439         @code{} tags to property description.
4441         * lily/include/line-group-group-engraver.hh (Module): remove file.
4443         * python/convertrules.py (conv): add rule for
4444         Engraver_group_engraver -> Engraver_group.
4446         * lily/include/performer-group-performer.hh: analogous.
4448         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
4450         * lily/context-def.cc (instantiate): check for
4451         Engraver_group_engraver and Performer_group_performer not
4452         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
4454 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4456         * input/les-nereides.ly: Remove three fingering tweaks, update
4457         remaining one.
4459         * input/regression/slur-script-inside.ly: Update, fix doc.
4461         * scm/script.scm: Update to avoid-slur.
4463         * scm/define-grob-properties.scm (avoid-slur): New property.
4465         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4466         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
4467         outside_slur_callback if avoid-slur != #'inside.
4469         * scm/define-grobs.scm (Fingering, Textscript): No
4470         inside-slur/outside-slur preference.
4471         (DynamicLineSpanner): Always outside slur.
4473         * input/regression/slur-script.ly: More tests.
4475 2005-08-17  Graham Percival  <gpermus@gmail.com>
4477         * Documentation/user/lilypond-book: fix notime entry.
4479         * Documentation/user/advanced-notation.itely: add info on
4480         getting an I rehearsal mark.
4482         * Documentation/user/putting.itely: reinstate "I", re-enforce
4483         the fact that \override numbers are the result of
4484         experimentation and personal taste.
4486         * Documentation/user/invoking.itely: update convert-ly bugs.
4488 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4490         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
4491         to #t.
4493         * lily/timing-translator.cc (initialize): don't initialize timing.
4495         * input/regression/stem-spacing.ly (Module): remove file.
4497         * input/regression/spacing-stick-out.ly: specify Score context for
4498         \override
4500         * input/regression/clefs.ly: remove spurious {}s 
4502 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
4504         * Documentation/topdocs/NEWS.tely,
4505         input/regression/repeat-percent-count.ly: clarify a bit.
4507 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4509         * input/no-notation/display-lily-tests.ly: delete
4510         display-lily-init call.
4512         * ly/music-functions-init.ly (displayLilyMusic): move
4513         display-lily-init call at top level, so that the user should not
4514         have to call it.
4516         * scm/define-music-display-methods.scm (note-name->lily-string):
4517         retrieve note names directly from pitchnames using new function `rassoc'.
4518         (display-lily-init): note names list construction removed.
4520 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4522         * THANKS: spello.
4524         * lily/lily-parser.cc (get_header): copy module, instead of
4525         returning it.
4527         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
4528         counters.
4530         * Documentation/user/basic-notation.itely (Measure repeats): add
4531         links to Counter grobs.
4533         * scm/define-grobs.scm (all-grob-descriptions): add
4534         DoublePercentRepeatCounter
4535         (all-grob-descriptions): add PercentRepeatCounter
4537         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
4538         also create counter grobs.
4540         * lily/separation-item.cc (extremal_break_aligned_grob): don't
4541         return grob without space-alist.
4543         * input/proportional.ly: tune staff-padding.
4545         * input/regression/repeat-percent-count.ly: new file. 
4547 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4549         * input/no-notation/display-lily-tests.ly: moved from
4550         input/regression/ to input/no-notation. Be sure to call
4551         `display-lily-init' before trying to use the display function.
4553 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4555         * scripts/lilypond-book.py (option_definitions): Don't localize
4556         the empty string. Fixes bug when --psfonts was used with
4557         non-English locale.
4559 2005-08-15  Graham Percival  <gpermus@gmail.com>
4561         * lily/tuplet-bracket.cc: simple build fix.
4563         * Documentation/user/putting.itely: use "we" instead of "I".
4565         * Documentation/user/basic-notation.itely: cautionary accidentals
4566         work with naturals, too.
4568 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4570         * lily/tuplet-bracket.cc (calc_position_and_height): add
4571         staff-padding support.
4573         * input/proportional.ly: set staff-padding.
4574         
4575         * VERSION (PATCH_LEVEL): release 2.7.5
4577         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
4578         fixes. Remove tweaks.
4580         * input/regression/tuplet-slope.ly: add a test case.
4582         * lily/tuplet-bracket.cc (calc_position_and_height): revert
4583         erroneous fix. Add spanner bounds to offset array with relative X
4584         positions.
4586         * ly/engraver-init.ly: add Rest_engraver only once.
4588         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
4589         (*parser*) lookup if (*parser*) != #f.
4591 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4593         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4594         Cut-and paste update.
4596         * input/regression/slur-script.ly: Add example of reverting
4597         inside-slur for fingering.
4599         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
4600         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
4602         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
4603         outside_slur_callback if inside-slur == #f (as opposed to unset).
4605 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4607         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
4608         encoding files are already removed.
4610 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4612         * Documentation/user/advanced-notation.itely (Instrument names):
4613         Document a workaround for instrument names that collide with
4614         system start braces/brackets.
4616 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4618         * lily/rest-collision.cc (do_shift): spello.
4620         * input/proportional.ly: use #'used property. Set break-overshoot
4621         property.
4623         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
4625         * lily/paper-column.cc: add #'used property
4627         * lily/mark-engraver.cc (stop_translation_timestep): set grob
4628         array for staves found.
4630         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
4631         array for stavesFound.
4633         * lily/staff-spacing.cc (next_note_correction): add fixed and
4634         space to calling convention. This fixes spacing of accidentals
4635         after barlines.
4637         * input/regression/spacing-accidental-stretch.ly: add barline -
4638         accidental case.
4640         * scm/framework-ps.scm (page-header): add version number to
4641         creator
4642         (eps-header): idem.
4644         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
4645         
4646 2005-08-13  Graham Percival  <gpermus@gmail.com>
4648         * Documentation/user/global.itely: add "fit as much as
4649         possible onto this page" example (Vertical spacing).
4651 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4653         * *: Nitpick run.
4655         * buildscripts/fixcc.py: Fixes.
4657 2005-08-12  Graham Percival  <gpermus@gmail.com>
4659         * Documentation/user/advanced-notation.itely: add markup
4660         example to Text spanners.
4662 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4664         * Documentation/user/basic-notation.itely (Ties): Add example of
4665         tying a tremolo to a chord. Thanks to Steve Doonan. 
4667         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
4668         properties and move tieMelismaBusy to the list of written
4669         properties. 
4671 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
4673         * po/TODO: suggest to use a dedicated tool like kbabel.
4675         * po/fi.po: update using kbabel.
4677 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4679         * *: Remove obsolete files.  Nitpick run.
4681         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
4683 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4685         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
4686         too.
4688         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
4690         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
4691         whitespace as symbol separator.
4693         * lily/side-position-interface.cc: Add slur-padding.
4695         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
4696         quite a large fix, and it never worked in a stable release; so not
4697         really a regression.
4699         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
4700         Update cut and paste code from Slur_engraver.
4702         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
4703         Add.
4705         * scm/define-grobs.scm (DynamicLineSpanner): Add
4706         dynamic-line-spanner-interface.
4707         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
4709 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4711         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
4712         to_boolean () so that non-set 'inside-slur means false.
4714         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
4715         slur has control-points.  Skip script without direction.  Always
4716         do_shift if script inside slur, even if slur not contained in
4717         script y-extent.  Increment k in loop.
4719 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4721         * scm/define-markup-commands.scm: Improved regexp to search for
4722         EPS bounding boxes and corrected call to ly:warning.
4724 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4726         * Documentation/user/programming-interface.itely (Displaying music
4727         expressions): doc for \displayLilyMusic. Also some precisions in
4728         "Markup construction in Scheme"
4730 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4732         * scm/define-markup-commands.scm (normal-text): Added 2 new
4733         markup commands, \normal-text and \medium (the latter thanks to
4734         Bruce Fairchild). 
4736 2005-08-08  Graham Percival  <gpermus@gmail.com>
4738         * Documentation/user/programming-interface.itely: fix @{ @}.
4740         * scm/define-markup-commands.scm: add linewidth info to
4741         \justify and \wordwrap, add "upright is the opposite of italic".
4743         * Documentation/user/advanced-notation.itely: shaped->shape,
4744         add (cons (markup "foo")) type of example to text markup,
4745         reword multi-measure rests section.
4747         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
4748         comment.  No actual code was touched.
4750         * Documentation/user/invoking.itely: add more info about
4751         \include.  Thanks, Bruce!
4753         * THANKS: add Bruce Fairchild, alphabetise.
4755         * Documentation/user/global.itely: document \score{\header{}}
4756         behavior.
4758         * Documentation/user/basic-notation.itely: reword multi-measure
4759         rest discussion in Rests.
4761 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4763         * Documentation/user/programming-interface.itely (Markup
4764         construction in Scheme): Corrected example and tried to clarify
4765         the implicit \line in the table.
4767 2005-08-07  Graham Percival  <gpermus@gmail.com>
4769         * Documentation/user/instrument-notation.itely: moved
4770         some bagpipe info back into the bagpipe section.  Somehow
4771         it ended up in the "other vocal issues" section?!  :o_O
4773 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4775         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
4776         directories, not paths).
4778 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4780         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
4781         plain emmentaler/aybabtu.  Backportme.
4783         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
4784         missing dir correction.
4786 2005-08-05  Graham Percival  <gperlist@shaw.ca>
4788         * scm/define-markup-commands: fix reversed justify/wordwrap
4789         doc strings.
4791 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
4793         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
4794         lily/gregorian-ligature-engaver.cc,
4795         lily/include/ligature-engraver.hh,
4796         lily/include/coherent-ligature-engraver.hh,
4797         lily/include/gregorian-ligature-engraver.hh: make these classes
4798         truely abstract.  This should fix some internal oddities such as
4799         duplicate as well as dead translator/property declarations, and
4800         also some dead code.
4802         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
4803         bugfix: avoid message "junking empty ligature" on ligature
4804         brackets by collecting dummy grobs.
4806 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4808         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
4810         * input/proportional.ly (staffKind): bugfix.
4811         (staffKind): updates by Trevor Baca.
4813         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
4814         default layout. 
4816         * lily/tuplet-bracket.cc (print): check whether edge-text is a
4817         pair.
4819         * lily/beam.cc (rest_collision_callback): call position_beam() if
4820         necessary.
4822         * VERSION: release 2.7.4
4824         * input/regression/spacing-uniform-stretching.ly: new file.
4826         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
4828         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
4829         contributor.
4831         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
4833         * input/proportional.ly: new file.
4835         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
4836         columns is empty
4838         * lily/tuplet-engraver.cc (finalize): new function. Reset right
4839         bounds to currentCommandColumn for the last step.
4840         (start_translation_timestep): if tupletFullLength is set, set
4841         bound to Paper Column
4843         * input/regression/tuplet-full-length.ly (indent): new file.
4845         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
4846         clique of loose columns, eg. a set of grace notes in strict
4847         notespacing.
4849         * input/regression/spacing-strict-spacing-grace.ly: new file.
4851         * lily/key-signature-interface.cc: change property name to
4852         alteration-alist
4854         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
4855         keyAccidentalOrder
4857         * python/convertrules.py (conv): keyAccidentalOrder ->
4858         keyAlterationOrder
4860         * lily/key-engraver.cc (create_key): always print a cancellation
4861         for going to C-major/A-minor, regardless of printKeyCancellation.
4862         (create_key): remove typecheck for visibility. This fixes key
4863         signature not being printed.
4865         * lily/spacing-determine-loose-columns.cc: new file.
4867         * input/regression/spacing-strict-notespacing.ly: new file.
4869         * lily/spacing-spanner.cc (generate_springs): rename from
4870         do_measure. 
4871         (generate_pair_spacing): new function.
4872         (init, generate_pair_spacing): set between-cols for floating
4873         nonmusical columns.
4875         * lily/spaceable-grob.cc (get_spring): new function. 
4877         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
4878         relative to the right edge of the prefatory matter.
4880         * lily/beam.cc (print): read break-overshoot to determine where to
4881         stop/start broken beams.
4883         * input/regression/spanner-break-overshoot.ly: new file.
4885 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4887         * ly/bagpipe.ly: updated.
4889         * Documentat/user/instrument.itely: un-comment out bagpipe example.
4891 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4893         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
4894         support: now (de)crescs avoid slurs as well.
4896         * Documentation/user/instrument-notation.itely (Bagpipe example):
4897         comment out non-functioning bagpipe example.
4898         (Bagpipe definitions): idem.
4900         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
4901         (Top): add proportionalNotationDuration example.
4903         * input/regression/spacing-proportional.ly: new file.
4905         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
4906         synched to a beam.
4908         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
4909         fixes beams with a single stem (eg. beams across linebreaks.)
4911         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
4913         * flower/rational.cc (operator +): prevent overflow. This fixes
4914         heavily nested tuplets.
4916         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
4917         have to protect even those unlikely to be corrupted data members.  
4919 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4921         * ly/bagpipe.ly: new file.
4923         * THANKS: added Sven Axelsson.
4925 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4927         * lily/spacing-engraver.cc (stop_translation_timestep): directly
4928         copy proportionalNotationDuration into currentMusicalColumn if
4929         set.
4931         * lily/spacing-spanner.cc (musical_column_spacing): if
4932         uniform-stretching set, fixed space is 0.0
4934         * input/regression/spacing-multi-tuplet.ly: show
4935         uniform-stretching property.
4937         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
4939         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
4940         (struct Spacing_options): new struct.
4942         * lily/spacing-basic.cc: new file.
4944         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
4945         delta_t doesn't have to be smaller than shortest_playing_len
4947 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4949         * input/regression/markup-arrows.ly:  new file.
4951         * lily/tuplet-bracket.cc: document new behavior.
4953         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
4954         with line breaks.
4956         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
4958         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
4959         default 
4961         * lily/tuplet-bracket.cc: add edge-text property.
4962         add break-overshoot.
4963         (print): read break-overshoot.
4964         (print): read edge-text, add stencils.
4966         * mf/feta-arrow.mf: new file.
4968         * mf/feta-generic.mf: add feta-arrow.
4970 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4972         * Documentation/user/lilypond-book.itely (An example of a
4973         musicological document): Added flag -o to dvips for people who use
4974         the default setting in teTeX where output is sent to the printer. 
4976         * Documentation/user/global.itely (Vertical spacing): Added
4977         reference to the Axis_group_engraver which documents the *Extent
4978         properties.
4980 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4982         * Documentation/user/basic-notation.itely (Tuplets): add note
4983         about nested tuplets. Remove BUG. 
4985         * input/regression/tuplet-nest.ly: update: remove manual hack. 
4987         * lily/tuplet-bracket.cc (print): use robust_scm2drul
4988         (print): manually call print() for subtuplets.
4989         (calc_position_and_height): add subtuplets to the
4990         support. Vertically shift outer tuplet 
4992         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
4993         remove-first for Lyrics, ChordNames and FiguredBass
4995         * scm/define-grob-properties.scm (all-internal-grob-properties):
4996         use ly:grob-array? iso. grob-list?
4997         (all-internal-grob-properties): add tuplets grob-array.
4999         * lily/tuplet-bracket.cc (add_tuplet_bracket):
5000         new function
5002 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5004         * input/test/time-signature-staff.ly: new file.
5006         * ly/declarations-init.ly (center): escape to Scheme. Fixes
5007         spurious #<Music FingerEvent> errors. Backportme.
5009 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5011         * Documentation/user/programming-interface.itely (Markup
5012         construction in Scheme): Corrected markup syntax in the
5013         translation table.
5015 2005-08-03  Graham Percival  <gperlist@shaw.ca>
5017         * Documentation/user/instrument-notation.itely: small update
5018         to bagpipe notation docs; thanks Sven!
5020         * Documentation/user/basic-notation.itely: add link about trills.
5022 2005-08-02  Graham Percival  <gperlist@shaw.ca>
5024         * Documentation/user/music-glossary: remove accidentally committed
5025         fink patch.
5027 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
5029         * lily/lily-parser.cc (get_header): new function. Enable multiple
5030         \header definitions.
5032         * lily/parser.yy (lilypond_header_body): use get_header.
5034         * ly/init.ly:
5035         * scm/lily-library.scm (print-score-with-defaults): renamed
5036         $globalheader to $defaultheader
5037         
5038         * Documentation/user/global.itely (Creating titles): added short
5039         explanation that multiple headers are useable.
5042 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5044         * lily/module-scheme.cc (LY_DEFINE): new file. 
5046         * Documentation/user/advanced-notation.itely (Font selection): add
5047         doco for make-pango-font-tree.
5049 2005-07-31  Graham Percival  <gperlist@shaw.ca>
5051         * Documentation/user/music-glossary: more languages
5052         for tenuto.
5054         * Docuemntation/user/instrument-notation.itely: minor
5055         update for bagpipe example.
5057 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5059         * input/regression/+.ly (TODO): add some text.
5061 2005-07-28  Graham Percival  <gperlist@shaw.ca>
5063         * Documentation/user/invoking.itely: \score begins with music.
5065         * Documentation/user/ basic-notation.itely,
5066         instrument-notation.itely: minor changes.
5068         * Documentation/user/music-glossary.itely: began tenuto entry.
5070 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5072         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
5074         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
5076 2005-07-27  Graham Percival  <gperlist@shaw.ca>
5078         * Documentation/user/examples.itely: remove bagpipe template.
5080         * Documentation/user/instrument-notation.itely: add bagpipe
5081         section, maybe fix quotes in lyrics.  I hate text encoding.
5082         Clarify chord durations, more bagpipe stuff.
5084 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5086         * lily/accidental-engraver.cc: formatting fixes.
5088         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
5089         grob-array.
5091         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
5093         * lily/note-column.cc (arpeggio): new function.
5095         * lily/note-spacing.cc (get_spacing): also take arpeggio into
5096         account for spacing.
5098 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5100         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
5101         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
5102         mingw build.
5103         
5104 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5106         * scm/lily.scm (lilypond-all): clear anonymous modules after
5107         processing files.
5109 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5111         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
5112         SCM_I_CONSP
5114         * VERSION: 2.7.3 released
5116         * Documentation/user/invoking.itely (Invoking lilypond): add
5117         LILYPOND_GC_YIELD documentation.
5119         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
5120         scm_from_real / scm_make_real.
5122         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
5123         higher. This increases memory footprint, but provides overall
5124         speedup of 15 to 20%. 
5126         * lily/include/translator.hh (class Translator): remove
5127         PRECOMPUTED_VIRTUAL everywhere.
5129         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
5131         * lily/context.cc (now_mom): non-recursive now_mom() 
5133         * lily/include/profile.hh: new file.
5135         * lily/profile.cc: new file.
5137         * lily/grob.cc (Grob::Grob): look properties up directly.
5139         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
5140         lookups.
5142         * lily/include/box.hh (class Box): smob Box type.
5144         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
5146         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
5147         protect() and unprotect(). Use throughout.
5149 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5151         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
5153         * scm/define-music-display-methods.scm (markup->lily-string):
5154         markup elements can also be strings (without simple-markup
5155         appended)
5157 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5159         * lily/context.cc (where_defined): also assign value in
5160         where_defined().
5162         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
5163         (curve_coordinate): new function
5165         * lily/simple-spacer.cc (add_columns): only add rods between
5166         column i and begin/end if keep-inside-line is set (this repleces
5167         allow-outside-line as default)
5169 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5171         * lily/tuplet-engraver.cc (start_translation_timestep): only read
5172         tupletSpannerDuration if applicable.
5174         * lily/font-size-engraver.cc (process_music): read fontSize only
5175         once per timestep.
5177         * lily/engraver*cc: use throughout.
5178         
5179         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
5181         * lily/translator.cc (add_acknowledger): new file. Directly jump
5182         into an Engraver::acknowledge_xxx () method based on a grobs
5183         interface-list.
5185         * lily/include/translator-dispatch-list.hh (class
5186         Engraver_dispatch_list): new struct, new file.
5188         * scm/define-context-properties.scm
5189         (all-internal-translation-properties): remove acceptHashTable,
5190         acknowledgeHashTable
5192         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
5194         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
5195         change acknowledgeHashTable to C++ member. 
5197         * lily/rest-collision.cc (do_shift): use extract_grob_set().
5199 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5201         * scm/display-lily.scm: new file. Define a `display-lily-music'
5202         function, that displays the music expression given as an argument,
5203         using LilyPond notation.
5205         * scm/define-music-display-methods.scm: new file. Implementation
5206         of display methods for each music type.
5208         * ly/music-functions-init.ly (displayLilyMusic): new function for
5209         displaying music with LilyPond notation.
5211         * input/regression/display-lily-tests.ly: new regression test file
5212         for `display-lily-music'.
5214         * scm/markup.scm: remove obsolete debugging code (for printing
5215         markups with LilyPond notation).
5217         * scm/define-music-types.scm (music-name-to-property-table):
5218         * scm/clef.scm (supported-clefs): export, in order to be accessible
5219         from the (scm display-lily) module.
5221 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5223         * Documentation/topdocs/NEWS.tely (Top): Typo.
5225 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
5227         * Documentation/index.html.in, Documentation/texinfo.css,
5228           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
5229           Documentation/bibliography/index.html.in,
5230           Documentation/bibliography/html-long.bst: revert css-width patch,
5231           it does not work with IE6.
5233 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5235         * Documentation/texinfo.css: revert 760px hack. 
5237         * VERSION: release 2.7.2
5239         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
5241         * Documentation/user/basic-notation.itely (Barnumber check): add
5242         section.
5244         * scm/music-functions.scm (skip-to-last): new function. Show only
5245         last showLastLength part of the \score.
5247         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
5249         * python/convertrules.py (conv): add ly:x-moment rule
5251         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
5253         * Documentation/topdocs/NEWS.tely (Top): add new feature.
5255         * Documentation/user/instrument-notation.itely (Flexibility in
5256         alignment): options in subsections.
5258         * lily/lyric-engraver.cc (process_music): don't typeset text for _
5259         syllable text. Instead, assume that the previous lyric text is a
5260         melismated text.
5262         * Documentation/index.html.in: revert 800x600 change.
5264 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5266         * lily/main.cc (main): Remove invalid handle kludge.
5268         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
5269         (lambda): add gui define.
5271 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5273         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
5275         * Documentation/user/instrument-notation.itely (Musica ficta
5276         accidentals): add section Musica ficta accidentals
5278         * lily/accidental-engraver.cc (make_suggested_accidental): new
5279         function.
5280         (make_standard_accidental): move into new function.
5281         (create_accidental): new function.
5283         * scm/define-grobs.scm (all-grob-descriptions): new Grob
5284         AccidentalSuggestion
5286         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
5288         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
5289         undefined.
5291         * Documentation/user/global.itely (Page formatting): document
5292         horizontalshift.
5294         * scm/page-layout.scm (default-page-music-height):
5295         horizontalshift: new variable, shift all systems by
5296         horizontalshift to the right, to make space for instrument names.
5298         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
5300         * lily/input-scheme.cc (LY_DEFINE): take format commands.
5302 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5304         * lily/note-column.cc (dir): idem.
5306         * lily/spacing-spanner.cc (Module): idem.
5308         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
5310         * lily/include/paper-column.hh (class Paper_column): add
5311         non-static get_rank() member.
5313         * VERSION: release 2.7.1
5314         
5315         * scm/framework-null.scm: new file, used for benchmarking.
5317 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
5319         * Documentation/topdocs/INSTALL.texi, configure.in: fix
5320         version dependencies for fontforge and gs.
5322         * Documentation/index.html.in, Documentation/texinfo.css,
5323         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
5324         Documentation/bibliography/index.html.in, 
5325         Documentation/bibliography/html-long.bst: optimize width of
5326         html for a 800x600 screen (width:760), increases printability
5327         when 'fit to page' is not set and readability in wide screens.
5329         * stepmake/bin/add-html-footer.py: add missing </p>.
5331 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5333         * scm/define-markup-commands.scm (beam): use polygon in beam
5334         command.
5336         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
5337         all acknowledged grobs, and do potentially expensive merge and
5338         write in one go.
5340         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
5342         * configure.in (reloc_b): add --enable-static-gxx to statically
5343         link to libstdc++
5345         * lily/GNUmakefile (static-gxx-libs): new target
5346         static-gxx-libs. Create symlink to libstdc++.a
5348         * lily/new-lyric-combine-music-iterator.cc: rename to
5349         Lyric_combine_music_iterator
5351         * lily/lyric-combine-music-iterator.cc
5352         (Old_lyric_combine_music_iterator): rename to
5353         Old_lyric_combine_music_iterator
5355         * lily/*-engraver.cc (various): remove double use of
5356         PRECOMPUTED_VIRTUAL function: only use
5357         start_translation_timestep() and stop_translation_timestep(), not
5358         both.
5360         * lily/break-substitution.cc (fast_substitute_grob_array): do
5361         fast_substitute_grob_array for all unordered grob_arrays.
5362         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
5363         (substitute_grob_array): optimize.
5365         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
5367         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
5369         * lily/parser.yy: revert $globalheader patch.
5370         
5371         * lily/include/translator.icc
5372         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
5373         Translator methods, without _static helper.
5375         * lily/grob-smob.cc (derived_mark): rename from
5376         do_derived_mark(). Return void.
5378         * scm/define-context-properties.scm
5379         (all-internal-translation-properties): remove tweakCount/tweakRank.
5381         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
5382         predefined break-visibilities.
5384         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
5385         booleans for break-visibility.
5387         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
5389         * python/convertrules.py (conv): rule for Timing_translator. 
5391         * lily/include/translator.icc: new file. 
5393         * lily/paper-column-engraver.cc (process_music): new
5394         file. Separate Paper_column factory from Score_engraver.
5396         * lily/vertically-spaced-context-engraver.cc: administer
5397         spaceable-staves property of System.
5399         * lily/translator-group-ctors.cc: new file.
5401         * lily/context-property.cc (make_grob_from_properties): construct
5402         the right Grob class programmatically, looking at the class entry
5403         for the meta property.
5405         * lily/break-align-engraver.cc (stop_translation_timestep): call
5406         Break_align_interface::add_element() directly.
5408         * lily/context.cc (measure_position): measure_position() is now a
5409         normal function.
5411         * lily/include/translator.hh (class Translator): rename
5412         process_acknowledged_grobs() to process_acknowledged() and move to
5413         Translator.
5415         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
5416         field for each grob description.
5418         * lily/include/translator-group.hh (class Translator_group):
5419         change to base class. Separate class from Translator. This gets
5420         rid of virtual inheritance for Engravers/Performers.
5422         * lily/staff-performer.cc (class Staff_performer): derive
5423         Staff_performer from Performer, not Performer_group_performer 
5425         * Lily/translator-group.cc (precomputed_recurse_over_translators):
5426         new function.
5427         (precompute_method_bindings): new function. Precompute lists of
5428         Translators, so we only call methods (process_music,
5429         start_translation_timestep, etc.) for Translators needing
5430         it. Also: dispose of pointer-to-member-function calls.
5432         * lily/engraver-group-engraver.cc: remove engraver_each,
5433         recurse_down_engravers ()
5435         * lily/note-head.cc (internal_print): only call
5436         glyph-name-procedure if style != default. 
5438 2005-07-16  Graham Percival  <gperlist@shaw.ca>
5440         * ly/titling-init.ly: add printallheaders option.
5442         * Documentation/user/global.itely: document printallheaders.
5444 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5446         * lily/system.cc (do_derived_mark): don't mark from object_alist_
5447         anymore, but do it centrally.  
5449         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5450         hammer hack.
5452         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
5454         * scm/output-lib.scm: remove hammer-print-function.
5456         * lily/include/pointer-group-interface.hh (extract_grob_set): new
5457         macro. Declare a Link_array<Grob> and fill it from a grob.
5458         (extract_item_set): idem for item.
5460         * lily/break-substitution.cc: add header.
5461         (fast_substitute_grob_array): rewrite for Grob_arrays.
5462         (substitute_grob_array): idem.
5464         * lily/group-interface.cc (add_thing): remove file.
5466         * flower/include/parray.hh (class Link_array): slice() is const.
5468         * lily/include/grob-array.hh: new file.
5470         * lily/grob-array.cc (spanner): new file.
5472         * lily/beam-quanting.cc (fill): read details property from beam.
5474         * lily/beam.cc: support details property.
5476         * total speedups below: approx 10%.
5478         * lily/include/beam.hh: new struct, softcode beam quanting parameters
5480         * lily/include/grob.hh (class Grob): add interfaces_ member.
5482         * lily/bezier.cc (init_polynomial_cache): new function: cache
5483         binom(3,j) t^j (1-t)^{3-j}
5484         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
5486         * lily/*.cc: substitution throughout.
5488         * lily/grob-property.cc (internal_get_object): new routine.
5489         (internal_set_object): idem. Store grob refrences in separate
5490         alist. This saves processing time, since properties aren't
5491         break-substituted, and the per grob namespace is smaller, both for
5492         grobs and non-grob properties.
5494         * scm/define-grob-properties.scm (all-internal-grob-properties):
5495         remove center-element.
5497         * lily/grob.cc: remove tweak-count, tweak-rank.
5499 2005-07-15  Graham Percival  <gperlist@shaw.ca>
5501         * Documentation/user/lilypond-book.itely: fixes example.
5503 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5505         * Documentation/user/global.itely (Creating titles):    
5506         * Documentation/user/examples.itely (All headers): change the
5507         place of \header in \score blocks (after music block) to make
5508         examples compile (cf. changes on parser.yy on 2005-07-10)
5510 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5512         * python/convertrules.py: add exc -> ecc rule.
5514         * scripts/convert-ly.py: add location of convertrules.py
5515         in a comment.
5517         * Documentation/user/changing-defaults.itely: fix language.
5519 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5521         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
5523 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5525         * scm/output-socket.scm (grob-bbox): don't use inf? 
5527         * flower/include/rational.hh: add operator bool() 
5529         * scm/define-music-types.scm (music-descriptions): remove
5530         internal-class-name properties.
5532         * lily/include/event.hh: remove file.
5534         * lily/include/music-constructor.hh: remove file.
5536         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
5537         in 'types property.
5539         * lily/music.cc (duration_length_callback): new function.
5541         * lily/event.cc: remove file.
5543         * lily/music-constructor.cc: remove file.
5545         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
5547         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
5548         (get_context_key): idem.
5550         * scm/lily.scm (lambda): new option object-keys (default to #f)
5552         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
5554         * scm/output-gnome.scm: remove beam routine.
5556         * scm/output-ps.scm (scm): idem.
5558         * scm/output-svg.scm: remove beam.
5560         * ps/music-drawing-routines.ps: remove draw_beam.
5562         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
5564         * flower/include/guile-compatibility.hh (scm_from_locale_string):
5565         add scm_from_locale_string compatibility glue. 
5567 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
5569         * scripts/lilypond-book.py: Prevent occuring error when
5570         'lilypond-book --output=foo/ somefile.ly' is executed multiple
5571         times and target file shoud be overwritten.  (Error message said
5572         'input file and output file is same'.)
5574 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5576         * input/regression/slur-extreme.ly,
5577         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
5578         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
5579         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
5580         "excentricity" to "eccentricity".
5582         * Documentation/user/converters.itely: fix URL for Noteedit and
5583         Rosegarden.
5585         * THANKS: added Yoshinobu Ishizaki.
5587 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5589         * scm/define-markup-commands.scm (justify-field): add. 
5591         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
5593 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5595         * lily/lookup.cc (filled_box): express filled_box with
5596         round_filled_box
5598         * scm/midi.scm (paper-book-write-midis): new function. Write all
5599         performances in numbered MIDI files.
5601         * lily/performance-scheme.cc (LY_DEFINE): new file.
5602         (LY_DEFINE): new function ly:performance-write.
5604         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
5605         new function.
5606         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
5608         * scm/framework-*.scm: use port arguments throughout.
5610         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
5612         * lily/paper-outputter.cc (Paper_outputter): take port argument.
5614         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
5616         * scm/framework-texstr.scm (output-framework): 
5618         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
5620         * scm/output-lib.scm (tablature-stem-attachment-function):
5621         tablature stem attachment fix. 
5623 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5625         * lily/bezier.cc: hardcode binomial coefficients of order 3.
5627         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
5629         * scm/define-music-types.scm (music-descriptions): don't use
5630         Music_wrapper type.
5632         * lily/paper-column.cc (print): print moment too.
5634         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
5635         remove compatibility cruft.
5637         * lily/parser.yy (score_body): \score can only begin with Music. 
5639         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
5640         make-score. Take music argument only. Move parser interaction to
5641         Scheme.
5643         * scm/lily-library.scm (scorify-music): new function.
5645         * python/lilylib.py (datadir): remove 2.1 compat kludge.
5646         (datadir): remove resource import.
5647         (print_environment): remove get_bbox()
5648         (cp_to_dir): remove pre 1.5.2 compat glue.
5650 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5652         * lily/include/simple-spacer.hh (Module): idem.
5654         * lily/include/spring.hh (struct Spring): store inverse
5655         strength. This prevents division by zero.
5657         * VERSION: release 2.7.0
5658         
5659         * lily/include/music.hh (class Music): remove Music::duration_log()
5661         * lily/stem-engraver.cc (make_stem): take duration log from event.
5663         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
5665 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5667         * scm/lily.scm (ly:load): load autochange.scm
5669         * Documentation/user/tutorial.itely (Running LilyPond for the
5670         first time): remove reference to DVI/TeX
5672         * scm/define-markup-commands.scm (text): add \text markup command.
5674         * configure.in (reloc_b): bump requirement to Python 2.2.
5676         * lily/include/dots.hh (class Dots): make has_interface() static.
5678         * python/convertrules.py (conv): add rule for ly:grob-default-font
5680         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
5681         alphabetical order.
5683         * input/regression/trill-spanner-pitched.ly: new file.
5685         * lily/font-interface-scheme.cc (LY_DEFINE): function
5686         ly:grob-default-font (changed from get-default-font).
5688         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
5690         * lily/note-head.cc (internal_print): if style is not a symbol,
5691         set style to 'default. 
5692         (internal_print): no style suffix if glyph-name-procedure not
5693         set. Default to quarter head.
5695         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
5697         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
5699         * ly/music-functions-init.ly: \pitchedTrill
5701         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
5703         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
5705         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
5707         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
5709         * po/fr.po: update
5711         * po/de.po: update.
5713 2005-07-06  Graham Percival  <gperlist@shaw.ca>
5715         * Documentation/user/changing-defaults.itely: add link
5716         to grob-iterface.
5718         * Documentation/user/advanced-notation.itely: add material
5719         to Setting automatic beam behaviour.  Thanks, Joe!
5721         * Documentation/user/lilypond.itely: change encoding to utf-8.
5723 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5725         * Documentation/user/advanced-notation.itely (Setting automatic
5726         beam behavior): Correct the documentation of
5727         revert-auto-beam-setting (backportme)
5729 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5731         * lily/ly-module.cc (ly_make_anonymous_module): define
5732         %module-public-interface of module. 
5734         * lily/lily-parser.cc (print_smob): allow printing of parser smob
5735         without lexer.
5737 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5739         * input/regression/fret-diagrams.ly: stretch example.
5741 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5743         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
5744         Fodor).
5746 2005-06-30  Graham Percival  <gperlist@shaw.ca>
5748         * Documentation/topdocs/AUTHORS.texi: update personal web address.
5750         * Documentation/user/examples.itely, lilypond-book.itely:
5751         change \RequirePackage to \usepackage.
5753         * Documentation/user/global.itely: document copyright and tagline.
5755 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5757         * Documentation/user/basic-notation.itely (Transpose): remove link
5758         to nonexistent UntransposableMusic.
5760         * scm/output-svg.scm: remove old definitions.
5762         * scripts/lilypond-book.py (do_file): search for kpsewhich before
5763         invoking.
5765         * python/lilylib.py (search_exe_path): new function.
5767 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5769         * python/lilylib.py (mkdir_p): remove setup_environment()
5770         (backportme)
5772         * buildscripts/mutopia-index.py (headertext): trim text.
5774         * Documentation/topdocs/NEWS.tely (Top): refresh.
5776         * scm/define-markup-commands.scm (wordwrap-string): new function:
5777         split string in paras and words.
5778         (wordwrap-markups): new function.
5779         (wordwrap-stencils): new function. 
5780         (justify): use it.
5781         (wordwrap): use it.
5782         (wordwrap-string): use it
5783         (justify-string): use it.
5785         * scm/lily-library.scm (regexp-split): new function.
5787         * scm/define-markup-commands.scm: remove encoded-simple. 
5788         remove font-markup.
5789         (fontsize): remove old version  of fontsize.
5790         (wordwrap): new markup function. Wrap into paragraphs.
5792         * VERSION: Branch lilypond_2_6
5793         (MINOR_VERSION): go to 2.7.0
5795 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5797         * po/zh_TW.po: update from translation project.
5799 2005-06-28  Graham Percival  <gperlist@shaw.ca>
5801         * scm/midi.scm: compile fix.
5803 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5805         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
5806         patch. Now, the tempfile module is loaded too, not only used.
5808 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
5810         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
5811         0.05 - 1.00 to 0.25 - 1.00
5813         * scm/midi.scm: moved the default-instrument-equalizer procedure
5814         to just under the insturment-equalizer-alist it takes as an
5815         argument.
5817 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5819         * Documentation/user/advanced-notation.itely (Font selection):
5820         remove CMR note.
5822         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
5824 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5826         * THANKS: Add UTF-8 marker.
5828         * Documentation/user/point-and-click.itely (http): Update: use
5829         lilypond-invoke-editor.  Fix: instruct to use user.js.
5831 2005-06-27  Graham Percival  <gperlist@shaw.ca>
5833         * ly/titling-init.ly: implements printpagenumber, increases
5834         space between dedication and title (to avoid collisions with
5835         "g" and "q" in dedication), and nicer logic about copyright
5836         and instrument fields being printed on the first page.
5837         Thanks Vincent!
5839         * Documentation/user/global.itely: document printpagenumber.
5841 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5843         * Documentation/topdocs/NEWS.tely: Update to 2.6.
5845 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5847         * THANKS: update to 2.6
5849         * VERSION: 2.6.0 released.
5851 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5853         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
5854         rule, errorneously removed probably because of misleading comment.
5856 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5858         * python/lilylib.py (datadir): py2exe comments.
5860         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
5862         * configure.in (reloc_b): make fontconfig REQUIRED.
5864 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
5866         * po/fi.po: add latest translations.
5868 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5870         * ChangeLog: recode utf-8
5872         * Documentation/pictures/lilypond.xpm (Module): edited photo as
5873         logo.
5875         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
5877         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
5879         * python/convertrules.py (do_conversion): don't print program_name
5880         from within a module
5882         * configure.in (reloc_b): bump fontforge requirement to 20050624.
5884         * python/convertrules.py (conv): add 2.6.0 dummy rule.
5886 2005-06-23  Graham Percival  <gperlist@shaw.ca>
5888         * Documentation/user/lilypond-book.itely,
5889         Documentation/user/examples.itely: add \RequirePackage{graphics}.
5891         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
5892         fixes baseline-skip.  Thanks Vincent!
5894         * Documentation/user/advanced-notation.itely, global.itely:
5895         moved "Selecting font sizes" to global, since it deals with
5896         notation font size, not text fonts.
5898 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5900         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
5901         to fonts.
5903 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5905         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
5906         workaround since /dev/stdin doesn't work on Cygwin. Using a
5907         temporary file in the current directory since latex doesn't
5908         understand the path name to the default TMP in Cygwin (at least on
5909         win XP).
5910         
5911         * Documentation/user/global.itely (Creating titles): Correct
5912         misprint in example. Thanks to Rob Vlasaty.
5914 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5916         * VERSION (PATCH_LEVEL): release 2.5.32
5918         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
5919         variable in lily module
5921         * scm/framework-ps.scm (output-classic-framework): error message
5922         regarding the classic framework.
5924         * Documentation/user/henle-flat-gray.png (Module): new file.
5926         * Documentation/user/baer-flat-gray.png (Module): new file.
5928         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
5929         whiteout for markups.
5931         * buildscripts/substitute-encoding.py (note_glyph): include _ in
5932         regex too. This fixes change clef appearance in PDF. 
5934         * ttftool/include/*: remove.
5936         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
5938         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
5940         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
5942         * ttftool/*: remove ttftool subdirectory.
5944         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
5946         * lily/ttf.cc (print_header): new file. Convert to type42, using
5947         FreeType to parse the TTF. 
5949         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
5950         and post table may differ. Pass around post_nglyphs as well.
5952 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5954         * ly/music-functions-init.ly (musicMap): new music function
5955         musicMap. 
5956         
5957 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5959         * make/mutopia-rules.make: anti-alias-factor = 2
5961         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
5962         page switch.
5964         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
5965         anti-alias-factor for lilypond-book runs.
5967         * scm/ps-to-png.scm (scale-down-image): new function.
5968         (my-system): new function.
5969         (make-ps-images): blow up GS resolution by anti-alias-factor,
5970         scale down image by anti-alias-factor.  This improves appearance
5971         of bitmaps
5972         (make-ps-images): remove showpage. Fixes spurious empty png at
5973         end.
5975         * scm/framework-ps.scm (write-preamble): downcase filename before
5976         string-matching. Should fix .TTF files (as opposed to ttf files)  
5978         * Documentation/user/tutorial.itely (Running LilyPond for the
5979         first time): separate subsections for windows, macos and unix.  
5981         * Documentation/user/invoking.itely (Updating files with
5982         convert-ly): add MacOS X note.
5984 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5986         * Documentation/user/introduction.itely (Engraving): don't include
5987         file optical-spacing, add directly.
5989         * lily/paper-outputter.cc (file): open file in binary mode. This
5990         fixes OTF embedding on windows.
5992 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5994         * scm/framework-ps.scm (write-preamble): remove debugging output.
5996         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
5998         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
5999         outdir.
6000         (install-fc-cache): install font cache in installation directories.
6002 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6004         * scm/editor.scm (editor-command-template-alist): Use char iso
6005         column, except for Emacs.
6006         (get-editor-command): Substitute char too (Bertalan Fodor).
6008 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6010         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
6011         quoted ~s.  This should fix PNG output on Windows; single quotes
6012         are regular characters on Windows.
6014 2005-06-16  Graham Percival  <gperlist@shaw.ca>
6016         * Documentation/user/basic-notation.itely: include ChoirStaff
6017         in System start delimiters.
6019         * Documentation/user/putting.itely: new doc section on
6020         fixing overlapping notation.
6022 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6024         * Documentation/user/global.itely (Paper size): \paper is in
6025         \book, not \score.
6027         * make/mutopia-rules.make: -ddelete-intermediate-files
6029         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
6031 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6033         * ChangeLog: Recode utf-8.
6035         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
6036         datadir with .py modules.
6038 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
6040         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
6042 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6044         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
6045         
6046         * scm/framework-ps.scm (write-preamble): remove status check.
6048         * Documentation/user/invoking.itely (Updating files with
6049         convert-ly): remove -o option.
6051         * VERSION (PACKAGE_NAME): release 2.5.31
6053         * scm/framework-ps.scm (write-preamble): use ly:system.
6054         (write-preamble): verbosity.
6056         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
6058         * python/convertrules.py: new file. Store conversion rules
6059         separately.
6061 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6063         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
6065 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6067         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
6068         \musicDisplay 
6070         * Documentation/user/instrument-notation.itely (More stanzas): Add
6071         reference to StanzaNumber.
6073 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6075         * THANKS: separate section for website translators.
6077 2005-06-14  Graham Percival  <gperlist@shaw.ca>
6079         * Documentation/topdocs/INSTALL.texi: update vim info;
6080         thanks Simon Bailey!
6082         * Documentation/user/advanced-notation.itely: included
6083         color names.
6085         * Documentation/user/advanced-notation.itely,
6086         Documentation/usr/notation-appendices.itely: moved
6087         color names into an appendix.
6089 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6090         
6091         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
6093         * scm/lily.scm (lambda): initialize program options from here.
6095         * scm/framework-*.scm: add header info.
6097         * lily/main.cc (parse_argv): only set output format to pdf if no
6098         other format specified.
6100         * scm/backend-library.scm (postprocess-output): process
6101         'delete-intermediate-files after running convert-to-*. This fixes
6102         PNG generation when 'delete-intermediate-files is set.
6103         
6104 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6106         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
6107         links on website. 
6109 2005-06-13  Graham Percival  <gperlist@shaw.ca>
6111         * Documentation/topdocs/INSTALL.texi,
6112         Documentation/user/lilypond-book.itely: typos.
6114 2005-06-12  Pal Benko  <benkop@freestart.hu>
6116         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
6117         added between program name and switch; -b changed to -f not
6118         to generate pdf
6120 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6122         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
6123         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
6125         * input/sakura-sakura.ly: add \midi.
6127         * buildscripts/mutopia-index.py (find): use /usr/bin/find
6128         iso. python find. 
6130         * ttftool/test.c (main): cosmetics.
6132         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
6134         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
6135         create a ttf2ps binary.
6137         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
6139         * scm/backend-library.scm (postscript->png): set rename-page-1 to
6140         true.
6142 2005-06-11  Graham Percival <gperlist@shaw.ca>
6144         * Documentation/user/lilypond-book.itely: add warning about
6145         the font warnings in dvips.
6147 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6149         * THANKS: typo
6151         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
6153         * GNUmakefile.in: remove links for .map, .enc
6154         don't fail if out/ doesn't exist yet.
6156 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6158         * ttftool/util.c (surely_read): return nbytes
6160         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
6162         * VERSION (PACKAGE_NAME): release 2.5.30
6164         * flower/string-convert.cc (precision_string): >? fix.
6166         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
6167         (make-ps-images): add verbose -q too.
6169         * lily/default-actions.cc (Module): new file. default
6170         {book,score}-print functions.
6172         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
6173         pass results via parseStringResult, lookup via ly:parser-lookup.  
6175         * lily/lily-parser.cc (Lily_parser): only clone lexer in
6176         constructors.
6177         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
6178         (parse_string): idem.
6180         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
6182         * lily/main.cc (main_with_guile): copy be_verbose_global into
6183         ly_set_option()
6185 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6187         * scm/backend-library.scm (postscript->pdf):
6188         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
6189         verbose mode.  Search for several names of gs executable.
6191 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6193         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
6194         directly. This fixes a massive memory leak, provided you use CVS
6195         GUILE.
6197 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
6199         * ly/property-init.ly: Added tieDashed.
6201         * THANKS: Added some bughunters for 2.5.
6203 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6205         * lily/program-option.cc: add debug-gc option.
6207         * lily/include/lily-guile-macros.hh: don't protect exported module
6208         objects.
6210         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
6212         * scm/backend-library.scm (postscript->pdf): use
6213         delete-intermediate-files iso. running-from-gui? 
6215         * ttftool/util.c (surely_read): robustness. Allow read() to return
6216         less bytes than requested, as per posix standards.
6218         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
6219         program option.
6221         * ttftool/include/ttftool.h ("C"): rename verbosity to
6222         ttf_verbosity. Add to public interface.
6224         * scm/music-functions.scm (unfold-repeats): remove debugging display.
6226         * lily/program-option.cc: rename from scm-option.cc
6228         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
6229         (get_help_string): Print pretty help string.
6231         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
6232         to snippet preamble.
6234         * lily/scm-option.cc: remove command-line-settings option. Fold
6235         all command-line options plus default settings in a generic
6236         interface. 
6238         * flower/getopt-long.cc (table_string): indent 2nd lines of help
6239         texts too.
6241 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6243         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
6244         or EXT_ components non-empty.
6246 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6248         * scm/lily.scm (running-from-gui?): Export.
6250         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
6251         output in .ly source directory.
6253 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6255         * ttftool/util.c (surely_lseek): more verbosity.
6257         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
6258         compile.
6260         * lily/parser.yy (Repeated_music): remove >? 
6262         * scm/backend-library.scm (postscript->pdf): Support for
6263         -dgs-font-load=1
6265         * scm/framework-ps.scm (write-preamble): make font loading
6266         switchable to GS via --define-default gs-font-load=1
6268 2005-06-09  Graham Percival  <gperlist@shaw.ca>
6270         * Documentation/user/global.itely: added \layout docs.
6272 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6274         * lily/lily-parser-scheme.cc: add unistd.h
6276 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6278         * scm/editor.scm: add char argument.
6280         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
6282         * ttftool/util.c (syserror): use errno for better error reporting.
6284         * lily/source-file.cc (get_counts): new function. Calc column,
6285         line and char count in one go.
6287         * lily/binary-source-file.cc (quote_input): rename to quote_input
6289         * lily/input.cc (set): new function.
6291 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6293         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
6294         directory part of file name to search directory.
6296         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
6297         search path and chdir to DIR if --outname=DIR used.
6299         * lily/main.cc (prepend_env_path): Bugfix: Check directory
6300         existence before appending original path.
6302 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6304         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
6305         file" massage.
6307         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
6308         texinfo.tex is always used.
6309         
6310 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6312         * flower/include/axis.hh: rename from axes.hh
6314         * lily/include/text-interface.hh (Module): rename from text-item.hh
6316         * VERSION (PATCH_LEVEL): release 2.5.29
6318         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
6320         * scm/framework-ps.scm (font-file-as-ps-string): new function.
6321         (handle-macfont): new function. Call fondu for Native mac fonts.
6323         * scm/define-markup-commands.scm (fill-line): handle text-widths =
6324         '() case.
6326 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6328         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
6329         multi-page.  Fix .eps regular expression.
6331 2005-06-07  Graham Percival  <gperlist@shaw.ca>
6333         * Documentation/user/putting.itely: add info on modifying templates.
6335         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
6336         misc small changes.
6338 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6340         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
6342         * scripts/lilypond-ps2png.scm
6344         * VERSION (PACKAGE_NAME): release 2.5.28
6346 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6348         * lily/main.cc (prepend_env_path): Do not append /, that does not
6349         work.  Localedir lives in datadir, not in prefix.
6351         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
6352         hack for windows.
6354         * flower/include/file-cookie.hh: Compile fix.
6356 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6358         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
6360         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
6361         system primitives.
6362         (gulp-port): using read-string!/partial. We don't want to read an
6363         entire PS file  (GUILE 1.6 limits strings to 16M) 
6365         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
6366         properties. Add font-interface. 
6368         * scm/define-grob-properties.scm (all-user-grob-properties):
6369         remove old bracket properties.
6371         * scm/x11-color.scm: reformat. 
6373         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
6374         LedgerLineSpanner if new StaffSymbol is found. 
6376         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
6377         staff-symbol for finishing staff. 
6379         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
6381         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
6382         change black to currentColor everywhere. This fixes color support
6383         in SVG.
6385 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
6387         * input/regression/fret-diagrams.ly: new file to test fret diagram
6388         capability
6390         * scm/output-tex.scm: remove white-dot and white-text
6392         * scm/output-ps.scm: remove white-dot and white-text
6394         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
6395         using ly:stencil-in-color instead
6396         (draw-dots) : remove call to white-dot
6398 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6400         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
6401         support.
6403         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
6405         * flower/include/file-cookie.hh: new file. lily_cookie extension 
6407         * flower/file-cookie.cc: new file. lily_cookie extension.
6408         
6409 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6411         * scm/editor.scm (editor-command-template-alist): Add syn
6412         editor (Jaap [de Vos]).
6414 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
6416         * scripts/lilypond-ps2png.scm:
6417         * scm/ps-to-png.scm: New file.
6419         * scm/backend-library.scm (postscript->png): Use it.
6421         * scripts/lilypond-ps-to-png.py: Remove file.
6423         * python/lilylib.py (get_bbox, make_ps_images): Remove.
6425 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6427         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
6429         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
6430         start on grace moment. Fixes autobeam-grace.ly.
6432         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
6433         process anything unless we're at the end of a pending beam. Fixes
6434         syncopated 8ths beamed across a beat.
6436 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6438         * scm/editor.scm (editor-command-template-alist): Start emacs if
6439         emacslient fails.
6441         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
6443         * flower/file-path.cc (is_file, is_dir): Export.
6445         * lily/main.cc (prepend_env_path, set_env_file): Use them.
6447 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6449         * lily/easy-notation.cc: Added include cctype to correct
6450         compilation error.
6452 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6454         * scm/backend-library.scm (postscript->pdf): set resolution to
6455         1200, so bitmap fonts aren't that ugly. 
6457         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
6459         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
6460         parent if we have a notehead. Fixes incorrect offsets when
6461         Paper_column is very wide in the X direction.
6463         * input/regression/font-family-override.ly (Module): new file.
6465         * scm/font.scm (make-pango-font-tree): new function.
6467         * lily/beam.cc (before_line_breaking): remove warning about less
6468         than 2 visible stems. We still get a warning when there is only
6469         one stem.
6471 2005-06-01  Werner Lemberg  <wl@gnu.org>
6473         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
6474         correctly.
6476 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6478         * lily/slur-scoring.cc (generate_avoid_offsets): new
6479         function. Generate avoid offsets once per slur.
6481         * lily/slur.cc (add_extra_encompass): add dependency to
6482         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
6484         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
6485         too. Fixes inf error with added bass notes.
6487         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
6488         argument anymore.
6490         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
6492         * input/tutorial/lbook-latex-test.tex: add line length test.
6494         * scripts/lilypond-book.py (set_default_options): new
6495         function. Call this before dissecting snippets, so linewidth
6496         settings reach the snippets.
6498 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6500         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
6502 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6504         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
6506 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6508         * stepmake/aclocal.m4: More autopackage friendliness.
6510 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6512         * Documentation/index.html.in: remove link to LSR.
6514         * Documentation/user/global.itely: remove duplicate
6515         "dedication" \header{} section.
6517 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6519         * VERSION (PACKAGE_NAME): release 2.5.27.
6521         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
6522         too. Plugs memory leak.
6524         * make/lilypond.fedora.spec.in (Group): remove
6525         lilypond-pdfpc-helper.
6527         * scripts/GNUmakefile (SEXECUTABLES): remove
6528         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
6530         * scm/font.scm (make-century-schoolbook-tree): add Mono as
6531         'typewriter family.
6533         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
6534         memory leak.
6536         * lily/parser.yy (score_body): don't clone Score, that's done in
6537         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
6539         * lily/score-engraver.cc (derived_mark): new function.
6540         (initialize): unprotect Paper_score. This fixes a memory leak.
6542         * lily/score-performer.cc (derived_mark): new function.
6544         * lily/score-translator.cc (get_output): use SCM for get_output() call.
6546         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
6547         spurious warning.
6549         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
6550         serif.
6552 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6554         * configure.in (reloc_b): Add --enable-relocation.
6556 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6558         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
6560         * input/regression/alignment-order.ly: add Staff example.
6562 2005-05-31  John Mandereau   <john.mandereau@free.fr>
6564         * po/fr.po: update.
6566 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6568         * Documentation/index.html.in: add link to LSR.
6570 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6572         * scm/define-stencil-commands.scm (Module): new file. Register all
6573         allowed stencil expression heads in a central place.
6575         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
6576         ly:make-stencil
6578         * lily/stencil-expression.cc (all_stencil_heads): registering
6579         stencil expressions.
6581         * lily/stencil-interpret.cc: new file. Stencil expression
6582         interpreting.
6584         * input/xiao-haizi-guai-guai.ly: move file back.
6586 2005-05-30  Graham Percival  <gperlist@shaw.ca>
6588         * Documentation/user/advanced.itely, converters.itely,
6589         instrument-notation.itely, lilypond-book.itely: misc small
6590         changes.
6592 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6594         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
6596         * make/lilypond.fedora.spec.in: Fix source url.
6598         * cygwin: Update from mingw patches.
6600         * scm/editor.scm (editor-command-template-alist): Use jedit
6601         -reuseview (Bertalan), add uedit (Patrick Huberts).
6603         * input/xiao-hai-zi-guai-guai.ly: Rename from
6604         xiao-haizi-guai-guai.ly.
6606         * input/*: Reindent, do not use TAB.
6608         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
6609         white background.
6611 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6613         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
6614         numerical overflow error.
6616 2005-05-29 Laura Conrad <lconrad@laymusic.org>
6617         
6618         * abc2ly.py: fix to syntax error in multi-part output.
6620 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6622         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
6623         with disappearing span bars when alignAboveContext is active
6625         * lily/property-iterator.cc (check_grob): use is-grob?
6626         object-property. Fixes crash-key-sig-font-size.ly. 
6628 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6630         * lily/bar-line.cc (print): don't round barlines; this produces
6631         odd aliasing effects in Acroread.
6633         * lily/timing-engraver.cc (process_music): robustness fix.
6635         * lily/context-def.cc (filter_engravers): bugfix.
6637 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6639         * lily/lilypond.rc.in: Add ly-icon.
6641         * lily/GNUmakefile: 
6642         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
6643         rules.
6645 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6647         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
6649         * ps/music-drawing-routines.ps: 
6651         * scm/output-ps.scm: remove draw ez_ball.
6653         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6654         EasyNotation context definition.
6656         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
6657         Text_interface and color for making easy note heads.
6659         * lily/stencil.cc (with_color): new function.
6661         * ps/music-drawing-routines.ps: remove draw_zigzag_line
6663         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
6664         output routine. Zigzag now works in SVG too.
6666         * scm/output-tex.scm (filledbox): idem.
6668         * scm/output-svg.scm (filledbox): idem.
6670         * scm/output-ps.scm (lily-def): remove horizontal-line. 
6672         * lily/lookup.cc (horizontal_line): use draw-line. 
6674         * lily/system-start-delimiter.cc: remove old staff bracket code.
6676         * mf/feta-haak.mf: further tweaks.
6678         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
6680         * mf/feta-generic.mf: include feta-haak.
6682         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
6684         * scm/framework-ps.scm (write-preamble): only load fonts if their
6685         filename is a string. 
6687 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6689         * scm/output-svg.scm (circle): support circle.
6690         (bracket): stub for bracket.
6692         * scripts/lilypond-book.py (main): make sure --psfonts warning is
6693         correct.
6695 2005-05-26  Graham Percival  <gperlist@shaw.ca>
6697         * Documentation/user/lilypond.tely, advanced-notation.itely,
6698         basic-notation.itely, instrument-notation.itely, global.itely,
6699         introduction.itely, tutorial.itely: rearranging, editing,
6700         clean-up.
6702         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
6703         for compiling on FreeBSD.
6705 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6707         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
6708         otf files.
6710         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
6711         bugfixes.
6713         * VERSION: 2.5.26 released.
6715         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
6717 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
6719         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
6720         if printpagenumber is false.
6722 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6724         * lily/font-config.cc (init_fontconfig): comment out FontConfig
6725         cache warning.
6727         * lily/tie.cc (print): support dotted ties.
6728         
6729 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6731         * scm/define-grobs.scm (all-grob-descriptions): switch off
6732         debugging
6733         (all-grob-descriptions): Arpeggio has Y-extent.
6735         * scm/define-music-properties.scm (all-music-properties): document
6736         length-callback and start-callback as "read-only".
6738         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
6739         length-callback after creation. 
6741         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
6742         compressmusic -> compressMusic.
6744         * ly/music-functions-init.ly (oldaddlyrics): idem.
6746         * lily/parser.yy: NewLyricCombineMusic ->
6747         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
6749 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
6751         * ly/Welcome_to_LilyPond.ly: typo.
6753 2005-05-24  Graham Percival  <gperlist@shaw.ca>
6755         * Documentation/user/lilypond.tely: move changing-defaults to be
6756         before global issues.
6758         * Documentation/user/basic-notation.itely: move Transpose section
6759         here from advanced/Other.
6761         * Documentation/user/changing-defaults.itely,
6762         advanced-notation.itely: move Fonts to advanced, edit.
6764 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6766         * lily/parser.yy (bare_int): remove rule.  From now on, we require
6767         # before negative integers.
6769 2005-05-23  Graham Percival  <gperlist@shaw.ca>
6771         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
6773         * Documentation/user/lilypond.tely: change Unified index to
6774         LilyPond index.
6776         * Documentation/user/advanced-notation.itely,
6777         instrument-notation.itely: editing.
6779 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6781         * scm/lily.scm (lilypond-all): Bugfix: return failed.
6783         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
6785 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6787         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
6788         ly:port-move.  Needs to be stderr-specific on mingw.
6789         Run fixcc.
6791 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6793         * lily/general-scheme.cc (ly:port-move): Remove.
6795         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
6796         windows.
6798         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
6799         variables.  This eliminates the need for a gs.bat wrapper, which
6800         opens a console.
6802         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
6803         * scm/lily.scm (running-from-gui?): 
6804         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
6805         artifact of not compiling with -mwindows.
6807         * scm/editor.scm: Define PLATFORM.
6809 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6811         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
6812         can start to cut & paste lilypond-book fragments.  
6814         * scm/define-music-types.scm (music-descriptions): remove
6815         UntransposableMusic
6817 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6819         * scm/output-ps.scm (glyph-string): remove / before CIDs.
6821 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6823         * Documentation/user/instrument-notation.itely: remove *Engraver.
6825         * Documentation/user/advanced-notation.itely: edit, rearrange.
6827 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6829         * scm/output-ps.scm (glyph-string): take cid? argument. Use
6830         findresource iso. findfont for CID CFF fonts.
6832         * VERSION (PACKAGE_NAME): release 2.5.25
6834         * ly/Welcome_to_LilyPond.ly: add  \version
6836 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6838         * Documentation/user/programming-interface.itely: move
6839         \displayMusic into its own section.
6841         * Documentation/user/basic-notation.itely: finish editing.
6843 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6845         * flower/file-path.cc (find): don't throw away file_name.dir, but
6846         append to it. Fixes \include with directories.
6848         * flower/include/file-path.hh (class File_path): don't derive from
6849         Array<String>.
6851         * flower/include/file-name.hh (class File_name): remove to_str0()
6853         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
6854         Hara_kiri_engraver in separate file.
6856         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
6857         translation went wrong. Fixes vertically translated slurs.
6859 2005-05-19  Graham Percival  <gperlist@shaw.ca>
6861         * Documentation/user/basic-notaton.itely: editing.
6863 2005-05-18  Graham Percival  <gperlist@shaw.ca>
6865         * Documentation/user/macros.itexi, basic-notation.itely:
6866         add @commonprop (commonly used properties) macro.
6868 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6870         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
6872         * scripts/lilypond-book.py (invokes_lilypond): new function
6873         (main): only run fontextract if invokes_lilypond() is true.
6875         * lily/function-documentation.cc (ly_add_function_documentation):
6876         duh, use !=
6878         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
6880         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
6882         * scm/lily.scm (running-from-gui?): lowercase Darwin.
6884         * lily/function-documentation.cc (ly_add_function_documentation):
6885         use scm_hash_table_p() for checking.
6887 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6889         * Documentation/user/advanced-notation.itely (Text scripts):
6890         Change nonexisting @internalsref{Text markup} to @ref{Text
6891         markup}.  Change @internalsref{Text script} to
6892         @internalsref{TextScript}.
6894         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
6896 2005-05-17  Graham Percival  <gperlist@shaw.ca>
6898         * Documentation/user/tutorial.itely, basic-notation.itely,
6899         changing-defaults.itely: remove duplicate cindex entries
6900         that appear on the same page.
6902         * scm/define-grobs.scm: change default padding for TextSpanner.
6904         * Documentation/topdocs/AUTHORS.texi: update email address.
6906         * Documentation/user/global.itely: add info about \include.
6908 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6910         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
6911         when running-from-gui.
6913         * scm/editor.scm (get-editor): Add platform defaults.
6915         * scm/backend-library.scm (postscript->pdf): Typo.
6917 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6919         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
6921         * lily/font-config.cc (init_fontconfig): add warning about cache.
6923 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6925         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
6927 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6929         * lily/horizontal-bracket.cc (print): Take care of the direction
6930         property so brackets above the stave point downwards. 
6932         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
6933         for HorizontalBracket so it doesn't end up within the stave.
6935 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6937         * lily/GNUmakefile (default): Typo.
6939         * scm/lily.scm (PLATFORM): Export.
6941         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
6942         load-font-via-GS, ttftool or fopencookie is broken on windows.
6943         
6944         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
6945         -dSAFER, that is broken on windows.
6947 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6949         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
6950         for FlexLexer.h
6952         * scripts/lilypond-invoke-editor.scm: remove stray -
6954 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6956         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
6957         Fixes deprecation warning.
6959         * flower/include/string.icc (to_string): Only inline if
6960         -DSTRING_UTILS_INLINED.
6962         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
6963         name.  Remove windows comment.
6965         * scm/editor.scm (slashify): New function.
6966         (get-editor-command): Use it.
6967         (get-command-template): Do not alter editor command if
6968         environment value includes `%(file)s' magic.
6970         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
6971         (dissect-uri): Use it.
6972         (unquote-uri): Bugfix.
6974 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6976         * scm/framework-ps.scm (write-preamble): add TTF rule.
6978         * Documentation/topdocs/README.texi (Top): remove note about
6979         xdelta.
6981         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
6982         requirement.
6984         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
6985         function. Figure out where FlexLexer.h lives
6987         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
6988         
6989 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6991         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
6992         with Windows root in file name.
6994         * scm/backend-library.scm (ly:system): Only redirect output (using
6995         system and shell, ugh) if /dev/null is writable.
6997         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
6998         windows icon.
7000         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
7001         on Mingw.
7003         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
7004         click.
7006         * flower/file-path.cc (is_dir, is_file): New function.  Actually
7007         use result of stat when available.
7009         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
7010         absolute file name and root.
7012         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
7014         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
7016         * flower/file-name.cc (slashify): Bugfix, do substitute if no
7017         slashes in file name.
7019 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7021         * Documentation/user/preface.itely (Preface): Run
7022         texinfo-all-menus-update.
7024         * scm/editor.scm (get-editor-command): Bugfix: allow full
7025         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
7027         * Documentation/pictures/lilypond-48.xpm: New file.
7029         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
7031         * ly/Welcome_to_LilyPond.ly: New file.
7033         * lily/main.cc (main): Only identify if we have a terminal.
7035         * scm/backend-library.scm (postscript->png)
7036         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
7037         non-/bin/sh).
7039 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
7041         * Documentation/topdocs/AUTHORS.texi: polish, update.
7043 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7045         * Documentation/user/preface.itely (Notes for version 2.6): new
7046         notes for 2.6
7048         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
7049         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
7050         is not fully contained" warnings.
7052         * lily/slur-scoring.cc (get_bound_info): remove warning.
7054         * lily/staff-symbol-engraver.cc (process_music): start initial
7055         spanner in process_music(). This fixes overrides of StaffSymbol
7056         properties.
7058         * scm/framework-pdf.scm (Module): remove.
7060         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
7062         * lily/ambitus-engraver.cc: formatting cleanups.
7064         * mf/feta-solfa.mf (Module): remove.
7066         * ChangeLog: more details about contributions.
7068 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7070         * lily/align-interface.cc (align_elements_to_extents): warn if
7071         called too early. Fixes: disappearing-staff-lines.ly
7073         * VERSION (PACKAGE_NAME): release 2.5.24
7075 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7077         * stepmake/aclocal.m4: Typo.
7079         * flower/string.cc (substitute): Take two strings or two
7080         characters.  Update callers.
7082 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7084         * flower/file-name.cc (File_name): Slashify.
7086         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
7088         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
7090         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
7092         * configure.in (gui_b): Use it.
7094         * lily/lilypond.rc.in: New file.
7096         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
7098 2005-05-12  Graham Percival  <gperlist@shaw.ca>
7100         * Documentation/user/advanced-notation.itely: edit of Text
7101         section; clarify text scripts vs. text markup.
7103 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7105         * lily/multi-measure-rest-engraver.cc
7106         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
7107         separation items on start. Fixes mm rests in start of score.
7109         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
7110         don't access StaffSymbol if not there.
7111         Fixes: crash-staff-symbol-engraver.ly.
7113         * lily/instrument-name-engraver.cc (class
7114         Instrument_name_engraver): data member first_. Create
7115         InstrumentName on start. 
7117 2005-05-12  Graham Percival  <gperlist@shaw.ca>
7119         * Documentation/user/instrument-notation.itely: add guitar
7120         position.
7122         * Documentation/user/introduction.itely,
7123         Documentation/user/lilypond.tely,
7124         Documentation/user/tutorial.itely: begin pruning
7125         unused (duplicated) cindex entries and misc cleanup.
7127 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7129         * input/test/volta-chord-names.ly: Bring the explanation up to
7130         date.
7132 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
7134         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
7135         Specify `@documentencoding utf-8' for html, ignore warnings.
7137 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
7139         * THANKS: Added bughunters.
7141 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
7143         * lily/main.cc: update help string for `lilypond -H'.
7145         * po/fi.po: update.
7146         
7147 2005-05-10  Graham Percival  <gperlist@shaw.ca>
7149         * Documentation/user/advanced-notation.itely: minor fixes.
7151 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7153         * scm/editor.scm: New module.
7155         * scm/lily.scm (gui-main): Use it.
7157         * scm/framework-gnome.scm (spawn-editor): Use it.
7159         * scripts/lilypond-invoke-editor.scm: Use it in new script.
7161 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7163         * scm/framework-ps.scm (load-font-via-GS):  new function.
7165         * lily/pango-font.cc (pango_item_string_stencil): add support for
7166         CID keyed font.
7168         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
7170 2005-05-10  Graham Percival  <gperlist@shaw.ca>
7172         * Documentation/user/basic-notation.itely: add @ref.
7174         * Documentation/user/advanced-notation.itely: add example
7175         of 5/8 beaming.
7177 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7179         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
7181         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
7182         going through ps2pdf wrappers.
7184 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
7186         * Documentation/user/instrument-notation.itely: petrucci note
7187         heads: updated docu
7189         * input/regression/note-head-style.ly: updated regression test;
7190         indentation fixes
7192         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
7193         heads as default
7195         * mf/parmesan-heads.mf: minor editing; use musicological names
7196         (rather than optical description) as note head names
7198         * scm/output-lib.scm: complete petrucci heads
7200 2005-05-09  Pal Benko  <benkop@freestart.hu>
7202         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
7203         heads, but bigger)
7205 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7207         * lily/main.cc (main_with_guile): Remove no files check.
7209         * lily/main.cc (ly:usage): Export to Scheme.
7211         * scm/lily.scm (no-files-handler): New function.
7213         * scm/lily.scm (lilypond-main): Use it.
7215         * configure.in (gui_b): Add mbrtowc checking.
7216         Resurrect [utf8/]wchar.h checking.
7218 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7220         * Documentation/user/advanced-notation.itely (Metronome marks):
7221         Add link to the program reference for MetronomeMark
7223         * Documentation/user/lilypond-book.itely (An example of a
7224         musicological document): Correct the example using psfonts 
7226 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
7228         * po/fi.po: update after a lesson how to update entries against
7229         source.
7230         
7231         * po/TODO: document the lesson.
7233 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7235         * configure.in (gui_b): remove wcrtomb checking.
7237         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
7238         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
7240 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7242         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
7243         keep Scheme expressions and strings unmodified when doing the
7244         conversion to postfix notation for slurs and beams. Should
7245         hopefully solve most related conversion problems. 
7247         * Documentation/user/lilypond-book.itely : Clarify and correct how
7248         to call dvips with -h psfonts.
7250 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7252         * Documentation/user/instrument-notation.itely (Entering lyrics):
7253         Typo.  Fixes build.
7255 2005-05-09  Graham Percival  <gperlist@shaw.ca>
7257         * Documentation/user/lilypond-book.itely: document PSFONTS file.
7259         * Documentation/user/lilypond.tely, lilypond-book.itely,
7260         tutorial.itely: change references to 2.5.x to 2.6.x.
7262         * Documentation/user/instrument-notation.itely: clarified \addlyrics
7263         vs \lyricmode.
7265         * Documentation/user/invoking.itely: remove old info about
7266         lilypond-profile.
7268         * Documentation/topdocs/INSTALL.texi: remove old info about
7269         lilypond-profile, add warning about needing international fonts
7270         to build docs.
7272 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7274         * lily/include/grob-info.hh (class Grob_info): make data member
7275         private. Changes throughout.
7277         * input/regression/alignment-order.ly: new file. 
7279         * lily/vertical-align-engraver.cc (acknowledge_grob): read
7280         alignAboveContext and alignBelowContext
7282 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7284         * lily/pfb.cc (LY_DEFINE): add cast.
7286         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
7287         matches .otf
7288         (write-preamble): warn about unknown fonts.
7290         * lily/pfb.cc (Module): new function ly:otf->cff
7292         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
7293         (get_otf_table): new function.
7295 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7297         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
7298         iso. ps2png.
7300 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
7302         * po/fi.po: apply second round of update.
7304 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7306         * scm/x11-color.scm (make-x11-color-handler): don't use
7307         #\sp. Apparently doesn't work on all platforms. 
7309 2005-05-06  Graham Percival  <gperlist@shaw.ca>
7311         * Documentation/user/advanced-notation.itely, putting.itely,
7312         tutorial.itely, global.itely, introduction.itely: really minor fixes.
7314 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7316         * VERSION (PACKAGE_NAME): release 2.5.23
7318 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7320         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
7321         convert to utf-8.
7323         * THANKS: Add translators for this release, convert to utf-8.
7325         * mf/GNUmakefile (MFTRACE_FLAGS):
7326         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
7327         outdir as option (WAS: hardcoded).
7329 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7331         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
7332         finished_span_
7334         * THANKS: add Hans Forbrich.
7336         * Documentation/topdocs/NEWS.tely (Top): document new feature.
7338         * Documentation/user/basic-notation.itely (Staff symbol): document
7339         start/stop staff. Reference to ossia.ly
7341         * input/test/ossia.ly: new example using stop and startStaff.
7343         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
7344         in other words, don't create "|" barline at start of the score.
7345         (start_translation_timestep): don't set whichBar for start of score.
7347         * input/regression/staff-halfway.ly: use new functionality.
7349         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
7350         start and stop staff based on events.
7352         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
7354         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
7356 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7358         * Documentation/user/programming-interface.itely (How markups work
7359         internally ): remove \encoding reference.
7361 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7363         * scripts/convert-ly.py: Attempt to do a smarter update of 
7364         text markups from versions < 1.9.0 with arbitrary nesting.
7366 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
7368         * po/fi.po: convert to utf-8, and update.
7370 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7372         * make/lilypond.suse.spec.in: update from suse 2.4 package.
7374         * lily/*.cc: more <? >? to min/max changes
7376         * lily/include/interpretation-context-handle.hh: rename
7377         Interpretation_context_handle to Context_handle.
7379 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
7381         * input/regression/GNUmakefile (local_delete): use `find` together 
7382         with `xargs` to avoid too long argument-lists in cmd line.
7384 2005-05-04  Graham Percival  <gperlist@shaw.ca>
7386         * Documentation/user/introduction.itely: updates "About this manual".
7388         * Documentation/user/advanced-notation.itely,
7389         invoking.itely: minor fixes.
7391 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7393         * COPYING: add font exception. Update FSF address. 
7395         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
7396         should be taken without child context.
7398         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
7400         * scm/define-markup-commands.scm (triangle): new command, as
7401         robust replacement for unicode Delta/Triangle.
7403 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7405         * ps/music-drawing-routines.ps: add fillp argument.
7407         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
7409         * lily/font-config.cc (init_fontconfig): don't add cff/
7411         * VERSION (PACKAGE_NAME): release 2.5.22
7413         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
7415         * lily/grace-engraver.cc (consider_change_grace_settings): use
7416         is_alias(). Fixes problem with CueVoice grace notes. 
7418         * lily/simultaneous-music-iterator.cc (construct_children): call
7419         Music_iterator::quit() for iterators that start out invalid. This
7420         fixes indefinitely continuing contexts.
7422         * buildscripts/substitute-encoding.py: new file
7424         * Documentation/user/basic-notation.itely (Basic polyphony): fix
7425         missing @end 
7427         * scripts/lilypond-book.py (write_if_updated): print file name.
7429         * Documentation/user/basic-notation.itely (Explicitly
7430         instantiating voices): idem.
7432         * Documentation/user/advanced-notation.itely (Text spanners):
7433         remove stray { } 
7435         * lily/context.cc (default_child_context_name): the default child
7436         is now first in accepts_list_.
7438         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7439         \defaultchild to all relevant contexts.  This fixes:
7440         drums-pitch.ly.
7442         (Probably also fixes similar problems with ancient
7443         transcriptions getting CueVoices instead of the desired voices.)
7445         * lily/context-def.cc (get_default_child): new function.
7446         (get_accepted): place default child in front of list.
7448         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
7450         * lily/include/context-def.hh (struct Context_def): add
7451         default_accept_
7453 2005-05-03  Graham Percival  <gperlist@shaw.ca>
7455         * scm/define-grobs.scm: remove "remove-first" line, since
7456         the absent property is set to #f anyway.
7458         * Documentation/user/basic-notation.itely,
7459         advanced-notation.itely, instrument-notation.itely: minor
7460         fixes.
7462         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
7464         * Documentation/user/advanced-notation.itely,
7465         changing-defaults.itely: consolidate Text stuff in
7466         advanced notation.
7468         * Documentation/user/global.itely: better docs for \header.
7470         * Documentation/user/putting.itely: new chapter; placeholder
7471         for future expansion.
7473         * Documentation/user/examples.itely: moved "suggestions for
7474         writing LP files" section into putting.itely.
7476         * Documentation/user/lilypond.itely: added new chapter,
7477         fixed the short table of contents.
7479 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7481         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
7482         infinity for unfeasible beams.
7484         * make/lilypond.fedora.spec.in (Group): idem.
7486         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
7488         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
7490         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
7491         fonts directly.
7493         * buildscripts/gen-emmentaler-scripts.py (i): idem.
7495         * mf/GNUmakefile: remove all CFF rules.
7497         * scm/framework-ps.scm (ps-embed-cff): reinstate.
7499         * lily/open-type-font-scheme.cc (LY_DEFINE):
7500         new function ly:otf-font-table-data.
7501         (LY_DEFINE): new function otf-font?
7503 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7505         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
7506         ($(outdir)/Fontmap.lily): idem.
7508         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
7509         for PFAEmmentaler-XXX.pfa. 
7511         * Documentation/user/music-glossary.tely (accidental): NL
7512         translation of accidental.
7514 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7516         * flower/include/international.hh: Bugfix: include "string.hh".
7518         * lily/include/mingw-compatibility.hh: New file.
7520         * flower/include/libc-extension.hh (memrev): Rename from strrev.
7522         * configure.in: Search for mingw wcrtomb library.
7524 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7526         * scripts/convert-ly.py: Bug fix
7528         * Documentation/user/changing-defaults.itely (Common tweaks):
7529         Added example where the context has to be specified explicitly
7530         (MetronomeMark). 
7532 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7534         * scripts/lilypond-book.py (ly_options): set timing to #f for
7535         notime option.
7537         * scripts/convert-ly.py (conv): typo.
7539         * flower/*.cc: remove <? and >?
7540         
7541         * lily/*.cc: remove <? and >?
7543         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
7544         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
7545         editor.
7547 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7549         * lily/part-combine-engraver.cc: add space to variable list.
7551 2005-04-30  Graham Percival  <gperlist@shaw.ca>
7553         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
7554         remove-first to false (matches docs)
7556         * Documentation/user/advanced-notation.itely: corrected docs
7557         concerning remove-first.
7559 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7561         * lily/part-combine-engraver.cc: make sure that the relevant
7562         properties are included in the documentation.
7564 2005-04-28  Graham Percival  <gperlist@shaw.ca>
7566         * Documentation/user/lilypond-book.itely: Bernard's docs
7567         for \betweenLilyPondSystem.
7569 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7571         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
7572         remarks.
7574 2005-04-28  Pal Benko  <benkop@freestart.hu>
7576         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
7577         only on vertical lines of flexa shape, and use a constant
7578         thickness value for horizontal lines (patch slightly modified by
7579         Jürgen Reuter)
7581         * lily/include/mensural-ligature.hh: make 2 comments clearer
7583 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
7585         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
7586         to need_extra_horizontal_space; bugfix: use class scope to avoid
7587         global namespace pollution
7589         * Documentation/user/instrument-notation.itely (ligatures): added
7590         comment on possible future syntax change and how to work around
7592         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
7593         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
7594         intervals (fixes agnus dei example)
7596         * Documentation/user/instrument-notation.itely (white mensural
7597         ligatures): selected a more illustrative example
7599 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
7601         * Documentation/index.html.in: specify utf-8 charset in meta content.
7603 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7605         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
7606         empty 2nd page for single page.
7608         * scm/lily.scm: remove p&c definitions.
7610         * po/zh_TW.po (Module): new translation.
7612         * lily/lily-guile.cc (ly_chain_assoc): remove.
7614         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
7615         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
7617 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7619         * lily/beaming-info.cc: remove infinity_i
7621         * scripts/abc2ly.py (out_filename): fix thinko with \version.
7623 2005-04-26  Graham Percival  <gperlist@shaw.ca>
7625         * Documentation/user/basic-notation.itely,
7626         instrument-notation.itely, advanced-notation.itely,
7627         changing-defaults.itely: minor fixes.  Added docs
7628         for colors to advanced-notation.itely.
7630         * Documentation/user/advanced-notation.itely: fixed compile
7631         problem and added Bernard's x11-color doc patch.
7633 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7635         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
7636         alright this time round.
7638 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7640         * Documentation/topdocs/INSTALL.texi (Top): idem.
7642         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
7644         * VERSION (MAJOR_VERSION): release 2.5.21
7646         * scm/output-ps.scm (grob-cause): bugfix.
7648 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7650         * cygwin/*: Update.
7652         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
7653         stuff.
7655         * scm/output-ps.scm (grob-cause): Bugfix.
7657         * scm/lily.scm (ly:load): Remove x11-color.
7659         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
7660         quote executable, fixes getting version from program --with
7661         --options.
7662         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
7663         $ac_exeect.
7665         * Documentation/user/GNUmakefile: Only build music-glossary with
7666         rendered lilypond snippets during web.
7668 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7670         * po/de.po: update.
7672         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
7674 2005-04-22  Laura Conrad <lconrad@laymusic.org>
7676         * scripts/abc2ly:
7677         second title line append with punctuation dash character;
7678         encode abc2ly python strings in utf-8
7679        
7680 2005-04-21  Laura Conrad <lconrad@laymusic.org>
7682         * scripts/abc2ly fix chords (again)
7684 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
7686         * scm/x11-color.scm: new file
7687         All x11 color names can be accessed with:
7688         #(x11-color 'ColorName),
7689         #(x11-color "ColorName") or:
7690         #(x11-color "color name")
7691         If the x11 color name is not recognised then it defaults
7692         to black
7694         * scm/lily.scm: amended to call scm/x11-color.scm
7696 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7698         * Documentation/user/invoking.itely (Reporting bugs): comment out
7699         reference to online PNG bug repository.
7701 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7703         * lily/translator-scheme.cc (ly:translator-property): Remove.
7704         Update callers.
7706         * lily/context-scheme.cc (ly:context-now): Move from translator.
7707         Update callers.
7709 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7711         * input/regression/grid-lines.ly (skips): refine example.
7713         * scm/define-context-properties.scm
7714         (all-user-translation-properties): doc autoBeamCheck
7716         * input/regression/grid-lines.ly (Module): new file.
7718         * lily/grid-point-engraver.cc (Module): new file.
7720         * lily/grid-line.cc (Module): new file.
7722         * lily/grid-line-span-engraver.cc (Module): new file.
7724         * lily/grid-line-interface.cc (Module): new file.
7726 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7728         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
7729         missing parameter, actualy cdr through list.  Actually return a
7730         list with ENTRY removed (was '()).
7732         * scripts/convert-ly.py: Update.  Print warning if file cannot be
7733         opened.
7734         (do_conversion): Fix printing of continuation comma.
7736         * Documentation/user/advanced-notation.itely (Beam formatting):
7737         Remove refbugs about compound time and mixed duration.
7739         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
7740         modulo moments explicitely.
7742         * lily/moment.cc (operator %): New function.
7744         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
7746         * lily/translator-scheme.cc (ly:translator-now,
7747         ly:translator-property): New function.
7749         * scm/auto-beam.scm (default-auto-beam-check): New function.
7751         * lily/auto-beam-engraver.cc (test_moment): Use it.
7753         * flower/rational.cc (operator %): Bugfix.
7755 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
7757         * scripts/abc2ly: Bugfix
7759 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7761         * python/fontextract.py (write_extracted_fonts): bugfix, too many
7762         %'s on EndFont comment.
7764         * lily/ledger-line-spanner.cc: some more words of explanation.
7766 2005-04-20  John Williams <williams@tni.com>  
7767         
7768         * scripts/lilypond-book.py: htmlquote bugfix.
7769         Allow snippets to be given distinct filenames.
7770         Allow the default alt text to be overridden.
7772 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
7774         * ly/performer-init.ly: Bugfix
7776         * THANKS: Added bughunters.
7778 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7780         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
7782         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
7783         position (was: use modulo measure length).
7785         * configure.in (no gui_b): Remove optional gtk+ requirement.
7787 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7789         * Documentation/user/basic-notation.itely (Pitches): add
7790         LedgerLineSpanner.
7792         * lily/dynamic-engraver.cc (process_music): set right bound to
7793         script if present. Else, do not set.
7794         (acknowledge_grob): only set right bound of finished spanner to
7795         note column if no other bound is set.
7797         * python/lilylib.py (make_ps_images): switch back to png16m.
7798         
7799 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7801         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
7802         writing up to date file.  Add dvips usage suggestion.
7804         * scripts/convert-ly.py: Fix error message.
7805         Print usage if no files on command line.
7806         (usage): Add example usage.
7808         * input/test/compound-time.ly: New file.
7810         * input/test/circle.ly: New file.
7812         * Documentation/topdocs/NEWS.tely: Use them.
7814         * input/test/boxed-stencil.ly: Remove \score.
7816         * buildscripts/mf-to-table.py (base): Add .log dependency.
7818         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
7819         pfa's.  Add .log dependency
7821         * scm/define-markup-commands.scm (lower): New command.
7823         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
7824         make it default.
7826 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7828         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
7829         also to finished cresc as right bound. This fixes:
7830         skip-string-decresc.ly
7832         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
7833         relative_coordinate if extent is empty.
7835         * lily/stem.cc (width_callback): determine correct extent if flag
7836         is not there. This fixes slur-no-flag.ly
7838         * lily/grace-engraver.cc (consider_change_grace_settings): new
7839         function.
7840         (initialize): also consider_change_grace_settings() on
7841         initialization. Fixes large grace notes at start of score.
7843         * lily/break-align-interface.cc (do_alignment): don't translate if
7844         total_extent is empty.
7846         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
7848 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7850         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
7851         with slash.
7853 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7855         * stepmake/aclocal.m4: Remove tfm_path.
7857 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7859         * scm/music-functions.scm (markup-expression->make-markup): fix
7860         bug with cons arguments of markup commands.
7861         (music->make-music): fix music expression property list building
7863 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7865         * aclocal.m4: Massage package names.
7867         * SCons updates.
7869 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7871         * VERSION (PACKAGE_NAME): release 2.5.20
7873         * lily/stem.cc (calc_stem_info): add minimum Y extent of
7874         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
7876         * lily/percent-repeat-engraver.cc (try_music): add measure before
7877         next_moment to future processing moment. Fixes:
7878         percent-repeat-mm-rest.ly
7879         (process_music): don't add moment for 2nd time.
7881         * input/regression/repeat-percent.ly: add mmrests as extra test.
7883         * lily/axis-group-engraver.cc (acknowledge_grob): read
7884         keepAliveInterfaces to decide what to kill.
7886         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
7887         percent-repeat-interface to keepAliveInterfaces. This fixes
7888         percent-repeat-harakiri.
7890 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7892         * SCons updates.
7894 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7896         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
7898         * aclocal.m4: remove --enable-tfm-path configure option
7900         * input/test/ancient-font.ly (lowerStaff): clef name errors.
7902         * scm/backend-library.scm (postscript->png): newline after
7903         finishing command.
7905         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
7906         (LY_DEFINE): ly:paper-score-paper-systems: new function 
7908         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
7910         * lily/score.cc (default_rendering): use Music_output too.
7912         * input/test/chord-names-languages.ly (Module): rename file.
7914         * lily/text-spanner.cc: add bound-padding.
7916         * lily/paper-book.cc (systems): accept Paper_score
7917         iso. Paper_system vector. 
7919         * input/regression/line-arrows.ly: new file.
7921         * lily/paper-score.cc (process): run get_paper_systems() only once.
7923         * lily/line-spanner.cc (line_stencil): add arrows.
7925 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
7927         * lily/line-interface.cc (make_arrow): new function. 
7928         (arrows): idem.
7930 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
7932         * input/test/chord-names-german.ly: update for italian/french
7933         chords.
7934         
7935         * Documentation/user/instrument-notation.itely (Printing chord
7936         names): update.
7938 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7940         * lily/include/paper-score.hh (class Paper_score): remove unused
7941         prototypes.
7943         * lily/book.cc (process): add -COUNT to midi output.
7945         * lily/score.cc (book_rendering): remove outname argument
7946         (book_rendering): return list of Music_outputs. 
7948         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
7950         * lily/book.cc (process): loop over Music_outputs returned from
7951         Score::book_rendering().
7953         * lily/*.cc (width_callback): remove spurious "unused" warnings
7954         for assert (axis==[XY]_AXIS); 
7956         * lily/include/music-output.hh (class Music_output): smobify class.
7958         * lily/include/paper-score.hh (class Paper_score): make members
7959         private.
7961         * lily/performance.cc (process): return #f iso. #<undefined>. This
7962         prevents #<undefined> leaking into GUILE-userspace.
7964 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7966         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
7968 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
7970         * scm/chord-name.scm : support for italian and french
7971         chords names.
7973         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
7974         a space defined by chordPrefixSpacer when the root name is
7975         direclty followed by a prefix.
7977         * ly/engraver-init.ly : chordPrefixSpacer       
7978         * scm/define-context-properties.scm : chordPrefixSpacer
7979         * ly/property-init.ly : italianChords, frenchChords 
7981 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7983         * mf/feta-din.mf: Remove.
7985         * mf/GNUmakefile (fontdir): Bugfix.
7987         * mf/SConstruct: Some updates.
7989         * SConstruct: Require pkg-config.
7990         (test_program): Bugfix for double digit version compares, use
7991         integer (not string-) compare.
7992         Optionally require gs 8.14.
7994         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
7996         * lily/*: s/ifdef HAVE_*/if have/.
7998         * SConstruct (test_lib): New function.  Update pkg-config and some
7999         other requirements.
8001         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
8002         freetype, pangof2t.
8004 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8006         * po/lilypond.pot, ...: Update using bison-CVS.
8008         * python/lilylib.py (make_ps_images): Fixo.
8010 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8012         * python/lilylib.py (make_ps_images): typo.
8014         * configure.in (gui_b): make bison optional.
8016         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
8018 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
8020         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
8021         with one parameter can be defined in a LaTeX file when processed
8022         by lilypond-book this will be evaluated between the systems of
8023         a multi-system score. The parameter is the number of systems processed.
8025 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8027         * python/lilylib.py (make_ps_images): Escape newline.
8029         * Documentation/user/music-glossary.tely: Run
8030         texinfo-all-menus-update.
8032 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8034         * scm/lily-library.scm (old-relative-not-used-message)
8035         (version-not-seen-message): Add input-file-name-location to message.
8037         * lily/parser.yy (lilypond): Add token aliases.
8039         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
8040         not confuse with alteration.
8041         (alteration): Add.
8043 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8045         * python/lilylib.py (make_ps_images): use -dEPSCrop
8047         * VERSION (PACKAGE_NAME): release 2.5.19 
8049         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
8050         only put xrefs in info documentation.
8052         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
8053         .pdf rule to tex-rules.make.
8055         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
8056         from -systems.* output.
8058         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
8059         directly, remove -$(PAGESIZE) target.
8061         * input/test/embedded-postscript.ly: update.
8063 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8065         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
8067         * Documentation/user/changing-defaults.itely (Font selection):
8068         document font-name.
8070         * input/regression/font-name.ly: show Pango fonts for
8071         font-name. Update example. 
8073         * lily/pango-select.cc (properties_to_pango_description): don't
8074         convert symbol font-size to number, but use to lookup.
8076         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
8078         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
8079         (NAME . FILE-NAME) tuples for font descriptions. 
8080         (write-preamble): display BeginFont DSC comments.
8082         * python/fontextract.py (write_extracted_fonts): new file. Extract
8083         font resources from a PS file.
8085         * scripts/lilypond-book.py (option_definitions): --psfonts option.
8086         (Compile_error.process_include): do_file returns chunks.
8088         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
8090         * make/lysdoc-targets.make: .texi is .PRECIOUS
8092         * scripts/lilypond-book.py (write_if_updated): new function.
8094 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8096         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
8098 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8100         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
8102         * input/regression/markup-syntax.ly: remove \score.
8104         * scm/define-markup-commands.scm (draw-circle): add fill argument
8106         * scm/stencil.scm (make-circle-stencil): add fill argument
8108         * ps/music-drawing-routines.ps: add fill argument.
8110         * ly/performer-init.ly: add CueVoice to MIDI too.
8112         * ps/music-drawing-routines.ps: new routine BeginEPSF /
8113         EndEPSF.
8115         * input/regression/markup-eps.ly: new file.
8117         * scm/framework-ps.scm (write-preamble): change order: vars should
8118         be inited before procedures.
8120         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
8121         for EPS files.
8123         * scm/define-markup-commands.scm (epsfile): add epsfile command.
8125 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8127         * configure.in (gui_b): add check for ghostscript 8.15
8129 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8131         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
8132         start of line. Fixes cresc-after-newline.ly
8134         * lily/source-file.cc (file_line_column_string): use get_column().
8136 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8138         * lily/source-file.cc (get_column): utf-8 support for column numbers.
8140 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8142         * lily/*: use message () iso progress_indication () for messages.
8143         Revise/uniformise user messages.
8145         * flower/warn.cc (progress_indication): New function.
8146         (message): Use it.  Fixes newline problems.
8148         * config.make.in (webdir): Sort out install dirs.
8150         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
8152         * python/lilylib.py (command_name): Bugfix.
8153         (make_ps_images):
8155 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
8157         * lily/main.cc: --help says what types of backends are availabe
8159 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8161         Fix ./VERSION dependency, and without need to reconfigure.
8163         * lily/main.cc (setup_paths): Update.
8165         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
8167         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
8169         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
8170         Add \line for some simplistic cases.
8172         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
8174 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8176         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
8177         to compile LY files (useful for adding eg. "-I" args)
8178         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
8179         2Gnome command for gnome backend.
8180         (LilyPond-command-formatgnome): call the 2Gnome command. key
8181         binding: C-c C-g
8183 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8185         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
8186         depend on all PNG images.
8188 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8190         * GNUmakefile.in: Bugfix: also link .map files.
8192 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8194         * scm/music-functions.scm (music->make-music): generate 
8195         a (make-music ...) sexpr from a music expression.
8196         (display-scheme-music): use guile pretty printer to display the
8197         make-music sexpr.
8199 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8201         * ly/engraver-init.ly: reindent.
8202         Add CueVoice.
8204         * scm/music-functions.scm (music-pretty-string): handle moments
8205         too.
8206         (music-pretty-string): only print non-empty lists.
8207         (cue-substitute): create CueVoice context, which has smaller type.
8209         * lily/moment-scheme.cc (LY_DEFINE): new methods
8210         ly:moment-grace-{numerator,denominator}
8212         * lily/context-handle.cc: remove quit() method. 
8214         * lily/font-config.cc (init_fontconfig): be verbose about font path.
8215         (init_fontconfig): success is 0, not !0
8217 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8219         * mf/feta-nummer-code.mf (code): add plus glyph.
8221         * lily/tie.cc (print): idem.
8223         * lily/slur.cc (print): don't use thickness property for
8224         slur shape-thickness.
8226         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
8227         while adding stencils.
8229         * scm/define-markup-commands.scm (with-color): with-color markup
8230         command.
8231         (whiteout): new markup command 
8232         (filled-box): new markup command
8234 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8236         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
8237         test for PDF docs.
8239         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
8240         PFAAybabtu-Regular.  Fixes feta font in PDFs.
8241         
8242         Notes for tetex-3.0 make web:
8243            psclean.map: s/uhv8a/uhvr8a/
8244            config.ps add:
8245                 p +psfonts_t1.map
8246                 p +psclean.map
8247                 p +typeface.map
8249 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8251         * scm/music-functions.scm (music-pretty-string): fix bug with
8252         string argument.
8254 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
8256         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
8258 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8260         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
8261         only process options if they're there.
8262         (write_file_map): add version-seen? to snippet-map.ly
8264 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
8266         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
8267         formatting cleanups.
8269         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
8270         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
8272 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8274         * scm/framework-ps.scm (ps-font-command): don't hash, just use
8275         name directly.
8277         * lily/main.cc (setup_paths): either add mf/out to search path or 
8278         fonts/{otf,type1,etc}
8279         
8280         * lily/font-config.cc (init_fontconfig): either add mf/out to
8281         FontConfig or fonts/{otf,type1,etc}
8283         * GNUmakefile.in: don't put mf/ link in share/ dir.
8285         * lily/staff-spacing.cc: move same-direction-correction to
8286         note-spacing-interface
8288         * scm/lily.scm (lilypond-main): use variable argument count for
8289         exception handler.
8291         * lily/font-config.cc (init_fontconfig): add operator pacification
8292         message.
8294         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
8296         * buildscripts/gen-emmentaler-scripts.py (i): generate
8297         PFAEmmentaler as well.
8299         * scm/framework-ps.scm (munge-lily-font-name): new function
8300         (write-preamble): hack: insert PFA equivalent of CFF into
8301         .PS. This makes LilyPond output printable on normal PS printers
8302         again.
8304         * buildscripts/gen-emmentaler-scripts.py (i): generate
8305         PFAEmmentaler.pfa aswell.
8307 2005-04-06  John Williams <williams@tni.com>  
8308         
8309         * scripts/lilypond-book.py: refactor the compose_ly procedure.
8310         
8311 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8313         * scm/page-layout.scm (default-page-make-stencil): always combine
8314         the header stencil, even if empty. This prevents the body text to
8315         reach up to the margins.
8317         * po/rw.po (Module): new file, for Kinyarwanda.
8319         * input/test/spacing-optical.ly (Module): new file.
8321         * lily/staff-spacing.cc: add same-direction-correction
8323 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8325         * Documentation/user/introduction.itely (Engraving): Comment-out
8326         non-existent file.
8328 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8330         * scm/define-grob-properties.scm (all-user-grob-properties): add
8331         same-direction-correction
8333         * VERSION: release 2.5.18
8335 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
8337         * lily/grob.cc (mark_smob): Check pscore->layout_ before
8338         dereferencing.  Fixes make web.
8340         * lily/midi-stream.cc: Handle unwritable midi file.  Include
8341         errno.h.
8343         * Documentation/user/: Fix links.
8345 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8347         * lily/text-interface.cc (Module): rename from text-item.cc
8349         * input/regression/apply-output.ly (texidoc): function naming fix.
8351         * lily/time-signature-performer.cc (derived_mark): new function.
8353         * lily/lily-parser-scheme.cc:  print mapped file name for progress
8355         * scripts/lilypond-book.py (find_linestarts): new function.
8356         (find_toplevel_snippets): keep track of line numbers.
8358         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
8359         all key changes.
8361         * ly/declarations-init.ly (partCombineListener): use
8362         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
8364         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
8366 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
8368         * lily/text-item.cc: Fix link.
8370         * Documentation/user/changing-defaults.itely (Changing defaults):
8371         Fix programs reference links.
8373         * Documentation/user/music-glossary.tely: Convert to utf-8.
8375 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8377         * make/lilypond-vars.make: remove TEXMF from variables.
8378         remove DEB_BUILD pk font variables.
8379         remove GUILE_LOAD_PATH
8380         remove TeX memory vars.
8382 2005-04-04  Werner Lemberg  <wl@gnu.org>
8384         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
8386 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8388         * ps/lilyponddefs.ps: remove reencode-font
8390         * lily/simple-spacer.cc (add_columns): also compare
8391         directly. Column rank doesn't distinguish between broken and
8392         unbroken columns. This fixes large spaces before time sig changes.
8394         * Documentation/user/point-and-click.itely: document ly:set-option.
8396         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
8397         point_and_click_global is set.
8399         * lily/scm-option.cc (LY_DEFINE): add point-and-click
8400         ly:set-option argument.
8402 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8404         * GNUmakefile.in: Include symlinks in webball.
8406         * Documentation/user/GNUmakefile (source-links): Add symlinks to
8407         source dir for split and non-split manuals.
8409         * Documentation/user/*y: Fix @uref/@inputfile links for
8410         split/non-split HTML documents.
8412         * Documentation/user/GNUmakefile (local-WWW): Do not generate
8413         .ps.gz.
8414         
8415 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8417         * GNUmakefile.in: Add newline.
8419 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
8421         * tex/lilyponddefs.tex: use color instead of xcolor
8422         * scm/output-tex.scm: minor editing
8424 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8426         * scm/music-functions.scm (display-scheme-music): pretty printer
8427         for music expressions.
8429 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8431         * buildscripts/install-info-html.sh (index_file): Fix link.
8433 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8435         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
8437         * Documentation/index.html.in: Add size estimates with some big pages.
8439         * Documentation/user/tutorial.itely (Running LilyPond for the
8440         first time): Add/replace some @rglos links.  TODO: add more
8441         @rglos links in tutorial, test non-intrusiveness (.css).
8443         * stepmake/bin/add-html-footer.py (do_file): Remove info's
8444         annoying's indication of referencing external document.
8446         * Documentation/user/GNUmakefile: Split version of glossary too.
8447         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
8448         links, not only for html.
8450         * Documentation/user/introduction.itely: Fix some links for other
8451         than html, do not use `here' as link name.
8453 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8455         * scm/documentation-generate.scm (string-append): Fix @usermanref,
8456         @glossaryref.
8458 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8460         * scm/page-layout.scm (default-page-make-stencil): only add header
8461         if existing and not empty. Fixes spurious programming error.
8463         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
8465 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
8467         * scm/output-tex.scm: implement {re,}setcolor
8468         * tex/lilyponddefs.tex: use color package
8470 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8472         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
8473         additions to website.
8475         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
8477         * Documentation/user/macros.itexi: Fix @usermanref html links in
8478         split documents: use @inforef.
8480 2005-03-30  Graham Percival  <gperlist@shaw.ca>
8482         * Documentation/user/programming-interface.itely: minor fix.
8484         * Documentation/user/advanced-notation.itely: added info to
8485         Metronome markings.
8487 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8489         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
8490         use box-stencil.  Remove y-padding argument.
8491         (make-stencil-circler): New function.
8493         * buildscripts/lilypond-words.py (F): 
8494         * elisp/SConscript (a): 
8495         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
8496         * vim/SConscript (a): 
8497         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
8499         * lily/general-scheme.cc: Build fix.
8501         * scm/markup.scm:
8502         * input/regression/markup-scheme.ly: 
8503         * input/regression/markup-syntax.ly: Drop 'new-' from name.
8505         * scm/stencil.scm (make-circle-stencil): New function.
8507         * scm/define-markup-commands.scm (draw-circle): Use it.  New
8508         name (was cicle).  Update callers.
8509         (circle): New markup command, similar to box.
8511         * scm/stencil.scm (circle-stencil): New function.
8513 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
8515         * configure.in: Detect libutf8/wchar.h variant.
8517         * stepmake/aclocal.m4: Modify shared size test.
8519 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8521         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
8523 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8525         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
8526         
8527         * VERSION (PACKAGE_NAME):  release 2.5.17
8529 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
8531         * scm/backend-library.scm (postscript->png): Fix comment and png
8532         message.
8534         * GNUmakefile.in (link-tree): Fix locales.
8536 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8538         * lily/stencil-scheme.cc (LY_DEFINE): change to
8539         ly:stencil-aligned-to, non mutating.
8541         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
8543         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
8545         * lily/quote-iterator.cc (derived_mark): call
8546         Music_wrapper_iterator::derived_mark() too.
8548         * lily/grace-engraver.cc (derived_mark): change signature, add
8549         const.
8551 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8553         * SConstruct (symlink): 
8554         * GNUmakefile.in (link-tree): Add scripts to prefix.
8556         * lily/general-scheme.cc (ly:effective-prefix): New function.
8558         * scm/backend-library.scm (postscript->png): Use it.
8560 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8562         * lily/paper-score.cc (process): don't delete grobs after
8563         producing stencils. 
8565         * scm/part-combiner.scm (determine-split-list): switch off
8566         debugging info.
8568         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
8569         if available.
8571         * scm/define-context-properties.scm
8572         (all-user-translation-properties): add stringNumberOrientations.
8574         * lily/new-fingering-engraver.cc (position_scripts): make generic,
8575         so fingering and string-numbers are separately controlled.
8577 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8579         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
8580         not use debugging.
8582 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8584         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
8586         * config.hh.in: add HAVE_FONTCONFIG.
8588         * Documentation/user/instrument-notation.itely (String number
8589         indications): new node.
8591         * input/regression/new-markup-syntax.ly (texidoc): add circle.
8593         * lily/new-fingering-engraver.cc (add_string): new function. 
8594         (acknowledge_grob): accept string-number-event as well.
8596         * scm/define-markup-commands.scm (circle): new markup command.
8598         * scm/output-lib.scm (print-circled-text-callback): new function.
8600         * lily/GNUmakefile: move ifeq after include stepmake.make.
8602 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8604         * config.make.in (HAVE_LIBKPATHSEA_SO):
8605         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
8607         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
8608         add KPATHSEA_LIBS.
8610         * debian/watch: 
8611         * debian/control: Update.
8613 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8615         * input/test/title-markup.ly (spaceTest): remove.
8617         * input/test/embedded-tex.ly (Module): remove.
8619         * input/test/music-box.ly: use 'name property, not ly:music-name.
8621         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
8623         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
8625 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8627         * Documentation/topdocs/INSTALL.texi (Top): Remove information
8628         about xdeltas.  Add information about CVS.
8630         * scm/lily.scm (lilypond-main): Fix invocation of handler,
8631         gracefully handle failed files.
8633         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
8635         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
8636         small fixes.
8638         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
8639         No unnecessarily specific i18n messages.  Remove stray `1'.
8641 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8643         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
8644         documentencoding
8646         * scm/documentation-lib.scm (texi-file-head): set utf-8
8647         documentencoding.
8649         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
8650         Delta, not the Symbol one. 
8652         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
8653         for the .map file.
8655         * Documentation/topdocs/INSTALL.texi (Top): add running
8656         requirement as compilation requirement.
8658 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8660         * buildscripts/mutopia-index.py (headertext): add h1 header and
8661         utf-8 charset meta field.
8663         * input/GNUmakefile: prune example list.
8665         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
8666         options.
8668         * lily/slur-scoring.cc (get_base_attachments): only look at stem
8669         extent for visible stems.
8671         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
8673 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8675         * Documentation/topdocs/INSTALL.texi (Top): Updates.
8677         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
8679 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8681         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
8682         pass inf/nan into slur scoring.
8684         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
8685         page.
8687         * scripts/abc2ly.py (dump_voices): use alphabet().
8689 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
8690         
8691         * mf/GNUmakefile (depth): use $(FONTFORGE). 
8693 2005-03-27 Matthias Neeracher <neeracher@mac.com>
8694         
8695         * flower/include/virtual-methods.hh: simplify. Patch by
8697 2005-03-25  John Williams <williams@tni.com>  
8699         * scripts/lilypond-book.py (main): add png for HTML too, guess
8700         only if necessary. 
8702 2005-03-25  Graham Percival  <gperlist@shaw.ca>
8704         * Documentation/topdocs/INSTALL.texi: now recommends
8705         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
8707         * Documentation/user/basic-notation.itely,
8708         Documentation/user/tutoria.itely: warn about
8709         only one (phrasing) slur at once.
8711 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
8713         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
8715 2005-03-23  Graham Percival  <gperlist@shaw.ca>
8717         * Documentation/user/basic-notation.itely: fixed info about
8718         ending a (de)cresc.
8720         * Documentation/user/lilypond-book.itely: fixed
8721         lilypond-book filter example and warned about not doing
8722         --filter and --process at the same time.
8724 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8726         * lily/parser.yy (bass_number),
8727         Documentation/user/instrument-notation.itely (Figured bass): 
8728         Add the possibility to use text markup in figured bass. 
8730 2005-03-19  Graham Percival  <gperlist@shaw.ca>
8732         * Documentation/user/global.itely: added info about naming
8733         identifiers and breakbefore.
8735         * Documentation/user/invoking.itely: added info about batch
8736         processing files with convert-ly, removed references to TeX
8737         in the jail section.
8739         * Documentation/user/examples.itely: possibly fixed piano
8740         dynamics.
8742         * Documentation/user/advanced-notation.itely: added info
8743         about removing other types of Staff.
8745         * Documentation/user/instrument-notation.itely: possibly
8746         fixed piano staff line switch.
8748         * Documentation/user/changing-defaults.itely: added info
8749         about using normal font in titles.
8751 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8753         * VERSION (PATCH_LEVEL): release 2.5.16
8755         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
8756         explicitly.
8758 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8760         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
8761         whitespace.
8763         * python/lilylib.py (make_ps_images):
8764         * scm/backend-library.scm (postscript->pdf, postscript->png):
8765         Quote file name.  Use format rather than string-append juggling.
8767 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8769         * python/lilylib.py (make_ps_images): add x to -g argument. 
8771         * lily/key-performer.cc (create_audio_elements): don't use
8772         scm_eval_string. Check for minor 3rd directly.
8773   
8774         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
8775         (sarabandeCelloGlobal): key is D minor, not F major.
8777 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8779         Fix truncated --png output (Peter Danenberg).
8780         
8781         * python/lilylib.py (make_ps_images):
8782         * scripts/ps2png.py (copyright): Grok --papersize option.
8784         * scm/backend-library.scm (postscript->png): Add parameter
8785         PAPERSIZE.  Update callers.
8787         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
8788         Fixes symbol placement.
8790         * lily/spanner.cc: 
8791         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
8792         <libc-extension.hh>).
8794 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8796         * Nitpick run.
8798         * buildscripts/fixcc.py: Update.
8800         Builddir run fixes.
8802         * HACKING (datadir): Add VERSION.
8804         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
8805         higher up.
8807 2005-03-15  Werner Lemberg  <wl@gnu.org>
8809         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
8810         diagonal stem doesn't become thinner.
8812 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8814         * buildscripts/fixcc.py: Fixes (Werner).
8816 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8818         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
8819         Emmentaler/Aybabtu.
8821         * GNUmakefile.in: fix lilypond-words path.
8823         * po/tr.po: update to 2.3.21
8825         * lily/new-fingering-engraver.cc (position_scripts): take priority
8826         from head position.
8828         * input/regression/finger-chords-order.ly (texidoc): new file.
8830 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8832         * make/ly-rules.make: 
8833         * stepmake/aclocal.m4: 
8834         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
8836         * buildscripts/fixcc.py (rules): Leave space after operator.
8838 2005-03-14  Werner Lemberg  <wl@gnu.org>
8840         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
8841         top of the glyph with smooth curve.
8843 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8845         * Documentation/user/global.itely (Page layout): remove
8846         printpagenumber.
8848 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
8850         * input/regression/mensural-ligatures.ly: new file (with examples
8851         compiled by Pal Benko).
8853         * Documentation/user/instrument-notation.itely: Bugfix: yet some
8854         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
8855         musicglyph access.  Many small beautifications in ancient
8856         examples.
8858         * input/test/divisiones.ly: fixed indentation; small
8859         beautifications
8861         * ly/engraver-init.ly: added FIXME comment
8863         * scripts/lilypond-book.py,
8864         Documentation/user/lilypond-book.itely: added music fragment
8865         option "packed" to lilypond-book
8867         * Documentation/user/instrument-notation.itely: Bugfix: added
8868         missing LedgerLineSpanner color setting in several places.  Added
8869         music fragment option "packed" to VaticanaContext example.
8871 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8873         * scm/define-grobs.scm (all-grob-descriptions): switch off
8874         Hyphen_spanner::set_spacing_rods 
8876         * lily/lyric-hyphen.cc (print): add padding between syllable and
8877         hyphen.
8878         (print): shorten hyphen in tight situations (determine using
8879         minimum-length)
8881         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
8882         0.4pt.
8884 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8886         * ly/titling-init.ly (bookTitleMarkup): Refinements.
8888         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
8889         header/footer markings for regression-test.
8891         * scm/backend-library.scm (output-scopes, header-to-file): Move
8892         from framework-tex.scm.
8894         * scm/framework-ps.scm (output-framework)
8895         (output-preview-framework):
8896         * scm/framework-eps.scm (output-classic-framework)
8897         (output-framework): Use it.  Fixes collated files.
8899 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8901         * input/sakura-sakura.ly: 
8902         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
8904         * buildscripts/guile-gnome.sh: Update.
8906         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
8908         * mf/aybabtu.pe.in: Capitalize Aybabtu.
8910 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8912         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
8913         culprit: always exit the loop if we find a rod, even if it has
8914         distance < 0. 
8916         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
8917         algorithm.
8919         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
8920         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
8922         * scm/output-svg.scm (dashed-line): new  function body.
8923         
8924         * GNUmakefile.in: create .htaccess.
8926 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8928         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
8930 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8932         * VERSION (PACKAGE_NAME): release 2.5.15
8934         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
8936         * scm/framework-svg.scm (output-framework): put scaling in
8937         document header. Apply scaling only once.
8938         (output-framework): dump page size in px, not mm. 
8940         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
8941         from font-size.
8943         * lily/paper-outputter-scheme.cc (LY_DEFINE):
8944         ly:outputter-output-scheme, new function.
8946         * scm/output-svg.scm (pango-description-to-svg-font): new function
8948 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8950         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
8951         target.
8953         * input/typography-demo.ly: new file.
8955 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8957         * Documentation/user/global.itely (File structure): Add markup blocks
8958         to toplevel expressions.
8959         (Multiple movements, Creating titles): Add markup blocks.
8961         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
8962         <libc-extension.hh>).
8964         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
8966         * flower
8967         * lily
8968         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
8970 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8972         * lily/accidental.cc: special bboxes for natural. 
8974         * mf/feta-toevallig.mf: make stems heavier.
8976         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
8977         texts as well.
8979         * mf/feta-klef.mf: revise. 
8981         * mf/feta-schrift.mf: make thinning of accent less pronounced.
8983         * mf/feta-klef.mf: add rounded curve at top. 
8984         make thinnib a little heavier.
8986 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8988         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
8990         * buildscripts/fixcc.py: New file.
8992         * input/regression/utf8.ly: Update Debian font description.
8994 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8996         * stepmake/aclocal.m4: Fix test.
8998 2005-03-09  Graham Percival  <gperlist@shaw.ca>
9000         * Documentation/user/invoking.itely: added Sebastino Vigna's
9001         docs for the --jail option.
9003 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9005         * lily/stem.cc (print): only produce stemlets if there are no
9006         noteheads on this stem.
9008         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
9009         don't crash on stemlet (visible stem without heads).
9011         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
9012         unbroken situations. 
9014         * scm/output-lib.scm (center-invisible): new function.
9016         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
9017         wishes to determine loose column space.
9019         * lily/font-config.cc (init_fontconfig): add
9020         fonts/{otf,type1,cff}  to path.
9022         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
9024         * mf/GNUmakefile (Module): install all fonts under otf/
9026         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
9027         replace /fonts/otf/ by /ps/ 
9029         
9030 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9032         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
9034         * lily/book.cc (process): Oops, add score_.header_.
9036         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
9038         * lily/parser.yy: Handle toplevel and book texts as score.
9040         * scm/page-layout.scm (default-page-make-stencil):
9041         Bugfix: (page-properties rename.
9043         * scm/backend-library.scm (ly:system): Typo.
9045 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9047         * stepmake/stepmake/executable-targets.make (installexe): don't
9048         strip installed executables
9050         * lily/font-select.cc (get_font_by_design_size): revert
9051         pango_description_string as well.
9053         * lily/system.cc (set_loose_columns): put loose column just left
9054         of next column.
9056         * lily/include/group-interface.hh (extract_grob_array): rename
9057         from Pointer_group_interface__extract_grobs
9059         * input/regression/ledger-line-minimum.ly (texidoc): new file.
9061         * lily/ledger-line-spanner.cc (set_spacing_rods): new
9062         function. Keep ledgered note heads at a minimum distance.
9063         Introduce minimum-length-fraction
9064         (print): introduce length-fraction property.
9066 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9068         * tex/GNUmakefile: remove latin1.enc rules.
9070 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9072         * scm/titling.scm: Typo.
9074         * input/regression/score-text.ly: Really add.
9076         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
9078 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9080         * lily/open-type-font-scheme.cc:  new file.
9082 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9084         * scm/titling.scm (layout-extract-page-properties): Rename from
9085         page-properties.  Update callers.
9087         * lily/lexer.ll (Lily_lexer):
9088         * lily/parser.yy: Junk lyric_markup state.
9090         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
9092         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
9093         Add texts parameter.
9095 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9097         * lily/lexer.ll (lyric_markup): New mode.
9098         (Lily_lexer::push_lyric_markup_state): New method.
9099         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
9101         * lily/parser.yy (book_body):
9102         (toplevel_expression): Grok \markup texts.
9104         * lily/score-scheme.cc (ly:music-scorify): 
9105         * scm/lily-library.scm (collect-music-for-book): Take texts
9106         parameter.
9108         * lily/score.cc (texts_): New member.
9110         * lily/paper-book.cc (systems): Format score texts.
9112         * score-text.ly: New file.
9114         * ttftool/SConscript:
9115         * kpath-guile/SConscript: New file.
9117         * lily/SConscript:
9118         * SConstruct: Update.
9120 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9122         * VERSION (PACKAGE_NAME): release 2.5.14
9124 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9126         * lily/main.cc: Add dummy xgettext markers.
9128 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9130         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
9131         requirements
9133         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
9134         executable is < 40k
9136         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
9137         hack.
9139 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9141         * flower/libc-extension.cc:
9142         * flower/include/libc-extension.hh: [Open]BSD simply cast
9143         cookie/funopen declarations.
9145         * stepmake/aclocal.m4: Check for libkpathsea.so.
9147         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
9148         dl_kpse_find_file.
9150 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9152         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
9153         (open_library): alternative for static library.
9155 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9157         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
9159         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
9161         Drop run-time dependency on teTeX.
9163         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
9165         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
9166         KPATHSEA_LIBS in LIBS.
9167         (STEPMAKE_DLOPEN): New function.
9169         * lily/font-config.cc (init_fontconfig): Use dir for directory,
9170         not path.
9172         * flower/file-path.cc (directories): Rename from paths, as this
9173         return an array of directories (a single path).
9175 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9177         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
9179         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
9180         new ly:kpathsea-find-file
9182         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
9184         * kpath-guile/GNUmakefile: new file
9186         * buildscripts/gen-emmentaler-scripts.py (i): generate
9187         emmentaler-X.fontname as well.
9189         * buildscripts/ps-embed-cff.py: new script
9191         * scm/lily-library.scm: remove ps-embed-cff.
9193         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
9194         font loading. 
9196         * scm/font.scm (add-music-fonts): load dynamics/numbers through
9197         fontconfig as well.
9199         * lily/font-config.cc (init_fontconfig): add cff/ too.
9201         * ly/generate-embedded-cff.ly: capitalize.
9203         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
9204         so as to register the pango font.
9206         * lily/font-config.cc (init_fontconfig): add
9207         prefix/{otf,type1,mf/out} to fontconfig path.
9209         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
9210         overrides all. 
9212         * configure.in (gui_b): remove ec mftrace check
9214         * config.hh.in: use lilypond-Major.Minor as data directory.
9216         * scm/framework-ps.scm (dump-page): use output-units for landscape.
9218         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
9219         name.
9221 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9223         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
9224         error messages.
9226         * flower/libc-extension.cc:
9227         * flower/include/libc-extension.hh: [Open]BSD fixes for
9228         cookie/funopen declarations.
9230 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9232         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
9233         emmentaler.
9235         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
9236         lcrm10.
9238         * scm/define-markup-commands.scm (fontsize): new markup
9239         command. Also set baseline-skip
9241 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
9242         
9243         * lily/main.cc (do_chroot_jail): paranoia security for webserver
9244         use.
9246 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9248         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
9250         * lily/pdf.cc: remove PDF related files
9252 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9254         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
9255         <hamamatsu@gmx.de>
9257 2005-03-05  Graham Percival  <gperlist@shaw.ca>
9259         * Documentation/user/advanced-notation.itely: first draft
9260         of reorg done.
9262         * Documentation/user/global.itely: fixed (sub)section
9263         bits of MIDI.
9265 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9267         * cygwin/mknetrel (extras): Bufix (Bertalan).
9269         * Documentation/user/basic-notation.itely (Chords): @ref fix.
9270         * Documentation/user/instrument-notation.itely (Introducing chord
9271         names): Compile fix: must have unique name.
9273 2005-03-02  Graham Percival  <gperlist@shaw.ca>
9275         * Documentation/user/instrument-notation.itely: reorg.
9277 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9279         * scm/output-gnome.scm:
9280         * scm/output-svg.scm: Fix font scaling.
9282 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9284         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
9285         what link to use best.
9287         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
9288         * Documentation/user/tutorial.itely (Automatic and manual beams):
9289         Fix @ref.
9291         * lily/tweak-registration.cc (replace_grob_tweak): New function.
9292         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
9293         * scm/framework-gnome.scm (tweak): Use it.
9295 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9297         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
9299         * scm/output-ps.scm (white-text): reinstate white-text
9301 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9303         * scm/output-ps.scm (offset-add): Remove.
9305         * scm/lily-library.scm (offset-flip-y): New function.
9306         * scm/framework-gnome.scm (tweak): Use it.
9308         * scm/output-gnome.scm (grob-cause): Add parameter.
9310         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
9311         * scm/output-ps.scm (url-link): Move.
9312         (white-text): Warn user about brokenness.
9314         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
9315         wrt ghostscript.
9317 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9319         * lily/slash-repeat-engraver.cc (try_music): always make slashes
9320         if body length smaller than measure length.
9322         * scm/define-markup-commands.scm (with-url): oops. use Y extent
9323         for Y.
9325         * ly/titling-init.ly (tagline): put default tagline in \paper
9327 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9329         * lily/kpath.cc: 
9330         * lily/pdf.cc (Pdf_file): Use more generic error messages.
9332         * scm/lily-library.scm (version-not-seen-message): New function.
9333         * ly/init.ly: Use it.
9335         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
9336         breaks as progess.
9338         * scripts/lilypond-book.py (do_process_cmd): Do not lump
9339         whitespace with l10n message.
9341         * scm/framework-tex.scm (convert-to-ps):
9342         (convert-to-dvi): Do not use overly specific l10n messages.
9344         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
9346         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
9347         merge stderr with stdout.  
9349 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9351         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
9352         Neeracher).
9354 2005-02-29  Graham Percival  <gperlist@shaw.ca>
9356         * Documentation/user/instrument-notation.teily: moved
9357         \arpeggio to Basic.
9359         * Documentation/user/advanced-notation.itely: Articulation to
9360         Basic, a bunch of stuff from Basic moved to Advanced.
9362         * Documentation/user/basic.itely: swapped various sections,
9363         reorganized Basic.
9365 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9367         * flower/memory-stream.cc: 
9368         * flower/libc-extension.cc: Remove obsolete #undefs.
9370         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
9371         more carefully.
9373 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9375         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
9376         dependency.
9378         * VERSION (PACKAGE_NAME): release 2.5.13
9380         * GNUmakefile.in (web-ext): don't ship ps.gz
9382         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
9383         stdout
9385 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9387         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
9388         without libintl.  Now it compiles too.
9390 2005-02-28  Graham Percival  <gperlist@shaw.ca>
9392         * Documentation/user/basic-notation.itely,
9393         instument-notation.itely, advanced-notation.itely:
9394         split up contents of notation.itely.
9396         * Documentation/user/notation.itely: file removed.
9398         * Documentation/user/invoking.itely, converters.itely:
9399         moved convert-ly info to invoking.itely.
9401         * Documentation/user/global.itely, changing-defaults.itely,
9402         sound-output.itexi: moved global settings, file layout, and
9403         sound into global.itely.
9405         * Documentation/user/sound-output.itexi: file removed.
9407         * Documentation/user/lilypond.tely: removed links to
9408         notation.itely and sound.itely.
9410 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9412         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
9414         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
9416         * THANKS: add sponsor.
9418         * scm/define-markup-commands.scm (with-url): new markup command.
9420         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
9421         tagline.
9422         
9423         * scm/output-tex.scm (url-link): stub.
9425         * scm/output-ps.scm (url-link): new function.
9427         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
9428         ly:set-point-and-click
9430 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9432         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
9433         based on pdf-viewer setting.
9435         * scm/framework-ps.scm (write-preamble): Find and set preferred
9436         pdf-viewer.
9438 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9440         * Documentation/user/point-and-click.itely: update for PDF point &
9441         click.
9443         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
9444         editors based on EDITOR setting.
9446 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9448         * scm/*: Oops, more grand 2005 replace bits.
9450 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9452         * ps/music-drawing-routines.ps: new routine: insert PDF mark
9454         * scm/output-ps.scm (grob-cause): point & click support for
9455         PostScript
9457 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9459         * lily/input-scheme.cc (LY_DEFINE): rename to
9460         ly:input-file-line-column
9462 2005-02-26  Graham Percival  <gperlist@shaw.ca>
9464         * Documentation/user/examples.itely: small fix from Steve Doonan.
9466         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
9468         * THANKS: added Yuval Harel.
9470         * Documentation/user/{various}: inserted two spaces after a period.
9472         * Documentation/user/lilypond.tely: added framework for reorg.
9474         * Documentation/user/basic-notation.itely, instrument-notation.itely,
9475         advanced-notation.itely, global.itely: new files, placeholder for
9476         future reorg.
9478 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
9480         * Documentation/user/notation.itely: revamped Polyphony section
9481         
9482 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9484         * Documentation/user/lilypond-book.itely (Music fragment options):
9485         doc fontload.
9487         * Documentation/user/changing-defaults.itely (Text encoding): add
9488         fontload option to utf8 include
9490         * scripts/lilypond-book.py (compose_ly): add fontload option
9492         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
9493         force-eps-font-include option.
9495         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
9496         black triangle
9498         * Documentation/user/invoking.itely (Editor support): remove
9499         lilypond-latex section.
9501         * scripts/lilypond-latex.py (Module): remove script.
9503         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
9504         overwrite .log. 
9506         * lily/main.cc: remove -m, --no-layout
9508         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
9509         to define. We don't want to override fprintf everywhere.
9511 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9513         * cygwin/lilypond.hint: 
9514         * cygwin/README.in: Update dependencies.
9516         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
9517         Bugfix: do not pollute CPPFLAGS, LIBS.
9519         * cygwin/mknetrel (extras): Cross compile fixes.
9521         * ttftool/util.c: 
9522         * ttftool/ttfps.c: 
9523         * ttftool/ps.c: #include libc-extension.hh
9525         * flower/include/libc-extension.hh:
9526         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
9527         wrapper using funopen.
9528         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
9529         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
9531         * config.hh.in:
9532         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
9533         (AC_CHECK_HEADERS): Add libio.h
9535         * scripts/convert-ly.py: Uniformize, internationalize.
9536         (2.5.2): Remove fatal encoding rule.
9537         (2.5.13): Handle latin1 encoding gracefully.
9539 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9541         * HACKING: Fix line breaks.
9543 2005-02-23  Werner Lemberg  <wl@gnu.org>
9545         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
9546         contains those two files.
9548 2005-02-21  Werner Lemberg  <wl@gnu.org>
9550         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
9551         to improve overlap removal process.
9553         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
9554         left and right ending.  This ensures better overlapping.
9555         Update all callers.
9556         ("lineprall"): Don't use draw_gridline to get better overlapping.
9558 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9560         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
9562         * Documentation/topdocs/NEWS.tely (Top): oops.
9564 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
9566         * HACKING: new file.
9568         * input/regression/utf8.ly (portuguese): added a portuguese example
9569         to show latin1 accents.
9571 2005-02-21  Pal Benko  <benkop@freestart.hu>
9573         * lily/mensural-ligature-engraver.cc:
9574         * lily/mensural-ligature.cc:
9575         * lily/include/mensural-ligature.hh: new algorithm implemented
9577         * scm/define-grob-properties.scm: join-left killed (add-join may
9578         be used); join-left-amount changed to join-right-amount
9580 2005-02-21  Graham Percival  <gperlist@shaw.ca>
9582         * Documentation/user/notation.itely: small but urgent fix.
9584 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
9586         * lily/duration-scheme.cc: bugfix: correct parameters to
9587         SCM_ASSERT_TYPE.
9589         * THANKS: added Pal.
9591         * Documentation/user/notation.itely: bugfix: unTeXified
9592         $\\backslash$.  Bugfix: yet another glyph renaming victim:
9593         "timesig.*x/y" -> "timesig.*xy".
9595 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9596         
9597         * VERSION (PACKAGE_NAME): release 2.5.12
9599 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9601         * ly/engraver-init.ly: set tieWaitForNote to #t by default
9603         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
9605         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
9607         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
9609 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9611         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
9612         latin1..utf-8.
9614         * input/regression/stanza-number.ly:
9615         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
9617         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
9619 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9621         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
9622         NEWS. Refer to website for older news.  
9624         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
9625         .HTML. This should be done for specific servers only.
9627         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
9628         .ly image examples.
9630         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
9631         in layer 0 too.
9633         * scm/define-context-properties.scm
9634         (all-user-translation-properties): add tieWaitForNote
9636         * scm/define-grobs.scm (all-grob-descriptions): add
9637         Tie_column::before_line_breaking
9639         * lily/tie.cc (get_column_rank): new function
9641         * lily/tie-column.cc (before_line_breaking): new function.
9642         (werner_directions): take into account ties that start on
9643         different columns.  
9645         * lily/score-engraver.cc (set_columns): move add_column() so we
9646         have column rank available.
9648         * lily/tie.cc (get_column_rank): new function.
9650         * input/regression/utf8.ly (japanese): add japanese lyrics.
9652         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
9654         * THANKS: add Steve D
9656         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
9657         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
9659 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
9661         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
9662         to show harmonic notes
9663         * scm/define-markup-commands.scm: in \markup-by-number
9664         "dots-dot" -> "dots.dot" to show dotted notes
9666 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9668         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
9670         * flower/memory-stream.cc (writer): new file.
9672         * configure.in: add endian test.
9674 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
9676         * Documentation/user/examples.itely: small
9677         simplification/beautification
9679         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
9680         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
9681         notation manual.
9683         * lily/mensural-ligature.cc: bugfix: another few victims of the
9684         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9686         * ly/gregorian-init.ly: commit some experimental code for hi-level
9687         ligature input language lying around here for several months.
9689         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
9690         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9692         * lily/vaticana-ligature-engraver.cc: bugfix: another few
9693         "x-y-z"->"x.y.s-z" fixes.
9695 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9697         * scm/framework-pdf.scm (scm): new file
9699         * lily/include/pdf.hh (class Pdf_file): new file.
9701         * lily/pdf.cc (write_trailer): new file.
9703 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
9705         * input/regression/color.ly: new file
9707         * lily/stencil.cc (interpret_stencil_expression):
9708         when a color expression is encountered: save current color,
9709         process the rest of the expression, and restore previous color.
9711         * lily/system.cc (get_line): check all grobs for color property and
9712         prepare the stencil scheme expressions for further processing.
9713         Fix layer-loop.
9715         * scm/define-grob-properties.scm: introduce the color property.
9717         * scm/output-lib.scm: color helper functions.
9719         * scm/output-ps.scm: introduce setcolor/resetcolor.
9721 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9723         * ly/*.ly, input/regression/*.ly: Added missing \version
9724         statements in some files.
9726 2005-02-15  Graham Percival  <gperlist@shaw.ca>
9728         * Documentation/user/notation.itely: minor editing.
9730         * Documentation/user/converters.itely: updated convert-ly bugs.
9732         * Documentation/user/lilypond-book.itely: add info about using
9733         feta characters in latex.
9735 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9737         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
9739 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9741         * scm/define-grob-properties.scm (all-user-grob-properties):
9742         removed 'dashed property.
9744 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9746         * scm/lily.scm (define-safe-public): new macro for defining
9747         variables that can be used in --safe mode. Use it in *.scm
9748         instead of manually setting safe-objects in safe-lily.scm.
9750 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9751         
9752         * lily/slur.cc: Slur-dash patch by Bertalan.
9754         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
9756         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
9758 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9760         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
9762 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9764         * mf/GNUmakefile: teTeX-3.0 install fix.
9766         * Cygwin patch from Bertalan.
9768         * stepmake/stepmake/metafont-rules.make: Remove bashism.
9770 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9772         * GNUmakefile.in: 
9773         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
9775         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
9776         2.0.x compatibility.
9778 2005-02-08  Werner Lemberg  <wl@gnu.org>
9780         * mf/feta-din-code.mf: Format; clean up code.
9781         Replace `---' with `--' plus explicit path directions.
9782         (linethickness#, stafflinethickness#): Remove.
9783         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
9784         ("dynamic s"): Improve shape.
9785         ("dynamic p"): Improve shape.
9786         Replace `draw' with better outline approximation.
9787         ("dynamic r"): Improve shape.
9788         Don't call `fill' and `draw' at the same time.
9790 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9792         * SConstruct (symlink):
9793         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
9794         build fix: add enc symlink.
9796         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
9798         Support for DESTDIR besides prefix=/foo
9800         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
9802         * stepmake/stepmake/*.make:
9803         * */GNUmakefile:
9804         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
9806         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
9808         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
9809         mawk in fontforge (date) test.
9811 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9813         * scm/font.scm (make-century-schoolbook-tree): add NCS as
9814         font-family=roman. Add Luxi Sans as sans
9816 2005-02-07  Graham Percival  <gperlist@shaw.ca>
9818         * Documentation/user/notation.itely: add warning about
9819         percent repeats and Voice contexts.
9821         * Documentation/user/lilypond-book.itely: clarified the
9822         necessity of dvips -u arguments.
9824 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9826         * THANKS: Added a bunch of bug hunters.
9828 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9830         * scm/framework-ps.scm (output-preview-framework): bugfix.
9832         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
9833         o/ for chord modifier..
9835         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
9837         * lily/drum-note-performer.cc:  remove unused (thanks Michael
9838         Welsh Duggan). 
9840 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9842         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
9844         * ly/titling-init.ly: Do not also print intstrument in header on
9845         first page.  Do not print page number on first and only page.
9847 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9849         * input/regression/*.ly: remove old-relative everywhere
9851         * lily/music-sequence.cc (simultaneous_relative_callback): do
9852         what-if analysis on copy, not on original. Fixes old-relative
9853         compatibility.
9855         * scm/backend-library.scm (postscript->png): space before
9856         --verbose.
9857         
9858 2005-02-05  Werner Lemberg  <wl@gnu.org>
9860         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
9861         is defined.
9863         * mf/feta-alphabet.mf: Define `staffsize#'.
9864         Include `feta-params.mf'.
9865         s/staffheight/design_size/.
9867         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
9869         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
9871         * mf/feta-nummer-code.mf: Reformatted.
9872         (draw_six): Use outline intersection to avoid a self-intersecting
9873         path.
9874         ("Numeral comma"): Fix serious outline glitches.  This slightly
9875         changes the glyph shape.
9876         ("Numeral dash"): Use `draw_rounded_block'.
9877         ("Numeral dot"): Use `drawdot'.
9878         ("Numeral 1"): Assure identical tangent directions for the
9879         intersection points of paths.  The glyph shape improvement is only
9880         visible at very high magnifications.
9881         ("Numeral 2"): Use `solve' macro to make the lower right part of
9882         the glyph outline touch the x axis exactly.  This changes the
9883         glyph shape.
9884         Minor fixes for better overlap removal support.
9885         ("Numeral 4"): Make lefter corner `rounder'.
9886         ("Numeral 5"): Assure identical tangent directions for the
9887         intersection points of paths.  This improves the glyph shape at
9888         high magnifications.
9889         ("Numeral 7"): Use `solve' macro to make the upper right part of
9890         the glyph outline touch the metrics box exactly.  This changes the
9891         glyph shape.
9892         Avoid corner in the upper left part of the glyph (causing a minor
9893         shape change).
9895         * mf/feta-ital-*.mf: Removed.  Unused.
9897 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9899         * VERSION (PATCH_LEVEL): release 2.5.11
9901         * input/regression/fill-line-test.ly: new file.
9903         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
9904         emmentaler name, eg. emmentaler-23. 
9906 2005-02-04  Christian Hitz  <chhitz@gmx.net>
9908         * scm/scm/define-markup-commands.scm (fill-line): rework for better
9909         alignment with centered texts
9911         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
9912         list of paddings
9914 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9916         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
9918         * lily/note-column.cc (translate_rests): call flush_extent_cache()
9919         of parents when translating rests. Fixes: c-chord-rest.ly 
9921         * lily/include/dimension-cache.hh (struct Dimension_cache): add
9922         dimension_callback_ member.
9924         * lily/grob.cc (flush_extent_cache): new function. Force recompute
9925         of extents.
9927 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9929         * all but lily/*: The grand 2004/2005 replace.
9931 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9933         * lily/*: add space after ,  
9935         * scm/music-functions.scm (has-request-chord): don't use
9936         ly:music-name anywhere. Fixes <<\\>> notation. 
9938         * scm/define-markup-commands.scm (box): use font-size for
9939         padding. Fixes boxed-rehearsal-marks.ly
9941         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
9942         identifier definition too, so foo = \lyrics { ...   } bar = #1
9943         doesn't complain about "bar" being LYRICS_STRING.
9945         * lily/paper-def.cc (find_pango_font): new routine; Store
9946         pango_fonts in hash tab too. This is necessary for retrieving
9947         Pango_fonts::physical_font_tab() later on.
9949         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
9950         crash if psname is null.
9952         * lily/lily-guile.cc (ly_hash2alist): new function
9954         * Documentation/user/changing-defaults.itely (Text encoding):
9955         rewrite. 
9957         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
9958         -> font_filename mapping.
9960         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
9961         ly_pango_font_physical_fonts
9963         * scm/framework-ps.scm (supplies-or-needs): extract names from
9964         physical Pango_fonts.
9966         * utf8.ly: new file.
9968 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9970         * Documentation/user/changing-defaults.itely (Page layout): add
9971         doco about systemSeparatorMarkup.
9973         * scm/page-layout.scm (default-page-make-stencil): add-to-page
9974         function.
9975         (default-page-make-stencil): insert system separators.
9977         * scm/define-markup-commands.scm (hcenter): add
9978         (beam): add.
9980 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9982         * scm/output-ps.scm (ez-ball): reinstate ez notation.
9984 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9986         * lily/main.cc: Spell backend consistently.  Sort options.
9988 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9990         * scripts/lilypond-book.py (Module): revert @include.
9991         
9992 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9994         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
9995         Bugfix: @include .tex (not .texi).  Small cleanups.
9997         * stepmake/bin/add-html-footer.py (i18n): New function.
9999 2005-01-31  Werner Lemberg  <wl@gnu.org>
10001         * mf/feta-nummer.mf: Removed.  Unused.
10003 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10005         * lily/ : 2004 -> 2005 s&r
10007         * scm/file-cache.scm (cached-file-contents): add file. Read each
10008         file only once.
10010         * scm/font.scm (add-pango-fonts): change order. Medium weight is
10011         now default.
10013         * VERSION: release 2.5.10
10014         
10015         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
10017         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
10019         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
10020         that both X and Y extents of bbox are non-nil.
10022 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10024         * scm/chord-name.scm (alteration->text-accidental-markup): change
10025         - to . 
10027         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
10029         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
10031         * Documentation/user/invoking.itely (Invoking lilypond): add note
10032         about EPS backend.
10034         * scm/framework-eps.scm: new file: create per-system/per-page EPS
10035         files for inclusion in lilypond-book document.
10037         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
10039         * input/tutorial/lbook-texi-test.texi: new file.
10041         * scm/safe-lily.scm (safe-objects): add
10042         {begin,end}-of-line-(in)?visible as safe.
10044 2005-01-30  Graham Percival  <gperlist@shaw.ca>
10046         * Documentation/user/changing-defaults.itely: fixed example
10047         of (dynamics).
10049 2005-01-29  Graham Percival  <gperlist@shaw.ca>
10051         * lily/main.cc: fix info about -o=FILE.
10053 2005-01-29  Werner Lemberg  <wl@gnu.org>
10055         * mf/feta-toevallig.mf ("Natural"): Completely changed the
10056         construction to assure smooth transition from straight to curved
10057         lines.
10059 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10061         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
10062         stencils.
10064         * ps/lilyponddefs.ps: add start-page, start-system doesn't
10065         translate to top of page. Fixes alignment problems of
10066         lilypond-generated EPS files.
10068 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10070         * scm/part-combiner.scm (analyse-spanner-states): trigger on
10071         crescendo-end as well, since Decrescendo maybe ended with Stop
10072         Crescendo.). Fixes: partcombine-diminuendo.ly
10074         * scm/script.scm (default-script-alist): swap portato symbols.
10076         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
10078         * lily/paper-outputter-scheme.cc (LY_DEFINE):
10079         ly:outputter-port. New function.
10081         * scm/framework-ps.scm (output-classic-framework): dump a
10082         -systems.texi too
10083         (output-classic-framework): dump multiple systems on an "infinite"
10084         page EPS including fonts. 
10086         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
10087         .eps files for both texi and tex formats. Use PNG coming from
10088         lilypond.
10089         
10090 2005-01-28  Graham Percival  <gperlist@shaw.ca>
10092         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
10094         * scripts/lilypond-latex.py: fix info about -o=FILE.
10096 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10098         * ly/generate-embedded-cff.ly: write .cff.ps files.
10100         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
10102         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
10103         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
10105 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10107         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
10109 2005-01-28  Werner Lemberg  <wl@gnu.org>
10111         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
10112         macros.
10113         (draw_bulb): Improved.
10115         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
10116         metapost bug.
10117         (draw_pedal_P): Use soft_end_penstroke.
10118         (draw_pedal_d): Use soft_start_penstroke.
10120         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
10121         path.
10122         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
10123         doesn't change the glyph shape.
10125         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
10126         changing the shape) to avoid fontforge warnings.
10128         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
10129         soft_end_penstroke and fix glyph shape.
10131 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10133         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
10135 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10137         * scm/define-markup-commands.scm (line): filter out empty stencils
10138         from line command.
10140         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
10141         amount.
10143 2005-01-27  Graham Percival  <gperlist@shaw.ca>
10145         * Documentation/user/notation.itely: added info about what
10146         \voiceFoo does.  Also rewrote warning about marks at
10147         a line break.
10149         * Documentation/user/changing-defaults.itely: added info
10150         about putting dynamics in parenthesis and brackets.
10152 2005-01-27  Werner Lemberg  <wl@gnu.org>
10154         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
10156 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10158         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
10159         portato-direction.ly
10161         * lily/beam.cc (consider_auto_knees): add beam height to
10162         threshold. Fixes: knee-multiple-beam.ly
10164         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
10165         pedal line spanners. Fixes: instrument-center-pedal.ly
10167         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
10168         if encountering barline. Fixes: auto-beam-repeat.ly
10170 2005-01-26  Werner Lemberg  <wl@gnu.org>
10172         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
10173         overlapping.
10175         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
10176         with inflections for the 1/2 sharp glyph.
10178         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
10179         connection between `t' and `r'.
10180         Unify bulb with the rest of `r' to avoid grazing outlines which
10181         confuses the overlap removal algorithm of fontforge.
10183         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
10184         inflections.
10185         (draw_cross): Fix shape to have uniform thickness in corners.
10187         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
10188         to avoid an uneven number of self-intersections; this confuses
10189         fontforge.
10190         Fix a slight bug in the shape at left bottom (which is visible only
10191         at high magnifications).
10192         `Center' the stem horizontally to avoid overlapping.
10194 2005-01-24  Werner Lemberg  <wl@gnu.org>
10196         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
10197         to `asis'.
10198         (fet_begingroup): Save group name in string `feta_group'.
10199         (fet_endgroup): Updated.
10200         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
10202         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
10204         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
10205         in metapost.
10207 2005-01-24  Graham Percival  <gperlist@shaw.ca>
10209         * Documentation/user/notation.itely: really minor editing.
10211 2005-01-22  Graham Percival  <gperlist@shaw.ca>
10213         * Documentation/user/examples.itely: minor editing.
10215         * Documentation/user/changing-defaults.itely: minor editing.
10217         * Documentation/user/notation.itely: clarified info on polyphony
10218         and \addlyrics.
10220 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10222         * scm/output-gnome.scm: 
10223         * scm/output-svg.scm:
10224         * scm/lily-library.scm (font-name-style): Update font name
10225         kludging for fontconfig use.
10227 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
10229         * scm/define-markup-commands.scm: Document right-align and
10230         larger markup commands. Remove "TODO" from the topmost comment
10231         "each markup function should have a doc string." More consistent
10232         use of new-lines.
10234 2005-01-22  Graham Percival  <gperlist@shaw.ca>
10236         * Documentation/user/changing-defaults: removed info about
10237         copyright symbol, since it's likely to change soon.
10238         Added info about betweensystemspace.
10240         * Documentation/user/notation.itely: minor fixes.
10242         * Documentation/user/lilypond.tely,
10243         Documentation/user/music-glossary.tely: changed copyright
10244         date to 2005 instead of 2004.
10246         * input/test/volta-chord-names.ly: added old example back.
10248 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10250         * mf/feta-beugel.mf: use design size 20 (not 15).
10252         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
10253         change name to aybabtu completely
10255 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10257         * buildscripts/gen-emmentaler-scripts.py (outdir): add
10258         design_size to fontname
10260 2005-01-19  Werner Lemberg  <wl@gnu.org>
10262         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
10263         mf/feta-schrift.mf: s/p/pat/ if a path variable.
10265         * mf/feta-autometric.mf (set_char_box): Add code which emits
10266         specials for mf2pt1 if run with metapost.
10267         (to_bp): New macro for mf2pt1.
10269 2005-01-18  Graham Percival  <gperlist@shaw.ca>
10271         * Documentation/user/changing-defaults: added info on
10272         creating a copyright symbol.
10274 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10276         * VERSION: release 2.5.9
10277         
10278 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
10280         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
10282         * Documentation/user/notation.itely: Document
10283         score-override-auto-beam-setting Fix documentation for
10284         revert-auto-beam-setting.
10286 2005-01-18  Werner Lemberg  <wl@gnu.org>
10288         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
10289         (procset): New function to define a procset resource.
10290         (ps-embed-pfa): New function to define a font resource.
10291         (setup): New function to define a `Setup' environment.
10292         (preamble): Use new functions.
10294         * ps/lilypond.defs (init-lilypond-parameters): New function to
10295         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
10297 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10299         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
10301 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
10303         * scm/define-markup-commands.scm: Change number->markletter-string
10304         to take two arguments (vector number). Add number->mark-alphabet-vector
10305         and markalphabet markup command.
10307         * scm/translation-functions.scm: Add format-mark-box-alphabet,
10308         format-mark-alphabet, format-mark-box-barnumbers and
10309         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
10311 2005-01-17  Graham Percival  <gperlist@shaw.ca>
10313         * Documentation/user/examples.itely: add SATB automatic piano
10314         reduction template.
10316         * Documentation/user/notation.itely: added info about changing
10317         partcombine texts.  Also adds examples of alternate lyrics.
10319         * Documentation/user/changing-defaults.itely: added warning
10320         about \RemoveEmptyStaffContext overriding previous changes.
10322 2005-01-17  Werner Lemberg  <wl@gnu.org>
10324         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
10325         feta-alphabet*.
10327 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10329         * python/lilylib.py (make_ps_images): don't do final showpage for
10330         multi-page documents.
10331         
10332         * VERSION (MY_PATCH_LEVEL): release 2.5.8
10334 2005-01-16  Graham Percival  <gperlist@shaw.ca>
10336         * Documentation/user/lilypond.tely: changed order of appendices;
10337         unified index should be last.
10339         * Documentation/user/notation.itely: add example of key signatures
10340         and info about Staff.printKeyCancellation.
10342 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10344         * lily/include/repeated-music.hh (class Repeated_music): change
10345         into "namespace" class.
10347         * lily/event.cc: remove Key_change_event.
10349         * lily/include/transposed-music.hh (class Transposed_music): remove.
10351         * lily/transposed-music.cc: remove
10353         * lily/include/relative-music.hh: remove.
10355         * lily/include/music-sequence.hh (struct Music_sequence): change
10356         into "namespace" class.
10358         * lily/untransposable-music.cc (Module): remove
10360         * lily/include/un-relativable-music.hh (Module): remove
10362         * lily/include/untransposable-music.hh (Module): remove
10364         * lily/include/music-list.hh (Module): remove file
10366         * lily/un-relativable-music.cc: remove file.
10368 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10370         * lily/parser.yy: Compile fix.
10372 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10374         * lily/include/music.hh (class Music): unvirtualize transpose().
10376         * lily/sequential-music.cc: remove file.
10378         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
10380         * lily/slur-scoring.cc (get_best_curve): only switch on
10381         DEBUG_SLUR_SCORING for non NDEBUG builds.
10383         * lily/include/music.hh (class Music): replace Music::start_mom()
10384         by start-callback property
10386         * lily/include/grace-music.hh: remove file. 
10388         * lily/stem.cc (height): robustness fix.
10390         * lily/time-scaled-music.cc: remove file.
10392         * lily/include/music.hh (class Music): include SCM init argument.
10393         (class Music): replace Music::get_length() virtual by
10394         length-callback property everywhere.
10396         * scripts/convert-ly.py (conv): add  # to \property scalar value.
10398         * mf/GNUmakefile: don't install *list.ly
10400 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10402         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
10404 2005-01-12  Werner Lemberg  <wl@gnu.org>
10406         This patch addresses the following problems in the feta sources
10407         files which contribute to the fetaXX fonts.
10409         . Many fixes for rasterization at low resolutions (consistent use of
10410           `vround' and `hround', integer shift values for paths, applying
10411           `eps' for mirrored paths, use of `define_whole_pixels' and
10412           friends, etc.) -- while this probably looks like a waste of time
10413           it has revealed deficiencies in some glyph shapes.  See comment at
10414           the end of feta-params.mf how vertical symmetry is achieved.
10416         . The `---' operator has been replaced everywhere with `--'; this
10417           both improves and considerably reduces the font size after
10418           conversion with mf2pt1.
10420         These change aren't explicitly mentioned below since virtually all
10421         glyphs are affected.
10423         Other notable differences:
10425         . Glyphs from feta-accordion.mf now have charboxes around the
10426           outline.
10428         . Fixed incorrect charbox for `accDot'.
10430         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
10432         . Fixed position of the bow in the `upprall' glyph and its siblings.
10434         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
10435           dependent on the staff line thickness to avoid touching the middle
10436           staff line at smaller sizes.
10438         . Largely extended output for feta-testXX: Where useful, glyphs
10439         are shown both between and on staff lines.
10442         * mf/feta-params.mf (staff_space_rounded,
10443         stafflinethickness_rounded, linethickness_rounded,
10444         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
10445         Update all code which uses them where appropriate.
10446         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
10447         New variables used to control rasterization at low resolutions.  Set
10448         to zero if feta code is processed with metapost.
10450         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
10451         (draw_rounded_block, draw_square_block): Updated to use `--' only.
10452         (flare_path): Updated.
10453         Make it work with `filldraw' (but only circular pens).
10454         (hfloor, vfloor, hceiling, vceiling): New macros.
10456         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
10457         Use `draw' again in mf mode to have good pixel dropout control.
10458         Fix intersection points of horizontal lines with circle.
10459         ("accDot"): Fix parameters for set_char_box.
10460         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
10461         control.
10463         * mf/feta-banier.mf: Updated.
10465         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
10466         testing.
10467         (undraw_inside_ellipse): Remove `center' argument.  Update all
10468         callers.
10469         (draw_brevis): New macro, called by "Brevis notehead".
10470         (draw_whole_triangle_head): New macro, called by "Whole
10471         trianglehead".
10472         (draw_small_triangle_head): Use `filldraw'.
10474         * mf/feta-eindelijk.mf: Remove useless global group.
10475         Updated.
10477         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
10478         `filldraw'.
10480         * mf/feta-pendaal.mf: Updated.
10482         * mf/feta-puntje.mf: Updated.
10484         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
10485         less points.
10486         ("Flageolet"): Use `draw' again in mf mode to have good pixel
10487         dropout control.
10488         ("Varied Coda"): Use `draw_block'.
10489         (draw_comma): Fix typo.
10490         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
10491         pixel dropout control.
10493         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
10494         position of bow.
10496         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
10497         sizes.
10499         * mf/feta-toevallig.mf (remember_pic): New variable, used for
10500         testing.
10501         (draw_meta_sharp): Much simplified.
10502         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
10504         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
10506 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10508         * Documentation/user/notation.itely (Ancient rests): Fix typo
10509         (thanks Anthony)
10511 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10513         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
10515         * lily/main.cc (setup_paths): Add cff.
10517         * mf/GNUmakefile (foe): Include actual target %.cff.
10518         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
10520 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10522         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
10523         suffix for main_input_b_.
10525         * scm/music-functions.scm (toplevel-music-functions):
10526         precompute music lengths for music expressions.  
10528 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10530         * lily/include/input.hh (class Input): new `end_' slot for end of
10531         input. Renamed defined_str0_ to start_.
10533         * lily/input.cc (Input): Add Input::Input (Input const &) and
10534         remove Input::Input (Source_file*, char const *). Use the new
10535         slots.
10536         (set_location): method used by bison to propagate input
10537         locations (YYLLOC_DEFAULT).
10538         (end_line_number, end_column_number, step_forward): new methods
10539         
10540         * lily/input-scheme.cc (ly:input-both-locations): new function,
10541         similar to ly:input-location, but also return the end line and
10542         column.
10544         * lily/include/includable-lexer.hh: 
10545         * lily/includable-lexer.cc: 
10546         * lily/include/lily-lexer.hh (class Lily_lexer): 
10547         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
10548         Includable_lexer to Lily_lexer, in order to update lexloc (the
10549         yylloc), a new slot of Lily_lexer.
10550         (here_input, LexerError): simplify by using the lexloc slot (aka
10551         yylloc)
10553         * lily/lexer.ll: #define yylloc to use input locations (it may
10554         be useless here?). Fixed the #embedded_scm rule (step the location
10555         forward in order to skip the sharp sign before parsing the scheme
10556         expression)
10558         * lily/include/lily-parser.hh (class Lily_parser): 
10559         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
10560         here_input()
10561         (parser_error): overload for more precise locations of errors.
10563         * lily/parser.yy (YYLTYPE): set location type to Input
10564         (YYLLOC_DEFAULT): use Input::set_location()
10565         (yylex): add the YYLTYPE* location parameter.
10566         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
10567         Give an Input parameter to THIS->parser-error() for more accurate
10568         messages.
10570 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10572         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
10574         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
10575         on BEAMQUANTING for non-NDEBUG builds.
10577         * lily/stem.cc (head_count): performance: avoid String::String()
10578         inside oft called function.
10580 2005-01-09  Graham Percival  <gperlist@shaw.ca>
10582         * Documentation/user/examles.itely: attempted fix for broken
10583         string quartet template.
10585         * Documentation/user/notation.itely: remove unnecessary broken
10586         link.
10588 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10590         * VERSION (PACKAGE_NAME): release 2.5.7
10592 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10594         * config.make.in (METAFONT): Append -progname=mf, fixes use with
10595         mf-nowin for teTeX-3.0.  Backportme.
10597         * scm/output-svg.scm (utf8-string): New function.
10599         * scm/output-gnome.scm (utf8-string): New function.
10600         (otf-name-mangling): Remove.
10602         * lily/pango-font.cc (Pango_font): Use font string iso font
10603         filename for utf8-text.
10605         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
10606         name.
10608 2005-01-08  Graham Percival  <gperlist@shaw.ca>
10610         * Documentation/user/notation.itely: add info about
10611         Staff.extraNatural = ##f in Pitches section.  Also
10612         fixed some minor issues in the Vocal music section.
10614 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10616         * scm/output-ps.scm (white-text): comment out Helvetica font,
10617         which is broken for my GS install.
10619         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
10620         which provides a tighter bbox.
10622         * scm/define-grobs.scm (all-grob-descriptions): remove all
10623         extra-offsets from definitions.
10625 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
10627         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
10628         add tuning for 4-string bass and some common 4/5-string banjo
10629         tunings.  New function (four-string-banjo) turns a 5-string tuning
10630         into a 4-string tuning.  New function
10631         (fret-number-tablature-format-banjo) computes correct fret numbers
10632         on 5-string banjos.
10634         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
10635         Add beam correction to TabVoice.
10637         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
10638         using bold font; makes tabs more readable.
10640 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10642         * lily/font-select.cc (get_font_by_design_size): don't make
10643         Modified_font_metric; this causes trouble, since we don't know the
10644         font magnification from inside Pango_font::text_stencil()
10646         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
10648         * Documentation/user/notation.itely (The Lyrics context): comment out
10649         broken {Small ensembles} link.
10651         * scm/framework-svg.scm (output-framework): change calling convention.
10653         * lily/object-key-dumper-scheme.cc: new file.
10655         * lily/object-key-undumper-scheme.cc: new file.
10657         * lily/tweak-registration-scheme.cc: new file.
10659         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
10661         * Documentation/user/examples.itely (String quartet): uncomment
10662         broken example.
10664         * lily/font-config.cc: new file.
10666 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10668         * scm/output-svg.scm: 
10669         * scm/output-gnome.scm: s/bigcheese/emmentaler.
10671         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
10673 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10675         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
10676         Add headers.
10678         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
10680 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10682         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
10684         * lily/include/main.hh: lose _b hungarian suffixes for global
10685         variables.
10687         * lily/include/lily-guile-macros.hh: new file.
10689         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
10691         * lily/general-scheme.cc: new file. 
10693         * lily/font-select.cc (get_font_by_design_size): retrieve
10694         PangoFont for (designsize . "pango-descr") entries.
10696         * lily/lily-parser-scheme.cc: new file.
10698         * lily/output-def-scheme.cc: new file.
10700         * lily/paper-book-scheme.cc: new file.
10702         * lily/duration-scheme.cc (LY_DEFINE): new file.
10704         * lily/pitch-scheme.cc:  new file.
10706         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
10708 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10710         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
10712 2005-01-06  Graham Percival  <gperlist@shaw.ca>
10714         * Documentation/user/notation.itely: minor editing.
10716         * Documentation/user/changing-defaults: minor editing.
10718         * Documentation/user/examples.itely: add template for
10719         string quartet part extraction; demonstrates tag.
10721 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
10723         * Documentation/user/notation.itely: documents
10724         format-mark-box-letters and format-mark-box-numbers
10726         * scm/define-context-properties.scm: change comment.
10728 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10730         * scm/framework-ps.scm (output-classic-framework): new function:
10731         dump systems as separate .eps files (without fonts) and write a
10732         single collecting .tex file.
10734 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10736         * Documentation/user/notation.itely (Setting simple songs):
10737         Correct several errors in the equivalent formulation of
10738         \addlyrics. 
10739         (The Lyrics context): Corrected link to the SATB example.
10741 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10743         * scm/lily.scm (completize-formats): new function
10744         (postprocess-output): new function
10746         * lily/paper-book.cc (classic_output): change calling
10747         convention. Give basename as first argument. 
10748         remove Paper_book::post_processing().
10750         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
10752 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10754         * lily/paper-outputter.cc (LY_DEFINE): new function
10755         ly:outputter-close.
10757         * lily/main.cc: change --format,-f to --backend,-b
10759         * lily/include/main.hh: rename format to backend.
10761         * scm/translation-functions.scm (format-mark-box-numbers): add.
10762         patch by Erlend Aasland
10764 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10766         * lily/pango-font.cc (text_stencil): dump string as
10767         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
10769 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10771         * configure.in (gui_b): Remove handy developer-only
10772         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
10773         CVS source installations (but break other non-default but correct
10774         PKG_CONFIG_PATH setups), as this is no longer developer-only.
10776         * SConstruct: 
10777         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
10778         compatibility (backportme).
10780         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
10782 2005-01-03  Werner Lemberg  <wl@gnu.org>
10784         Prepare glyph shapes for mf2pt1 conversion.
10786         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
10787         (accDiscant, accFreebase, accStdbase): Replace `draw' with
10788         `penstroke'.
10789         (accDot): Use `drawdot'.
10790         (accBayanbase): Replace `draw' with `draw_gridline'.
10791         (print_penpos): Moved to feta-macros.mf.
10792         (accOldEE): Replace `filldraw' with `penstroke'.
10793         Replace `draw' with `penstroke' and `drawdot'.
10795         * mf/feta-banier.mf: Code clean-up.
10796         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
10797         `fill'.
10799         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
10801         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
10802         paremeter to control drawing of labels.  Update all callers.
10804         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
10805         (new_bulb): Return a bulb as a single path.  To do that, it now
10806         takes some more parameters.  Updated all callers.
10807         (draw_gclef): Major clean-up.  `draw' has been replaced with
10808         `penstroke', unnecessary outlines have been removed.
10809         Remove (unused) gnome-canvas code.
10811         * mf/feta-macros.mf (print_penpos): New macro (from
10812         feta-accordion.mf).
10813         Other minor fixes.
10815         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
10816         ("Pedal dot"): Use `drawdot'.
10817         (draw_pedal_P): Add parameter to control drawing of labels.  Update
10818         all callers.
10819         Fix shape at top.
10820         (draw_pedal_e): Add parameter to control drawing of labels.  Update
10821         all callers.
10822         (draw_pedal_d): Add parameter to control drawing of labels.  Update
10823         all callers.
10824         Revert drawing direction.
10826         * mf/feta-schrift.mf (draw_fermata): Use single path.
10827         (draw_short_fermata): Replace `filldraw' with `fill'.
10828         (draw_long_fermata, draw_very_long_fermata): Replace calls to
10829         `draw_rounded_block' with a single path.
10830         ("Thumb"): Draw full circle instead of mirroring segments.
10831         (draw_accent): New macro.
10832         ("> accent", "espr"): Use it.
10833         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
10834         ("open (unstopped)"): Draw full circle instead of mirroring
10835         segments.
10836         (draw_vee): Removed.
10837         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
10838         ("Downbow"): Replace calls to `draw_rounded_block' with a single
10839         path.
10840         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
10841         partial pieces drawn with `fill' -- these do still overlap with the
10842         stem of the `t' but just once, not multiple times so that fontforge
10843         can handle it gracefully.
10844         Change other parts of the glyph so that fontforge's overlapping
10845         algorithm reliably works.
10846         (draw_heel): Replace `draw' with `fill'.
10847         (draw_toe): Use `draw_accent' instead of `draw_vee'.
10848         ("Flageolet"): Replace `draw' with `penstroke'.
10849         ("Segno"): Replace `filldraw' with `penstroke'.
10850         Replace `draw' with `drawdot'.
10851         ("Coda"): Replace `fill' with `penstroke', using a single path.
10852         ("Varied Coda"): Use less overlapping paths.
10853         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
10854         single path.
10856         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
10857         group to better control the `labels' command.
10858         Rename argument to `offset' and use it actually.  Update all
10859         callers.
10860         Replace `filldraw' with `fill'.
10861         ("mordent", "prallmordent", "upmordent", "downmordent",
10862         "lineprall"): Replace `draw' with `draw_gridline'.
10863         ("upprall", "downprall"): Replace `draw' with `fill'.
10865         * mf/feta-timesig.mf: Formatting.
10867         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
10868         to...
10869         ("Flat"): Here.
10870         (draw_paren): Move code to draw labels to...
10871         ("Right Parenthesis"): Here.
10873 2005-01-02  Graham Percival <gperlist@shaw.ca>
10875         * Documentation/user/notation.itely: add example of \setTextDecresc
10876         and \setTextDim.
10878 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
10880         * scm/define-markup-commands.scm :  fix glyph-strings of
10881         accidentals and \note-by-number
10883 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10885         * VERSION: 2.5.6 released.
10886         
10887         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
10889         * input/regression/new-markup-scheme.ly: oops. font-family=music
10890         -> font-encoding fetaMusic.  
10892         * lily/main.cc: put default to PS.
10894         * lily/tfm.cc: idem.
10896         * lily/afm.cc: idem.
10898         * lily/include/modified-font-metric.hh (struct
10899         Modified_font_metric): remove coding_scheme() method.
10901         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
10903         * scripts/convert-ly.py (conv): crash on encountering \encoding.
10905         * input/les-nereides.ly: convert to utf8
10907         * lily/modified-font-metric.cc (text_dimension): idem.
10909         * lily/parser.yy (TODO): idem.
10911         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
10913         * lily/lexer.ll: remove encoding
10915         * scm/framework-ps.scm (output-variables): separately scale the
10916         page to mm 
10918         * lily/pango-font.cc (Pango_font): fix scaling.
10920         * lily/font-metric.cc (design_size): design_size returns a
10921         dimension now as well.
10923 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10925         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
10926         brace generation. 
10928         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
10930 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10932         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
10933         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
10935 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10937         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
10938         in first run as well.
10940         * scm/paper.scm (layout-set-staff-size): use text-font-size in
10941         dimension less points (ie. 12 = 12 point)
10943         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
10945         * lily/all-font-metrics.cc (find_pango_font): set description_
10947         * lily/pango-font.cc (text_stencil): export size as well.
10948         (text_stencil): fix scaling and extents box.
10950 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10952         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
10954         * Documentation/user/invoking.itely (Invoking lilypond): document
10955         texstr
10957         * scripts/convert-ly.py (conv): add ancient rules.
10959         * scm/clef.scm (c0-pitch-alist): replace - with .
10961         * scripts/lilypond-book.py (process_snippets): add texstr support.
10963         * scm/framework-texstr.scm (header): change extension to .textmetrics
10965         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
10966         -f tex.
10968         * lily/text-metrics.cc: new file.
10969         (try_load_text_metrics): new function
10971         * lily/include/text-metrics.hh: new file.
10973 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10975         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
10976         ly_scheme_function to ly_lily_module_constant.
10978         * lily/modified-font-metric.cc (text_dimension): try
10979         lookup_tex_text_dimension() first.
10981         * lily/tfm.cc: new function ly:load-text-dimensions
10983 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10985         * scm/output-texstr.scm (text): use \lilygetmetrics
10987         * scm/framework-texstr.scm (header): dump in new format.
10989         * tex/lilypond-tex-metrics: new file.
10990         
10991 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10993         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
10994         mapping.
10995         (index_to_charcode): New method.
10997         * scm/output-ps.scm (glyph-string): 
10998         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
11000 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
11002         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
11003         implement fully, need FONT to get to charcode.
11005         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
11007         * scm: Cleanups.
11009         * Documentation/user/changing-defaults.itely: Fix internalsrefs
11010         {Tunable context properties},
11011         {All layout objects},
11012         {Music definitions}.
11014 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11016         * VERSION: release 2.5.5
11017         
11018         * lily/main.cc: use TeX as default output format.
11020         * flower/file-path.cc (find): try to open directly as well, so we
11021         find absolute path files. 
11023         * lily/pango-select.cc: new file.
11025         * scm/framework-ps.scm: remove all encoding code. 
11026         load pfb/pfa for PangoFont too.
11027         
11028         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
11030 2004-12-22  Werner Lemberg  <wl@gnu.org>
11032         Prepare glyph shapes for mf2pt1 conversion.
11034         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
11036         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
11037         (define_triangle_shape): Use it to replace `draw' with `fill' and
11038         `unfill'.  Update all callers.
11039         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
11040         (draw_cross): Ditto.
11041         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
11042         Use penrazor for better conversion with mf2pt1.
11043         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
11044         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
11045         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
11046         draw_la_head, draw_ti_head): Replace `filldraw' with
11047         `fill'.  Update all callers.
11049 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11051         * lily/paper-book.cc (output): revert: only allow a single output
11052         format.
11054         * lily/include/pango-font.hh: new file.
11056         * lily/pango-font.cc: new file.
11058         * lily/font-metric.cc (text_stencil): new routine
11060         * lily/all-font-metrics.cc (find_pango_font): new routine.
11062         * lily/include/font-metric.hh (struct Font_metric): add
11063         text_stencil()
11065         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
11067 2004-12-22  Werner Lemberg  <wl@gnu.org>
11069         Prepare glyph shapes for mf2pt1 conversion.
11071         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
11073         * mf/feta-toevallig.mf: Formatting.
11074         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
11075         ("Natural"): Fix paths to allow better postprocessing.
11076         (draw_meta_flat): Use `z3l' as additional point in path to get
11077         better conversion with mf2pt1.
11078         Other minor cleanups.
11079         ("3/4 Flat"): Add auxiliary points and modify path to replace
11080         `draw' with `fill'.
11081         ("Double Sharp"): Mirror path segments instead of picture elements
11082         to get a single outline.
11083         Modify path to replace `filldraw' with `fill'.
11085 2004-12-22  Graham Percival  <gperlist@shaw.ca>
11087         * input/test/unfold-all-repeats.ly: added file back.
11089         * Documentation/user/notation.itely,
11090         Documentation/user/programming-interface.itely
11091         Documentation/user/changing-defaults.itely: fixed misc broken
11092         links to input/test/ files.
11094 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11096         * tex/texinfo.tex: Update.  We should not be distributing this,
11097         but since we do, use latest version.
11099         * Documentation/user/macros.itexi: Comment-out \fetaflat,
11100         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
11101         macros for feta glyphs.
11103 2004-12-22  Graham Percival  <gperlist@shaw.ca>
11105         * Documentation/user/changing-defaults.itely: fix index for set.
11107         * Documentation/user/converters.itely: added convert-ly bugs list
11108         from CVS.
11110 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11112         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
11113         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
11114         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
11115         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
11117         * mf/GNUmakefile (pfa_warning): Use less broken check.
11119         * python/lilylib.py (setup_environment): Remove cruft from
11120         GS_FONTPATH.
11122         * configure.in: Bump mftrace requirement to 1.1.1.
11124 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11126         * scm/output-svg.scm (beam): Use polygon.
11128         * scm/lily-library.scm: Bugfix.
11130         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
11132         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
11134 2004-12-19  Werner Lemberg  <wl@gnu.org>
11136         Prepare glyph shapes for mf2pt1 conversion.
11138         * mf/feta-eindelijk: Some formatting.
11139         (multi_rest_x, multi_beam_height): Removed.  Unused.
11140         ("Quarter rest"): Use `intersectiontimes' to create a single
11141         outline.
11142         (rest_crook): Removed.  Unused.
11143         (draw_rest_bulb): Return path (without filling).  Update callers.
11144         Simplified.
11145         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
11146         "128th rest"): Simplify `pat'.
11147         Create single outline.
11149 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11151         * mf/GNUmakefile (ALL_GEN_FILES):
11152         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
11154         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
11155         function.
11157 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11159         * scm/output-texstr.scm (placebox): add routine
11161         * VERSION (PACKAGE_NAME): release 2.5.4
11163         * scm/framework-texstr.scm (output-framework): new file.  
11165         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
11166         processing.
11168         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
11170         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
11171         rule.
11173         * configure.in (gui_b): bump mftrace requirement to 1.1.0
11175         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
11177         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
11179 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11181         * scm/framework-svg.scm (dump-page): Implement landscape.
11183 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11185         * lily/main.cc (setup_paths): Add svg to search path.
11187         * scm/output-svg.scm:
11188         * scm/framework-svg.scm: Add pageSet.  Update.
11189         (dump-fonts): New function.
11190         (output-framework): Use it.
11192         * mf/GNUmakefile: 
11193         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
11195 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11197         * tex/lilyponddefs.tex: comment out new ifpdf code.
11199 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11201         * GNUmakefile.in: 
11202         * SConstruct (symlink): Replace afm by otf.
11204         * scm/framework-gnome.scm (gnome-main): Remove invocation of
11205         ly:pango-add-afm-decoder.
11207         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
11209 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11211         * scm/output-ps.scm (new-text): don't access t glyph for getting
11212         space dimension.
11214         * ly/init.ly: warn about \version
11216         * lily/lexer.ll: set version-seen?
11218 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11220         * scm/output-svg.scm (string->entities): Update.
11222 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11224         * lily/main.cc (setup_paths): replace afm by otf for path. 
11226         * lily/pangofc-afm-decoder.cc: remove.
11228         * lily/include/pangofc-afm-decoder.hh: remove.
11230         * scm/framework-scm.scm (output-framework): new file.
11232         * mf/GNUmakefile: remove SAUTER_FONTS.
11233         remove SVG/sodipodi hacks.
11235         * scm/lily-library.scm (stderr): move stderr.
11237         * mf/GNUmakefile: remove AFM support.
11239         * buildscripts/mf-to-table.py (base): remove AFM support.
11241         * lily/open-type-font.cc (design_size): use design_size
11243 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
11245         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
11247 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11249         * mf/GNUmakefile: Generate combined aybabtu info.
11250         * mf/aybabtu.pe.in (i): Load it.
11252         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
11253         are not symbols.
11255         * lily/include/open-type-font.hh (count): New method.
11257         * mf/aybabtu.pe.in: Typo.
11259         * Documentation/user/out/lilypond-internals.nexi (Scheme
11260         functions): Typo.
11262         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
11264 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11266         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
11267         subfonts.
11269         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
11271         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
11272         (tex-font-command-raw): new function.
11274         * lily/include/virtual-font-metric.hh (Module): remove file
11276         * lily/virtual-font-metric.cc (Module): remove file.
11277         
11279         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
11280         (get_indexed_char): read bbox from lily table if present.
11282 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11284         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
11285         aybabtu.subfonts
11287         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
11288         global glyphname. Enables more than 64 glyphs in the OTF.
11290 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11292         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
11293         braces.
11295         * lily/open-type-font.cc (design_size): Use 12 as default for
11296         design size.
11298         * mf/aybabtu.pe.in: New file.  Merge all our braces.
11300         * mf/GNUmakefile: Generate aybabtu.
11302         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
11304 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11306         * scm/lily-library.scm (char->unicode-index): Remove.
11308         * scm/output-gnome.scm (text): Bugfix for plain string input.
11309         Updates.
11311         * scm/output-svg.scm (svg-font): Add weight to font selection.
11313 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11315         * Documentation/topdocs/INSTALL.texi (Top): Point to
11316         buildscripts/out/clean-fonts instead of
11317         buildscripts/clean-fonts.sh. 
11319 2004-12-13  Graham Percival  <gperlist@shaw.ca>
11321         * input/regression/figured-bass.ly: attempt to clarify text.
11323         * Documentation/user/notation.tely: add cindex for tag, attempt to
11324         add figured bass example.
11326         * Documentation/user/changing-defaults: basic editing.
11328 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11330         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
11332         * lily/open-type-font.cc (LY_DEFINE): new function
11333         ly:font-sub-fonts
11335         * lily/include/font-metric.hh (struct Font_metric): new method
11336         sub_fonts()
11338         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
11339         . with - in add.stem.
11340         
11341 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11343         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
11344         and fetaDynamic.
11346         * lily/rest.cc (glyph_name): Change - to . .
11348         * scm/output-gnome.scm (text): Hello world, again.
11350         * scm/output-svg.scm (named-glyph): New function.  Hello world!
11352         * lily/modified-font-metric.cc (index_to_charcode): New method.
11354         * lily/include/font-metric.hh (index_to_charcode): New function.
11356         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
11357         new function.
11358         (ly:font-glyph-to-index): Remove.
11360 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11362         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
11364         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
11366         * lily/open-type-font.cc (load_scheme_table): new function
11368         * lily/dots.cc (print): replace - 
11370         * lily/open-type-font.cc (attachment_point): new function.
11371         (load_table): read LILC table
11373         * buildscripts/gen-bigcheese-scripts.py (Module): new
11374         file. Generate FF scripts.
11376         * mf/feta-din10.mf: idem.
11378         * mf/feta-nummer10.mf: remove mf files.
11380         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
11382 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11384         * lily/lily-guile.cc: Use scm_from_locale_stringn.
11386         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
11387         compatibility.
11389 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11391         * lily/open-type-font.cc (get_indexed_char): scale metrics by
11392         design-size and units_per_EM.
11394         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
11396 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11398         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
11399         does not crash fontforge.
11401         * scm/lily-library.scm (char->unicode-index): Hack to map onto
11402         PUA.
11404 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11406         * scm/framework-ps.scm (ps-embed-cff): new function.
11408         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
11410 2004-12-12  Werner Lemberg  <wl@gnu.org>
11412         * mf/bigcheese.pe.in: Add PUA mapping.
11413         Don't create Type 42 but bare CFF font.
11415 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11417         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
11418         within canvas boundaries.
11420         * mf/merge.pe.in: Set font names, version, license GPL.
11422         * make/substitute.make: Add FONTFORGE.
11424         * config.make.in (FONTFORGE): Add.
11426         * configure.in (gui_b): Use PATH_PROG for fontforge.
11428 2004-12-11  Graham Percival  <gperlist@shaw.ca>
11430         * scm/define-markup-commands.scm: add baseline-skip to info
11431         about \column.
11433 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11435         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
11437         * scm/output-gnome.scm (named-glyph): Use it.
11439         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
11441         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
11442         (upper_string, lower_string, reverse_string): Remove.
11444         * configure.in (fontforge): Reinstate version check.
11446         * ly/engraver-init.ly: Fix clef glyph names.
11448         * lily/time-signature.cc (special_time_signature): Fix fraction
11449         glyph names.
11451 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11453         * mf/merge.pe: new file.
11455         * lily/freetype.cc: new file.
11457         * lily/include/open-type-font.hh (class Open_type_font): new file.
11459         * lily/include/freetype.hh: new file.
11461         * lily/open-type-font.cc: new file.
11463         * lily/all-font-metrics.cc (find_otf): new function.
11465 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11467         * lily/time-signature.cc (special_time_signature): Fix.
11469         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
11470         GTK2 before checking for pango.  Fixes -fgnome.
11472         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
11473         Scheme name.
11475         * scm/define-markup-commands.scm:
11476         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
11478         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
11480         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
11481         date versions.  Fixes configure.
11482         (STEPMAKE_CHECK_VERSION): Support optional actual program version
11483         argument.
11485 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11487         * buildscripts/mf-to-table.py (write_ps_encoding): write real
11488         names in .enc
11490         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
11492 2004-12-09  Graham Percival  <gperlist@shaw.ca>
11494         * Documentation/user/changing-defaults.itely: add info about
11495         make-dynamic-script
11497         * Documentation/user/notation.itely: add link in dynamics to
11498         section about make-dynamic-script.
11500 2004-12-09  Christian hitz  <chhitz@gmx.net>
11502         * lily/lily-guile.cc: change MACOS_X to __APPLE__
11504 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11506         * buildscripts/mf-to-table.py (parse_logfile): use . for
11507         concatting name and group.
11508         (parse_logfile): use M for Minus (negative.)
11510         * lily/include/type-swallow-translator.hh
11511         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
11513         * lily/*.cc: cosmetics around = sign.
11515         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
11516         lyric spacing on the penultimate column.
11518 2004-12-05  Christian Hitz  <chhitz@gmx.net>
11520         * configure.in:
11521         * lily/accidental-placement.cc:
11522         * lily/bar-line.cc:
11523         * lily/beam-concave.cc:
11524         * lily/beam-quanting.cc:
11525         * lily/beam.cc:
11526         * lily/bezier-bow.cc:
11527         * lily/bezier.cc:
11528         * lily/break-align-interface.cc:
11529         * lily/custos.cc:
11530         * lily/dimension-cache.cc:
11531         * lily/dot-column.cc:
11532         * lily/font-metric.cc:
11533         * lily/font-select.cc:
11534         * lily/gourlay-breaking.cc:
11535         * lily/grob-property.cc:
11536         * lily/grob.cc:
11537         * lily/lily-guile.cc:
11538         * lily/line-spanner.cc:
11539         * lily/lookup.cc:
11540         * lily/lyric-extender.cc:
11541         * lily/lyric-hyphen.cc:
11542         * lily/mensural-ligature.cc:
11543         * lily/midi-def.cc:
11544         * lily/misc.cc:
11545         * lily/note-collision.cc:
11546         * lily/note-column.cc:
11547         * lily/note-head.cc:
11548         * lily/paper-outputter.cc:
11549         * lily/percent-repeat-item.cc:
11550         * lily/rest-collision.cc:
11551         * lily/side-position-interface.cc:
11552         * lily/simple-spacer.cc:
11553         * lily/slur-configuration.cc:
11554         * lily/slur-scoring.cc:
11555         * lily/slur.cc:
11556         * lily/spaceable-grob.cc:
11557         * lily/spacing-spanner.cc:
11558         * lily/spanner.cc:
11559         * lily/staff-symbol-referencer.cc:
11560         * lily/stem.cc:
11561         * lily/stencil.cc:
11562         * lily/system-start-delimiter.cc:
11563         * lily/system.cc:
11564         * lily/text-item.cc:
11565         * lily/tie.cc:
11566         * lily/tuplet-bracket.cc:
11567         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
11568         <cmath> beacause isinf/isnan is undefined in <cmath>
11570 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11572         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
11574 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11576         * VERSION: release 2.5.3
11577         
11578 2004-11-29  Arno Waschk <arno@arnowaschk.de>
11580         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
11582 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11584         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
11586         * lily/note-head.cc (internal_print): always try the "s" head if
11587         u/d not found.
11589         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
11591 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11593         * mf/parmesan-heads.mf (overdone_heads): typos.
11595 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11597         * lily/parser.yy (markup): in markups, { .. } without command
11598         before are also flattened, ie \line must be explicitely used.
11600         * Documentation/user/changing-defaults.itely:
11601         * Documentation/user/notation.itely: 
11602         * input/wilhelmus.ly: 
11603         * input/regression/instrument-name-markup.ly: 
11604         * input/regression/markup-score.ly: 
11605         * input/regression/new-markup-scheme.ly: 
11606         * input/regression/new-markup-syntax.ly: 
11607         * input/test/coriolan-margin.ly: use \line in markups where
11608         appropriate
11609         
11610 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11612         * scm/new-markup.scm (map-markup-command-list): helper function
11613         used in parser.yy to map markup commands on a markup list.
11615         * lily/parser.yy: get rid off < > in markups by treating { } as
11616         real lists.
11618         * lily/lexer.ll: remove < > from markup lexer mode.
11620         * scripts/convert-ly.py (conv): add rule for converting 
11621         \markup < > to \markup { }
11623         * ly/titling-init.ly: 
11624         * input/test/coriolan-margin.ly: 
11625         * input/regression/new-markup-syntax.ly: 
11626         * input/regression/new-markup-scheme.ly: 
11627         * input/regression/multi-measure-rest-text.ly: 
11628         * input/regression/markup-stack.ly: 
11629         * input/regression/markup-score.ly: 
11630         * input/regression/instrument-name-markup.ly: 
11631         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
11632         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
11633         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
11634         * input/wilhelmus.ly: 
11635         * Documentation/user/notation.itely: 
11636         * Documentation/user/music-glossary.tely: 
11637         * Documentation/user/changing-defaults.itely: change < > to { } in
11638         markups
11640 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11642         * lily/accidental-placement.cc (position_accidentals): shortcut if
11643         no accidentals to place.
11645 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11647         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
11648         typo s/ly:dimension ?/ly:dimension?/
11650         * input/regression/lily-in-scheme.ly: 
11651         * input/regression/music-function.ly: 
11652         * ly/spanners-init.ly (assertBeamSlope): 
11653         * scm/music-functions.scm (def-grace-function): add the paper
11654         argument to music function definitions.
11656 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11658         * lily/moment.cc (LY_DEFINE):
11659         ly:moment-main-{denominator,numberator}, new function.
11661         * lily/score-engraver.cc (typeset_all): assign to column on basis
11662         of axis-group-parent-X setting.
11664         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
11665         add_element() on basis of axis-group-parent-Y setting.
11667         * lily/grob.cc: add axis-group-parent-{XY} properties.
11669         * input/regression/spacing-stick-out.ly: new file.
11671         * lily/simple-spacer.cc (add_columns): use binary search for
11672         setting column rods. Changes O(n^2) to O(n log(n)) for
11673         constructing spacing problem from columns.
11674         (add_columns): read allow-outside-line to make sure no texts stick
11675         out.
11676         (solve): Simple_spacer::is_active() only determines
11677         satisfies_constraints_ for non-ragged typesetting.
11679         * lily/simultaneous-music.cc (to_relative_octave): only set
11680         old_relative_used if return pitch actually changed.
11682         * scm/define-context-properties.scm
11683         (all-user-translation-properties): change to match implementation.
11685         * python/lilylib.py: Replace re.match by re.search and adds "-c
11686         showpage" to the gs command line (Johannes Schindelin)
11688         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
11689         before processing. Prevents crash when inf is in the extent.
11691         * scm/define-markup-commands.scm (note-by-number): add "s" to
11692         "noteheads-" glyphname.
11694         * lily/parser.yy (Generic_prefix_music): supply parser argument to
11695         music function as well.
11696         
11697 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11699         * VERSION: release 2.5.2
11701         * Documentation/user/changing-defaults.itely (Creating titles):
11702         add breakbefore variable.
11704         * lily/paper-book.cc (set_system_penalty): new function. Set
11705         penalty_ based on breakBefore setting
11707         * lily/context-specced-music-iterator.cc (construct_children):
11708         interpret special context id $uniqueContextId 
11710         * lily/context.cc (create_unique_context): new method. Move
11711         creation of unique (\new) contexts into interpreting phase. This
11712         makes
11714           foo= \new Staff ..
11715           << \foo \foo >>
11717         produce 2 staves.
11718         
11720         * scm/define-music-properties.scm (all-music-properties): add
11721         quoted-voice-direction
11723         * ly/music-functions-init.ly: killCues function.
11725         * scm/music-functions.scm (cue-substitute): move creation of voice
11726         contexts further to the back. 
11728 2004-11-25  Werner Lemberg  <wl@gnu.org>
11730         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
11731         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
11733 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
11735         * buildscripts/guile-gnome.sh: Fixed typo.
11737 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11739         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
11741         * scripts/abc2ly.py (dump_slyrics): add ord(). 
11743         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
11744         to regular engraver. 
11746 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11748         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
11750 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11752         * scm/define-markup-commands.scm (fill-line): Typo.
11754         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
11755         and newer.
11757 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
11759         * ly/dynamic-scripts-init.ly: Fixed typo.
11761 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11763         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
11764         note-head, to have different attachment points for up and down.
11766         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
11768         * mf/feta-generic.mf (else): remove solfa.
11770         * mf/feta-bolletjes.mf (tishape): remove unicode test.
11772         * scm/define-context-properties.scm
11773         (all-user-translation-properties): add shapeNoteStyles property.
11775         * lily/shape-note-heads-engraver.cc (process_music): new file.
11777         * lily/event.cc (transpose): call Event::transpose() for
11778         transposing the tonic.
11780 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11782         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
11783         Unicode/OpenType and AFM.
11785         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
11787 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11789         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
11791         * lily/context.cc (Context): unprotect key from ctor.
11793         * scm/stencil.scm (stack-lines): return empty-stencil if argument
11794         is '()
11795         (stack-stencils): idem.
11797         * Documentation/user/changing-defaults.itely (Creating titles):
11798         document new title layout options.
11800         * lily/parser.yy (lilypond_header_body): copy previous
11801         $globalheader if present.
11803         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
11804         ly:module-copy
11805         
11806         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
11808         * scm/titling.scm: remove old titling functions
11810         * lily/stencil.cc (translate): remove absolute dimension.
11812         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
11813         via markup.
11815         * scm/page-layout.scm (marked-up-headfoot): create header/footer
11816         field from user-supplied markup
11818         * scm/define-markup-commands.scm (on-the-fly): new markup
11819         command. Enter SCM markup procedure directly in Scheme.
11820         (fromproperty): new markup command. Read markup from props argument.
11822         * scm/titling.scm (marked-up-title): create title via
11823         user-specified markup. 
11825         * scm/define-markup-commands.scm (column): remove empty stencils
11826         from column.
11828         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
11829         not have side-effect of creating variable stub.
11831         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
11833 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11835         * scm/encoding.scm (coding-alist): 
11836         * scm/font.scm (add-ec-fonts):
11837         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
11838         Extended-TeX-Font-Encoding---Latin.
11840         * lily/side-position-interface.cc (general_side_position): Add
11841         actual offset to error message (avoid constant error messages).
11843         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
11844         block.
11846         * lily/font-select.cc (select_encoded_font)
11847         (get_font_by_mag_step, get_font_by_design_size): 
11848         * lily/modified-font-metric.cc (Modified_font_metric): 
11849         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
11851         * scm/encoding.scm (coding-alist): Add fetaDynamic.
11852         (read-encoding-file): Bugfix: do not require space after bracket.
11854         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
11855         these do not exist.
11857 2004-11-20  Graham Percival  <gperlist@shaw.ca>
11859         * Documentation/user/notation.itely: added info about typesetting
11860         boxed bar numbers.
11862 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11864         * flower/interval.cc (T_to_string): gcc4 fixes.
11866         * scm/define-markup-commands.scm (fill-line): use
11867         stack-stencils. This fixes problems with putting already centered
11868         stencils in a line.
11870         * VERSION: release 2.5.1
11872         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
11874 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11876         * input/example-[1-3].ly: simplify.
11878         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
11880         * scm/output-ps.scm (new-text): new function. Use glyphshow to
11881         show glyphs.
11883         * scm/encoding.scm (decode-byte-string): new function.
11885         * scripts/convert-ly.py (conv): add warning about
11886         set-global-staff-size.
11888         * Doxyfile: add. 
11890         * scripts/convert-ly.py (conv): add raggedlastbottom rule
11891         (conv): warn for TextSpanner split.
11892         (conv): warn for textheight.
11894 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11896         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
11897         building the documentation, info with images are installed.
11898         (final-install): Fix description.  Mention sourcing of login
11899         scripts (instead of running).
11901 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11903         * Debian lmodern support.  Note that LilyPond will issue warnings
11904         
11905             no such encoding: "FontSpecific"
11907           The font selection mechanism wants to get the encoding from the
11908           font itself, but the idea of lmodern is that it is usable with
11909           different encodings, ie, Lily should get the encoding from the
11910           font tree, rather than the font itself.  This would require some
11911           more work.
11912         
11913         * configure.in: Test for and accept lmodern if EC fonts not found.
11915         * scm/framework-tex.scm (font-load-command): TeX font name
11916         mangling for latin1 encoded cork-lm fonts.
11917         (convert-to-ps): Load lm.map if available.
11919         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
11920         available.
11922         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
11924         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
11925         available.
11927         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
11928         path for absolute file name, that is silly.
11930         * lily/score-engraver.cc (initialize): 
11932         * Documentation/user/GNUmakefile (local-install-info): Invoke
11933         install-info --remove first.
11935         * #include cleanup (Andreas Scherer).
11937 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
11939         * input/test/script-abbreviations.ly: fix typos.
11941 2004-11-17  Werner Lemberg  <wl@gnu.org>
11943         * python/lilylib.py (options_help_str): Support pretty-printing of
11944         newlines in fourth element of option description.
11946         * scripts/lilypond-book.py (option_definitions): Use new lilylib
11947         feature.
11948         Sort options.
11950         * Documentation/user/lilypond-book.itely: Finish update.
11952 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11954         * Documentation/user/macros.itexi: Add comment about \command.
11956         * Documentation/user/lilypond.tely:
11957         * Documentation/user/lilypond-book.itely: Fix names of lilypond
11958         and lilypond-book nodes, so that `info lilypond' visits the manual
11959         at top level, and `info lilypond-book' visits the lilypond-book
11960         section.
11962         * Documentation/user/GNUmakefile (local-install-info): Fix rules
11963         and packager messages.
11965         * lily/pangofc-afm-decoder.cc: Update test.
11967 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11969         * scm/lily-library.scm (char->unicode-index): New function.
11971         * scm/output-gnome.scm: 
11972         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
11974         * Proper naming of file name throughout; s/filename/file[-_]name/.
11976         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
11978         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
11980 2004-11-16  Werner Lemberg  <wl@gnu.org>
11982         * scripts/lilypond-book.py: The Lord has commanded me to use only
11983         tabs for indentation.  Your humble servant obeys.
11985 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11987         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
11988         including font, if LilyPond-feta font is only feta font in path.
11990         * scm/output-gnome.scm (text): Revert to file name of font if font
11991         has no name.  Fixes ec font selection.
11992         (char): Bugfix: do not utf8 twice.  Fixes clefs.
11994         * scm/framework-svg.scm:
11995         * scm/output-svg.scm: New file.  TODO: figure out how to
11996         do character by index in font.
11998         * scm/output-sodipodi.scm: Remove.
12000         * scm/output-ps.scm (stem): Remove.
12002 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12004         * scm/output-gnome.scm (beam): New function.
12005         (slur): Round corners.
12006         (round-filled-box): Round corners.
12008 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12010         * scm/output-gnome.scm (beam): add function.
12011         (draw-line): new routine.
12012         (dashed-line): stub; call draw-line
12013         (polygon): new routine.
12015 2004-11-15  Werner Lemberg  <wl@gnu.org>
12017         * Documentation/user/lilypond-book.itely: Revise section on
12018         lilypond-book options.
12019         Other minor fixes.
12021         * scripts/lilypond-book.py: Change indentation to 4.
12022         Minor formatting.
12024 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12026         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
12027         grobs that have tweaks specced.
12028         
12029 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
12031         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
12033 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12035         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
12036         actual char #, not 0 based index.
12038         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
12040         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
12041         Warning: do make -C mf clean.
12043         * lily/context-property.cc: Compile fix.
12045         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
12046         Grok ec-fonts, braces and dynamics.
12048         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
12050 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12052         * lily/include/tweak-registration.hh: new file.
12054         * lily/tweak-registration.cc: new file.
12056         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
12057         saving tweaks.
12059         * scm/output-gnome.scm (text): comment dribble.
12061 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12063         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
12065         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
12066         path-def before using.  Fixes muchtomany slurs in wrong places
12067         bug.
12069 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12071         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
12073         * lily/include/object-key-undumper.hh (Module): new file.
12075         * lily/object-key-undumper.cc (Module): New file. Deserialize
12076         keys. SCM bindings
12078         * lily/object-key-dumper.cc (Object_key_dumper): idem.
12079         Provide SCM bindings.
12081         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
12082         new file. Serialize object keys.
12083         
12084         * lily/object-key.cc (dump): new function.
12085         (as_scheme): new virtual function
12086         (undump): new function
12087         (undumpers): new table.
12089         * lily/include/global-context.hh (Context): take \score key upon init.
12091         * lily/object-key-dumper.cc (serialize_key): new file.
12093         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
12095         * lily/lily-lexer.cc: remove \quote.
12097         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
12099         * lily/context.cc (Context): take key argument in ctor.
12100         (create_context): new function
12102         * lily/grob.cc (Grob): take key argument in ctor.  
12104         * lily/lilypond-key.cc (do_compare): new file.
12106         * lily/object-key.cc (Object_key): new file.
12108         * lily/include/object-key.hh (class Object_key): new file.
12110         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
12112 2004-11-13  Graham Percival  <gperlist@shaw.ca>
12114         * Documentation/user/lilypond-book.itely: add small warning about
12115         noindent default in lilypond-book.
12117         * Documentation/user/converters.itely: add examples for convert-ly.
12119         * Documentation/user/examples.itely: change version string in templates
12120         to 2.4.0.
12122 2004-11-12  Karl Hammar  <karl@aspodata.se>
12124         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
12125         cmdline, use xargs instead (backportme)
12127 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
12128         
12129         * Documentation/user/: Numerous fixes in the user manual.
12131 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12133         * lily/parser.yy (re_rhythmed_music): search music expression for
12134         context-id, surround by \new Voice if not found. Fixes:
12135         addlyrics-second-staff.ly
12137         * VERSION: 2.5.0 released.
12138         
12139 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12141         * Documentation/index.html.in: Fix url to one big page.  (backportme)
12143         * Documentation/user/GNUmakefile: Separate rules for split and
12144         unsplit html documents.  Remove perl massaging.  (backportme)
12146 2004-11-11  Graham Percival  <gperlist@shaw.ca>
12148         * Documentation/user/lilypond-book.itely: add short warning about
12149         \lilypond{} in LaTeX docs.
12151 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12153         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
12154         found.  (backportme)
12156         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
12157         version requirement.  (backportme)
12159         * configure.in: Be explicit about old versions of
12160         ec-fonts-mtraced.  (backportme)
12162         * lily/context-selector.cc (set_tweaks): New function.
12163         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
12164         web with -DTWEAK.
12166         * Documentation/user/introduction.itely (Automated engraving):
12167         Remove fragment option.  Fixes web.
12169         * lily/context-property.cc (make_item_from_properties):
12170         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
12171         #ifdef.
12173         * scm/define-context-properties.scm
12174         (all-internal-translation-properties): Add tweakRank and tweakCount.
12176         * lily/grob.cc: 
12177         * scm/define-grob-properties.scm (all-internal-grob-properties):
12178         Add tweak-rank and tweak-count.
12180 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12182         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
12183         New function.
12184         (text): Use them.
12186         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
12187         animated/opaque grob dragging tweaks.
12189         * buildscripts/guile-gnome.sh: Update.
12191 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12193         * scm/define-grobs.scm (all-grob-descriptions): Added
12194         line-interface to the LigatureBracket object.
12196 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12198         * scm/framework-gnome.scm (item-event): Support non-animated mouse
12199         dragging tweaks.
12201         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
12203         * lily/context-selector.cc (store_context): New function.
12205         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
12206         (store_grob): New function.
12207         (identify_grob): Add Moment parameter.
12209         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
12210         exists.
12212         * scm/framework-gnome.scm (save-tweaks): Write as alist.
12214 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12216         * scm/framework-gnome.scm (item-event): Print grob id.
12217         (save-tweaks): New function.
12218         (tweak): New funtion.
12219         (item-event): Use it, bound to arrow keys.
12221         * lily/context-property.cc (make_item_from_properties): Register grob.
12222         * lily/context.cc (add_context): Register context.
12224         * lily/include/context-selector.hh:
12225         * lily/include/grob-selector.hh:
12226         * lily/context-selector.cc:
12227         * lily/grob-selector.cc: New file.
12229 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12231         * lily/slur.cc: add 'positions to interface
12233         * lily/main.cc: reinstate PS as standard output format. 
12235         * scm/framework-tex.scm (output-preview-framework): print systems
12236         up to first non title system.
12238         * lily/grace-engraver.cc (start_translation_timestep): split
12239         scm_cadddr
12240         
12241 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12243         * lily/quote-iterator.cc (Module): remove old quote-iterator
12245         * scm/define-music-types.scm (music-descriptions): move
12246         NewQuoteMusic over QuoteMusic
12248         * Documentation/user/notation.itely (Formatting cue notes): use
12249         \cueDuring.
12251         * lily/new-quote-iterator.cc (quote_ok): new function.
12253         * input/regression/quote-cue-during.ly: new file.
12255         * input/regression/quote-grace.ly: new file.
12257         * scm/define-context-properties.scm (Module): change definition of
12258         graceSettings
12260         * lily/context-property.cc (Module): rename from
12261         translator-property.cc
12263         * lily/context.cc (context_name_symbol): new function
12265         * lily/grace-engraver.cc: new file. Set properties for grobs based
12266         on the grace-ness of now_moment().
12268         * scm/music-functions.scm (add-grace-property): use list
12269         iso. vector for graceSettings
12270         remove set-{start,stop}-grace-properties. 
12272         * lily/new-quote-iterator.cc (construct_children): set
12273         quote_outlet_ if no quoted-context-{id,type} specified.
12275         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
12277         * lily/parser.yy (command_element): remove \quote.
12279         * ly/music-functions-init.ly (location): add quoteDuring music
12280         function. 
12282         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
12283         optional semicolon. (backportme)
12285 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12287         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
12288         need to link to GUILE et al.
12290 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12292         * scm/define-music-properties.scm (all-music-properties): add
12293         quoted-context-type, quoted-context-id.
12295         * scm/lily.scm (type-check-list): new function.
12296         
12297         * scm/lily-library.scm: new file. Generic library routines.
12299         * lily/parser.yy (Generic_prefix_music): move typechecking out of
12300         parser.
12302         * ly/music-functions-init.ly: add quoteDuring function.
12304         * lily/include/music-iterator.hh (class Music_iterator): rename
12305         set_translator -> set_context
12307         * lily/parser.yy (Generic_prefix_music_scm): add
12308         MUSIC_FUNCTION_SCM_SCM_MUSIC
12310         * scm/lily.scm (sanitize-command-option): new function. (backportme)
12312         * scm/framework-tex.scm (header): sanitize TeX paper size.
12313         (backportme)
12315 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12317         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
12319         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
12321         * scm/framework-tex.scm (font-load-command): Use T1 if no
12322         font-encoding set.  (backportme)
12324         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
12325         exists before converting.  (backportme)
12327         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
12328         exists before converting.  (backportme)
12329         (convert-to-ps): Remove .ps file if it exists before
12330         converting.  (backportme)
12332         * lily/lexer.ll: Remove extra progress newline, use present tense.
12334         * scm/paper.scm (paper-alist): public.
12335         * scm/framework-tex.scm (convert-to-ps):
12336         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
12337         command line.
12339 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12341         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
12343         * lily/recording-group-engraver.cc (derived_mark): mark
12344         now_events_. (backportme)
12346 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12348         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
12350         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
12351         invoking latex. (backportme.)
12353         * lily/stem.cc (off_callback): center stems for all rest stems.
12355 2004-11-05  Werner Lemberg  <wl@gnu.org>
12357         * Documentation/user/lilypond.tely: Add more guidelines for writing
12358         lilypond texinfo documents.
12360 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
12362         * Documentation/index.html.in: remove <hr>.
12364         * THANKS: change 2.3 to 2.4.
12366 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
12368         * scm/output-gnome.scm: More fontconfig comment.
12370 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
12372         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
12373         <package> directory in $(builddir)/share according with
12374         PACKAGE_NAME defined in the VERSION file.
12376 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12378         * lily/beam.cc (rest_collision_callback): use local beam
12379         multiplicity.
12381         * input/regression/stem-stemlet.ly: new file.
12383         * lily/stem.cc (add_head): store rests as well.
12385         * scm/define-grob-properties.scm (all-user-grob-properties): add
12386         stemlet-length
12388         * lily/stem.cc: store rests as well.
12389         
12390         * input/regression/new-slur.ly: mention forcing.
12392 2004-11-04  Werner Lemberg  <wl@gnu.org>
12394         * Documentation/user/*: A new round of layout fixes and document
12395         structure cleanup.
12397 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
12399         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
12401 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12403         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
12405 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12407         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
12409         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
12411         * lily/main.cc (main): Invoke identify.
12413         * scm/lily.scm (postscript->pdf): Remove progress newline.
12414         Write progress to stderr.
12416         * lily/paper-book.cc (output): Remove progress newline.
12418         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
12419         gettext on user messages, and remove whitespace.
12421         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
12423         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
12424         argv[0] (Thomas Scharkowski).
12426         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
12427         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
12428         for ec-fonts-mtraced.
12430         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
12431         --srcdir build (Bertalan).
12433         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
12434         headers and library too (Laura Conrad).
12436         * Documentation/topdocs/INSTALL.texi (Top): Mention development
12437         package for guile too (Laura Conrad).
12439         * lily/main.cc (usage): Typo.
12441 2004-11-02  Werner Lemberg  <wl@gnu.org>
12443         * Documentation/user/notation.ly: More fixes to improve appearance.
12445         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
12446         better output for multicolumn tables.
12448 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12450         * lily/main.cc (dir_info): Fixed typo in the printouts.
12452 2004-11-01  Werner Lemberg  <wl@gnu.org>
12454         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
12455         of output.
12456         Set `per_line' to 2; replace hard-coded value with it.
12458         * Documentation/user/*: Many fixes to improve appearance of
12459         printed manual.
12461 2004-11-01  Werner Lemberg  <wl@gnu.org>
12463         * Documentation/user/changing-defaults.itely,
12464         Documentation/user/notation.ly,
12465         Documentation/user/programming-interface.itely: Use @/.
12466         Fix formatting of some lilypond snippets and tables.
12468         * scripts/lilypond-book.py (compose_ly): Provide useful default
12469         for LINEWIDTH in `override'.
12471 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12473         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
12475 2004-10-31  Werner Lemberg  <wl@gnu.org>
12477         Resetting @exampleindent to `5' gives ugly results with texinfo's
12478         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
12479         (if not quoting) to change @exampleindent only locally.
12481         * scripts/lilypond-book.py (NOQUOTE): New variable.
12482         (output) [LATEX]: Remove AFTER and BEFORE.
12483         [TEXINFO]: Remove AFTER and BEFORE.
12484         Fix QUOTE and VERBATIM pattern.
12485         Add NOQUOTE pattern.
12486         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
12487         and BEFORE.
12488         [output_texinfo]: Use NOQUOTE.
12490 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12492         * Documentation/user/changing-defaults.itely: clarify paper
12493         size commands with correct info.
12495         * Documentation/user/lilypond-book.itely: add more docs for
12496         filename extensions.
12498 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12500         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
12501         (PATCH_LEVEL): start 2.5.0.
12503 #Local variables:
12504 #coding: utf-8
12505 #End: