* mf/SConscript: Updates.
[lilypond/patrick.git] / ChangeLog
blob66f4a0a4fcc895c72ff0763c23484984e645ef6b
1 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * mf/SConscript: Updates.
5         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7         * stepmake/stepmake/*:
8         * */GNUmakefile:
9         * config.make.in:
10         * GNUmakefile.in:
11         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
12         from any directory in build-dir.  Cleanups.
14         * make/srcdir.make.in: Remove.
16         * lily/main.cc (setup_paths): Fix and document build-dir hack.
18         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
19         main).
21         * lily/SConscript: Remove ttftools.
23         * SConstruct: Resurrect.
25 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
27         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
28         Y coordinate. 
30         * lily/paper-book.cc (add_score_title): put Paper_score title into
31         systems_ list.
33         * scm/translation-functions.scm (format-new-bass-figure): also
34         allow plus in combination with _
36 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
38         * VERSION: 2.7.13 released.
40         * lily/note-collision.cc (check_meshing_chords): don't wipe
41         stencil, merely set transparent.
43         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
44         (Top): document #'callbacks.
45         (Top): document nested \override.
47         * input/regression/figured-bass.ly: update for slash and pluses.
49         * input/regression/figured-bass-continuation-forbid.ly (Module):
50         new file.
52         * scm/translation-functions.scm (format-new-bass-figure): use
53         slashed-digit if diminished is set.
54         (format-new-bass-figure): add + if 'augmented is set.
56         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
58         * input/test/piano-staff-distance.ly: remove file.
60         * Documentation/user/advanced-notation.itely (Formatting cue
61         notes): use length-fraction for making stems/beams smaller.
63         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
64         modifications.
66         * lily/new-figured-bass-engraver.cc: new property
67         centerFiguredBassContinuations
69         * Documentation/user/changing-defaults.itely (Difficult tweaks):
70         use callbacks.
72         * lily/context-property.cc (execute_general_pushpop_property):
73         robustness checks.
75         * input/regression/override-nest.ly: new file.
77         * python/convertrules.py (FatalConversionError.subber): conversion
78         rule for #'callbacks
80         * input/regression/override-nest.ly: new function.
82         * lily/parser.yy (music_property_def): allow \override #'a #'b =
83         #c too. 
85         * lily/context-property.cc (lookup_nested_property): new function.
86         (evict_from_alist): new function.
87         (general_pushpop_property): new function.
88         (execute_general_pushpop_property): rewrite. Support nested
89         properties too.
91 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
93         * lily/beam.cc: use length-fraction too.
95         * scm/define-grob-properties.scm (all-user-grob-properties):
96         remove property flag-width-function
97         (all-user-grob-properties): remove space-function.
99         * scm/layout-beam.scm: remove flag-width-function.
101         * lily/beam.cc: remove flag-width-function
103         * scm/layout-beam.scm: remove beam dir functions.
105         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
107         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
108         for easier grace tweaks.
110         * lily/beam.cc: remove dir-function.
112         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
114         * lily/grob.cc: remove spacing-procedure.
116         * lily/note-head.cc (calc_stem_attachment): new function.
117         (internal_print): use callback to get glyph-name.
119         * lily/grob-property.cc (get_interfaces): new function.
121         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
123         * lily/stem.cc (calc_stem_end_position): new function.
124         (calc_length): new function.
125         document details for stem.
126         remove Stem::get_direction()
128         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
130         * lily/grob-property.cc (set_callback): new function.
132         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
134         * lily/item-scheme.cc: new file.
136         * lily/bar-line.cc (before_line_breaking): remove function.
137         remove bar-size-procedure, break-glyph-function
139         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
141         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
143         * lily/system-start-delimiter.cc (print): suicide from
144         here. Remove after_line_breaking_callback.
146         * lily/script-interface.cc (calc_direction): use callback for direction.
148         * lily/side-position-interface.cc (aligned_side): don't use
149         Side_position_interface::get_direction directly. Use callback. 
151         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
152         calculate stencil.
153         (get_print_stencil): rename from get_stencil: create stencil with
154         transparency, color and cause. 
156         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
158         * python/convertrules.py (conv): insert temporary warning rule.
160         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
162         * lily/grob-property.cc (try_callback): remove marker if applicable.
164         * lily/grob.cc: elucidate doc about after/before-line-breaking
166         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
168         * lily/stem.cc (height): idem.
170         * lily/stem-tremolo.cc: idem.
172         * lily/slur.cc (height): don't use get_uncached_stencil()
174         * lily/rest.cc (y_offset_callback): use offset callback
175         iso. after-line-breaking callback.
177         * lily/grob.cc: change after/before-line-breaking-callback to
178         after/before-line-breaking dummy properties.
180         * lily/include/grob.hh: remove Grob_status.
182         * scm/define-context-properties.scm
183         (all-user-translation-properties): remove verticalAlignmentChildCallback
185         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
186         (calc_direction): use callback
187         (calc_positions): use callback.
189         * lily/tie.cc (calc_direction): use callback. Only call parent
190         positioning for more than one tie.
192         * lily/tie-column.cc (calc_positioning_done): use callback
194         * lily/slur-scoring.cc (calc_control_points): use callback
196         * lily/slur.cc (calc_direction): use callback.
198         * lily/note-collision.cc (force_shift_callback): remove.
200         * lily/dot-column.cc (force_shift_callback): remove. Use
201         other_axis_parent_positioning.
203         * lily/grob.cc (other_axis_parent_positioning): new function.
204         (same_axis_parent_positioning): new function
206         * lily/align-interface.cc (alignment_callback): remove function.
208         * lily/note-collision.cc (calc_positioning_done): use callback.
210         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
211         (calc_direction): idem.
212         remove print function.
214         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
216         * lily/dot-column.cc (calc_positioning_done): use callback.
218         * lily/break-align-interface.cc (calc_positioning_done): use callback.
220         * lily/beam.cc (calc_direction): use pseudo-property for beam
221         direction callback.
222         (calc_positions): use callback 
224         * lily/align-interface.cc (calc_positioning_done): use
225         callback. Fold fixed  distance and normal alignment in one function.
227         * lily/stem.cc (calc_stem_end_position): use callback.
228         (calc_positioning_done): idem.
229         (calc_direction): idem.
230         (calc_stem_end_position): idem
231         (calc_stem_info): idem.
233         * lily/grob-property.cc (get_property_data): new function: 
234         (try_callback): new function.
236         * scm/define-grob-properties.scm (all-user-grob-properties): doc
237         callbacks property.
239         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
241 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
243         * lily/tie.cc (get_position): robustness fix. Don't crash if a
244         tie
245         has no heads.
246         
247         * lily/include/*.hh (Module): compile fixes.
249 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
251         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
252         as an argument for char-syntax: use (char-syntax (or nil 0)) 
253         instead of (char-syntax nil), thanks to Milan Zamazal.
255 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
257         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
258         dist.
260         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
261         themselves.
263 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
265         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
266         add class_name() method.
268         * lily/music-scheme.cc: remove ly:music-name.
270 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
272         * cygwin/postinstall-lilypond.sh: Remove cruft.
274         * cygwin/postremove-lilypond.sh: Remove.
276         * cygwin/GNUmakefile (default): Remove postremove rules.
278 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
280         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
281         even header too.
282         
283         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
284         MacOS 9 users.
286         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
287         consider break index for broken spanner.
289         * scm/define-markup-commands.scm (wordwrap-string): remove \r
290         characters from string before splitting.
292 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
294         * scm/framework-ps.scm (output-preview-framework): use
295         is-book-title to determine whether to chop off the booktitle.
297         * lily/paper-book.cc (systems): init from book-title-properties
298         (add_score_title): init score-title-properties.
300         * ly/paper-defaults.ly: add {score,book}-title-properties.
302         * scm/document-backend.scm (lookup-interface): error message if
303         using unknown interface.
305         * lily/volta-bracket.cc (after_line_breaking): new function. Set
306         edge-height.
308         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
309         make_bracket.
310         (make_bracket): new function.
312         * scm/lily.scm (define-scheme-options): add paper-size option.
314         * ly/declarations-init.ly (laissezVibrer): get paper size from
315         -dpaper-size
317         * scm/translation-functions.scm: use \fontsize for changing the
318         fontsize.
320         * scm/define-grobs.scm (all-grob-descriptions): set
321         between-length-limit to 1.0
323         * lily/tie-helper.cc: add between_length_limit_ detail property.
325         * mf/feta-bolletjes.mf: typos.
327         * lily/note-head.cc (internal_print): don't shadow idx
328         parameter. This fixes wrong attachment for do shape heads.
330 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
332         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
334         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
336         * scm/layout-slur.scm: rename from slur.scm
338         * scm/layout-page-layout.scm: rename from page-layout.scm
340         * scm/layout-beam.scm: rename from beam.scm
342         * scm/define-grob-interfaces.scm (bass-figure-interface): add
343         bass-figure-interface
345         * lily/new-figured-bass-engraver.cc (process_music): add
346         implicitBassFigures property.
347         
348         * scm/define-markup-commands.scm (pad-x): new markup.
350         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
351         minimumVerticalExtent on FiguredBass context.
353         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
354         case the continuation crosses a line break.
356 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
358         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
359         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
360         absolute file name bug.  Backportme.
362 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
364         * VERSION (PACKAGE_NAME): release 2.7.12
366         * input/regression/figured-bass-continuation-center.ly: new file.
368         * input/regression/beam-outside-beamlets.ly: new file.
370         * lily/beam.cc (set_beaming): don't clip edges.
371         (connect_beams): don't clip edges.
373         * lily/beaming-info.cc (clip_edges): new function.
375         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
377         * Documentation/user/instrument-notation.itely (Figured bass):
378         demonstrate extenders, update seealso links.
380         * scm/titling.scm (marked-up-headfoot): change tagline
381         handling. tagline = ##f will blank the tagline as well.
383 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
385         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
387         * lily/new-figured-bass-engraver.cc (struct
388         New_figured_bass_engraver): add new_music_found_ member.
390         * lily/lilypond-version.cc (Lilypond_version): deal with
391         incorrectly formatted version strings. 
393         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
394         New_figured_bass_engraver by default.
396         * lily/ttf.cc (print_trailer): only define glyph names when
397         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
399 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
401         * lily/horizontal-bracket.cc (make_bracket): new function.
403         * scm/define-grobs.scm (all-grob-descriptions): new grobs
404         NewBassFigure, BassFigureBracket, BassFigureContinuation,
405         BassFigureLine, BassFigureAlignment
407         * lily/new-figured-bass-engraver.cc (process_music): new file.
409         * lily/figured-bass-continuation.cc: new file.
411         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
412         new file.
414 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
416         * scripts/lilypond-book.py: Bug fix, put the quote around the
417         actual score for LaTeX documents.
419         * scm/define-grobs.scm (all-grob-descriptions): Change
420         collapse-height of the SystemStartBracket grob to 5.0, 
421         so the bracket disappears for single stave score lines (similarly
422         to SystemStartBraces). 
424         * Documentation/user/advanced-notation.itely (Polymetric
425         notation): Clarify the use of compressMusic.
427         * Documentation/user/basic-notation.itely (Grace notes): Clarify
428         that the grace spacer note in other staves need the same duration
429         and document the stroke-style property.
431 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
433         * Documentation/user/global.itely (Vertical spacing): document
434         alignment-extra-space and fixed-alignment-extra-space.
436         * Documentation/topdocs/NEWS.tely (Top): add entry.
438         * input/regression/alignment-vertical-spacing.ly: new file.
440         * python/convertrules.py (conv): add rule.
442         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
444         * lily/align-interface.cc (stretch_after_break): new
445         function. Read fixed-alignment-extra-space property.
446         (align_elements_to_extents): read alignment-extra-space property.
448         * lily/lily-guile.cc (robust_scm2dir): new function.
450         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
451         (annotate-space-left): new function. Annotate space left on page. 
452         (annotate-y-interval): new function.
453         (paper-system-annotate-last): new function. Annotate bottom-space.
455         * mf/feta-beugel.mf (y): 
457 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
459         * VERSION (PACKAGE_NAME):  release 2.7.11
461         * scm/lily-library.scm (interval-translate): new function
462         (interval-center): new function. 
464         * scm/page-layout.scm (paper-system-annotate): new function. Add
465         arrows for dimensions.
467         * scm/stencil.scm (dimension-arrows): new function.
469         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
471         * input/regression/page-spacing.ly: add annotatespacing
473         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
474         (LY_DEFINE): new function ly:paper-system-set-property!
476         * Documentation/user/global.itely (Paper size): explain how to add
477         sizes.
479         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
480         correspond to GS's definition.
482         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
483         tuplet bracket.
484         (print): only connect to next bracket if the next one is alive.
485         (print): set padding to 0.0 if the bound is a breakable
486         column. This makes tupletFullLength brackets reach up to the staff
487         line if it doesn't connect to the next line.
489 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
491         * lily/bar-number-engraver.cc: correct docs.
493         * scm/output-lib.scm (first-bar-number-invisible): rename from
494         default-bar-number-visibility
496 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
498         * scm/define-music-properties.scm (all-music-properties): remove
499         predicate property.
501 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
503         * po/fi.po: refresh.
505 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
507         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
508         superfluous s1.
509         (disappear): bugfix.
511         * lily/stem-tremolo.cc (raw_stencil): read slope property.
513         * lily/include/paper-system.hh (class Paper_system): remove
514         staff_extents_ member.
516         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
518         * lily/include/paper-system.hh (class Paper_system): remove
519         number_ variable. Remove is_title_. Remove break_before_penalty_
521         * lily/paper-book.cc (systems): use 'number property iso. number_
522         member.
524         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
525         remove ly:paper-system-number.
527         * scm/lily-library.scm (paper-system-title?): new function.
529         * lily/book.cc (process): bugfix: flip ?: cases. 
531         * Documentation/user/changing-defaults.itely (Difficult tweaks):
532         add outputProperty.
534         * ly/music-functions-init.ly: add outputProperty music function.
536         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
538         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
539         and next-padding.
540         (optimal-page-breaks): rename from ly:optimal-page-breaks.
542         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
544         * lily/paper-system.cc (internal_get_property): new function.
546         * Documentation/user/global.itely (Vertical spacing): refer to
547         page-spacing.ly
549         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
550         pagetopspace
552         * input/regression/page-spacing.ly: new file.
554         * input/regression/page-top-space.ly: new file.
556         * lily/spacing-spanner.cc: cmath -> math.h
558         * lily/paper-system.cc (read_left_bound): new function. Read
559         line-break-system-details from left bound to determine extents.
561         * Documentation/user/programming-interface.itely (Using LilyPond
562         syntax inside Scheme): change applyxxx -> applyXxx.
564         * ly/music-functions-init.ly: add outputProperty music function.
566         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
568         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
570         * python/convertrules.py (conv): rule
572         * ly/music-functions-init.ly: applyxxx -> applyXxx
574         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
575         TabVoice to Voice.
577 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
579         * flower/include/real.hh: include <math.h> iso. <cmath>
581         * flower/include/offset.hh: include real.hh
583 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
585         * Documentation/user/changing-defaults.itely (Difficult tweaks):
586         fix example, now that 'interfaces is no longer directly available.
588         * lily/book.cc (process): don't crash if paper == NULL.
590         * po/fr.po: update.
592 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
594         * scm/define-music-types.scm (music-descriptions): set length and
595         start-callback for QuoteMusic
597 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
599         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
600         arguments. Fixes compilation error with gcc 3.3.
602 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
604         * VERSION: release 2.7.10
606         * stepmake/stepmake/python-module-rules.make
607         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
609         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
610         real.hh
612 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
614         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
615         -Werror. Otherwise GCC barfs over various optimizations.
617         * scm/define-grob-properties.scm (all-internal-grob-properties):
618         add note-head property
620         * Documentation/user/instrument-notation.itely (Laissez vibrer
621         ties): new node.
623         * input/regression/laissez-vibrer-ties.ly: new file.
625         * lily/laissez-vibrer-engraver.cc: new file.    
627         * lily/include/tie-column-format.hh: new file.
629         * lily/tie-column-format.cc: new file. 
631         * lily/tie-column.cc (set_manual_tie_configuration): new function.
633         * lily/laissez-vibrer-tie.cc: new file.
635         * lily/include/laissez-vibrer-tie.hh: new file.
637         * ly/engraver-init.ly: add Laissez_vibrer_engraver
639         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
641         * scm/define-grobs.scm (all-grob-descriptions): add
642         LaissezVibrerTie, LaissezVibrerTieColumn
644         * lily/tie-column.cc (set_tie_config_directions): new function
645         (final_shape_adjustment): new function.
646         (shift_small_ties): new function.
648         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
650         * lily/include/tie.hh (struct Tie_details): add x_gap_
651         (struct Tie_configuration): add head_position_
653         * lily/tie-column.cc (set_chord_outline): new function.
655         * mf/cmr.enc.in:  remove file.
657 2005-09-11  Graham Percival  <gpermus@gmail.com>
659         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
661 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
663         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
664         reduce aliasing effects.
666         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
667         box in skyline.
669 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
671         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
673         * flower/include/real.hh: std::fabs too.
675 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
677         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
679         * lily, flower: Include C++ iso C headers.  Import namespace std
680         throughout.
682         * lily/side-position-interface.cc: 
683         * lily/scm-hash.cc: 
684         * lily/note-head.cc: 
685         * lily/include/includable-lexer.hh: 
686         * flower/include/string-data.icc: Remove using std::*.
688         * lily, flower: Include C++ iso C headers.  Import namespace std
689         throughout.
691         * lily/side-position-interface.cc: 
692         * lily/scm-hash.cc: 
693         * lily/note-head.cc: 
694         * lily/include/includable-lexer.hh: 
695         * flower/include/string-data.icc: Remove using std::*.
697         * Documentation/user/instrument-notation.itely (Entering lyrics):
698         Multiple latin-1->utf-8 conversion fix.
700         * Documentation/user/*tely: Update Emacs cookie to utf-8.
702 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
704         * lily/tie.cc (get_configuration): also avoid dots for non-space
705         situations.
707 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
709         * Documentation/user/instrument-notation.itely: Bugfix.
711 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
713         * tex/GNUmakefile: don't install texinfo.tex
715         * tex/ : cleanup: remove unused files.
717         * lily/general-scheme.cc: remove my_{isinf,isnan}.
719         * flower/include/real.hh: using std::{isnan,isinf}
720         
721         * VERSION (PATCH_LEVEL): release 2.7.9
723 2005-09-05  Graham Percival  <gpermus@gmail.com>
725         * Documentation/user/ instrument-notation.itely,
726         advanced-notation.itely: minor tweaks.
728         * input/test/script-chart.ly: add item padding.
730 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
732         * flower/offset.cc: use math.h iso. <cmath>
734         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
735         of IE users.
737         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
738         (widen-left-stencil-edges): new function. Fix alignment problems
739         with LaTeX includegraphics.
741         * lily/text-interface.cc (interpret_markup): use abort().
743 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
745         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
747         * lily/tie.cc (get_configuration): update bezier shape as we
748         change Y positions.
749         (get_configuration): don't move large ties if we're outside of the
750         staff.
752 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
754         * scm/define-markup-commands.scm (strut): swap X and Y dims.
755         
756 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
758         * .cvsignore: Add auto-generated configure files and then some.
760 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
762         * scm/define-grobs.scm (DynamicLineSpanner): Add
763         X-extent-callback.  Fixes hairpin-slur collision.
765 2005-08-31  Graham Percival  <gpermus@gmail.com>
767         * Documentation/user/advanced-notation.itely,
768         basic-notation.itely: minor changes.
770 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
772         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
773         \linebreak between each .eps file if \betweenLilyPondSystem is
774         undefined. 
776         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
777         music): Document the \linebreak
779         * Documentation/user/lilypond-book.itely,
780         input/tutorial/lbook-latex-test.tex,
781         Documentation/user/examples.itely: Remove \usepackage{graphics}
783 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
785         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
787         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
788         compat bugfix.
790         * scripts/lilypond-book.py (PREAMBLE_LY): define
791         inside-lilypond-book
792         (modify_preamble): new function. Insert \RequirePackage{graphics}
793         when no {graphics found in preamble.  
795 2005-08030  Graham Percival  <gpermus@gmail.com>
797         * Documentation/user/basic-notation.itely, global.itely,
798         tutorial.itely: misc small changes.
800 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
802         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
803         VERSION.
805 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
807         * lily/tie-column.cc (new_directions): put Tie down on center
808         staff line. 
810         * lily/script-interface.cc (before_line_breaking): use
811         Grob::programming_error
813         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
815         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
816         of splitext.
818 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
820         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
822 2005-08-29  Werner Lemberg  <wl@gnu.org>
824         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
825         the `*.scale.pfa' files to avoid warnings.
827 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
829         * lily/tempo-performer.cc (process_music): idem.
831         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
833 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
835         * Documentation/user/advanced-notation.itely (Text markup): not a
836         fragment.
838         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
840         * lily/staff-performer.cc (initialize): add tempo/name to
841         audio_staff_
844 2005-08-26  Graham Percival  <gpermus@gmail.com>
846         * Documentation/user/advanced.itely: add text-only example.
848         * Documentation/user/invoking.itely: add index entries for
849         convert-ly.
851         * Documentation/user/ tutorial.itely, basic-notation.itely:
852         small fixes suggested by Steve D.  Thanks!
854 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
856         * input/regression/markup-bidi-pango.ly: new file.
858         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
859         standard. Remove #ifdef. Remove memleak.
860         (text_stencil): use text_dir to decide how to composite items.
861         (text_stencil): determine uniform text direction for the entire
862         string.
864         * scripts/lilypond-book.py (output_name): remove
865         latex_filter_cmd. Non-portable to non-Unix systems. 
866         (get_latex_textwidth): use File.write and os.unlink() instead.
868         * THANKS: add Vicente & Trevor.
870         * lily/grob.cc (discretionary_processing): look up origin for
871         programming_error too. 
873         * input/regression/tie-broken.ly: new file.
875         * lily/tie-column.cc (set_chord_outlines): set outline for line
876         break case too.
877         
878 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
880         * lily/pango-font.cc (text_stencil): don't translate glyphs in
881         unscaled transform, just translate stencils.
883         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
884         MIDI.
886         * scm/define-markup-commands.scm (wordwrap-string): use
887         text-direction
888         (wordwrap-stencils): idem.
889         (line): idem.
890         (fill-line): idem.
891         (wordwrap-stencils): translate last line to right for
892         text-direction = LEFT.
894         * scm/define-grob-properties.scm (all-user-grob-properties): add
895         text-direction.
897 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
899         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
900         when copying a Lily_parser object.
902 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
904         * scm/define-markup-commands.scm (null): add null markup.
906 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
908         * lily/item.cc: Add documentation of center-invisible
910 2005-08-24  Graham Percival  <gpermus@gmail.com>
912         * Documentation/user/advanced-notation.itely: add info about
913         raising text.
915         * Documentation/user/programming-interface.itely: fix example
916         involving raised text.
918 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
920         * lily/beam.cc (print): fix X start/end points of isolated
921         beamlets.
923         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
925         * lily/multi-measure-rest.cc (set_text_rods): new function.
927         * lily/vertical-align-engraver.cc (process_music): call
928         Align_interface::set_axis(). This forces #'elements to be ordered,
929         preventing random vertical reordering of staves.
931         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
932         add avoid-slur property. 
934         * Documentation/user/basic-notation.itely (Measure repeats): add
935         countPercentRepeats example.
937         * Documentation/user/advanced-notation.itely (Other text markup
938         issues): remove remark about normal-font.  We have \normal-text
940         * input/regression/tie-chord.ly: add note about remaining bugs.
942         * lily/tie.cc (print): try Tie_column::set_directions () if
943         control-points not yet defined.
945 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
947         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
948         extent. This fixes braces falling out of the EPS bbox.
950         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
951         exactly to bbox.
953 2005-08-23  Graham Percival  <gpermus@gmail.com>
955         * {various} : change #up->#UP and #down->#DOWN.
957         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
959         * Documentation/user/advanced-notation.itely: clarify
960         what objects handles text on a multimeasure rest.
962 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
964         * VERSION (PATCH_LEVEL): release 2.7.7
966 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
968         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
970         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
972         * input/regression/*.ly: formatting clean-up. Default layout
973         before music expression.
975         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
976         romanze28-2 example.
978         * scm/ps-to-png.scm: remove dir-re function.
979         (make-ps-images): generate page names, instead of globbing them.
980         This brings down LilyPond memory usage for make web by a factor
981         10. (backportme?) 
983         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
984         don't use glob. With 3000 files, globbing
985         Documentation/user/out-www/ can take too much time. (backportme?)
986         
987         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
989         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
991         * input/regression/tie-manual.ly: new file
993         * input/regression/tie-chord.ly: update.
995         * flower/include/interval.hh (struct Interval_t): 
997         * lily/tie.cc (distance): new function 
998         (height): new function.
999         (init): new function
1000         (Tie_details): new struct.
1002         * lily/skyline.cc (skyline_height): new function.
1004         * lily/tie-column.cc (set_chord_outlines): new function.
1005         (new_directions): read tie-configuration
1007         * lily/skyline.cc: fix ASCII art.
1008         
1009 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1011         * python/convertrules.py (string_or_scheme): Fix spelling error
1013 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1014         
1015         * lily/tie-column.cc (set_directions): set directions only once.
1016         (add_configuration): new function.
1018         * lily/tie.cc (set_control_points): new function
1020         * lily/tie-column.cc (new_directions): new function.
1022         * ly/music-functions-init.ly: set 'pitch property
1023         iso. trill-pitch. This makes \relative work with \pitchedTrill
1025         * lily/tie.cc (get_configuration): new function. Don't generate
1026         control points, rather, generate configuration.
1027         remove head-pair property.
1029         * lily/include/tie.hh (struct Tie_configuration): new struct.
1031 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
1033         * Documentation/topdocs/NEWS.tely: clarify.
1035 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1037         * lily/tie.cc: remove minimum-length
1039         * scm/define-grob-properties.scm (all-user-grob-properties):
1040         remove staffline-clearance, y-offset 
1042         * input/regression/tie-dots.ly (Module): remove.
1044         * lily/tie.cc (get_control_points): rewrite. Put short ties in
1045         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
1047         * input/regression/tie-single.ly: new file.
1049 2005-08-21  Graham Percival  <gpermus@gmail.com>
1051         * ly/bagpipe.ly: fix compile problem.
1053 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1055         * lily/midi-item.cc (name): new method.
1057         * lily/staff-performer.cc (acknowledge_audio_element): use
1058         signature of baseclass.
1060         * lily/engraver-group.cc (do_announces): move recursion call out
1061         of while loop. 
1063         * lily/drum-note-performer.cc (class Drum_note_performer): use
1064         process_music everywhere.
1066         * ly/performer-init.ly: add default children everywhere.
1068         * lily/paper-book.cc (output): call paper-book-write-midis
1069         directly: always write MIDI, even if no \layout {} block. 
1071 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1073         * VERSION (PACKAGE_NAME): release 2.7.6
1075         * lily/percent-repeat-engraver.cc (try_music): don't print warning
1076         about not being able to handle repeat.
1078 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1080         * Documentation/user/examples.itely (Piano templates):
1081         * lily/include/performer-group.hh: Remove last traces of
1082         Performer_group_performer.  Fixes make web.
1084 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1086         * Documentation/user/examples.itely (Piano templates): change
1087         Engraver_group_engraver -> Engraver_group
1089         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
1090         scm_stand_in_procs is not weak_any.
1092         * lily/volta-bracket.cc (print): don't use strcmp().
1094         * lily/volta-engraver.cc (process_music): use
1095         Text_interface::is_markup() for setting the 'text property of the
1096         volta bracket.
1098         * input/mutopia/claop.py (accents): update syntax to 2.6
1100         * scm/define-context-properties.scm
1101         (all-user-translation-properties): add countPercentRepeats.
1103         * Documentation/user/basic-notation.itely (Measure repeats): add
1104         isolated percent example.
1106 2005-08-18  Graham Percival  <gpermus@gmail.com>
1108         * input/ {various}: change direction #1, #-1 to
1109         #up/#down or \fooUp, \fooDown.
1111         * Documentation/user/music-glossary.tely: #-1 to #down.
1113         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
1114         to #up, #-1 to #down.
1116 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1118         * lily/include/engraver-group.hh: rename.
1120         * lily/include/performer-group.hh: rename.
1122 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1124         * input/test/script-abbreviations.ly: Removed some old LaTeX
1125         left overs.
1127 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1129         * python/convertrules.py (conv): inside-slur -> avoid-slur.
1130         Remove functions.  Remove if 1: constructs, reindent.
1132         * scripts/convert-ly.py (add_version): Add functions from
1133         convertrules.py
1135         * scm/script.scm (default-script-alist):
1136         s/priority/script-priority.  Fixes script stacking.  Backportme.
1137         (Fermata): Very low priority.
1139 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1141         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
1143         * input/regression/slur-script.ly: remove padding tweaks. Add
1144         comment strings.
1146         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
1147         time sigs and related stuff.
1149         * scm/define-grob-properties.scm (all-user-grob-properties): add
1150         @code{} tags to property description.
1152         * lily/include/line-group-group-engraver.hh (Module): remove file.
1154         * python/convertrules.py (conv): add rule for
1155         Engraver_group_engraver -> Engraver_group.
1157         * lily/include/performer-group-performer.hh: analogous.
1159         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
1161         * lily/context-def.cc (instantiate): check for
1162         Engraver_group_engraver and Performer_group_performer not
1163         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
1165 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1167         * input/les-nereides.ly: Remove three fingering tweaks, update
1168         remaining one.
1170         * input/regression/slur-script-inside.ly: Update, fix doc.
1172         * scm/script.scm: Update to avoid-slur.
1174         * scm/define-grob-properties.scm (avoid-slur): New property.
1176         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
1177         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
1178         outside_slur_callback if avoid-slur != #'inside.
1180         * scm/define-grobs.scm (Fingering, Textscript): No
1181         inside-slur/outside-slur preference.
1182         (DynamicLineSpanner): Always outside slur.
1184         * input/regression/slur-script.ly: More tests.
1186 2005-08-17  Graham Percival  <gpermus@gmail.com>
1188         * Documentation/user/lilypond-book: fix notime entry.
1190         * Documentation/user/advanced-notation.itely: add info on
1191         getting an I rehearsal mark.
1193         * Documentation/user/putting.itely: reinstate "I", re-enforce
1194         the fact that \override numbers are the result of
1195         experimentation and personal taste.
1197         * Documentation/user/invoking.itely: update convert-ly bugs.
1199 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1201         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
1202         to #t.
1204         * lily/timing-translator.cc (initialize): don't initialize timing.
1206         * input/regression/stem-spacing.ly (Module): remove file.
1208         * input/regression/spacing-stick-out.ly: specify Score context for
1209         \override
1211         * input/regression/clefs.ly: remove spurious {}s 
1213 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
1215         * Documentation/topdocs/NEWS.tely,
1216         input/regression/repeat-percent-count.ly: clarify a bit.
1218 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1220         * input/no-notation/display-lily-tests.ly: delete
1221         display-lily-init call.
1223         * ly/music-functions-init.ly (displayLilyMusic): move
1224         display-lily-init call at top level, so that the user should not
1225         have to call it.
1227         * scm/define-music-display-methods.scm (note-name->lily-string):
1228         retrieve note names directly from pitchnames using new function `rassoc'.
1229         (display-lily-init): note names list construction removed.
1231 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1233         * THANKS: spello.
1235         * lily/lily-parser.cc (get_header): copy module, instead of
1236         returning it.
1238         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
1239         counters.
1241         * Documentation/user/basic-notation.itely (Measure repeats): add
1242         links to Counter grobs.
1244         * scm/define-grobs.scm (all-grob-descriptions): add
1245         DoublePercentRepeatCounter
1246         (all-grob-descriptions): add PercentRepeatCounter
1248         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
1249         also create counter grobs.
1251         * lily/separation-item.cc (extremal_break_aligned_grob): don't
1252         return grob without space-alist.
1254         * input/proportional.ly: tune staff-padding.
1256         * input/regression/repeat-percent-count.ly: new file. 
1258 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1260         * input/no-notation/display-lily-tests.ly: moved from
1261         input/regression/ to input/no-notation. Be sure to call
1262         `display-lily-init' before trying to use the display function.
1264 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1266         * scripts/lilypond-book.py (option_definitions): Don't localize
1267         the empty string. Fixes bug when --psfonts was used with
1268         non-English locale.
1270 2005-08-15  Graham Percival  <gpermus@gmail.com>
1272         * lily/tuplet-bracket.cc: simple build fix.
1274         * Documentation/user/putting.itely: use "we" instead of "I".
1276         * Documentation/user/basic-notation.itely: cautionary accidentals
1277         work with naturals, too.
1279 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1281         * lily/tuplet-bracket.cc (calc_position_and_height): add
1282         staff-padding support.
1284         * input/proportional.ly: set staff-padding.
1285         
1286         * VERSION (PATCH_LEVEL): release 2.7.5
1288         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
1289         fixes. Remove tweaks.
1291         * input/regression/tuplet-slope.ly: add a test case.
1293         * lily/tuplet-bracket.cc (calc_position_and_height): revert
1294         erroneous fix. Add spanner bounds to offset array with relative X
1295         positions.
1297         * ly/engraver-init.ly: add Rest_engraver only once.
1299         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
1300         (*parser*) lookup if (*parser*) != #f.
1302 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1304         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
1305         Cut-and paste update.
1307         * input/regression/slur-script.ly: Add example of reverting
1308         inside-slur for fingering.
1310         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
1311         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
1313         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
1314         outside_slur_callback if inside-slur == #f (as opposed to unset).
1316 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1318         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
1319         encoding files are already removed.
1321 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1323         * Documentation/user/advanced-notation.itely (Instrument names):
1324         Document a workaround for instrument names that collide with
1325         system start braces/brackets.
1327 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1329         * lily/rest-collision.cc (do_shift): spello.
1331         * input/proportional.ly: use #'used property. Set break-overshoot
1332         property.
1334         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
1336         * lily/paper-column.cc: add #'used property
1338         * lily/mark-engraver.cc (stop_translation_timestep): set grob
1339         array for staves found.
1341         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
1342         array for stavesFound.
1344         * lily/staff-spacing.cc (next_note_correction): add fixed and
1345         space to calling convention. This fixes spacing of accidentals
1346         after barlines.
1348         * input/regression/spacing-accidental-stretch.ly: add barline -
1349         accidental case.
1351         * scm/framework-ps.scm (page-header): add version number to
1352         creator
1353         (eps-header): idem.
1355         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
1356         
1357 2005-08-13  Graham Percival  <gpermus@gmail.com>
1359         * Documentation/user/global.itely: add "fit as much as
1360         possible onto this page" example (Vertical spacing).
1362 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1364         * *: Nitpick run.
1366         * buildscripts/fixcc.py: Fixes.
1368 2005-08-12  Graham Percival  <gpermus@gmail.com>
1370         * Documentation/user/advanced-notation.itely: add markup
1371         example to Text spanners.
1373 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1375         * Documentation/user/basic-notation.itely (Ties): Add example of
1376         tying a tremolo to a chord. Thanks to Steve Doonan. 
1378         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
1379         properties and move tieMelismaBusy to the list of written
1380         properties. 
1382 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
1384         * po/TODO: suggest to use a dedicated tool like kbabel.
1386         * po/fi.po: update using kbabel.
1388 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1390         * *: Remove obsolete files.  Nitpick run.
1392         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
1394 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1396         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
1397         too.
1399         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
1401         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
1402         whitespace as symbol separator.
1404         * lily/side-position-interface.cc: Add slur-padding.
1406         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
1407         quite a large fix, and it never worked in a stable release; so not
1408         really a regression.
1410         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
1411         Update cut and paste code from Slur_engraver.
1413         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
1414         Add.
1416         * scm/define-grobs.scm (DynamicLineSpanner): Add
1417         dynamic-line-spanner-interface.
1418         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
1420 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1422         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
1423         to_boolean () so that non-set 'inside-slur means false.
1425         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
1426         slur has control-points.  Skip script without direction.  Always
1427         do_shift if script inside slur, even if slur not contained in
1428         script y-extent.  Increment k in loop.
1430 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1432         * scm/define-markup-commands.scm: Improved regexp to search for
1433         EPS bounding boxes and corrected call to ly:warning.
1435 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1437         * Documentation/user/programming-interface.itely (Displaying music
1438         expressions): doc for \displayLilyMusic. Also some precisions in
1439         "Markup construction in Scheme"
1441 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1443         * scm/define-markup-commands.scm (normal-text): Added 2 new
1444         markup commands, \normal-text and \medium (the latter thanks to
1445         Bruce Fairchild). 
1447 2005-08-08  Graham Percival  <gpermus@gmail.com>
1449         * Documentation/user/programming-interface.itely: fix @{ @}.
1451         * scm/define-markup-commands.scm: add linewidth info to
1452         \justify and \wordwrap, add "upright is the opposite of italic".
1454         * Documentation/user/advanced-notation.itely: shaped->shape,
1455         add (cons (markup "foo")) type of example to text markup,
1456         reword multi-measure rests section.
1458         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
1459         comment.  No actual code was touched.
1461         * Documentation/user/invoking.itely: add more info about
1462         \include.  Thanks, Bruce!
1464         * THANKS: add Bruce Fairchild, alphabetise.
1466         * Documentation/user/global.itely: document \score{\header{}}
1467         behavior.
1469         * Documentation/user/basic-notation.itely: reword multi-measure
1470         rest discussion in Rests.
1472 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1474         * Documentation/user/programming-interface.itely (Markup
1475         construction in Scheme): Corrected example and tried to clarify
1476         the implicit \line in the table.
1478 2005-08-07  Graham Percival  <gpermus@gmail.com>
1480         * Documentation/user/instrument-notation.itely: moved
1481         some bagpipe info back into the bagpipe section.  Somehow
1482         it ended up in the "other vocal issues" section?!  :o_O
1484 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1486         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
1487         directories, not paths).
1489 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1491         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
1492         plain emmentaler/aybabtu.  Backportme.
1494         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
1495         missing dir correction.
1497 2005-08-05  Graham Percival  <gperlist@shaw.ca>
1499         * scm/define-markup-commands: fix reversed justify/wordwrap
1500         doc strings.
1502 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
1504         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
1505         lily/gregorian-ligature-engaver.cc,
1506         lily/include/ligature-engraver.hh,
1507         lily/include/coherent-ligature-engraver.hh,
1508         lily/include/gregorian-ligature-engraver.hh: make these classes
1509         truely abstract.  This should fix some internal oddities such as
1510         duplicate as well as dead translator/property declarations, and
1511         also some dead code.
1513         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
1514         bugfix: avoid message "junking empty ligature" on ligature
1515         brackets by collecting dummy grobs.
1517 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1519         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
1521         * input/proportional.ly (staffKind): bugfix.
1522         (staffKind): updates by Trevor Baca.
1524         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
1525         default layout. 
1527         * lily/tuplet-bracket.cc (print): check whether edge-text is a
1528         pair.
1530         * lily/beam.cc (rest_collision_callback): call position_beam() if
1531         necessary.
1533         * VERSION: release 2.7.4
1535         * input/regression/spacing-uniform-stretching.ly: new file.
1537         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
1539         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
1540         contributor.
1542         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
1544         * input/proportional.ly: new file.
1546         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
1547         columns is empty
1549         * lily/tuplet-engraver.cc (finalize): new function. Reset right
1550         bounds to currentCommandColumn for the last step.
1551         (start_translation_timestep): if tupletFullLength is set, set
1552         bound to Paper Column
1554         * input/regression/tuplet-full-length.ly (indent): new file.
1556         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
1557         clique of loose columns, eg. a set of grace notes in strict
1558         notespacing.
1560         * input/regression/spacing-strict-spacing-grace.ly: new file.
1562         * lily/key-signature-interface.cc: change property name to
1563         alteration-alist
1565         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
1566         keyAccidentalOrder
1568         * python/convertrules.py (conv): keyAccidentalOrder ->
1569         keyAlterationOrder
1571         * lily/key-engraver.cc (create_key): always print a cancellation
1572         for going to C-major/A-minor, regardless of printKeyCancellation.
1573         (create_key): remove typecheck for visibility. This fixes key
1574         signature not being printed.
1576         * lily/spacing-determine-loose-columns.cc: new file.
1578         * input/regression/spacing-strict-notespacing.ly: new file.
1580         * lily/spacing-spanner.cc (generate_springs): rename from
1581         do_measure. 
1582         (generate_pair_spacing): new function.
1583         (init, generate_pair_spacing): set between-cols for floating
1584         nonmusical columns.
1586         * lily/spaceable-grob.cc (get_spring): new function. 
1588         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
1589         relative to the right edge of the prefatory matter.
1591         * lily/beam.cc (print): read break-overshoot to determine where to
1592         stop/start broken beams.
1594         * input/regression/spanner-break-overshoot.ly: new file.
1596 2005-08-04  Graham Percival  <gperlist@shaw.ca>
1598         * ly/bagpipe.ly: updated.
1600         * Documentat/user/instrument.itely: un-comment out bagpipe example.
1602 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1604         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
1605         support: now (de)crescs avoid slurs as well.
1607         * Documentation/user/instrument-notation.itely (Bagpipe example):
1608         comment out non-functioning bagpipe example.
1609         (Bagpipe definitions): idem.
1611         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
1612         (Top): add proportionalNotationDuration example.
1614         * input/regression/spacing-proportional.ly: new file.
1616         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
1617         synched to a beam.
1619         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
1620         fixes beams with a single stem (eg. beams across linebreaks.)
1622         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
1624         * flower/rational.cc (operator +): prevent overflow. This fixes
1625         heavily nested tuplets.
1627         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
1628         have to protect even those unlikely to be corrupted data members.  
1630 2005-08-04  Graham Percival  <gperlist@shaw.ca>
1632         * ly/bagpipe.ly: new file.
1634         * THANKS: added Sven Axelsson.
1636 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1638         * lily/spacing-engraver.cc (stop_translation_timestep): directly
1639         copy proportionalNotationDuration into currentMusicalColumn if
1640         set.
1642         * lily/spacing-spanner.cc (musical_column_spacing): if
1643         uniform-stretching set, fixed space is 0.0
1645         * input/regression/spacing-multi-tuplet.ly: show
1646         uniform-stretching property.
1648         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
1650         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
1651         (struct Spacing_options): new struct.
1653         * lily/spacing-basic.cc: new file.
1655         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
1656         delta_t doesn't have to be smaller than shortest_playing_len
1658 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1660         * input/regression/markup-arrows.ly:  new file.
1662         * lily/tuplet-bracket.cc: document new behavior.
1664         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
1665         with line breaks.
1667         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
1669         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
1670         default 
1672         * lily/tuplet-bracket.cc: add edge-text property.
1673         add break-overshoot.
1674         (print): read break-overshoot.
1675         (print): read edge-text, add stencils.
1677         * mf/feta-arrow.mf: new file.
1679         * mf/feta-generic.mf: add feta-arrow.
1681 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1683         * Documentation/user/lilypond-book.itely (An example of a
1684         musicological document): Added flag -o to dvips for people who use
1685         the default setting in teTeX where output is sent to the printer. 
1687         * Documentation/user/global.itely (Vertical spacing): Added
1688         reference to the Axis_group_engraver which documents the *Extent
1689         properties.
1691 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1693         * Documentation/user/basic-notation.itely (Tuplets): add note
1694         about nested tuplets. Remove BUG. 
1696         * input/regression/tuplet-nest.ly: update: remove manual hack. 
1698         * lily/tuplet-bracket.cc (print): use robust_scm2drul
1699         (print): manually call print() for subtuplets.
1700         (calc_position_and_height): add subtuplets to the
1701         support. Vertically shift outer tuplet 
1703         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
1704         remove-first for Lyrics, ChordNames and FiguredBass
1706         * scm/define-grob-properties.scm (all-internal-grob-properties):
1707         use ly:grob-array? iso. grob-list?
1708         (all-internal-grob-properties): add tuplets grob-array.
1710         * lily/tuplet-bracket.cc (add_tuplet_bracket):
1711         new function
1713 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1715         * input/test/time-signature-staff.ly: new file.
1717         * ly/declarations-init.ly (center): escape to Scheme. Fixes
1718         spurious #<Music FingerEvent> errors. Backportme.
1720 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1722         * Documentation/user/programming-interface.itely (Markup
1723         construction in Scheme): Corrected markup syntax in the
1724         translation table.
1726 2005-08-03  Graham Percival  <gperlist@shaw.ca>
1728         * Documentation/user/instrument-notation.itely: small update
1729         to bagpipe notation docs; thanks Sven!
1731         * Documentation/user/basic-notation.itely: add link about trills.
1733 2005-08-02  Graham Percival  <gperlist@shaw.ca>
1735         * Documentation/user/music-glossary: remove accidentally committed
1736         fink patch.
1738 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
1740         * lily/lily-parser.cc (get_header): new function. Enable multiple
1741         \header definitions.
1743         * lily/parser.yy (lilypond_header_body): use get_header.
1745         * ly/init.ly:
1746         * scm/lily-library.scm (print-score-with-defaults): renamed
1747         $globalheader to $defaultheader
1748         
1749         * Documentation/user/global.itely (Creating titles): added short
1750         explanation that multiple headers are useable.
1753 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1755         * lily/module-scheme.cc (LY_DEFINE): new file. 
1757         * Documentation/user/advanced-notation.itely (Font selection): add
1758         doco for make-pango-font-tree.
1760 2005-07-31  Graham Percival  <gperlist@shaw.ca>
1762         * Documentation/user/music-glossary: more languages
1763         for tenuto.
1765         * Docuemntation/user/instrument-notation.itely: minor
1766         update for bagpipe example.
1768 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1770         * input/regression/+.ly (TODO): add some text.
1772 2005-07-28  Graham Percival  <gperlist@shaw.ca>
1774         * Documentation/user/invoking.itely: \score begins with music.
1776         * Documentation/user/ basic-notation.itely,
1777         instrument-notation.itely: minor changes.
1779         * Documentation/user/music-glossary.itely: began tenuto entry.
1781 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1783         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
1785         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
1787 2005-07-27  Graham Percival  <gperlist@shaw.ca>
1789         * Documentation/user/examples.itely: remove bagpipe template.
1791         * Documentation/user/instrument-notation.itely: add bagpipe
1792         section, maybe fix quotes in lyrics.  I hate text encoding.
1793         Clarify chord durations, more bagpipe stuff.
1795 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1797         * lily/accidental-engraver.cc: formatting fixes.
1799         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
1800         grob-array.
1802         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
1804         * lily/note-column.cc (arpeggio): new function.
1806         * lily/note-spacing.cc (get_spacing): also take arpeggio into
1807         account for spacing.
1809 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1811         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
1812         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
1813         mingw build.
1814         
1815 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1817         * scm/lily.scm (lilypond-all): clear anonymous modules after
1818         processing files.
1820 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1822         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
1823         SCM_I_CONSP
1825         * VERSION: 2.7.3 released
1827         * Documentation/user/invoking.itely (Invoking lilypond): add
1828         LILYPOND_GC_YIELD documentation.
1830         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
1831         scm_from_real / scm_make_real.
1833         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
1834         higher. This increases memory footprint, but provides overall
1835         speedup of 15 to 20%. 
1837         * lily/include/translator.hh (class Translator): remove
1838         PRECOMPUTED_VIRTUAL everywhere.
1840         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
1842         * lily/context.cc (now_mom): non-recursive now_mom() 
1844         * lily/include/profile.hh: new file.
1846         * lily/profile.cc: new file.
1848         * lily/grob.cc (Grob::Grob): look properties up directly.
1850         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
1851         lookups.
1853         * lily/include/box.hh (class Box): smob Box type.
1855         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
1857         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
1858         protect() and unprotect(). Use throughout.
1860 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1862         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
1864         * scm/define-music-display-methods.scm (markup->lily-string):
1865         markup elements can also be strings (without simple-markup
1866         appended)
1868 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1870         * lily/context.cc (where_defined): also assign value in
1871         where_defined().
1873         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
1874         (curve_coordinate): new function
1876         * lily/simple-spacer.cc (add_columns): only add rods between
1877         column i and begin/end if keep-inside-line is set (this repleces
1878         allow-outside-line as default)
1880 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1882         * lily/tuplet-engraver.cc (start_translation_timestep): only read
1883         tupletSpannerDuration if applicable.
1885         * lily/font-size-engraver.cc (process_music): read fontSize only
1886         once per timestep.
1888         * lily/engraver*cc: use throughout.
1889         
1890         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
1892         * lily/translator.cc (add_acknowledger): new file. Directly jump
1893         into an Engraver::acknowledge_xxx () method based on a grobs
1894         interface-list.
1896         * lily/include/translator-dispatch-list.hh (class
1897         Engraver_dispatch_list): new struct, new file.
1899         * scm/define-context-properties.scm
1900         (all-internal-translation-properties): remove acceptHashTable,
1901         acknowledgeHashTable
1903         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
1905         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
1906         change acknowledgeHashTable to C++ member. 
1908         * lily/rest-collision.cc (do_shift): use extract_grob_set().
1910 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1912         * scm/display-lily.scm: new file. Define a `display-lily-music'
1913         function, that displays the music expression given as an argument,
1914         using LilyPond notation.
1916         * scm/define-music-display-methods.scm: new file. Implementation
1917         of display methods for each music type.
1919         * ly/music-functions-init.ly (displayLilyMusic): new function for
1920         displaying music with LilyPond notation.
1922         * input/regression/display-lily-tests.ly: new regression test file
1923         for `display-lily-music'.
1925         * scm/markup.scm: remove obsolete debugging code (for printing
1926         markups with LilyPond notation).
1928         * scm/define-music-types.scm (music-name-to-property-table):
1929         * scm/clef.scm (supported-clefs): export, in order to be accessible
1930         from the (scm display-lily) module.
1932 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1934         * Documentation/topdocs/NEWS.tely (Top): Typo.
1936 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
1938         * Documentation/index.html.in, Documentation/texinfo.css,
1939           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
1940           Documentation/bibliography/index.html.in,
1941           Documentation/bibliography/html-long.bst: revert css-width patch,
1942           it does not work with IE6.
1944 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1946         * Documentation/texinfo.css: revert 760px hack. 
1948         * VERSION: release 2.7.2
1950         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
1952         * Documentation/user/basic-notation.itely (Barnumber check): add
1953         section.
1955         * scm/music-functions.scm (skip-to-last): new function. Show only
1956         last showLastLength part of the \score.
1958         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
1960         * python/convertrules.py (conv): add ly:x-moment rule
1962         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
1964         * Documentation/topdocs/NEWS.tely (Top): add new feature.
1966         * Documentation/user/instrument-notation.itely (Flexibility in
1967         alignment): options in subsections.
1969         * lily/lyric-engraver.cc (process_music): don't typeset text for _
1970         syllable text. Instead, assume that the previous lyric text is a
1971         melismated text.
1973         * Documentation/index.html.in: revert 800x600 change.
1975 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1977         * lily/main.cc (main): Remove invalid handle kludge.
1979         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
1980         (lambda): add gui define.
1982 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1984         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
1986         * Documentation/user/instrument-notation.itely (Musica ficta
1987         accidentals): add section Musica ficta accidentals
1989         * lily/accidental-engraver.cc (make_suggested_accidental): new
1990         function.
1991         (make_standard_accidental): move into new function.
1992         (create_accidental): new function.
1994         * scm/define-grobs.scm (all-grob-descriptions): new Grob
1995         AccidentalSuggestion
1997         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
1999         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
2000         undefined.
2002         * Documentation/user/global.itely (Page formatting): document
2003         horizontalshift.
2005         * scm/page-layout.scm (default-page-music-height):
2006         horizontalshift: new variable, shift all systems by
2007         horizontalshift to the right, to make space for instrument names.
2009         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
2011         * lily/input-scheme.cc (LY_DEFINE): take format commands.
2013 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2015         * lily/note-column.cc (dir): idem.
2017         * lily/spacing-spanner.cc (Module): idem.
2019         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
2021         * lily/include/paper-column.hh (class Paper_column): add
2022         non-static get_rank() member.
2024         * VERSION: release 2.7.1
2025         
2026         * scm/framework-null.scm: new file, used for benchmarking.
2028 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
2030         * Documentation/topdocs/INSTALL.texi, configure.in: fix
2031         version dependencies for fontforge and gs.
2033         * Documentation/index.html.in, Documentation/texinfo.css,
2034         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
2035         Documentation/bibliography/index.html.in, 
2036         Documentation/bibliography/html-long.bst: optimize width of
2037         html for a 800x600 screen (width:760), increases printability
2038         when 'fit to page' is not set and readability in wide screens.
2040         * stepmake/bin/add-html-footer.py: add missing </p>.
2042 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2044         * scm/define-markup-commands.scm (beam): use polygon in beam
2045         command.
2047         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
2048         all acknowledged grobs, and do potentially expensive merge and
2049         write in one go.
2051         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
2053         * configure.in (reloc_b): add --enable-static-gxx to statically
2054         link to libstdc++
2056         * lily/GNUmakefile (static-gxx-libs): new target
2057         static-gxx-libs. Create symlink to libstdc++.a
2059         * lily/new-lyric-combine-music-iterator.cc: rename to
2060         Lyric_combine_music_iterator
2062         * lily/lyric-combine-music-iterator.cc
2063         (Old_lyric_combine_music_iterator): rename to
2064         Old_lyric_combine_music_iterator
2066         * lily/*-engraver.cc (various): remove double use of
2067         PRECOMPUTED_VIRTUAL function: only use
2068         start_translation_timestep() and stop_translation_timestep(), not
2069         both.
2071         * lily/break-substitution.cc (fast_substitute_grob_array): do
2072         fast_substitute_grob_array for all unordered grob_arrays.
2073         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
2074         (substitute_grob_array): optimize.
2076         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
2078         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
2080         * lily/parser.yy: revert $globalheader patch.
2081         
2082         * lily/include/translator.icc
2083         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
2084         Translator methods, without _static helper.
2086         * lily/grob-smob.cc (derived_mark): rename from
2087         do_derived_mark(). Return void.
2089         * scm/define-context-properties.scm
2090         (all-internal-translation-properties): remove tweakCount/tweakRank.
2092         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
2093         predefined break-visibilities.
2095         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
2096         booleans for break-visibility.
2098         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
2100         * python/convertrules.py (conv): rule for Timing_translator. 
2102         * lily/include/translator.icc: new file. 
2104         * lily/paper-column-engraver.cc (process_music): new
2105         file. Separate Paper_column factory from Score_engraver.
2107         * lily/vertically-spaced-context-engraver.cc: administer
2108         spaceable-staves property of System.
2110         * lily/translator-group-ctors.cc: new file.
2112         * lily/context-property.cc (make_grob_from_properties): construct
2113         the right Grob class programmatically, looking at the class entry
2114         for the meta property.
2116         * lily/break-align-engraver.cc (stop_translation_timestep): call
2117         Break_align_interface::add_element() directly.
2119         * lily/context.cc (measure_position): measure_position() is now a
2120         normal function.
2122         * lily/include/translator.hh (class Translator): rename
2123         process_acknowledged_grobs() to process_acknowledged() and move to
2124         Translator.
2126         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
2127         field for each grob description.
2129         * lily/include/translator-group.hh (class Translator_group):
2130         change to base class. Separate class from Translator. This gets
2131         rid of virtual inheritance for Engravers/Performers.
2133         * lily/staff-performer.cc (class Staff_performer): derive
2134         Staff_performer from Performer, not Performer_group_performer 
2136         * Lily/translator-group.cc (precomputed_recurse_over_translators):
2137         new function.
2138         (precompute_method_bindings): new function. Precompute lists of
2139         Translators, so we only call methods (process_music,
2140         start_translation_timestep, etc.) for Translators needing
2141         it. Also: dispose of pointer-to-member-function calls.
2143         * lily/engraver-group-engraver.cc: remove engraver_each,
2144         recurse_down_engravers ()
2146         * lily/note-head.cc (internal_print): only call
2147         glyph-name-procedure if style != default. 
2149 2005-07-16  Graham Percival  <gperlist@shaw.ca>
2151         * ly/titling-init.ly: add printallheaders option.
2153         * Documentation/user/global.itely: document printallheaders.
2155 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2157         * lily/system.cc (do_derived_mark): don't mark from object_alist_
2158         anymore, but do it centrally.  
2160         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2161         hammer hack.
2163         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
2165         * scm/output-lib.scm: remove hammer-print-function.
2167         * lily/include/pointer-group-interface.hh (extract_grob_set): new
2168         macro. Declare a Link_array<Grob> and fill it from a grob.
2169         (extract_item_set): idem for item.
2171         * lily/break-substitution.cc: add header.
2172         (fast_substitute_grob_array): rewrite for Grob_arrays.
2173         (substitute_grob_array): idem.
2175         * lily/group-interface.cc (add_thing): remove file.
2177         * flower/include/parray.hh (class Link_array): slice() is const.
2179         * lily/include/grob-array.hh: new file.
2181         * lily/grob-array.cc (spanner): new file.
2183         * lily/beam-quanting.cc (fill): read details property from beam.
2185         * lily/beam.cc: support details property.
2187         * total speedups below: approx 10%.
2189         * lily/include/beam.hh: new struct, softcode beam quanting parameters
2191         * lily/include/grob.hh (class Grob): add interfaces_ member.
2193         * lily/bezier.cc (init_polynomial_cache): new function: cache
2194         binom(3,j) t^j (1-t)^{3-j}
2195         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
2197         * lily/*.cc: substitution throughout.
2199         * lily/grob-property.cc (internal_get_object): new routine.
2200         (internal_set_object): idem. Store grob refrences in separate
2201         alist. This saves processing time, since properties aren't
2202         break-substituted, and the per grob namespace is smaller, both for
2203         grobs and non-grob properties.
2205         * scm/define-grob-properties.scm (all-internal-grob-properties):
2206         remove center-element.
2208         * lily/grob.cc: remove tweak-count, tweak-rank.
2210 2005-07-15  Graham Percival  <gperlist@shaw.ca>
2212         * Documentation/user/lilypond-book.itely: fixes example.
2214 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2216         * Documentation/user/global.itely (Creating titles):    
2217         * Documentation/user/examples.itely (All headers): change the
2218         place of \header in \score blocks (after music block) to make
2219         examples compile (cf. changes on parser.yy on 2005-07-10)
2221 2005-07-13  Graham Percival  <gperlist@shaw.ca>
2223         * python/convertrules.py: add exc -> ecc rule.
2225         * scripts/convert-ly.py: add location of convertrules.py
2226         in a comment.
2228         * Documentation/user/changing-defaults.itely: fix language.
2230 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2232         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
2234 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2236         * scm/output-socket.scm (grob-bbox): don't use inf? 
2238         * flower/include/rational.hh: add operator bool() 
2240         * scm/define-music-types.scm (music-descriptions): remove
2241         internal-class-name properties.
2243         * lily/include/event.hh: remove file.
2245         * lily/include/music-constructor.hh: remove file.
2247         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
2248         in 'types property.
2250         * lily/music.cc (duration_length_callback): new function.
2252         * lily/event.cc: remove file.
2254         * lily/music-constructor.cc: remove file.
2256         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
2258         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
2259         (get_context_key): idem.
2261         * scm/lily.scm (lambda): new option object-keys (default to #f)
2263         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
2265         * scm/output-gnome.scm: remove beam routine.
2267         * scm/output-ps.scm (scm): idem.
2269         * scm/output-svg.scm: remove beam.
2271         * ps/music-drawing-routines.ps: remove draw_beam.
2273         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
2275         * flower/include/guile-compatibility.hh (scm_from_locale_string):
2276         add scm_from_locale_string compatibility glue. 
2278 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
2280         * scripts/lilypond-book.py: Prevent occuring error when
2281         'lilypond-book --output=foo/ somefile.ly' is executed multiple
2282         times and target file shoud be overwritten.  (Error message said
2283         'input file and output file is same'.)
2285 2005-07-13  Graham Percival  <gperlist@shaw.ca>
2287         * input/regression/slur-extreme.ly,
2288         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
2289         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
2290         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
2291         "excentricity" to "eccentricity".
2293         * Documentation/user/converters.itely: fix URL for Noteedit and
2294         Rosegarden.
2296         * THANKS: added Yoshinobu Ishizaki.
2298 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2300         * scm/define-markup-commands.scm (justify-field): add. 
2302         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
2304 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2306         * lily/lookup.cc (filled_box): express filled_box with
2307         round_filled_box
2309         * scm/midi.scm (paper-book-write-midis): new function. Write all
2310         performances in numbered MIDI files.
2312         * lily/performance-scheme.cc (LY_DEFINE): new file.
2313         (LY_DEFINE): new function ly:performance-write.
2315         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
2316         new function.
2317         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
2319         * scm/framework-*.scm: use port arguments throughout.
2321         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
2323         * lily/paper-outputter.cc (Paper_outputter): take port argument.
2325         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
2327         * scm/framework-texstr.scm (output-framework): 
2329         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
2331         * scm/output-lib.scm (tablature-stem-attachment-function):
2332         tablature stem attachment fix. 
2334 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2336         * lily/bezier.cc: hardcode binomial coefficients of order 3.
2338         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
2340         * scm/define-music-types.scm (music-descriptions): don't use
2341         Music_wrapper type.
2343         * lily/paper-column.cc (print): print moment too.
2345         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
2346         remove compatibility cruft.
2348         * lily/parser.yy (score_body): \score can only begin with Music. 
2350         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
2351         make-score. Take music argument only. Move parser interaction to
2352         Scheme.
2354         * scm/lily-library.scm (scorify-music): new function.
2356         * python/lilylib.py (datadir): remove 2.1 compat kludge.
2357         (datadir): remove resource import.
2358         (print_environment): remove get_bbox()
2359         (cp_to_dir): remove pre 1.5.2 compat glue.
2361 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2363         * lily/include/simple-spacer.hh (Module): idem.
2365         * lily/include/spring.hh (struct Spring): store inverse
2366         strength. This prevents division by zero.
2368         * VERSION: release 2.7.0
2369         
2370         * lily/include/music.hh (class Music): remove Music::duration_log()
2372         * lily/stem-engraver.cc (make_stem): take duration log from event.
2374         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
2376 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2378         * scm/lily.scm (ly:load): load autochange.scm
2380         * Documentation/user/tutorial.itely (Running LilyPond for the
2381         first time): remove reference to DVI/TeX
2383         * scm/define-markup-commands.scm (text): add \text markup command.
2385         * configure.in (reloc_b): bump requirement to Python 2.2.
2387         * lily/include/dots.hh (class Dots): make has_interface() static.
2389         * python/convertrules.py (conv): add rule for ly:grob-default-font
2391         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
2392         alphabetical order.
2394         * input/regression/trill-spanner-pitched.ly: new file.
2396         * lily/font-interface-scheme.cc (LY_DEFINE): function
2397         ly:grob-default-font (changed from get-default-font).
2399         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
2401         * lily/note-head.cc (internal_print): if style is not a symbol,
2402         set style to 'default. 
2403         (internal_print): no style suffix if glyph-name-procedure not
2404         set. Default to quarter head.
2406         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
2408         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
2410         * ly/music-functions-init.ly: \pitchedTrill
2412         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
2414         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
2416         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
2418         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
2420         * po/fr.po: update
2422         * po/de.po: update.
2424 2005-07-06  Graham Percival  <gperlist@shaw.ca>
2426         * Documentation/user/changing-defaults.itely: add link
2427         to grob-iterface.
2429         * Documentation/user/advanced-notation.itely: add material
2430         to Setting automatic beam behaviour.  Thanks, Joe!
2432         * Documentation/user/lilypond.itely: change encoding to utf-8.
2434 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2436         * Documentation/user/advanced-notation.itely (Setting automatic
2437         beam behavior): Correct the documentation of
2438         revert-auto-beam-setting (backportme)
2440 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2442         * lily/ly-module.cc (ly_make_anonymous_module): define
2443         %module-public-interface of module. 
2445         * lily/lily-parser.cc (print_smob): allow printing of parser smob
2446         without lexer.
2448 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2450         * input/regression/fret-diagrams.ly: stretch example.
2452 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2454         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
2455         Fodor).
2457 2005-06-30  Graham Percival  <gperlist@shaw.ca>
2459         * Documentation/topdocs/AUTHORS.texi: update personal web address.
2461         * Documentation/user/examples.itely, lilypond-book.itely:
2462         change \RequirePackage to \usepackage.
2464         * Documentation/user/global.itely: document copyright and tagline.
2466 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2468         * Documentation/user/basic-notation.itely (Transpose): remove link
2469         to nonexistent UntransposableMusic.
2471         * scm/output-svg.scm: remove old definitions.
2473         * scripts/lilypond-book.py (do_file): search for kpsewhich before
2474         invoking.
2476         * python/lilylib.py (search_exe_path): new function.
2478 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2480         * python/lilylib.py (mkdir_p): remove setup_environment()
2481         (backportme)
2483         * buildscripts/mutopia-index.py (headertext): trim text.
2485         * Documentation/topdocs/NEWS.tely (Top): refresh.
2487         * scm/define-markup-commands.scm (wordwrap-string): new function:
2488         split string in paras and words.
2489         (wordwrap-markups): new function.
2490         (wordwrap-stencils): new function. 
2491         (justify): use it.
2492         (wordwrap): use it.
2493         (wordwrap-string): use it
2494         (justify-string): use it.
2496         * scm/lily-library.scm (regexp-split): new function.
2498         * scm/define-markup-commands.scm: remove encoded-simple. 
2499         remove font-markup.
2500         (fontsize): remove old version  of fontsize.
2501         (wordwrap): new markup function. Wrap into paragraphs.
2503         * VERSION: Branch lilypond_2_6
2504         (MINOR_VERSION): go to 2.7.0
2506 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2508         * po/zh_TW.po: update from translation project.
2510 2005-06-28  Graham Percival  <gperlist@shaw.ca>
2512         * scm/midi.scm: compile fix.
2514 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2516         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
2517         patch. Now, the tempfile module is loaded too, not only used.
2519 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
2521         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
2522         0.05 - 1.00 to 0.25 - 1.00
2524         * scm/midi.scm: moved the default-instrument-equalizer procedure
2525         to just under the insturment-equalizer-alist it takes as an
2526         argument.
2528 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2530         * Documentation/user/advanced-notation.itely (Font selection):
2531         remove CMR note.
2533         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
2535 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2537         * THANKS: Add UTF-8 marker.
2539         * Documentation/user/point-and-click.itely (http): Update: use
2540         lilypond-invoke-editor.  Fix: instruct to use user.js.
2542 2005-06-27  Graham Percival  <gperlist@shaw.ca>
2544         * ly/titling-init.ly: implements printpagenumber, increases
2545         space between dedication and title (to avoid collisions with
2546         "g" and "q" in dedication), and nicer logic about copyright
2547         and instrument fields being printed on the first page.
2548         Thanks Vincent!
2550         * Documentation/user/global.itely: document printpagenumber.
2552 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2554         * Documentation/topdocs/NEWS.tely: Update to 2.6.
2556 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2558         * THANKS: update to 2.6
2560         * VERSION: 2.6.0 released.
2562 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2564         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
2565         rule, errorneously removed probably because of misleading comment.
2567 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2569         * python/lilylib.py (datadir): py2exe comments.
2571         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
2573         * configure.in (reloc_b): make fontconfig REQUIRED.
2575 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
2577         * po/fi.po: add latest translations.
2579 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2581         * ChangeLog: recode utf-8
2583         * Documentation/pictures/lilypond.xpm (Module): edited photo as
2584         logo.
2586         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
2588         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
2590         * python/convertrules.py (do_conversion): don't print program_name
2591         from within a module
2593         * configure.in (reloc_b): bump fontforge requirement to 20050624.
2595         * python/convertrules.py (conv): add 2.6.0 dummy rule.
2597 2005-06-23  Graham Percival  <gperlist@shaw.ca>
2599         * Documentation/user/lilypond-book.itely,
2600         Documentation/user/examples.itely: add \RequirePackage{graphics}.
2602         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
2603         fixes baseline-skip.  Thanks Vincent!
2605         * Documentation/user/advanced-notation.itely, global.itely:
2606         moved "Selecting font sizes" to global, since it deals with
2607         notation font size, not text fonts.
2609 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2611         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
2612         to fonts.
2614 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2616         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
2617         workaround since /dev/stdin doesn't work on Cygwin. Using a
2618         temporary file in the current directory since latex doesn't
2619         understand the path name to the default TMP in Cygwin (at least on
2620         win XP).
2621         
2622         * Documentation/user/global.itely (Creating titles): Correct
2623         misprint in example. Thanks to Rob Vlasaty.
2625 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2627         * VERSION (PATCH_LEVEL): release 2.5.32
2629         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
2630         variable in lily module
2632         * scm/framework-ps.scm (output-classic-framework): error message
2633         regarding the classic framework.
2635         * Documentation/user/henle-flat-gray.png (Module): new file.
2637         * Documentation/user/baer-flat-gray.png (Module): new file.
2639         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
2640         whiteout for markups.
2642         * buildscripts/substitute-encoding.py (note_glyph): include _ in
2643         regex too. This fixes change clef appearance in PDF. 
2645         * ttftool/include/*: remove.
2647         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
2649         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
2651         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
2653         * ttftool/*: remove ttftool subdirectory.
2655         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
2657         * lily/ttf.cc (print_header): new file. Convert to type42, using
2658         FreeType to parse the TTF. 
2660         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
2661         and post table may differ. Pass around post_nglyphs as well.
2663 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2665         * ly/music-functions-init.ly (musicMap): new music function
2666         musicMap. 
2667         
2668 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2670         * make/mutopia-rules.make: anti-alias-factor = 2
2672         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
2673         page switch.
2675         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
2676         anti-alias-factor for lilypond-book runs.
2678         * scm/ps-to-png.scm (scale-down-image): new function.
2679         (my-system): new function.
2680         (make-ps-images): blow up GS resolution by anti-alias-factor,
2681         scale down image by anti-alias-factor.  This improves appearance
2682         of bitmaps
2683         (make-ps-images): remove showpage. Fixes spurious empty png at
2684         end.
2686         * scm/framework-ps.scm (write-preamble): downcase filename before
2687         string-matching. Should fix .TTF files (as opposed to ttf files)  
2689         * Documentation/user/tutorial.itely (Running LilyPond for the
2690         first time): separate subsections for windows, macos and unix.  
2692         * Documentation/user/invoking.itely (Updating files with
2693         convert-ly): add MacOS X note.
2695 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2697         * Documentation/user/introduction.itely (Engraving): don't include
2698         file optical-spacing, add directly.
2700         * lily/paper-outputter.cc (file): open file in binary mode. This
2701         fixes OTF embedding on windows.
2703 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2705         * scm/framework-ps.scm (write-preamble): remove debugging output.
2707         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
2709         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
2710         outdir.
2711         (install-fc-cache): install font cache in installation directories.
2713 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2715         * scm/editor.scm (editor-command-template-alist): Use char iso
2716         column, except for Emacs.
2717         (get-editor-command): Substitute char too (Bertalan Fodor).
2719 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2721         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
2722         quoted ~s.  This should fix PNG output on Windows; single quotes
2723         are regular characters on Windows.
2725 2005-06-16  Graham Percival  <gperlist@shaw.ca>
2727         * Documentation/user/basic-notation.itely: include ChoirStaff
2728         in System start delimiters.
2730         * Documentation/user/putting.itely: new doc section on
2731         fixing overlapping notation.
2733 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2735         * Documentation/user/global.itely (Paper size): \paper is in
2736         \book, not \score.
2738         * make/mutopia-rules.make: -ddelete-intermediate-files
2740         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
2742 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2744         * ChangeLog: Recode utf-8.
2746         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
2747         datadir with .py modules.
2749 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
2751         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
2753 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2755         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
2756         
2757         * scm/framework-ps.scm (write-preamble): remove status check.
2759         * Documentation/user/invoking.itely (Updating files with
2760         convert-ly): remove -o option.
2762         * VERSION (PACKAGE_NAME): release 2.5.31
2764         * scm/framework-ps.scm (write-preamble): use ly:system.
2765         (write-preamble): verbosity.
2767         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
2769         * python/convertrules.py: new file. Store conversion rules
2770         separately.
2772 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2774         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
2776 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2778         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
2779         \musicDisplay 
2781         * Documentation/user/instrument-notation.itely (More stanzas): Add
2782         reference to StanzaNumber.
2784 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2786         * THANKS: separate section for website translators.
2788 2005-06-14  Graham Percival  <gperlist@shaw.ca>
2790         * Documentation/topdocs/INSTALL.texi: update vim info;
2791         thanks Simon Bailey!
2793         * Documentation/user/advanced-notation.itely: included
2794         color names.
2796         * Documentation/user/advanced-notation.itely,
2797         Documentation/usr/notation-appendices.itely: moved
2798         color names into an appendix.
2800 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2801         
2802         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
2804         * scm/lily.scm (lambda): initialize program options from here.
2806         * scm/framework-*.scm: add header info.
2808         * lily/main.cc (parse_argv): only set output format to pdf if no
2809         other format specified.
2811         * scm/backend-library.scm (postprocess-output): process
2812         'delete-intermediate-files after running convert-to-*. This fixes
2813         PNG generation when 'delete-intermediate-files is set.
2814         
2815 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2817         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
2818         links on website. 
2820 2005-06-13  Graham Percival  <gperlist@shaw.ca>
2822         * Documentation/topdocs/INSTALL.texi,
2823         Documentation/user/lilypond-book.itely: typos.
2825 2005-06-12  Pal Benko  <benkop@freestart.hu>
2827         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
2828         added between program name and switch; -b changed to -f not
2829         to generate pdf
2831 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2833         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
2834         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
2836         * input/sakura-sakura.ly: add \midi.
2838         * buildscripts/mutopia-index.py (find): use /usr/bin/find
2839         iso. python find. 
2841         * ttftool/test.c (main): cosmetics.
2843         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
2845         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
2846         create a ttf2ps binary.
2848         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
2850         * scm/backend-library.scm (postscript->png): set rename-page-1 to
2851         true.
2853 2005-06-11  Graham Percival <gperlist@shaw.ca>
2855         * Documentation/user/lilypond-book.itely: add warning about
2856         the font warnings in dvips.
2858 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2860         * THANKS: typo
2862         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
2864         * GNUmakefile.in: remove links for .map, .enc
2865         don't fail if out/ doesn't exist yet.
2867 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2869         * ttftool/util.c (surely_read): return nbytes
2871         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
2873         * VERSION (PACKAGE_NAME): release 2.5.30
2875         * flower/string-convert.cc (precision_string): >? fix.
2877         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
2878         (make-ps-images): add verbose -q too.
2880         * lily/default-actions.cc (Module): new file. default
2881         {book,score}-print functions.
2883         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
2884         pass results via parseStringResult, lookup via ly:parser-lookup.  
2886         * lily/lily-parser.cc (Lily_parser): only clone lexer in
2887         constructors.
2888         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
2889         (parse_string): idem.
2891         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
2893         * lily/main.cc (main_with_guile): copy be_verbose_global into
2894         ly_set_option()
2896 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2898         * scm/backend-library.scm (postscript->pdf):
2899         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
2900         verbose mode.  Search for several names of gs executable.
2902 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2904         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
2905         directly. This fixes a massive memory leak, provided you use CVS
2906         GUILE.
2908 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
2910         * ly/property-init.ly: Added tieDashed.
2912         * THANKS: Added some bughunters for 2.5.
2914 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2916         * lily/program-option.cc: add debug-gc option.
2918         * lily/include/lily-guile-macros.hh: don't protect exported module
2919         objects.
2921         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
2923         * scm/backend-library.scm (postscript->pdf): use
2924         delete-intermediate-files iso. running-from-gui? 
2926         * ttftool/util.c (surely_read): robustness. Allow read() to return
2927         less bytes than requested, as per posix standards.
2929         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
2930         program option.
2932         * ttftool/include/ttftool.h ("C"): rename verbosity to
2933         ttf_verbosity. Add to public interface.
2935         * scm/music-functions.scm (unfold-repeats): remove debugging display.
2937         * lily/program-option.cc: rename from scm-option.cc
2939         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
2940         (get_help_string): Print pretty help string.
2942         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
2943         to snippet preamble.
2945         * lily/scm-option.cc: remove command-line-settings option. Fold
2946         all command-line options plus default settings in a generic
2947         interface. 
2949         * flower/getopt-long.cc (table_string): indent 2nd lines of help
2950         texts too.
2952 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2954         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
2955         or EXT_ components non-empty.
2957 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2959         * scm/lily.scm (running-from-gui?): Export.
2961         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
2962         output in .ly source directory.
2964 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2966         * ttftool/util.c (surely_lseek): more verbosity.
2968         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
2969         compile.
2971         * lily/parser.yy (Repeated_music): remove >? 
2973         * scm/backend-library.scm (postscript->pdf): Support for
2974         -dgs-font-load=1
2976         * scm/framework-ps.scm (write-preamble): make font loading
2977         switchable to GS via --define-default gs-font-load=1
2979 2005-06-09  Graham Percival  <gperlist@shaw.ca>
2981         * Documentation/user/global.itely: added \layout docs.
2983 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2985         * lily/lily-parser-scheme.cc: add unistd.h
2987 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2989         * scm/editor.scm: add char argument.
2991         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
2993         * ttftool/util.c (syserror): use errno for better error reporting.
2995         * lily/source-file.cc (get_counts): new function. Calc column,
2996         line and char count in one go.
2998         * lily/binary-source-file.cc (quote_input): rename to quote_input
3000         * lily/input.cc (set): new function.
3002 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3004         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
3005         directory part of file name to search directory.
3007         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
3008         search path and chdir to DIR if --outname=DIR used.
3010         * lily/main.cc (prepend_env_path): Bugfix: Check directory
3011         existence before appending original path.
3013 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3015         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
3016         file" massage.
3018         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
3019         texinfo.tex is always used.
3020         
3021 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3023         * flower/include/axis.hh: rename from axes.hh
3025         * lily/include/text-interface.hh (Module): rename from text-item.hh
3027         * VERSION (PATCH_LEVEL): release 2.5.29
3029         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
3031         * scm/framework-ps.scm (font-file-as-ps-string): new function.
3032         (handle-macfont): new function. Call fondu for Native mac fonts.
3034         * scm/define-markup-commands.scm (fill-line): handle text-widths =
3035         '() case.
3037 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3039         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
3040         multi-page.  Fix .eps regular expression.
3042 2005-06-07  Graham Percival  <gperlist@shaw.ca>
3044         * Documentation/user/putting.itely: add info on modifying templates.
3046         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
3047         misc small changes.
3049 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3051         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
3053         * scripts/lilypond-ps2png.scm
3055         * VERSION (PACKAGE_NAME): release 2.5.28
3057 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3059         * lily/main.cc (prepend_env_path): Do not append /, that does not
3060         work.  Localedir lives in datadir, not in prefix.
3062         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
3063         hack for windows.
3065         * flower/include/file-cookie.hh: Compile fix.
3067 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3069         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
3071         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
3072         system primitives.
3073         (gulp-port): using read-string!/partial. We don't want to read an
3074         entire PS file  (GUILE 1.6 limits strings to 16M) 
3076         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
3077         properties. Add font-interface. 
3079         * scm/define-grob-properties.scm (all-user-grob-properties):
3080         remove old bracket properties.
3082         * scm/x11-color.scm: reformat. 
3084         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
3085         LedgerLineSpanner if new StaffSymbol is found. 
3087         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
3088         staff-symbol for finishing staff. 
3090         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
3092         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
3093         change black to currentColor everywhere. This fixes color support
3094         in SVG.
3096 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
3098         * input/regression/fret-diagrams.ly: new file to test fret diagram
3099         capability
3101         * scm/output-tex.scm: remove white-dot and white-text
3103         * scm/output-ps.scm: remove white-dot and white-text
3105         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
3106         using ly:stencil-in-color instead
3107         (draw-dots) : remove call to white-dot
3109 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3111         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
3112         support.
3114         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
3116         * flower/include/file-cookie.hh: new file. lily_cookie extension 
3118         * flower/file-cookie.cc: new file. lily_cookie extension.
3119         
3120 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3122         * scm/editor.scm (editor-command-template-alist): Add syn
3123         editor (Jaap [de Vos]).
3125 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
3127         * scripts/lilypond-ps2png.scm:
3128         * scm/ps-to-png.scm: New file.
3130         * scm/backend-library.scm (postscript->png): Use it.
3132         * scripts/lilypond-ps-to-png.py: Remove file.
3134         * python/lilylib.py (get_bbox, make_ps_images): Remove.
3136 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3138         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
3140         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
3141         start on grace moment. Fixes autobeam-grace.ly.
3143         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
3144         process anything unless we're at the end of a pending beam. Fixes
3145         syncopated 8ths beamed across a beat.
3147 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3149         * scm/editor.scm (editor-command-template-alist): Start emacs if
3150         emacslient fails.
3152         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
3154         * flower/file-path.cc (is_file, is_dir): Export.
3156         * lily/main.cc (prepend_env_path, set_env_file): Use them.
3158 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3160         * lily/easy-notation.cc: Added include cctype to correct
3161         compilation error.
3163 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3165         * scm/backend-library.scm (postscript->pdf): set resolution to
3166         1200, so bitmap fonts aren't that ugly. 
3168         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
3170         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
3171         parent if we have a notehead. Fixes incorrect offsets when
3172         Paper_column is very wide in the X direction.
3174         * input/regression/font-family-override.ly (Module): new file.
3176         * scm/font.scm (make-pango-font-tree): new function.
3178         * lily/beam.cc (before_line_breaking): remove warning about less
3179         than 2 visible stems. We still get a warning when there is only
3180         one stem.
3182 2005-06-01  Werner Lemberg  <wl@gnu.org>
3184         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
3185         correctly.
3187 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3189         * lily/slur-scoring.cc (generate_avoid_offsets): new
3190         function. Generate avoid offsets once per slur.
3192         * lily/slur.cc (add_extra_encompass): add dependency to
3193         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
3195         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
3196         too. Fixes inf error with added bass notes.
3198         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
3199         argument anymore.
3201         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
3203         * input/tutorial/lbook-latex-test.tex: add line length test.
3205         * scripts/lilypond-book.py (set_default_options): new
3206         function. Call this before dissecting snippets, so linewidth
3207         settings reach the snippets.
3209 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3211         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
3213 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3215         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
3217 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3219         * stepmake/aclocal.m4: More autopackage friendliness.
3221 2005-05-31  Graham Percival  <gperlist@shaw.ca>
3223         * Documentation/index.html.in: remove link to LSR.
3225         * Documentation/user/global.itely: remove duplicate
3226         "dedication" \header{} section.
3228 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3230         * VERSION (PACKAGE_NAME): release 2.5.27.
3232         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
3233         too. Plugs memory leak.
3235         * make/lilypond.fedora.spec.in (Group): remove
3236         lilypond-pdfpc-helper.
3238         * scripts/GNUmakefile (SEXECUTABLES): remove
3239         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
3241         * scm/font.scm (make-century-schoolbook-tree): add Mono as
3242         'typewriter family.
3244         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
3245         memory leak.
3247         * lily/parser.yy (score_body): don't clone Score, that's done in
3248         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
3250         * lily/score-engraver.cc (derived_mark): new function.
3251         (initialize): unprotect Paper_score. This fixes a memory leak.
3253         * lily/score-performer.cc (derived_mark): new function.
3255         * lily/score-translator.cc (get_output): use SCM for get_output() call.
3257         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
3258         spurious warning.
3260         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
3261         serif.
3263 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3265         * configure.in (reloc_b): Add --enable-relocation.
3267 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3269         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
3271         * input/regression/alignment-order.ly: add Staff example.
3273 2005-05-31  John Mandereau   <john.mandereau@free.fr>
3275         * po/fr.po: update.
3277 2005-05-31  Graham Percival  <gperlist@shaw.ca>
3279         * Documentation/index.html.in: add link to LSR.
3281 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3283         * scm/define-stencil-commands.scm (Module): new file. Register all
3284         allowed stencil expression heads in a central place.
3286         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
3287         ly:make-stencil
3289         * lily/stencil-expression.cc (all_stencil_heads): registering
3290         stencil expressions.
3292         * lily/stencil-interpret.cc: new file. Stencil expression
3293         interpreting.
3295         * input/xiao-haizi-guai-guai.ly: move file back.
3297 2005-05-30  Graham Percival  <gperlist@shaw.ca>
3299         * Documentation/user/advanced.itely, converters.itely,
3300         instrument-notation.itely, lilypond-book.itely: misc small
3301         changes.
3303 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3305         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
3307         * make/lilypond.fedora.spec.in: Fix source url.
3309         * cygwin: Update from mingw patches.
3311         * scm/editor.scm (editor-command-template-alist): Use jedit
3312         -reuseview (Bertalan), add uedit (Patrick Huberts).
3314         * input/xiao-hai-zi-guai-guai.ly: Rename from
3315         xiao-haizi-guai-guai.ly.
3317         * input/*: Reindent, do not use TAB.
3319         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
3320         white background.
3322 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
3324         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
3325         numerical overflow error.
3327 2005-05-29 Laura Conrad <lconrad@laymusic.org>
3328         
3329         * abc2ly.py: fix to syntax error in multi-part output.
3331 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3333         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
3334         with disappearing span bars when alignAboveContext is active
3336         * lily/property-iterator.cc (check_grob): use is-grob?
3337         object-property. Fixes crash-key-sig-font-size.ly. 
3339 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3341         * lily/bar-line.cc (print): don't round barlines; this produces
3342         odd aliasing effects in Acroread.
3344         * lily/timing-engraver.cc (process_music): robustness fix.
3346         * lily/context-def.cc (filter_engravers): bugfix.
3348 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3350         * lily/lilypond.rc.in: Add ly-icon.
3352         * lily/GNUmakefile: 
3353         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
3354         rules.
3356 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3358         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
3360         * ps/music-drawing-routines.ps: 
3362         * scm/output-ps.scm: remove draw ez_ball.
3364         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
3365         EasyNotation context definition.
3367         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
3368         Text_interface and color for making easy note heads.
3370         * lily/stencil.cc (with_color): new function.
3372         * ps/music-drawing-routines.ps: remove draw_zigzag_line
3374         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
3375         output routine. Zigzag now works in SVG too.
3377         * scm/output-tex.scm (filledbox): idem.
3379         * scm/output-svg.scm (filledbox): idem.
3381         * scm/output-ps.scm (lily-def): remove horizontal-line. 
3383         * lily/lookup.cc (horizontal_line): use draw-line. 
3385         * lily/system-start-delimiter.cc: remove old staff bracket code.
3387         * mf/feta-haak.mf: further tweaks.
3389         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
3391         * mf/feta-generic.mf: include feta-haak.
3393         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
3395         * scm/framework-ps.scm (write-preamble): only load fonts if their
3396         filename is a string. 
3398 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3400         * scm/output-svg.scm (circle): support circle.
3401         (bracket): stub for bracket.
3403         * scripts/lilypond-book.py (main): make sure --psfonts warning is
3404         correct.
3406 2005-05-26  Graham Percival  <gperlist@shaw.ca>
3408         * Documentation/user/lilypond.tely, advanced-notation.itely,
3409         basic-notation.itely, instrument-notation.itely, global.itely,
3410         introduction.itely, tutorial.itely: rearranging, editing,
3411         clean-up.
3413         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
3414         for compiling on FreeBSD.
3416 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3418         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
3419         otf files.
3421         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
3422         bugfixes.
3424         * VERSION: 2.5.26 released.
3426         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
3428 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
3430         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
3431         if printpagenumber is false.
3433 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3435         * lily/font-config.cc (init_fontconfig): comment out FontConfig
3436         cache warning.
3438         * lily/tie.cc (print): support dotted ties.
3439         
3440 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3442         * scm/define-grobs.scm (all-grob-descriptions): switch off
3443         debugging
3444         (all-grob-descriptions): Arpeggio has Y-extent.
3446         * scm/define-music-properties.scm (all-music-properties): document
3447         length-callback and start-callback as "read-only".
3449         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
3450         length-callback after creation. 
3452         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
3453         compressmusic -> compressMusic.
3455         * ly/music-functions-init.ly (oldaddlyrics): idem.
3457         * lily/parser.yy: NewLyricCombineMusic ->
3458         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
3460 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
3462         * ly/Welcome_to_LilyPond.ly: typo.
3464 2005-05-24  Graham Percival  <gperlist@shaw.ca>
3466         * Documentation/user/lilypond.tely: move changing-defaults to be
3467         before global issues.
3469         * Documentation/user/basic-notation.itely: move Transpose section
3470         here from advanced/Other.
3472         * Documentation/user/changing-defaults.itely,
3473         advanced-notation.itely: move Fonts to advanced, edit.
3475 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3477         * lily/parser.yy (bare_int): remove rule.  From now on, we require
3478         # before negative integers.
3480 2005-05-23  Graham Percival  <gperlist@shaw.ca>
3482         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
3484         * Documentation/user/lilypond.tely: change Unified index to
3485         LilyPond index.
3487         * Documentation/user/advanced-notation.itely,
3488         instrument-notation.itely: editing.
3490 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3492         * scm/lily.scm (lilypond-all): Bugfix: return failed.
3494         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
3496 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3498         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
3499         ly:port-move.  Needs to be stderr-specific on mingw.
3500         Run fixcc.
3502 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3504         * lily/general-scheme.cc (ly:port-move): Remove.
3506         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
3507         windows.
3509         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
3510         variables.  This eliminates the need for a gs.bat wrapper, which
3511         opens a console.
3513         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
3514         * scm/lily.scm (running-from-gui?): 
3515         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
3516         artifact of not compiling with -mwindows.
3518         * scm/editor.scm: Define PLATFORM.
3520 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3522         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
3523         can start to cut & paste lilypond-book fragments.  
3525         * scm/define-music-types.scm (music-descriptions): remove
3526         UntransposableMusic
3528 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3530         * scm/output-ps.scm (glyph-string): remove / before CIDs.
3532 2005-05-20  Graham Percival  <gperlist@shaw.ca>
3534         * Documentation/user/instrument-notation.itely: remove *Engraver.
3536         * Documentation/user/advanced-notation.itely: edit, rearrange.
3538 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3540         * scm/output-ps.scm (glyph-string): take cid? argument. Use
3541         findresource iso. findfont for CID CFF fonts.
3543         * VERSION (PACKAGE_NAME): release 2.5.25
3545         * ly/Welcome_to_LilyPond.ly: add  \version
3547 2005-05-20  Graham Percival  <gperlist@shaw.ca>
3549         * Documentation/user/programming-interface.itely: move
3550         \displayMusic into its own section.
3552         * Documentation/user/basic-notation.itely: finish editing.
3554 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3556         * flower/file-path.cc (find): don't throw away file_name.dir, but
3557         append to it. Fixes \include with directories.
3559         * flower/include/file-path.hh (class File_path): don't derive from
3560         Array<String>.
3562         * flower/include/file-name.hh (class File_name): remove to_str0()
3564         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
3565         Hara_kiri_engraver in separate file.
3567         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
3568         translation went wrong. Fixes vertically translated slurs.
3570 2005-05-19  Graham Percival  <gperlist@shaw.ca>
3572         * Documentation/user/basic-notaton.itely: editing.
3574 2005-05-18  Graham Percival  <gperlist@shaw.ca>
3576         * Documentation/user/macros.itexi, basic-notation.itely:
3577         add @commonprop (commonly used properties) macro.
3579 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3581         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
3583         * scripts/lilypond-book.py (invokes_lilypond): new function
3584         (main): only run fontextract if invokes_lilypond() is true.
3586         * lily/function-documentation.cc (ly_add_function_documentation):
3587         duh, use !=
3589         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
3591         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
3593         * scm/lily.scm (running-from-gui?): lowercase Darwin.
3595         * lily/function-documentation.cc (ly_add_function_documentation):
3596         use scm_hash_table_p() for checking.
3598 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3600         * Documentation/user/advanced-notation.itely (Text scripts):
3601         Change nonexisting @internalsref{Text markup} to @ref{Text
3602         markup}.  Change @internalsref{Text script} to
3603         @internalsref{TextScript}.
3605         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
3607 2005-05-17  Graham Percival  <gperlist@shaw.ca>
3609         * Documentation/user/tutorial.itely, basic-notation.itely,
3610         changing-defaults.itely: remove duplicate cindex entries
3611         that appear on the same page.
3613         * scm/define-grobs.scm: change default padding for TextSpanner.
3615         * Documentation/topdocs/AUTHORS.texi: update email address.
3617         * Documentation/user/global.itely: add info about \include.
3619 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3621         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
3622         when running-from-gui.
3624         * scm/editor.scm (get-editor): Add platform defaults.
3626         * scm/backend-library.scm (postscript->pdf): Typo.
3628 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3630         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
3632         * lily/font-config.cc (init_fontconfig): add warning about cache.
3634 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3636         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
3638 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3640         * lily/horizontal-bracket.cc (print): Take care of the direction
3641         property so brackets above the stave point downwards. 
3643         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
3644         for HorizontalBracket so it doesn't end up within the stave.
3646 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3648         * lily/GNUmakefile (default): Typo.
3650         * scm/lily.scm (PLATFORM): Export.
3652         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
3653         load-font-via-GS, ttftool or fopencookie is broken on windows.
3654         
3655         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
3656         -dSAFER, that is broken on windows.
3658 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3660         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
3661         for FlexLexer.h
3663         * scripts/lilypond-invoke-editor.scm: remove stray -
3665 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3667         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
3668         Fixes deprecation warning.
3670         * flower/include/string.icc (to_string): Only inline if
3671         -DSTRING_UTILS_INLINED.
3673         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
3674         name.  Remove windows comment.
3676         * scm/editor.scm (slashify): New function.
3677         (get-editor-command): Use it.
3678         (get-command-template): Do not alter editor command if
3679         environment value includes `%(file)s' magic.
3681         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
3682         (dissect-uri): Use it.
3683         (unquote-uri): Bugfix.
3685 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3687         * scm/framework-ps.scm (write-preamble): add TTF rule.
3689         * Documentation/topdocs/README.texi (Top): remove note about
3690         xdelta.
3692         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
3693         requirement.
3695         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
3696         function. Figure out where FlexLexer.h lives
3698         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
3699         
3700 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3702         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
3703         with Windows root in file name.
3705         * scm/backend-library.scm (ly:system): Only redirect output (using
3706         system and shell, ugh) if /dev/null is writable.
3708         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
3709         windows icon.
3711         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
3712         on Mingw.
3714         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
3715         click.
3717         * flower/file-path.cc (is_dir, is_file): New function.  Actually
3718         use result of stat when available.
3720         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
3721         absolute file name and root.
3723         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
3725         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
3727         * flower/file-name.cc (slashify): Bugfix, do substitute if no
3728         slashes in file name.
3730 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3732         * Documentation/user/preface.itely (Preface): Run
3733         texinfo-all-menus-update.
3735         * scm/editor.scm (get-editor-command): Bugfix: allow full
3736         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
3738         * Documentation/pictures/lilypond-48.xpm: New file.
3740         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
3742         * ly/Welcome_to_LilyPond.ly: New file.
3744         * lily/main.cc (main): Only identify if we have a terminal.
3746         * scm/backend-library.scm (postscript->png)
3747         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
3748         non-/bin/sh).
3750 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
3752         * Documentation/topdocs/AUTHORS.texi: polish, update.
3754 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3756         * Documentation/user/preface.itely (Notes for version 2.6): new
3757         notes for 2.6
3759         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
3760         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
3761         is not fully contained" warnings.
3763         * lily/slur-scoring.cc (get_bound_info): remove warning.
3765         * lily/staff-symbol-engraver.cc (process_music): start initial
3766         spanner in process_music(). This fixes overrides of StaffSymbol
3767         properties.
3769         * scm/framework-pdf.scm (Module): remove.
3771         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
3773         * lily/ambitus-engraver.cc: formatting cleanups.
3775         * mf/feta-solfa.mf (Module): remove.
3777         * ChangeLog: more details about contributions.
3779 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3781         * lily/align-interface.cc (align_elements_to_extents): warn if
3782         called too early. Fixes: disappearing-staff-lines.ly
3784         * VERSION (PACKAGE_NAME): release 2.5.24
3786 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3788         * stepmake/aclocal.m4: Typo.
3790         * flower/string.cc (substitute): Take two strings or two
3791         characters.  Update callers.
3793 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3795         * flower/file-name.cc (File_name): Slashify.
3797         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
3799         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
3801         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
3803         * configure.in (gui_b): Use it.
3805         * lily/lilypond.rc.in: New file.
3807         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
3809 2005-05-12  Graham Percival  <gperlist@shaw.ca>
3811         * Documentation/user/advanced-notation.itely: edit of Text
3812         section; clarify text scripts vs. text markup.
3814 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3816         * lily/multi-measure-rest-engraver.cc
3817         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
3818         separation items on start. Fixes mm rests in start of score.
3820         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
3821         don't access StaffSymbol if not there.
3822         Fixes: crash-staff-symbol-engraver.ly.
3824         * lily/instrument-name-engraver.cc (class
3825         Instrument_name_engraver): data member first_. Create
3826         InstrumentName on start. 
3828 2005-05-12  Graham Percival  <gperlist@shaw.ca>
3830         * Documentation/user/instrument-notation.itely: add guitar
3831         position.
3833         * Documentation/user/introduction.itely,
3834         Documentation/user/lilypond.tely,
3835         Documentation/user/tutorial.itely: begin pruning
3836         unused (duplicated) cindex entries and misc cleanup.
3838 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3840         * input/test/volta-chord-names.ly: Bring the explanation up to
3841         date.
3843 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
3845         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
3846         Specify `@documentencoding utf-8' for html, ignore warnings.
3848 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
3850         * THANKS: Added bughunters.
3852 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
3854         * lily/main.cc: update help string for `lilypond -H'.
3856         * po/fi.po: update.
3857         
3858 2005-05-10  Graham Percival  <gperlist@shaw.ca>
3860         * Documentation/user/advanced-notation.itely: minor fixes.
3862 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
3864         * scm/editor.scm: New module.
3866         * scm/lily.scm (gui-main): Use it.
3868         * scm/framework-gnome.scm (spawn-editor): Use it.
3870         * scripts/lilypond-invoke-editor.scm: Use it in new script.
3872 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3874         * scm/framework-ps.scm (load-font-via-GS):  new function.
3876         * lily/pango-font.cc (pango_item_string_stencil): add support for
3877         CID keyed font.
3879         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
3881 2005-05-10  Graham Percival  <gperlist@shaw.ca>
3883         * Documentation/user/basic-notation.itely: add @ref.
3885         * Documentation/user/advanced-notation.itely: add example
3886         of 5/8 beaming.
3888 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3890         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
3892         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
3893         going through ps2pdf wrappers.
3895 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
3897         * Documentation/user/instrument-notation.itely: petrucci note
3898         heads: updated docu
3900         * input/regression/note-head-style.ly: updated regression test;
3901         indentation fixes
3903         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
3904         heads as default
3906         * mf/parmesan-heads.mf: minor editing; use musicological names
3907         (rather than optical description) as note head names
3909         * scm/output-lib.scm: complete petrucci heads
3911 2005-05-09  Pal Benko  <benkop@freestart.hu>
3913         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
3914         heads, but bigger)
3916 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3918         * lily/main.cc (main_with_guile): Remove no files check.
3920         * lily/main.cc (ly:usage): Export to Scheme.
3922         * scm/lily.scm (no-files-handler): New function.
3924         * scm/lily.scm (lilypond-main): Use it.
3926         * configure.in (gui_b): Add mbrtowc checking.
3927         Resurrect [utf8/]wchar.h checking.
3929 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3931         * Documentation/user/advanced-notation.itely (Metronome marks):
3932         Add link to the program reference for MetronomeMark
3934         * Documentation/user/lilypond-book.itely (An example of a
3935         musicological document): Correct the example using psfonts 
3937 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
3939         * po/fi.po: update after a lesson how to update entries against
3940         source.
3941         
3942         * po/TODO: document the lesson.
3944 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3946         * configure.in (gui_b): remove wcrtomb checking.
3948         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
3949         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
3951 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3953         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
3954         keep Scheme expressions and strings unmodified when doing the
3955         conversion to postfix notation for slurs and beams. Should
3956         hopefully solve most related conversion problems. 
3958         * Documentation/user/lilypond-book.itely : Clarify and correct how
3959         to call dvips with -h psfonts.
3961 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3963         * Documentation/user/instrument-notation.itely (Entering lyrics):
3964         Typo.  Fixes build.
3966 2005-05-09  Graham Percival  <gperlist@shaw.ca>
3968         * Documentation/user/lilypond-book.itely: document PSFONTS file.
3970         * Documentation/user/lilypond.tely, lilypond-book.itely,
3971         tutorial.itely: change references to 2.5.x to 2.6.x.
3973         * Documentation/user/instrument-notation.itely: clarified \addlyrics
3974         vs \lyricmode.
3976         * Documentation/user/invoking.itely: remove old info about
3977         lilypond-profile.
3979         * Documentation/topdocs/INSTALL.texi: remove old info about
3980         lilypond-profile, add warning about needing international fonts
3981         to build docs.
3983 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3985         * lily/include/grob-info.hh (class Grob_info): make data member
3986         private. Changes throughout.
3988         * input/regression/alignment-order.ly: new file. 
3990         * lily/vertical-align-engraver.cc (acknowledge_grob): read
3991         alignAboveContext and alignBelowContext
3993 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3995         * lily/pfb.cc (LY_DEFINE): add cast.
3997         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
3998         matches .otf
3999         (write-preamble): warn about unknown fonts.
4001         * lily/pfb.cc (Module): new function ly:otf->cff
4003         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
4004         (get_otf_table): new function.
4006 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4008         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
4009         iso. ps2png.
4011 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
4013         * po/fi.po: apply second round of update.
4015 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4017         * scm/x11-color.scm (make-x11-color-handler): don't use
4018         #\sp. Apparently doesn't work on all platforms. 
4020 2005-05-06  Graham Percival  <gperlist@shaw.ca>
4022         * Documentation/user/advanced-notation.itely, putting.itely,
4023         tutorial.itely, global.itely, introduction.itely: really minor fixes.
4025 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4027         * VERSION (PACKAGE_NAME): release 2.5.23
4029 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4031         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
4032         convert to utf-8.
4034         * THANKS: Add translators for this release, convert to utf-8.
4036         * mf/GNUmakefile (MFTRACE_FLAGS):
4037         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
4038         outdir as option (WAS: hardcoded).
4040 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4042         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
4043         finished_span_
4045         * THANKS: add Hans Forbrich.
4047         * Documentation/topdocs/NEWS.tely (Top): document new feature.
4049         * Documentation/user/basic-notation.itely (Staff symbol): document
4050         start/stop staff. Reference to ossia.ly
4052         * input/test/ossia.ly: new example using stop and startStaff.
4054         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
4055         in other words, don't create "|" barline at start of the score.
4056         (start_translation_timestep): don't set whichBar for start of score.
4058         * input/regression/staff-halfway.ly: use new functionality.
4060         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
4061         start and stop staff based on events.
4063         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
4065         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
4067 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4069         * Documentation/user/programming-interface.itely (How markups work
4070         internally ): remove \encoding reference.
4072 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4074         * scripts/convert-ly.py: Attempt to do a smarter update of 
4075         text markups from versions < 1.9.0 with arbitrary nesting.
4077 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
4079         * po/fi.po: convert to utf-8, and update.
4081 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4083         * make/lilypond.suse.spec.in: update from suse 2.4 package.
4085         * lily/*.cc: more <? >? to min/max changes
4087         * lily/include/interpretation-context-handle.hh: rename
4088         Interpretation_context_handle to Context_handle.
4090 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
4092         * input/regression/GNUmakefile (local_delete): use `find` together 
4093         with `xargs` to avoid too long argument-lists in cmd line.
4095 2005-05-04  Graham Percival  <gperlist@shaw.ca>
4097         * Documentation/user/introduction.itely: updates "About this manual".
4099         * Documentation/user/advanced-notation.itely,
4100         invoking.itely: minor fixes.
4102 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4104         * COPYING: add font exception. Update FSF address. 
4106         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
4107         should be taken without child context.
4109         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
4111         * scm/define-markup-commands.scm (triangle): new command, as
4112         robust replacement for unicode Delta/Triangle.
4114 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4116         * ps/music-drawing-routines.ps: add fillp argument.
4118         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
4120         * lily/font-config.cc (init_fontconfig): don't add cff/
4122         * VERSION (PACKAGE_NAME): release 2.5.22
4124         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
4126         * lily/grace-engraver.cc (consider_change_grace_settings): use
4127         is_alias(). Fixes problem with CueVoice grace notes. 
4129         * lily/simultaneous-music-iterator.cc (construct_children): call
4130         Music_iterator::quit() for iterators that start out invalid. This
4131         fixes indefinitely continuing contexts.
4133         * buildscripts/substitute-encoding.py: new file
4135         * Documentation/user/basic-notation.itely (Basic polyphony): fix
4136         missing @end 
4138         * scripts/lilypond-book.py (write_if_updated): print file name.
4140         * Documentation/user/basic-notation.itely (Explicitly
4141         instantiating voices): idem.
4143         * Documentation/user/advanced-notation.itely (Text spanners):
4144         remove stray { } 
4146         * lily/context.cc (default_child_context_name): the default child
4147         is now first in accepts_list_.
4149         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
4150         \defaultchild to all relevant contexts.  This fixes:
4151         drums-pitch.ly.
4153         (Probably also fixes similar problems with ancient
4154         transcriptions getting CueVoices instead of the desired voices.)
4156         * lily/context-def.cc (get_default_child): new function.
4157         (get_accepted): place default child in front of list.
4159         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
4161         * lily/include/context-def.hh (struct Context_def): add
4162         default_accept_
4164 2005-05-03  Graham Percival  <gperlist@shaw.ca>
4166         * scm/define-grobs.scm: remove "remove-first" line, since
4167         the absent property is set to #f anyway.
4169         * Documentation/user/basic-notation.itely,
4170         advanced-notation.itely, instrument-notation.itely: minor
4171         fixes.
4173         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
4175         * Documentation/user/advanced-notation.itely,
4176         changing-defaults.itely: consolidate Text stuff in
4177         advanced notation.
4179         * Documentation/user/global.itely: better docs for \header.
4181         * Documentation/user/putting.itely: new chapter; placeholder
4182         for future expansion.
4184         * Documentation/user/examples.itely: moved "suggestions for
4185         writing LP files" section into putting.itely.
4187         * Documentation/user/lilypond.itely: added new chapter,
4188         fixed the short table of contents.
4190 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4192         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
4193         infinity for unfeasible beams.
4195         * make/lilypond.fedora.spec.in (Group): idem.
4197         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
4199         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
4201         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
4202         fonts directly.
4204         * buildscripts/gen-emmentaler-scripts.py (i): idem.
4206         * mf/GNUmakefile: remove all CFF rules.
4208         * scm/framework-ps.scm (ps-embed-cff): reinstate.
4210         * lily/open-type-font-scheme.cc (LY_DEFINE):
4211         new function ly:otf-font-table-data.
4212         (LY_DEFINE): new function otf-font?
4214 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4216         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
4217         ($(outdir)/Fontmap.lily): idem.
4219         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
4220         for PFAEmmentaler-XXX.pfa. 
4222         * Documentation/user/music-glossary.tely (accidental): NL
4223         translation of accidental.
4225 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4227         * flower/include/international.hh: Bugfix: include "string.hh".
4229         * lily/include/mingw-compatibility.hh: New file.
4231         * flower/include/libc-extension.hh (memrev): Rename from strrev.
4233         * configure.in: Search for mingw wcrtomb library.
4235 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4237         * scripts/convert-ly.py: Bug fix
4239         * Documentation/user/changing-defaults.itely (Common tweaks):
4240         Added example where the context has to be specified explicitly
4241         (MetronomeMark). 
4243 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4245         * scripts/lilypond-book.py (ly_options): set timing to #f for
4246         notime option.
4248         * scripts/convert-ly.py (conv): typo.
4250         * flower/*.cc: remove <? and >?
4251         
4252         * lily/*.cc: remove <? and >?
4254         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
4255         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
4256         editor.
4258 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4260         * lily/part-combine-engraver.cc: add space to variable list.
4262 2005-04-30  Graham Percival  <gperlist@shaw.ca>
4264         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
4265         remove-first to false (matches docs)
4267         * Documentation/user/advanced-notation.itely: corrected docs
4268         concerning remove-first.
4270 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4272         * lily/part-combine-engraver.cc: make sure that the relevant
4273         properties are included in the documentation.
4275 2005-04-28  Graham Percival  <gperlist@shaw.ca>
4277         * Documentation/user/lilypond-book.itely: Bernard's docs
4278         for \betweenLilyPondSystem.
4280 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4282         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
4283         remarks.
4285 2005-04-28  Pal Benko  <benkop@freestart.hu>
4287         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
4288         only on vertical lines of flexa shape, and use a constant
4289         thickness value for horizontal lines (patch slightly modified by
4290         Jürgen Reuter)
4292         * lily/include/mensural-ligature.hh: make 2 comments clearer
4294 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
4296         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
4297         to need_extra_horizontal_space; bugfix: use class scope to avoid
4298         global namespace pollution
4300         * Documentation/user/instrument-notation.itely (ligatures): added
4301         comment on possible future syntax change and how to work around
4303         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
4304         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
4305         intervals (fixes agnus dei example)
4307         * Documentation/user/instrument-notation.itely (white mensural
4308         ligatures): selected a more illustrative example
4310 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
4312         * Documentation/index.html.in: specify utf-8 charset in meta content.
4314 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4316         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
4317         empty 2nd page for single page.
4319         * scm/lily.scm: remove p&c definitions.
4321         * po/zh_TW.po (Module): new translation.
4323         * lily/lily-guile.cc (ly_chain_assoc): remove.
4325         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
4326         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
4328 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4330         * lily/beaming-info.cc: remove infinity_i
4332         * scripts/abc2ly.py (out_filename): fix thinko with \version.
4334 2005-04-26  Graham Percival  <gperlist@shaw.ca>
4336         * Documentation/user/basic-notation.itely,
4337         instrument-notation.itely, advanced-notation.itely,
4338         changing-defaults.itely: minor fixes.  Added docs
4339         for colors to advanced-notation.itely.
4341         * Documentation/user/advanced-notation.itely: fixed compile
4342         problem and added Bernard's x11-color doc patch.
4344 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4346         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
4347         alright this time round.
4349 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4351         * Documentation/topdocs/INSTALL.texi (Top): idem.
4353         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
4355         * VERSION (MAJOR_VERSION): release 2.5.21
4357         * scm/output-ps.scm (grob-cause): bugfix.
4359 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4361         * cygwin/*: Update.
4363         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
4364         stuff.
4366         * scm/output-ps.scm (grob-cause): Bugfix.
4368         * scm/lily.scm (ly:load): Remove x11-color.
4370         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
4371         quote executable, fixes getting version from program --with
4372         --options.
4373         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
4374         $ac_exeect.
4376         * Documentation/user/GNUmakefile: Only build music-glossary with
4377         rendered lilypond snippets during web.
4379 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4381         * po/de.po: update.
4383         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
4385 2005-04-22  Laura Conrad <lconrad@laymusic.org>
4387         * scripts/abc2ly:
4388         second title line append with punctuation dash character;
4389         encode abc2ly python strings in utf-8
4390        
4391 2005-04-21  Laura Conrad <lconrad@laymusic.org>
4393         * scripts/abc2ly fix chords (again)
4395 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
4397         * scm/x11-color.scm: new file
4398         All x11 color names can be accessed with:
4399         #(x11-color 'ColorName),
4400         #(x11-color "ColorName") or:
4401         #(x11-color "color name")
4402         If the x11 color name is not recognised then it defaults
4403         to black
4405         * scm/lily.scm: amended to call scm/x11-color.scm
4407 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4409         * Documentation/user/invoking.itely (Reporting bugs): comment out
4410         reference to online PNG bug repository.
4412 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4414         * lily/translator-scheme.cc (ly:translator-property): Remove.
4415         Update callers.
4417         * lily/context-scheme.cc (ly:context-now): Move from translator.
4418         Update callers.
4420 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4422         * input/regression/grid-lines.ly (skips): refine example.
4424         * scm/define-context-properties.scm
4425         (all-user-translation-properties): doc autoBeamCheck
4427         * input/regression/grid-lines.ly (Module): new file.
4429         * lily/grid-point-engraver.cc (Module): new file.
4431         * lily/grid-line.cc (Module): new file.
4433         * lily/grid-line-span-engraver.cc (Module): new file.
4435         * lily/grid-line-interface.cc (Module): new file.
4437 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4439         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
4440         missing parameter, actualy cdr through list.  Actually return a
4441         list with ENTRY removed (was '()).
4443         * scripts/convert-ly.py: Update.  Print warning if file cannot be
4444         opened.
4445         (do_conversion): Fix printing of continuation comma.
4447         * Documentation/user/advanced-notation.itely (Beam formatting):
4448         Remove refbugs about compound time and mixed duration.
4450         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
4451         modulo moments explicitely.
4453         * lily/moment.cc (operator %): New function.
4455         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
4457         * lily/translator-scheme.cc (ly:translator-now,
4458         ly:translator-property): New function.
4460         * scm/auto-beam.scm (default-auto-beam-check): New function.
4462         * lily/auto-beam-engraver.cc (test_moment): Use it.
4464         * flower/rational.cc (operator %): Bugfix.
4466 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
4468         * scripts/abc2ly: Bugfix
4470 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4472         * python/fontextract.py (write_extracted_fonts): bugfix, too many
4473         %'s on EndFont comment.
4475         * lily/ledger-line-spanner.cc: some more words of explanation.
4477 2005-04-20  John Williams <williams@tni.com>  
4478         
4479         * scripts/lilypond-book.py: htmlquote bugfix.
4480         Allow snippets to be given distinct filenames.
4481         Allow the default alt text to be overridden.
4483 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
4485         * ly/performer-init.ly: Bugfix
4487         * THANKS: Added bughunters.
4489 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4491         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
4493         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
4494         position (was: use modulo measure length).
4496         * configure.in (no gui_b): Remove optional gtk+ requirement.
4498 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4500         * Documentation/user/basic-notation.itely (Pitches): add
4501         LedgerLineSpanner.
4503         * lily/dynamic-engraver.cc (process_music): set right bound to
4504         script if present. Else, do not set.
4505         (acknowledge_grob): only set right bound of finished spanner to
4506         note column if no other bound is set.
4508         * python/lilylib.py (make_ps_images): switch back to png16m.
4509         
4510 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4512         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
4513         writing up to date file.  Add dvips usage suggestion.
4515         * scripts/convert-ly.py: Fix error message.
4516         Print usage if no files on command line.
4517         (usage): Add example usage.
4519         * input/test/compound-time.ly: New file.
4521         * input/test/circle.ly: New file.
4523         * Documentation/topdocs/NEWS.tely: Use them.
4525         * input/test/boxed-stencil.ly: Remove \score.
4527         * buildscripts/mf-to-table.py (base): Add .log dependency.
4529         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
4530         pfa's.  Add .log dependency
4532         * scm/define-markup-commands.scm (lower): New command.
4534         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
4535         make it default.
4537 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4539         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
4540         also to finished cresc as right bound. This fixes:
4541         skip-string-decresc.ly
4543         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
4544         relative_coordinate if extent is empty.
4546         * lily/stem.cc (width_callback): determine correct extent if flag
4547         is not there. This fixes slur-no-flag.ly
4549         * lily/grace-engraver.cc (consider_change_grace_settings): new
4550         function.
4551         (initialize): also consider_change_grace_settings() on
4552         initialization. Fixes large grace notes at start of score.
4554         * lily/break-align-interface.cc (do_alignment): don't translate if
4555         total_extent is empty.
4557         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
4559 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4561         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
4562         with slash.
4564 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4566         * stepmake/aclocal.m4: Remove tfm_path.
4568 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4570         * scm/music-functions.scm (markup-expression->make-markup): fix
4571         bug with cons arguments of markup commands.
4572         (music->make-music): fix music expression property list building
4574 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4576         * aclocal.m4: Massage package names.
4578         * SCons updates.
4580 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4582         * VERSION (PACKAGE_NAME): release 2.5.20
4584         * lily/stem.cc (calc_stem_info): add minimum Y extent of
4585         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
4587         * lily/percent-repeat-engraver.cc (try_music): add measure before
4588         next_moment to future processing moment. Fixes:
4589         percent-repeat-mm-rest.ly
4590         (process_music): don't add moment for 2nd time.
4592         * input/regression/repeat-percent.ly: add mmrests as extra test.
4594         * lily/axis-group-engraver.cc (acknowledge_grob): read
4595         keepAliveInterfaces to decide what to kill.
4597         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
4598         percent-repeat-interface to keepAliveInterfaces. This fixes
4599         percent-repeat-harakiri.
4601 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4603         * SCons updates.
4605 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4607         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
4609         * aclocal.m4: remove --enable-tfm-path configure option
4611         * input/test/ancient-font.ly (lowerStaff): clef name errors.
4613         * scm/backend-library.scm (postscript->png): newline after
4614         finishing command.
4616         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
4617         (LY_DEFINE): ly:paper-score-paper-systems: new function 
4619         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
4621         * lily/score.cc (default_rendering): use Music_output too.
4623         * input/test/chord-names-languages.ly (Module): rename file.
4625         * lily/text-spanner.cc: add bound-padding.
4627         * lily/paper-book.cc (systems): accept Paper_score
4628         iso. Paper_system vector. 
4630         * input/regression/line-arrows.ly: new file.
4632         * lily/paper-score.cc (process): run get_paper_systems() only once.
4634         * lily/line-spanner.cc (line_stencil): add arrows.
4636 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
4638         * lily/line-interface.cc (make_arrow): new function. 
4639         (arrows): idem.
4641 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
4643         * input/test/chord-names-german.ly: update for italian/french
4644         chords.
4645         
4646         * Documentation/user/instrument-notation.itely (Printing chord
4647         names): update.
4649 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4651         * lily/include/paper-score.hh (class Paper_score): remove unused
4652         prototypes.
4654         * lily/book.cc (process): add -COUNT to midi output.
4656         * lily/score.cc (book_rendering): remove outname argument
4657         (book_rendering): return list of Music_outputs. 
4659         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
4661         * lily/book.cc (process): loop over Music_outputs returned from
4662         Score::book_rendering().
4664         * lily/*.cc (width_callback): remove spurious "unused" warnings
4665         for assert (axis==[XY]_AXIS); 
4667         * lily/include/music-output.hh (class Music_output): smobify class.
4669         * lily/include/paper-score.hh (class Paper_score): make members
4670         private.
4672         * lily/performance.cc (process): return #f iso. #<undefined>. This
4673         prevents #<undefined> leaking into GUILE-userspace.
4675 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4677         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
4679 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
4681         * scm/chord-name.scm : support for italian and french
4682         chords names.
4684         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
4685         a space defined by chordPrefixSpacer when the root name is
4686         direclty followed by a prefix.
4688         * ly/engraver-init.ly : chordPrefixSpacer       
4689         * scm/define-context-properties.scm : chordPrefixSpacer
4690         * ly/property-init.ly : italianChords, frenchChords 
4692 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4694         * mf/feta-din.mf: Remove.
4696         * mf/GNUmakefile (fontdir): Bugfix.
4698         * mf/SConstruct: Some updates.
4700         * SConstruct: Require pkg-config.
4701         (test_program): Bugfix for double digit version compares, use
4702         integer (not string-) compare.
4703         Optionally require gs 8.14.
4705         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
4707         * lily/*: s/ifdef HAVE_*/if have/.
4709         * SConstruct (test_lib): New function.  Update pkg-config and some
4710         other requirements.
4712         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
4713         freetype, pangof2t.
4715 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4717         * po/lilypond.pot, ...: Update using bison-CVS.
4719         * python/lilylib.py (make_ps_images): Fixo.
4721 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4723         * python/lilylib.py (make_ps_images): typo.
4725         * configure.in (gui_b): make bison optional.
4727         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
4729 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
4731         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
4732         with one parameter can be defined in a LaTeX file when processed
4733         by lilypond-book this will be evaluated between the systems of
4734         a multi-system score. The parameter is the number of systems processed.
4736 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4738         * python/lilylib.py (make_ps_images): Escape newline.
4740         * Documentation/user/music-glossary.tely: Run
4741         texinfo-all-menus-update.
4743 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4745         * scm/lily-library.scm (old-relative-not-used-message)
4746         (version-not-seen-message): Add input-file-name-location to message.
4748         * lily/parser.yy (lilypond): Add token aliases.
4750         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
4751         not confuse with alteration.
4752         (alteration): Add.
4754 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4756         * python/lilylib.py (make_ps_images): use -dEPSCrop
4758         * VERSION (PACKAGE_NAME): release 2.5.19 
4760         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
4761         only put xrefs in info documentation.
4763         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
4764         .pdf rule to tex-rules.make.
4766         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
4767         from -systems.* output.
4769         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
4770         directly, remove -$(PAGESIZE) target.
4772         * input/test/embedded-postscript.ly: update.
4774 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4776         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
4778         * Documentation/user/changing-defaults.itely (Font selection):
4779         document font-name.
4781         * input/regression/font-name.ly: show Pango fonts for
4782         font-name. Update example. 
4784         * lily/pango-select.cc (properties_to_pango_description): don't
4785         convert symbol font-size to number, but use to lookup.
4787         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
4789         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
4790         (NAME . FILE-NAME) tuples for font descriptions. 
4791         (write-preamble): display BeginFont DSC comments.
4793         * python/fontextract.py (write_extracted_fonts): new file. Extract
4794         font resources from a PS file.
4796         * scripts/lilypond-book.py (option_definitions): --psfonts option.
4797         (Compile_error.process_include): do_file returns chunks.
4799         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
4801         * make/lysdoc-targets.make: .texi is .PRECIOUS
4803         * scripts/lilypond-book.py (write_if_updated): new function.
4805 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4807         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
4809 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4811         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
4813         * input/regression/markup-syntax.ly: remove \score.
4815         * scm/define-markup-commands.scm (draw-circle): add fill argument
4817         * scm/stencil.scm (make-circle-stencil): add fill argument
4819         * ps/music-drawing-routines.ps: add fill argument.
4821         * ly/performer-init.ly: add CueVoice to MIDI too.
4823         * ps/music-drawing-routines.ps: new routine BeginEPSF /
4824         EndEPSF.
4826         * input/regression/markup-eps.ly: new file.
4828         * scm/framework-ps.scm (write-preamble): change order: vars should
4829         be inited before procedures.
4831         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
4832         for EPS files.
4834         * scm/define-markup-commands.scm (epsfile): add epsfile command.
4836 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4838         * configure.in (gui_b): add check for ghostscript 8.15
4840 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4842         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
4843         start of line. Fixes cresc-after-newline.ly
4845         * lily/source-file.cc (file_line_column_string): use get_column().
4847 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4849         * lily/source-file.cc (get_column): utf-8 support for column numbers.
4851 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4853         * lily/*: use message () iso progress_indication () for messages.
4854         Revise/uniformise user messages.
4856         * flower/warn.cc (progress_indication): New function.
4857         (message): Use it.  Fixes newline problems.
4859         * config.make.in (webdir): Sort out install dirs.
4861         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
4863         * python/lilylib.py (command_name): Bugfix.
4864         (make_ps_images):
4866 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
4868         * lily/main.cc: --help says what types of backends are availabe
4870 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4872         Fix ./VERSION dependency, and without need to reconfigure.
4874         * lily/main.cc (setup_paths): Update.
4876         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
4878         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
4880         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
4881         Add \line for some simplistic cases.
4883         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
4885 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4887         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
4888         to compile LY files (useful for adding eg. "-I" args)
4889         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
4890         2Gnome command for gnome backend.
4891         (LilyPond-command-formatgnome): call the 2Gnome command. key
4892         binding: C-c C-g
4894 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4896         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
4897         depend on all PNG images.
4899 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4901         * GNUmakefile.in: Bugfix: also link .map files.
4903 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4905         * scm/music-functions.scm (music->make-music): generate 
4906         a (make-music ...) sexpr from a music expression.
4907         (display-scheme-music): use guile pretty printer to display the
4908         make-music sexpr.
4910 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4912         * ly/engraver-init.ly: reindent.
4913         Add CueVoice.
4915         * scm/music-functions.scm (music-pretty-string): handle moments
4916         too.
4917         (music-pretty-string): only print non-empty lists.
4918         (cue-substitute): create CueVoice context, which has smaller type.
4920         * lily/moment-scheme.cc (LY_DEFINE): new methods
4921         ly:moment-grace-{numerator,denominator}
4923         * lily/context-handle.cc: remove quit() method. 
4925         * lily/font-config.cc (init_fontconfig): be verbose about font path.
4926         (init_fontconfig): success is 0, not !0
4928 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4930         * mf/feta-nummer-code.mf (code): add plus glyph.
4932         * lily/tie.cc (print): idem.
4934         * lily/slur.cc (print): don't use thickness property for
4935         slur shape-thickness.
4937         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
4938         while adding stencils.
4940         * scm/define-markup-commands.scm (with-color): with-color markup
4941         command.
4942         (whiteout): new markup command 
4943         (filled-box): new markup command
4945 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4947         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
4948         test for PDF docs.
4950         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
4951         PFAAybabtu-Regular.  Fixes feta font in PDFs.
4952         
4953         Notes for tetex-3.0 make web:
4954            psclean.map: s/uhv8a/uhvr8a/
4955            config.ps add:
4956                 p +psfonts_t1.map
4957                 p +psclean.map
4958                 p +typeface.map
4960 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4962         * scm/music-functions.scm (music-pretty-string): fix bug with
4963         string argument.
4965 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
4967         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
4969 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4971         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
4972         only process options if they're there.
4973         (write_file_map): add version-seen? to snippet-map.ly
4975 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
4977         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
4978         formatting cleanups.
4980         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
4981         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
4983 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4985         * scm/framework-ps.scm (ps-font-command): don't hash, just use
4986         name directly.
4988         * lily/main.cc (setup_paths): either add mf/out to search path or 
4989         fonts/{otf,type1,etc}
4990         
4991         * lily/font-config.cc (init_fontconfig): either add mf/out to
4992         FontConfig or fonts/{otf,type1,etc}
4994         * GNUmakefile.in: don't put mf/ link in share/ dir.
4996         * lily/staff-spacing.cc: move same-direction-correction to
4997         note-spacing-interface
4999         * scm/lily.scm (lilypond-main): use variable argument count for
5000         exception handler.
5002         * lily/font-config.cc (init_fontconfig): add operator pacification
5003         message.
5005         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
5007         * buildscripts/gen-emmentaler-scripts.py (i): generate
5008         PFAEmmentaler as well.
5010         * scm/framework-ps.scm (munge-lily-font-name): new function
5011         (write-preamble): hack: insert PFA equivalent of CFF into
5012         .PS. This makes LilyPond output printable on normal PS printers
5013         again.
5015         * buildscripts/gen-emmentaler-scripts.py (i): generate
5016         PFAEmmentaler.pfa aswell.
5018 2005-04-06  John Williams <williams@tni.com>  
5019         
5020         * scripts/lilypond-book.py: refactor the compose_ly procedure.
5021         
5022 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5024         * scm/page-layout.scm (default-page-make-stencil): always combine
5025         the header stencil, even if empty. This prevents the body text to
5026         reach up to the margins.
5028         * po/rw.po (Module): new file, for Kinyarwanda.
5030         * input/test/spacing-optical.ly (Module): new file.
5032         * lily/staff-spacing.cc: add same-direction-correction
5034 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5036         * Documentation/user/introduction.itely (Engraving): Comment-out
5037         non-existent file.
5039 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5041         * scm/define-grob-properties.scm (all-user-grob-properties): add
5042         same-direction-correction
5044         * VERSION: release 2.5.18
5046 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5048         * lily/grob.cc (mark_smob): Check pscore->layout_ before
5049         dereferencing.  Fixes make web.
5051         * lily/midi-stream.cc: Handle unwritable midi file.  Include
5052         errno.h.
5054         * Documentation/user/: Fix links.
5056 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5058         * lily/text-interface.cc (Module): rename from text-item.cc
5060         * input/regression/apply-output.ly (texidoc): function naming fix.
5062         * lily/time-signature-performer.cc (derived_mark): new function.
5064         * lily/lily-parser-scheme.cc:  print mapped file name for progress
5066         * scripts/lilypond-book.py (find_linestarts): new function.
5067         (find_toplevel_snippets): keep track of line numbers.
5069         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
5070         all key changes.
5072         * ly/declarations-init.ly (partCombineListener): use
5073         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
5075         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
5077 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5079         * lily/text-item.cc: Fix link.
5081         * Documentation/user/changing-defaults.itely (Changing defaults):
5082         Fix programs reference links.
5084         * Documentation/user/music-glossary.tely: Convert to utf-8.
5086 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5088         * make/lilypond-vars.make: remove TEXMF from variables.
5089         remove DEB_BUILD pk font variables.
5090         remove GUILE_LOAD_PATH
5091         remove TeX memory vars.
5093 2005-04-04  Werner Lemberg  <wl@gnu.org>
5095         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
5097 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5099         * ps/lilyponddefs.ps: remove reencode-font
5101         * lily/simple-spacer.cc (add_columns): also compare
5102         directly. Column rank doesn't distinguish between broken and
5103         unbroken columns. This fixes large spaces before time sig changes.
5105         * Documentation/user/point-and-click.itely: document ly:set-option.
5107         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
5108         point_and_click_global is set.
5110         * lily/scm-option.cc (LY_DEFINE): add point-and-click
5111         ly:set-option argument.
5113 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5115         * GNUmakefile.in: Include symlinks in webball.
5117         * Documentation/user/GNUmakefile (source-links): Add symlinks to
5118         source dir for split and non-split manuals.
5120         * Documentation/user/*y: Fix @uref/@inputfile links for
5121         split/non-split HTML documents.
5123         * Documentation/user/GNUmakefile (local-WWW): Do not generate
5124         .ps.gz.
5125         
5126 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5128         * GNUmakefile.in: Add newline.
5130 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
5132         * tex/lilyponddefs.tex: use color instead of xcolor
5133         * scm/output-tex.scm: minor editing
5135 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5137         * scm/music-functions.scm (display-scheme-music): pretty printer
5138         for music expressions.
5140 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5142         * buildscripts/install-info-html.sh (index_file): Fix link.
5144 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5146         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
5148         * Documentation/index.html.in: Add size estimates with some big pages.
5150         * Documentation/user/tutorial.itely (Running LilyPond for the
5151         first time): Add/replace some @rglos links.  TODO: add more
5152         @rglos links in tutorial, test non-intrusiveness (.css).
5154         * stepmake/bin/add-html-footer.py (do_file): Remove info's
5155         annoying's indication of referencing external document.
5157         * Documentation/user/GNUmakefile: Split version of glossary too.
5158         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
5159         links, not only for html.
5161         * Documentation/user/introduction.itely: Fix some links for other
5162         than html, do not use `here' as link name.
5164 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5166         * scm/documentation-generate.scm (string-append): Fix @usermanref,
5167         @glossaryref.
5169 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5171         * scm/page-layout.scm (default-page-make-stencil): only add header
5172         if existing and not empty. Fixes spurious programming error.
5174         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
5176 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
5178         * scm/output-tex.scm: implement {re,}setcolor
5179         * tex/lilyponddefs.tex: use color package
5181 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5183         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
5184         additions to website.
5186         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
5188         * Documentation/user/macros.itexi: Fix @usermanref html links in
5189         split documents: use @inforef.
5191 2005-03-30  Graham Percival  <gperlist@shaw.ca>
5193         * Documentation/user/programming-interface.itely: minor fix.
5195         * Documentation/user/advanced-notation.itely: added info to
5196         Metronome markings.
5198 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5200         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
5201         use box-stencil.  Remove y-padding argument.
5202         (make-stencil-circler): New function.
5204         * buildscripts/lilypond-words.py (F): 
5205         * elisp/SConscript (a): 
5206         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
5207         * vim/SConscript (a): 
5208         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
5210         * lily/general-scheme.cc: Build fix.
5212         * scm/markup.scm:
5213         * input/regression/markup-scheme.ly: 
5214         * input/regression/markup-syntax.ly: Drop 'new-' from name.
5216         * scm/stencil.scm (make-circle-stencil): New function.
5218         * scm/define-markup-commands.scm (draw-circle): Use it.  New
5219         name (was cicle).  Update callers.
5220         (circle): New markup command, similar to box.
5222         * scm/stencil.scm (circle-stencil): New function.
5224 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
5226         * configure.in: Detect libutf8/wchar.h variant.
5228         * stepmake/aclocal.m4: Modify shared size test.
5230 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5232         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
5234 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5236         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
5237         
5238         * VERSION (PACKAGE_NAME):  release 2.5.17
5240 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5242         * scm/backend-library.scm (postscript->png): Fix comment and png
5243         message.
5245         * GNUmakefile.in (link-tree): Fix locales.
5247 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5249         * lily/stencil-scheme.cc (LY_DEFINE): change to
5250         ly:stencil-aligned-to, non mutating.
5252         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
5254         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
5256         * lily/quote-iterator.cc (derived_mark): call
5257         Music_wrapper_iterator::derived_mark() too.
5259         * lily/grace-engraver.cc (derived_mark): change signature, add
5260         const.
5262 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5264         * SConstruct (symlink): 
5265         * GNUmakefile.in (link-tree): Add scripts to prefix.
5267         * lily/general-scheme.cc (ly:effective-prefix): New function.
5269         * scm/backend-library.scm (postscript->png): Use it.
5271 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5273         * lily/paper-score.cc (process): don't delete grobs after
5274         producing stencils. 
5276         * scm/part-combiner.scm (determine-split-list): switch off
5277         debugging info.
5279         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
5280         if available.
5282         * scm/define-context-properties.scm
5283         (all-user-translation-properties): add stringNumberOrientations.
5285         * lily/new-fingering-engraver.cc (position_scripts): make generic,
5286         so fingering and string-numbers are separately controlled.
5288 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5290         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
5291         not use debugging.
5293 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5295         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
5297         * config.hh.in: add HAVE_FONTCONFIG.
5299         * Documentation/user/instrument-notation.itely (String number
5300         indications): new node.
5302         * input/regression/new-markup-syntax.ly (texidoc): add circle.
5304         * lily/new-fingering-engraver.cc (add_string): new function. 
5305         (acknowledge_grob): accept string-number-event as well.
5307         * scm/define-markup-commands.scm (circle): new markup command.
5309         * scm/output-lib.scm (print-circled-text-callback): new function.
5311         * lily/GNUmakefile: move ifeq after include stepmake.make.
5313 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5315         * config.make.in (HAVE_LIBKPATHSEA_SO):
5316         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
5318         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
5319         add KPATHSEA_LIBS.
5321         * debian/watch: 
5322         * debian/control: Update.
5324 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5326         * input/test/title-markup.ly (spaceTest): remove.
5328         * input/test/embedded-tex.ly (Module): remove.
5330         * input/test/music-box.ly: use 'name property, not ly:music-name.
5332         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
5334         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
5336 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5338         * Documentation/topdocs/INSTALL.texi (Top): Remove information
5339         about xdeltas.  Add information about CVS.
5341         * scm/lily.scm (lilypond-main): Fix invocation of handler,
5342         gracefully handle failed files.
5344         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
5346         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
5347         small fixes.
5349         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
5350         No unnecessarily specific i18n messages.  Remove stray `1'.
5352 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5354         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
5355         documentencoding
5357         * scm/documentation-lib.scm (texi-file-head): set utf-8
5358         documentencoding.
5360         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
5361         Delta, not the Symbol one. 
5363         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
5364         for the .map file.
5366         * Documentation/topdocs/INSTALL.texi (Top): add running
5367         requirement as compilation requirement.
5369 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5371         * buildscripts/mutopia-index.py (headertext): add h1 header and
5372         utf-8 charset meta field.
5374         * input/GNUmakefile: prune example list.
5376         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
5377         options.
5379         * lily/slur-scoring.cc (get_base_attachments): only look at stem
5380         extent for visible stems.
5382         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
5384 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5386         * Documentation/topdocs/INSTALL.texi (Top): Updates.
5388         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
5390 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5392         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
5393         pass inf/nan into slur scoring.
5395         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
5396         page.
5398         * scripts/abc2ly.py (dump_voices): use alphabet().
5400 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
5401         
5402         * mf/GNUmakefile (depth): use $(FONTFORGE). 
5404 2005-03-27 Matthias Neeracher <neeracher@mac.com>
5405         
5406         * flower/include/virtual-methods.hh: simplify. Patch by
5408 2005-03-25  John Williams <williams@tni.com>  
5410         * scripts/lilypond-book.py (main): add png for HTML too, guess
5411         only if necessary. 
5413 2005-03-25  Graham Percival  <gperlist@shaw.ca>
5415         * Documentation/topdocs/INSTALL.texi: now recommends
5416         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
5418         * Documentation/user/basic-notation.itely,
5419         Documentation/user/tutoria.itely: warn about
5420         only one (phrasing) slur at once.
5422 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
5424         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
5426 2005-03-23  Graham Percival  <gperlist@shaw.ca>
5428         * Documentation/user/basic-notation.itely: fixed info about
5429         ending a (de)cresc.
5431         * Documentation/user/lilypond-book.itely: fixed
5432         lilypond-book filter example and warned about not doing
5433         --filter and --process at the same time.
5435 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5437         * lily/parser.yy (bass_number),
5438         Documentation/user/instrument-notation.itely (Figured bass): 
5439         Add the possibility to use text markup in figured bass. 
5441 2005-03-19  Graham Percival  <gperlist@shaw.ca>
5443         * Documentation/user/global.itely: added info about naming
5444         identifiers and breakbefore.
5446         * Documentation/user/invoking.itely: added info about batch
5447         processing files with convert-ly, removed references to TeX
5448         in the jail section.
5450         * Documentation/user/examples.itely: possibly fixed piano
5451         dynamics.
5453         * Documentation/user/advanced-notation.itely: added info
5454         about removing other types of Staff.
5456         * Documentation/user/instrument-notation.itely: possibly
5457         fixed piano staff line switch.
5459         * Documentation/user/changing-defaults.itely: added info
5460         about using normal font in titles.
5462 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5464         * VERSION (PATCH_LEVEL): release 2.5.16
5466         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
5467         explicitly.
5469 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5471         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
5472         whitespace.
5474         * python/lilylib.py (make_ps_images):
5475         * scm/backend-library.scm (postscript->pdf, postscript->png):
5476         Quote file name.  Use format rather than string-append juggling.
5478 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5480         * python/lilylib.py (make_ps_images): add x to -g argument. 
5482         * lily/key-performer.cc (create_audio_elements): don't use
5483         scm_eval_string. Check for minor 3rd directly.
5484   
5485         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
5486         (sarabandeCelloGlobal): key is D minor, not F major.
5488 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5490         Fix truncated --png output (Peter Danenberg).
5491         
5492         * python/lilylib.py (make_ps_images):
5493         * scripts/ps2png.py (copyright): Grok --papersize option.
5495         * scm/backend-library.scm (postscript->png): Add parameter
5496         PAPERSIZE.  Update callers.
5498         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
5499         Fixes symbol placement.
5501         * lily/spanner.cc: 
5502         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
5503         <libc-extension.hh>).
5505 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5507         * Nitpick run.
5509         * buildscripts/fixcc.py: Update.
5511         Builddir run fixes.
5513         * HACKING (datadir): Add VERSION.
5515         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
5516         higher up.
5518 2005-03-15  Werner Lemberg  <wl@gnu.org>
5520         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
5521         diagonal stem doesn't become thinner.
5523 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5525         * buildscripts/fixcc.py: Fixes (Werner).
5527 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5529         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
5530         Emmentaler/Aybabtu.
5532         * GNUmakefile.in: fix lilypond-words path.
5534         * po/tr.po: update to 2.3.21
5536         * lily/new-fingering-engraver.cc (position_scripts): take priority
5537         from head position.
5539         * input/regression/finger-chords-order.ly (texidoc): new file.
5541 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5543         * make/ly-rules.make: 
5544         * stepmake/aclocal.m4: 
5545         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
5547         * buildscripts/fixcc.py (rules): Leave space after operator.
5549 2005-03-14  Werner Lemberg  <wl@gnu.org>
5551         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
5552         top of the glyph with smooth curve.
5554 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5556         * Documentation/user/global.itely (Page layout): remove
5557         printpagenumber.
5559 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
5561         * input/regression/mensural-ligatures.ly: new file (with examples
5562         compiled by Pal Benko).
5564         * Documentation/user/instrument-notation.itely: Bugfix: yet some
5565         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
5566         musicglyph access.  Many small beautifications in ancient
5567         examples.
5569         * input/test/divisiones.ly: fixed indentation; small
5570         beautifications
5572         * ly/engraver-init.ly: added FIXME comment
5574         * scripts/lilypond-book.py,
5575         Documentation/user/lilypond-book.itely: added music fragment
5576         option "packed" to lilypond-book
5578         * Documentation/user/instrument-notation.itely: Bugfix: added
5579         missing LedgerLineSpanner color setting in several places.  Added
5580         music fragment option "packed" to VaticanaContext example.
5582 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5584         * scm/define-grobs.scm (all-grob-descriptions): switch off
5585         Hyphen_spanner::set_spacing_rods 
5587         * lily/lyric-hyphen.cc (print): add padding between syllable and
5588         hyphen.
5589         (print): shorten hyphen in tight situations (determine using
5590         minimum-length)
5592         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
5593         0.4pt.
5595 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5597         * ly/titling-init.ly (bookTitleMarkup): Refinements.
5599         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
5600         header/footer markings for regression-test.
5602         * scm/backend-library.scm (output-scopes, header-to-file): Move
5603         from framework-tex.scm.
5605         * scm/framework-ps.scm (output-framework)
5606         (output-preview-framework):
5607         * scm/framework-eps.scm (output-classic-framework)
5608         (output-framework): Use it.  Fixes collated files.
5610 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5612         * input/sakura-sakura.ly: 
5613         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
5615         * buildscripts/guile-gnome.sh: Update.
5617         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
5619         * mf/aybabtu.pe.in: Capitalize Aybabtu.
5621 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5623         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
5624         culprit: always exit the loop if we find a rod, even if it has
5625         distance < 0. 
5627         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
5628         algorithm.
5630         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
5631         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
5633         * scm/output-svg.scm (dashed-line): new  function body.
5634         
5635         * GNUmakefile.in: create .htaccess.
5637 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5639         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
5641 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5643         * VERSION (PACKAGE_NAME): release 2.5.15
5645         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
5647         * scm/framework-svg.scm (output-framework): put scaling in
5648         document header. Apply scaling only once.
5649         (output-framework): dump page size in px, not mm. 
5651         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
5652         from font-size.
5654         * lily/paper-outputter-scheme.cc (LY_DEFINE):
5655         ly:outputter-output-scheme, new function.
5657         * scm/output-svg.scm (pango-description-to-svg-font): new function
5659 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5661         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
5662         target.
5664         * input/typography-demo.ly: new file.
5666 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5668         * Documentation/user/global.itely (File structure): Add markup blocks
5669         to toplevel expressions.
5670         (Multiple movements, Creating titles): Add markup blocks.
5672         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
5673         <libc-extension.hh>).
5675         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
5677         * flower
5678         * lily
5679         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
5681 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5683         * lily/accidental.cc: special bboxes for natural. 
5685         * mf/feta-toevallig.mf: make stems heavier.
5687         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
5688         texts as well.
5690         * mf/feta-klef.mf: revise. 
5692         * mf/feta-schrift.mf: make thinning of accent less pronounced.
5694         * mf/feta-klef.mf: add rounded curve at top. 
5695         make thinnib a little heavier.
5697 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5699         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
5701         * buildscripts/fixcc.py: New file.
5703         * input/regression/utf8.ly: Update Debian font description.
5705 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5707         * stepmake/aclocal.m4: Fix test.
5709 2005-03-09  Graham Percival  <gperlist@shaw.ca>
5711         * Documentation/user/invoking.itely: added Sebastino Vigna's
5712         docs for the --jail option.
5714 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5716         * lily/stem.cc (print): only produce stemlets if there are no
5717         noteheads on this stem.
5719         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
5720         don't crash on stemlet (visible stem without heads).
5722         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
5723         unbroken situations. 
5725         * scm/output-lib.scm (center-invisible): new function.
5727         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
5728         wishes to determine loose column space.
5730         * lily/font-config.cc (init_fontconfig): add
5731         fonts/{otf,type1,cff}  to path.
5733         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
5735         * mf/GNUmakefile (Module): install all fonts under otf/
5737         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
5738         replace /fonts/otf/ by /ps/ 
5740         
5741 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5743         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
5745         * lily/book.cc (process): Oops, add score_.header_.
5747         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
5749         * lily/parser.yy: Handle toplevel and book texts as score.
5751         * scm/page-layout.scm (default-page-make-stencil):
5752         Bugfix: (page-properties rename.
5754         * scm/backend-library.scm (ly:system): Typo.
5756 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5758         * stepmake/stepmake/executable-targets.make (installexe): don't
5759         strip installed executables
5761         * lily/font-select.cc (get_font_by_design_size): revert
5762         pango_description_string as well.
5764         * lily/system.cc (set_loose_columns): put loose column just left
5765         of next column.
5767         * lily/include/group-interface.hh (extract_grob_array): rename
5768         from Pointer_group_interface__extract_grobs
5770         * input/regression/ledger-line-minimum.ly (texidoc): new file.
5772         * lily/ledger-line-spanner.cc (set_spacing_rods): new
5773         function. Keep ledgered note heads at a minimum distance.
5774         Introduce minimum-length-fraction
5775         (print): introduce length-fraction property.
5777 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5779         * tex/GNUmakefile: remove latin1.enc rules.
5781 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5783         * scm/titling.scm: Typo.
5785         * input/regression/score-text.ly: Really add.
5787         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
5789 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5791         * lily/open-type-font-scheme.cc:  new file.
5793 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5795         * scm/titling.scm (layout-extract-page-properties): Rename from
5796         page-properties.  Update callers.
5798         * lily/lexer.ll (Lily_lexer):
5799         * lily/parser.yy: Junk lyric_markup state.
5801         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
5803         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
5804         Add texts parameter.
5806 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5808         * lily/lexer.ll (lyric_markup): New mode.
5809         (Lily_lexer::push_lyric_markup_state): New method.
5810         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
5812         * lily/parser.yy (book_body):
5813         (toplevel_expression): Grok \markup texts.
5815         * lily/score-scheme.cc (ly:music-scorify): 
5816         * scm/lily-library.scm (collect-music-for-book): Take texts
5817         parameter.
5819         * lily/score.cc (texts_): New member.
5821         * lily/paper-book.cc (systems): Format score texts.
5823         * score-text.ly: New file.
5825         * ttftool/SConscript:
5826         * kpath-guile/SConscript: New file.
5828         * lily/SConscript:
5829         * SConstruct: Update.
5831 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5833         * VERSION (PACKAGE_NAME): release 2.5.14
5835 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5837         * lily/main.cc: Add dummy xgettext markers.
5839 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5841         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
5842         requirements
5844         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
5845         executable is < 40k
5847         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
5848         hack.
5850 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5852         * flower/libc-extension.cc:
5853         * flower/include/libc-extension.hh: [Open]BSD simply cast
5854         cookie/funopen declarations.
5856         * stepmake/aclocal.m4: Check for libkpathsea.so.
5858         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
5859         dl_kpse_find_file.
5861 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5863         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
5864         (open_library): alternative for static library.
5866 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5868         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
5870         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
5872         Drop run-time dependency on teTeX.
5874         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
5876         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
5877         KPATHSEA_LIBS in LIBS.
5878         (STEPMAKE_DLOPEN): New function.
5880         * lily/font-config.cc (init_fontconfig): Use dir for directory,
5881         not path.
5883         * flower/file-path.cc (directories): Rename from paths, as this
5884         return an array of directories (a single path).
5886 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5888         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
5890         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
5891         new ly:kpathsea-find-file
5893         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
5895         * kpath-guile/GNUmakefile: new file
5897         * buildscripts/gen-emmentaler-scripts.py (i): generate
5898         emmentaler-X.fontname as well.
5900         * buildscripts/ps-embed-cff.py: new script
5902         * scm/lily-library.scm: remove ps-embed-cff.
5904         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
5905         font loading. 
5907         * scm/font.scm (add-music-fonts): load dynamics/numbers through
5908         fontconfig as well.
5910         * lily/font-config.cc (init_fontconfig): add cff/ too.
5912         * ly/generate-embedded-cff.ly: capitalize.
5914         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
5915         so as to register the pango font.
5917         * lily/font-config.cc (init_fontconfig): add
5918         prefix/{otf,type1,mf/out} to fontconfig path.
5920         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
5921         overrides all. 
5923         * configure.in (gui_b): remove ec mftrace check
5925         * config.hh.in: use lilypond-Major.Minor as data directory.
5927         * scm/framework-ps.scm (dump-page): use output-units for landscape.
5929         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
5930         name.
5932 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5934         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
5935         error messages.
5937         * flower/libc-extension.cc:
5938         * flower/include/libc-extension.hh: [Open]BSD fixes for
5939         cookie/funopen declarations.
5941 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5943         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
5944         emmentaler.
5946         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
5947         lcrm10.
5949         * scm/define-markup-commands.scm (fontsize): new markup
5950         command. Also set baseline-skip
5952 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
5953         
5954         * lily/main.cc (do_chroot_jail): paranoia security for webserver
5955         use.
5957 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5959         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
5961         * lily/pdf.cc: remove PDF related files
5963 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5965         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
5966         <hamamatsu@gmx.de>
5968 2005-03-05  Graham Percival  <gperlist@shaw.ca>
5970         * Documentation/user/advanced-notation.itely: first draft
5971         of reorg done.
5973         * Documentation/user/global.itely: fixed (sub)section
5974         bits of MIDI.
5976 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5978         * cygwin/mknetrel (extras): Bufix (Bertalan).
5980         * Documentation/user/basic-notation.itely (Chords): @ref fix.
5981         * Documentation/user/instrument-notation.itely (Introducing chord
5982         names): Compile fix: must have unique name.
5984 2005-03-02  Graham Percival  <gperlist@shaw.ca>
5986         * Documentation/user/instrument-notation.itely: reorg.
5988 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5990         * scm/output-gnome.scm:
5991         * scm/output-svg.scm: Fix font scaling.
5993 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5995         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
5996         what link to use best.
5998         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
5999         * Documentation/user/tutorial.itely (Automatic and manual beams):
6000         Fix @ref.
6002         * lily/tweak-registration.cc (replace_grob_tweak): New function.
6003         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
6004         * scm/framework-gnome.scm (tweak): Use it.
6006 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6008         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
6010         * scm/output-ps.scm (white-text): reinstate white-text
6012 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6014         * scm/output-ps.scm (offset-add): Remove.
6016         * scm/lily-library.scm (offset-flip-y): New function.
6017         * scm/framework-gnome.scm (tweak): Use it.
6019         * scm/output-gnome.scm (grob-cause): Add parameter.
6021         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
6022         * scm/output-ps.scm (url-link): Move.
6023         (white-text): Warn user about brokenness.
6025         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
6026         wrt ghostscript.
6028 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6030         * lily/slash-repeat-engraver.cc (try_music): always make slashes
6031         if body length smaller than measure length.
6033         * scm/define-markup-commands.scm (with-url): oops. use Y extent
6034         for Y.
6036         * ly/titling-init.ly (tagline): put default tagline in \paper
6038 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6040         * lily/kpath.cc: 
6041         * lily/pdf.cc (Pdf_file): Use more generic error messages.
6043         * scm/lily-library.scm (version-not-seen-message): New function.
6044         * ly/init.ly: Use it.
6046         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
6047         breaks as progess.
6049         * scripts/lilypond-book.py (do_process_cmd): Do not lump
6050         whitespace with l10n message.
6052         * scm/framework-tex.scm (convert-to-ps):
6053         (convert-to-dvi): Do not use overly specific l10n messages.
6055         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
6057         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
6058         merge stderr with stdout.  
6060 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6062         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
6063         Neeracher).
6065 2005-02-29  Graham Percival  <gperlist@shaw.ca>
6067         * Documentation/user/instrument-notation.teily: moved
6068         \arpeggio to Basic.
6070         * Documentation/user/advanced-notation.itely: Articulation to
6071         Basic, a bunch of stuff from Basic moved to Advanced.
6073         * Documentation/user/basic.itely: swapped various sections,
6074         reorganized Basic.
6076 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6078         * flower/memory-stream.cc: 
6079         * flower/libc-extension.cc: Remove obsolete #undefs.
6081         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
6082         more carefully.
6084 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6086         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
6087         dependency.
6089         * VERSION (PACKAGE_NAME): release 2.5.13
6091         * GNUmakefile.in (web-ext): don't ship ps.gz
6093         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
6094         stdout
6096 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6098         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
6099         without libintl.  Now it compiles too.
6101 2005-02-28  Graham Percival  <gperlist@shaw.ca>
6103         * Documentation/user/basic-notation.itely,
6104         instument-notation.itely, advanced-notation.itely:
6105         split up contents of notation.itely.
6107         * Documentation/user/notation.itely: file removed.
6109         * Documentation/user/invoking.itely, converters.itely:
6110         moved convert-ly info to invoking.itely.
6112         * Documentation/user/global.itely, changing-defaults.itely,
6113         sound-output.itexi: moved global settings, file layout, and
6114         sound into global.itely.
6116         * Documentation/user/sound-output.itexi: file removed.
6118         * Documentation/user/lilypond.tely: removed links to
6119         notation.itely and sound.itely.
6121 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6123         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
6125         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
6127         * THANKS: add sponsor.
6129         * scm/define-markup-commands.scm (with-url): new markup command.
6131         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
6132         tagline.
6133         
6134         * scm/output-tex.scm (url-link): stub.
6136         * scm/output-ps.scm (url-link): new function.
6138         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
6139         ly:set-point-and-click
6141 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6143         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
6144         based on pdf-viewer setting.
6146         * scm/framework-ps.scm (write-preamble): Find and set preferred
6147         pdf-viewer.
6149 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6151         * Documentation/user/point-and-click.itely: update for PDF point &
6152         click.
6154         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
6155         editors based on EDITOR setting.
6157 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6159         * scm/*: Oops, more grand 2005 replace bits.
6161 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6163         * ps/music-drawing-routines.ps: new routine: insert PDF mark
6165         * scm/output-ps.scm (grob-cause): point & click support for
6166         PostScript
6168 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6170         * lily/input-scheme.cc (LY_DEFINE): rename to
6171         ly:input-file-line-column
6173 2005-02-26  Graham Percival  <gperlist@shaw.ca>
6175         * Documentation/user/examples.itely: small fix from Steve Doonan.
6177         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
6179         * THANKS: added Yuval Harel.
6181         * Documentation/user/{various}: inserted two spaces after a period.
6183         * Documentation/user/lilypond.tely: added framework for reorg.
6185         * Documentation/user/basic-notation.itely, instrument-notation.itely,
6186         advanced-notation.itely, global.itely: new files, placeholder for
6187         future reorg.
6189 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
6191         * Documentation/user/notation.itely: revamped Polyphony section
6192         
6193 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6195         * Documentation/user/lilypond-book.itely (Music fragment options):
6196         doc fontload.
6198         * Documentation/user/changing-defaults.itely (Text encoding): add
6199         fontload option to utf8 include
6201         * scripts/lilypond-book.py (compose_ly): add fontload option
6203         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
6204         force-eps-font-include option.
6206         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
6207         black triangle
6209         * Documentation/user/invoking.itely (Editor support): remove
6210         lilypond-latex section.
6212         * scripts/lilypond-latex.py (Module): remove script.
6214         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
6215         overwrite .log. 
6217         * lily/main.cc: remove -m, --no-layout
6219         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
6220         to define. We don't want to override fprintf everywhere.
6222 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
6224         * cygwin/lilypond.hint: 
6225         * cygwin/README.in: Update dependencies.
6227         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
6228         Bugfix: do not pollute CPPFLAGS, LIBS.
6230         * cygwin/mknetrel (extras): Cross compile fixes.
6232         * ttftool/util.c: 
6233         * ttftool/ttfps.c: 
6234         * ttftool/ps.c: #include libc-extension.hh
6236         * flower/include/libc-extension.hh:
6237         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
6238         wrapper using funopen.
6239         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
6240         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
6242         * config.hh.in:
6243         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
6244         (AC_CHECK_HEADERS): Add libio.h
6246         * scripts/convert-ly.py: Uniformize, internationalize.
6247         (2.5.2): Remove fatal encoding rule.
6248         (2.5.13): Handle latin1 encoding gracefully.
6250 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6252         * HACKING: Fix line breaks.
6254 2005-02-23  Werner Lemberg  <wl@gnu.org>
6256         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
6257         contains those two files.
6259 2005-02-21  Werner Lemberg  <wl@gnu.org>
6261         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
6262         to improve overlap removal process.
6264         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
6265         left and right ending.  This ensures better overlapping.
6266         Update all callers.
6267         ("lineprall"): Don't use draw_gridline to get better overlapping.
6269 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6271         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
6273         * Documentation/topdocs/NEWS.tely (Top): oops.
6275 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
6277         * HACKING: new file.
6279         * input/regression/utf8.ly (portuguese): added a portuguese example
6280         to show latin1 accents.
6282 2005-02-21  Pal Benko  <benkop@freestart.hu>
6284         * lily/mensural-ligature-engraver.cc:
6285         * lily/mensural-ligature.cc:
6286         * lily/include/mensural-ligature.hh: new algorithm implemented
6288         * scm/define-grob-properties.scm: join-left killed (add-join may
6289         be used); join-left-amount changed to join-right-amount
6291 2005-02-21  Graham Percival  <gperlist@shaw.ca>
6293         * Documentation/user/notation.itely: small but urgent fix.
6295 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
6297         * lily/duration-scheme.cc: bugfix: correct parameters to
6298         SCM_ASSERT_TYPE.
6300         * THANKS: added Pal.
6302         * Documentation/user/notation.itely: bugfix: unTeXified
6303         $\\backslash$.  Bugfix: yet another glyph renaming victim:
6304         "timesig.*x/y" -> "timesig.*xy".
6306 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6307         
6308         * VERSION (PACKAGE_NAME): release 2.5.12
6310 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6312         * ly/engraver-init.ly: set tieWaitForNote to #t by default
6314         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
6316         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
6318         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
6320 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6322         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
6323         latin1..utf-8.
6325         * input/regression/stanza-number.ly:
6326         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
6328         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
6330 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6332         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
6333         NEWS. Refer to website for older news.  
6335         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
6336         .HTML. This should be done for specific servers only.
6338         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
6339         .ly image examples.
6341         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
6342         in layer 0 too.
6344         * scm/define-context-properties.scm
6345         (all-user-translation-properties): add tieWaitForNote
6347         * scm/define-grobs.scm (all-grob-descriptions): add
6348         Tie_column::before_line_breaking
6350         * lily/tie.cc (get_column_rank): new function
6352         * lily/tie-column.cc (before_line_breaking): new function.
6353         (werner_directions): take into account ties that start on
6354         different columns.  
6356         * lily/score-engraver.cc (set_columns): move add_column() so we
6357         have column rank available.
6359         * lily/tie.cc (get_column_rank): new function.
6361         * input/regression/utf8.ly (japanese): add japanese lyrics.
6363         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
6365         * THANKS: add Steve D
6367         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
6368         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
6370 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
6372         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
6373         to show harmonic notes
6374         * scm/define-markup-commands.scm: in \markup-by-number
6375         "dots-dot" -> "dots.dot" to show dotted notes
6377 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6379         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
6381         * flower/memory-stream.cc (writer): new file.
6383         * configure.in: add endian test.
6385 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
6387         * Documentation/user/examples.itely: small
6388         simplification/beautification
6390         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
6391         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
6392         notation manual.
6394         * lily/mensural-ligature.cc: bugfix: another few victims of the
6395         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
6397         * ly/gregorian-init.ly: commit some experimental code for hi-level
6398         ligature input language lying around here for several months.
6400         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
6401         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
6403         * lily/vaticana-ligature-engraver.cc: bugfix: another few
6404         "x-y-z"->"x.y.s-z" fixes.
6406 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6408         * scm/framework-pdf.scm (scm): new file
6410         * lily/include/pdf.hh (class Pdf_file): new file.
6412         * lily/pdf.cc (write_trailer): new file.
6414 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
6416         * input/regression/color.ly: new file
6418         * lily/stencil.cc (interpret_stencil_expression):
6419         when a color expression is encountered: save current color,
6420         process the rest of the expression, and restore previous color.
6422         * lily/system.cc (get_line): check all grobs for color property and
6423         prepare the stencil scheme expressions for further processing.
6424         Fix layer-loop.
6426         * scm/define-grob-properties.scm: introduce the color property.
6428         * scm/output-lib.scm: color helper functions.
6430         * scm/output-ps.scm: introduce setcolor/resetcolor.
6432 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
6434         * ly/*.ly, input/regression/*.ly: Added missing \version
6435         statements in some files.
6437 2005-02-15  Graham Percival  <gperlist@shaw.ca>
6439         * Documentation/user/notation.itely: minor editing.
6441         * Documentation/user/converters.itely: updated convert-ly bugs.
6443         * Documentation/user/lilypond-book.itely: add info about using
6444         feta characters in latex.
6446 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6448         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
6450 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6452         * scm/define-grob-properties.scm (all-user-grob-properties):
6453         removed 'dashed property.
6455 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6457         * scm/lily.scm (define-safe-public): new macro for defining
6458         variables that can be used in --safe mode. Use it in *.scm
6459         instead of manually setting safe-objects in safe-lily.scm.
6461 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6462         
6463         * lily/slur.cc: Slur-dash patch by Bertalan.
6465         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
6467         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
6469 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6471         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
6473 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6475         * mf/GNUmakefile: teTeX-3.0 install fix.
6477         * Cygwin patch from Bertalan.
6479         * stepmake/stepmake/metafont-rules.make: Remove bashism.
6481 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6483         * GNUmakefile.in: 
6484         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
6486         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
6487         2.0.x compatibility.
6489 2005-02-08  Werner Lemberg  <wl@gnu.org>
6491         * mf/feta-din-code.mf: Format; clean up code.
6492         Replace `---' with `--' plus explicit path directions.
6493         (linethickness#, stafflinethickness#): Remove.
6494         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
6495         ("dynamic s"): Improve shape.
6496         ("dynamic p"): Improve shape.
6497         Replace `draw' with better outline approximation.
6498         ("dynamic r"): Improve shape.
6499         Don't call `fill' and `draw' at the same time.
6501 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6503         * SConstruct (symlink):
6504         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
6505         build fix: add enc symlink.
6507         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
6509         Support for DESTDIR besides prefix=/foo
6511         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
6513         * stepmake/stepmake/*.make:
6514         * */GNUmakefile:
6515         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
6517         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
6519         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
6520         mawk in fontforge (date) test.
6522 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6524         * scm/font.scm (make-century-schoolbook-tree): add NCS as
6525         font-family=roman. Add Luxi Sans as sans
6527 2005-02-07  Graham Percival  <gperlist@shaw.ca>
6529         * Documentation/user/notation.itely: add warning about
6530         percent repeats and Voice contexts.
6532         * Documentation/user/lilypond-book.itely: clarified the
6533         necessity of dvips -u arguments.
6535 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
6537         * THANKS: Added a bunch of bug hunters.
6539 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6541         * scm/framework-ps.scm (output-preview-framework): bugfix.
6543         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
6544         o/ for chord modifier..
6546         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
6548         * lily/drum-note-performer.cc:  remove unused (thanks Michael
6549         Welsh Duggan). 
6551 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6553         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
6555         * ly/titling-init.ly: Do not also print intstrument in header on
6556         first page.  Do not print page number on first and only page.
6558 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6560         * input/regression/*.ly: remove old-relative everywhere
6562         * lily/music-sequence.cc (simultaneous_relative_callback): do
6563         what-if analysis on copy, not on original. Fixes old-relative
6564         compatibility.
6566         * scm/backend-library.scm (postscript->png): space before
6567         --verbose.
6568         
6569 2005-02-05  Werner Lemberg  <wl@gnu.org>
6571         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
6572         is defined.
6574         * mf/feta-alphabet.mf: Define `staffsize#'.
6575         Include `feta-params.mf'.
6576         s/staffheight/design_size/.
6578         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
6580         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
6582         * mf/feta-nummer-code.mf: Reformatted.
6583         (draw_six): Use outline intersection to avoid a self-intersecting
6584         path.
6585         ("Numeral comma"): Fix serious outline glitches.  This slightly
6586         changes the glyph shape.
6587         ("Numeral dash"): Use `draw_rounded_block'.
6588         ("Numeral dot"): Use `drawdot'.
6589         ("Numeral 1"): Assure identical tangent directions for the
6590         intersection points of paths.  The glyph shape improvement is only
6591         visible at very high magnifications.
6592         ("Numeral 2"): Use `solve' macro to make the lower right part of
6593         the glyph outline touch the x axis exactly.  This changes the
6594         glyph shape.
6595         Minor fixes for better overlap removal support.
6596         ("Numeral 4"): Make lefter corner `rounder'.
6597         ("Numeral 5"): Assure identical tangent directions for the
6598         intersection points of paths.  This improves the glyph shape at
6599         high magnifications.
6600         ("Numeral 7"): Use `solve' macro to make the upper right part of
6601         the glyph outline touch the metrics box exactly.  This changes the
6602         glyph shape.
6603         Avoid corner in the upper left part of the glyph (causing a minor
6604         shape change).
6606         * mf/feta-ital-*.mf: Removed.  Unused.
6608 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6610         * VERSION (PATCH_LEVEL): release 2.5.11
6612         * input/regression/fill-line-test.ly: new file.
6614         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
6615         emmentaler name, eg. emmentaler-23. 
6617 2005-02-04  Christian Hitz  <chhitz@gmx.net>
6619         * scm/scm/define-markup-commands.scm (fill-line): rework for better
6620         alignment with centered texts
6622         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
6623         list of paddings
6625 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6627         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
6629         * lily/note-column.cc (translate_rests): call flush_extent_cache()
6630         of parents when translating rests. Fixes: c-chord-rest.ly 
6632         * lily/include/dimension-cache.hh (struct Dimension_cache): add
6633         dimension_callback_ member.
6635         * lily/grob.cc (flush_extent_cache): new function. Force recompute
6636         of extents.
6638 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6640         * all but lily/*: The grand 2004/2005 replace.
6642 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6644         * lily/*: add space after ,  
6646         * scm/music-functions.scm (has-request-chord): don't use
6647         ly:music-name anywhere. Fixes <<\\>> notation. 
6649         * scm/define-markup-commands.scm (box): use font-size for
6650         padding. Fixes boxed-rehearsal-marks.ly
6652         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
6653         identifier definition too, so foo = \lyrics { ...   } bar = #1
6654         doesn't complain about "bar" being LYRICS_STRING.
6656         * lily/paper-def.cc (find_pango_font): new routine; Store
6657         pango_fonts in hash tab too. This is necessary for retrieving
6658         Pango_fonts::physical_font_tab() later on.
6660         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
6661         crash if psname is null.
6663         * lily/lily-guile.cc (ly_hash2alist): new function
6665         * Documentation/user/changing-defaults.itely (Text encoding):
6666         rewrite. 
6668         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
6669         -> font_filename mapping.
6671         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
6672         ly_pango_font_physical_fonts
6674         * scm/framework-ps.scm (supplies-or-needs): extract names from
6675         physical Pango_fonts.
6677         * utf8.ly: new file.
6679 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6681         * Documentation/user/changing-defaults.itely (Page layout): add
6682         doco about systemSeparatorMarkup.
6684         * scm/page-layout.scm (default-page-make-stencil): add-to-page
6685         function.
6686         (default-page-make-stencil): insert system separators.
6688         * scm/define-markup-commands.scm (hcenter): add
6689         (beam): add.
6691 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6693         * scm/output-ps.scm (ez-ball): reinstate ez notation.
6695 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6697         * lily/main.cc: Spell backend consistently.  Sort options.
6699 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6701         * scripts/lilypond-book.py (Module): revert @include.
6702         
6703 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6705         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
6706         Bugfix: @include .tex (not .texi).  Small cleanups.
6708         * stepmake/bin/add-html-footer.py (i18n): New function.
6710 2005-01-31  Werner Lemberg  <wl@gnu.org>
6712         * mf/feta-nummer.mf: Removed.  Unused.
6714 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6716         * lily/ : 2004 -> 2005 s&r
6718         * scm/file-cache.scm (cached-file-contents): add file. Read each
6719         file only once.
6721         * scm/font.scm (add-pango-fonts): change order. Medium weight is
6722         now default.
6724         * VERSION: release 2.5.10
6725         
6726         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
6728         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
6730         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
6731         that both X and Y extents of bbox are non-nil.
6733 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6735         * scm/chord-name.scm (alteration->text-accidental-markup): change
6736         - to . 
6738         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
6740         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
6742         * Documentation/user/invoking.itely (Invoking lilypond): add note
6743         about EPS backend.
6745         * scm/framework-eps.scm: new file: create per-system/per-page EPS
6746         files for inclusion in lilypond-book document.
6748         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
6750         * input/tutorial/lbook-texi-test.texi: new file.
6752         * scm/safe-lily.scm (safe-objects): add
6753         {begin,end}-of-line-(in)?visible as safe.
6755 2005-01-30  Graham Percival  <gperlist@shaw.ca>
6757         * Documentation/user/changing-defaults.itely: fixed example
6758         of (dynamics).
6760 2005-01-29  Graham Percival  <gperlist@shaw.ca>
6762         * lily/main.cc: fix info about -o=FILE.
6764 2005-01-29  Werner Lemberg  <wl@gnu.org>
6766         * mf/feta-toevallig.mf ("Natural"): Completely changed the
6767         construction to assure smooth transition from straight to curved
6768         lines.
6770 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6772         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
6773         stencils.
6775         * ps/lilyponddefs.ps: add start-page, start-system doesn't
6776         translate to top of page. Fixes alignment problems of
6777         lilypond-generated EPS files.
6779 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6781         * scm/part-combiner.scm (analyse-spanner-states): trigger on
6782         crescendo-end as well, since Decrescendo maybe ended with Stop
6783         Crescendo.). Fixes: partcombine-diminuendo.ly
6785         * scm/script.scm (default-script-alist): swap portato symbols.
6787         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
6789         * lily/paper-outputter-scheme.cc (LY_DEFINE):
6790         ly:outputter-port. New function.
6792         * scm/framework-ps.scm (output-classic-framework): dump a
6793         -systems.texi too
6794         (output-classic-framework): dump multiple systems on an "infinite"
6795         page EPS including fonts. 
6797         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
6798         .eps files for both texi and tex formats. Use PNG coming from
6799         lilypond.
6800         
6801 2005-01-28  Graham Percival  <gperlist@shaw.ca>
6803         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
6805         * scripts/lilypond-latex.py: fix info about -o=FILE.
6807 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6809         * ly/generate-embedded-cff.ly: write .cff.ps files.
6811         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
6813         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
6814         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
6816 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6818         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
6820 2005-01-28  Werner Lemberg  <wl@gnu.org>
6822         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
6823         macros.
6824         (draw_bulb): Improved.
6826         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
6827         metapost bug.
6828         (draw_pedal_P): Use soft_end_penstroke.
6829         (draw_pedal_d): Use soft_start_penstroke.
6831         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
6832         path.
6833         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
6834         doesn't change the glyph shape.
6836         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
6837         changing the shape) to avoid fontforge warnings.
6839         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
6840         soft_end_penstroke and fix glyph shape.
6842 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6844         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
6846 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6848         * scm/define-markup-commands.scm (line): filter out empty stencils
6849         from line command.
6851         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
6852         amount.
6854 2005-01-27  Graham Percival  <gperlist@shaw.ca>
6856         * Documentation/user/notation.itely: added info about what
6857         \voiceFoo does.  Also rewrote warning about marks at
6858         a line break.
6860         * Documentation/user/changing-defaults.itely: added info
6861         about putting dynamics in parenthesis and brackets.
6863 2005-01-27  Werner Lemberg  <wl@gnu.org>
6865         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
6867 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6869         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
6870         portato-direction.ly
6872         * lily/beam.cc (consider_auto_knees): add beam height to
6873         threshold. Fixes: knee-multiple-beam.ly
6875         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
6876         pedal line spanners. Fixes: instrument-center-pedal.ly
6878         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
6879         if encountering barline. Fixes: auto-beam-repeat.ly
6881 2005-01-26  Werner Lemberg  <wl@gnu.org>
6883         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
6884         overlapping.
6886         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
6887         with inflections for the 1/2 sharp glyph.
6889         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
6890         connection between `t' and `r'.
6891         Unify bulb with the rest of `r' to avoid grazing outlines which
6892         confuses the overlap removal algorithm of fontforge.
6894         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
6895         inflections.
6896         (draw_cross): Fix shape to have uniform thickness in corners.
6898         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
6899         to avoid an uneven number of self-intersections; this confuses
6900         fontforge.
6901         Fix a slight bug in the shape at left bottom (which is visible only
6902         at high magnifications).
6903         `Center' the stem horizontally to avoid overlapping.
6905 2005-01-24  Werner Lemberg  <wl@gnu.org>
6907         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
6908         to `asis'.
6909         (fet_begingroup): Save group name in string `feta_group'.
6910         (fet_endgroup): Updated.
6911         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
6913         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
6915         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
6916         in metapost.
6918 2005-01-24  Graham Percival  <gperlist@shaw.ca>
6920         * Documentation/user/notation.itely: really minor editing.
6922 2005-01-22  Graham Percival  <gperlist@shaw.ca>
6924         * Documentation/user/examples.itely: minor editing.
6926         * Documentation/user/changing-defaults.itely: minor editing.
6928         * Documentation/user/notation.itely: clarified info on polyphony
6929         and \addlyrics.
6931 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6933         * scm/output-gnome.scm: 
6934         * scm/output-svg.scm:
6935         * scm/lily-library.scm (font-name-style): Update font name
6936         kludging for fontconfig use.
6938 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
6940         * scm/define-markup-commands.scm: Document right-align and
6941         larger markup commands. Remove "TODO" from the topmost comment
6942         "each markup function should have a doc string." More consistent
6943         use of new-lines.
6945 2005-01-22  Graham Percival  <gperlist@shaw.ca>
6947         * Documentation/user/changing-defaults: removed info about
6948         copyright symbol, since it's likely to change soon.
6949         Added info about betweensystemspace.
6951         * Documentation/user/notation.itely: minor fixes.
6953         * Documentation/user/lilypond.tely,
6954         Documentation/user/music-glossary.tely: changed copyright
6955         date to 2005 instead of 2004.
6957         * input/test/volta-chord-names.ly: added old example back.
6959 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6961         * mf/feta-beugel.mf: use design size 20 (not 15).
6963         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
6964         change name to aybabtu completely
6966 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6968         * buildscripts/gen-emmentaler-scripts.py (outdir): add
6969         design_size to fontname
6971 2005-01-19  Werner Lemberg  <wl@gnu.org>
6973         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
6974         mf/feta-schrift.mf: s/p/pat/ if a path variable.
6976         * mf/feta-autometric.mf (set_char_box): Add code which emits
6977         specials for mf2pt1 if run with metapost.
6978         (to_bp): New macro for mf2pt1.
6980 2005-01-18  Graham Percival  <gperlist@shaw.ca>
6982         * Documentation/user/changing-defaults: added info on
6983         creating a copyright symbol.
6985 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6987         * VERSION: release 2.5.9
6988         
6989 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
6991         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
6993         * Documentation/user/notation.itely: Document
6994         score-override-auto-beam-setting Fix documentation for
6995         revert-auto-beam-setting.
6997 2005-01-18  Werner Lemberg  <wl@gnu.org>
6999         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
7000         (procset): New function to define a procset resource.
7001         (ps-embed-pfa): New function to define a font resource.
7002         (setup): New function to define a `Setup' environment.
7003         (preamble): Use new functions.
7005         * ps/lilypond.defs (init-lilypond-parameters): New function to
7006         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
7008 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7010         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
7012 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
7014         * scm/define-markup-commands.scm: Change number->markletter-string
7015         to take two arguments (vector number). Add number->mark-alphabet-vector
7016         and markalphabet markup command.
7018         * scm/translation-functions.scm: Add format-mark-box-alphabet,
7019         format-mark-alphabet, format-mark-box-barnumbers and
7020         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
7022 2005-01-17  Graham Percival  <gperlist@shaw.ca>
7024         * Documentation/user/examples.itely: add SATB automatic piano
7025         reduction template.
7027         * Documentation/user/notation.itely: added info about changing
7028         partcombine texts.  Also adds examples of alternate lyrics.
7030         * Documentation/user/changing-defaults.itely: added warning
7031         about \RemoveEmptyStaffContext overriding previous changes.
7033 2005-01-17  Werner Lemberg  <wl@gnu.org>
7035         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
7036         feta-alphabet*.
7038 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7040         * python/lilylib.py (make_ps_images): don't do final showpage for
7041         multi-page documents.
7042         
7043         * VERSION (MY_PATCH_LEVEL): release 2.5.8
7045 2005-01-16  Graham Percival  <gperlist@shaw.ca>
7047         * Documentation/user/lilypond.tely: changed order of appendices;
7048         unified index should be last.
7050         * Documentation/user/notation.itely: add example of key signatures
7051         and info about Staff.printKeyCancellation.
7053 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7055         * lily/include/repeated-music.hh (class Repeated_music): change
7056         into "namespace" class.
7058         * lily/event.cc: remove Key_change_event.
7060         * lily/include/transposed-music.hh (class Transposed_music): remove.
7062         * lily/transposed-music.cc: remove
7064         * lily/include/relative-music.hh: remove.
7066         * lily/include/music-sequence.hh (struct Music_sequence): change
7067         into "namespace" class.
7069         * lily/untransposable-music.cc (Module): remove
7071         * lily/include/un-relativable-music.hh (Module): remove
7073         * lily/include/untransposable-music.hh (Module): remove
7075         * lily/include/music-list.hh (Module): remove file
7077         * lily/un-relativable-music.cc: remove file.
7079 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7081         * lily/parser.yy: Compile fix.
7083 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7085         * lily/include/music.hh (class Music): unvirtualize transpose().
7087         * lily/sequential-music.cc: remove file.
7089         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
7091         * lily/slur-scoring.cc (get_best_curve): only switch on
7092         DEBUG_SLUR_SCORING for non NDEBUG builds.
7094         * lily/include/music.hh (class Music): replace Music::start_mom()
7095         by start-callback property
7097         * lily/include/grace-music.hh: remove file. 
7099         * lily/stem.cc (height): robustness fix.
7101         * lily/time-scaled-music.cc: remove file.
7103         * lily/include/music.hh (class Music): include SCM init argument.
7104         (class Music): replace Music::get_length() virtual by
7105         length-callback property everywhere.
7107         * scripts/convert-ly.py (conv): add  # to \property scalar value.
7109         * mf/GNUmakefile: don't install *list.ly
7111 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7113         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
7115 2005-01-12  Werner Lemberg  <wl@gnu.org>
7117         This patch addresses the following problems in the feta sources
7118         files which contribute to the fetaXX fonts.
7120         . Many fixes for rasterization at low resolutions (consistent use of
7121           `vround' and `hround', integer shift values for paths, applying
7122           `eps' for mirrored paths, use of `define_whole_pixels' and
7123           friends, etc.) -- while this probably looks like a waste of time
7124           it has revealed deficiencies in some glyph shapes.  See comment at
7125           the end of feta-params.mf how vertical symmetry is achieved.
7127         . The `---' operator has been replaced everywhere with `--'; this
7128           both improves and considerably reduces the font size after
7129           conversion with mf2pt1.
7131         These change aren't explicitly mentioned below since virtually all
7132         glyphs are affected.
7134         Other notable differences:
7136         . Glyphs from feta-accordion.mf now have charboxes around the
7137           outline.
7139         . Fixed incorrect charbox for `accDot'.
7141         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
7143         . Fixed position of the bow in the `upprall' glyph and its siblings.
7145         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
7146           dependent on the staff line thickness to avoid touching the middle
7147           staff line at smaller sizes.
7149         . Largely extended output for feta-testXX: Where useful, glyphs
7150         are shown both between and on staff lines.
7153         * mf/feta-params.mf (staff_space_rounded,
7154         stafflinethickness_rounded, linethickness_rounded,
7155         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
7156         Update all code which uses them where appropriate.
7157         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
7158         New variables used to control rasterization at low resolutions.  Set
7159         to zert if feta code is processed with metapost.
7161         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
7162         (draw_rounded_block, draw_square_block): Updated to use `--' only.
7163         (flare_path): Updated.
7164         Make it work with `filldraw' (but only circular pens).
7165         (hfloor, vfloor, hceiling, vceiling): New macros.
7167         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
7168         Use `draw' again in mf mode to have good pixel dropout control.
7169         Fix intersection points of horizontal lines with circle.
7170         ("accDot"): Fix parameters for set_char_box.
7171         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
7172         control.
7174         * mf/feta-banier.mf: Updated.
7176         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
7177         testing.
7178         (undraw_inside_ellipse): Remove `center' argument.  Update all
7179         callers.
7180         (draw_brevis): New macro, called by "Brevis notehead".
7181         (draw_whole_triangle_head): New macro, called by "Whole
7182         trianglehead".
7183         (draw_small_triangle_head): Use `filldraw'.
7185         * mf/feta-eindelijk.mf: Remove useless global group.
7186         Updated.
7188         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
7189         `filldraw'.
7191         * mf/feta-pendaal.mf: Updated.
7193         * mf/feta-puntje.mf: Updated.
7195         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
7196         less points.
7197         ("Flageolet"): Use `draw' again in mf mode to have good pixel
7198         dropout control.
7199         ("Varied Coda"): Use `draw_block'.
7200         (draw_comma): Fix typo.
7201         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
7202         pixel dropout control.
7204         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
7205         position of bow.
7207         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
7208         sizes.
7210         * mf/feta-toevallig.mf (remember_pic): New variable, used for
7211         testing.
7212         (draw_meta_sharp): Much simplified.
7213         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
7215         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
7217 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7219         * Documentation/user/notation.itely (Ancient rests): Fix typo
7220         (thanks Anthony)
7222 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7224         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
7226         * lily/main.cc (setup_paths): Add cff.
7228         * mf/GNUmakefile (foe): Include actual target %.cff.
7229         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
7231 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7233         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
7234         suffix for main_input_b_.
7236         * scm/music-functions.scm (toplevel-music-functions):
7237         precompute music lengths for music expressions.  
7239 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7241         * lily/include/input.hh (class Input): new `end_' slot for end of
7242         input. Renamed defined_str0_ to start_.
7244         * lily/input.cc (Input): Add Input::Input (Input const &) and
7245         remove Input::Input (Source_file*, char const *). Use the new
7246         slots.
7247         (set_location): method used by bison to propagate input
7248         locations (YYLLOC_DEFAULT).
7249         (end_line_number, end_column_number, step_forward): new methods
7250         
7251         * lily/input-scheme.cc (ly:input-both-locations): new function,
7252         similar to ly:input-location, but also return the end line and
7253         column.
7255         * lily/include/includable-lexer.hh: 
7256         * lily/includable-lexer.cc: 
7257         * lily/include/lily-lexer.hh (class Lily_lexer): 
7258         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
7259         Includable_lexer to Lily_lexer, in order to update lexloc (the
7260         yylloc), a new slot of Lily_lexer.
7261         (here_input, LexerError): simplify by using the lexloc slot (aka
7262         yylloc)
7264         * lily/lexer.ll: #define yylloc to use input locations (it may
7265         be useless here?). Fixed the #embedded_scm rule (step the location
7266         forward in order to skip the sharp sign before parsing the scheme
7267         expression)
7269         * lily/include/lily-parser.hh (class Lily_parser): 
7270         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
7271         here_input()
7272         (parser_error): overload for more precise locations of errors.
7274         * lily/parser.yy (YYLTYPE): set location type to Input
7275         (YYLLOC_DEFAULT): use Input::set_location()
7276         (yylex): add the YYLTYPE* location parameter.
7277         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
7278         Give an Input parameter to THIS->parser-error() for more accurate
7279         messages.
7281 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7283         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
7285         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
7286         on BEAMQUANTING for non-NDEBUG builds.
7288         * lily/stem.cc (head_count): performance: avoid String::String()
7289         inside oft called function.
7291 2005-01-09  Graham Percival  <gperlist@shaw.ca>
7293         * Documentation/user/examles.itely: attempted fix for broken
7294         string quartet template.
7296         * Documentation/user/notation.itely: remove unnecessary broken
7297         link.
7299 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7301         * VERSION (PACKAGE_NAME): release 2.5.7
7303 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7305         * config.make.in (METAFONT): Append -progname=mf, fixes use with
7306         mf-nowin for teTeX-3.0.  Backportme.
7308         * scm/output-svg.scm (utf8-string): New function.
7310         * scm/output-gnome.scm (utf8-string): New function.
7311         (otf-name-mangling): Remove.
7313         * lily/pango-font.cc (Pango_font): Use font string iso font
7314         filename for utf8-text.
7316         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
7317         name.
7319 2005-01-08  Graham Percival  <gperlist@shaw.ca>
7321         * Documentation/user/notation.itely: add info about
7322         Staff.extraNatural = ##f in Pitches section.  Also
7323         fixed some minor issues in the Vocal music section.
7325 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7327         * scm/output-ps.scm (white-text): comment out Helvetica font,
7328         which is broken for my GS install.
7330         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
7331         which provides a tighter bbox.
7333         * scm/define-grobs.scm (all-grob-descriptions): remove all
7334         extra-offsets from definitions.
7336 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
7338         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
7339         add tuning for 4-string bass and some common 4/5-string banjo
7340         tunings.  New function (four-string-banjo) turns a 5-string tuning
7341         into a 4-string tuning.  New function
7342         (fret-number-tablature-format-banjo) computes correct fret numbers
7343         on 5-string banjos.
7345         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
7346         Add beam correction to TabVoice.
7348         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
7349         using bold font; makes tabs more readable.
7351 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7353         * lily/font-select.cc (get_font_by_design_size): don't make
7354         Modified_font_metric; this causes trouble, since we don't know the
7355         font magnification from inside Pango_font::text_stencil()
7357         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
7359         * Documentation/user/notation.itely (The Lyrics context): comment out
7360         broken {Small ensembles} link.
7362         * scm/framework-svg.scm (output-framework): change calling convention.
7364         * lily/object-key-dumper-scheme.cc: new file.
7366         * lily/object-key-undumper-scheme.cc: new file.
7368         * lily/tweak-registration-scheme.cc: new file.
7370         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
7372         * Documentation/user/examples.itely (String quartet): uncomment
7373         broken example.
7375         * lily/font-config.cc: new file.
7377 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7379         * scm/output-svg.scm: 
7380         * scm/output-gnome.scm: s/bigcheese/emmentaler.
7382         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
7384 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7386         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
7387         Add headers.
7389         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
7391 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7393         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
7395         * lily/include/main.hh: lose _b hungarian suffixes for global
7396         variables.
7398         * lily/include/lily-guile-macros.hh: new file.
7400         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
7402         * lily/general-scheme.cc: new file. 
7404         * lily/font-select.cc (get_font_by_design_size): retrieve
7405         PangoFont for (designsize . "pango-descr") entries.
7407         * lily/lily-parser-scheme.cc: new file.
7409         * lily/output-def-scheme.cc: new file.
7411         * lily/paper-book-scheme.cc: new file.
7413         * lily/duration-scheme.cc (LY_DEFINE): new file.
7415         * lily/pitch-scheme.cc:  new file.
7417         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
7419 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7421         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
7423 2005-01-06  Graham Percival  <gperlist@shaw.ca>
7425         * Documentation/user/notation.itely: minor editing.
7427         * Documentation/user/changing-defaults: minor editing.
7429         * Documentation/user/examples.itely: add template for
7430         string quartet part extraction; demonstrates tag.
7432 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
7434         * Documentation/user/notation.itely: documents
7435         format-mark-box-letters and format-mark-box-numbers
7437         * scm/define-context-properties.scm: change comment.
7439 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7441         * scm/framework-ps.scm (output-classic-framework): new function:
7442         dump systems as separate .eps files (without fonts) and write a
7443         single collecting .tex file.
7445 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7447         * Documentation/user/notation.itely (Setting simple songs):
7448         Correct several errors in the equivalent formulation of
7449         \addlyrics. 
7450         (The Lyrics context): Corrected link to the SATB example.
7452 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7454         * scm/lily.scm (completize-formats): new function
7455         (postprocess-output): new function
7457         * lily/paper-book.cc (classic_output): change calling
7458         convention. Give basename as first argument. 
7459         remove Paper_book::post_processing().
7461         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
7463 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7465         * lily/paper-outputter.cc (LY_DEFINE): new function
7466         ly:outputter-close.
7468         * lily/main.cc: change --format,-f to --backend,-b
7470         * lily/include/main.hh: rename format to backend.
7472         * scm/translation-functions.scm (format-mark-box-numbers): add.
7473         patch by Erlend Aasland
7475 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7477         * lily/pango-font.cc (text_stencil): dump string as
7478         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
7480 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7482         * configure.in (gui_b): Remove handy developer-only
7483         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
7484         CVS source installations (but break other non-default but correct
7485         PKG_CONFIG_PATH setups), as this is no longer developer-only.
7487         * SConstruct: 
7488         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
7489         compatibility (backportme).
7491         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
7493 2005-01-03  Werner Lemberg  <wl@gnu.org>
7495         Prepare glyph shapes for mf2pt1 conversion.
7497         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
7498         (accDiscant, accFreebase, accStdbase): Replace `draw' with
7499         `penstroke'.
7500         (accDot): Use `drawdot'.
7501         (accBayanbase): Replace `draw' with `draw_gridline'.
7502         (print_penpos): Moved to feta-macros.mf.
7503         (accOldEE): Replace `filldraw' with `penstroke'.
7504         Replace `draw' with `penstroke' and `drawdot'.
7506         * mf/feta-banier.mf: Code clean-up.
7507         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
7508         `fill'.
7510         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
7512         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
7513         paremeter to control drawing of labels.  Update all callers.
7515         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
7516         (new_bulb): Return a bulb as a single path.  To do that, it now
7517         takes some more parameters.  Updated all callers.
7518         (draw_gclef): Major clean-up.  `draw' has been replaced with
7519         `penstroke', unnecessary outlines have been removed.
7520         Remove (unused) gnome-canvas code.
7522         * mf/feta-macros.mf (print_penpos): New macro (from
7523         feta-accordion.mf).
7524         Other minor fixes.
7526         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
7527         ("Pedal dot"): Use `drawdot'.
7528         (draw_pedal_P): Add parameter to control drawing of labels.  Update
7529         all callers.
7530         Fix shape at top.
7531         (draw_pedal_e): Add parameter to control drawing of labels.  Update
7532         all callers.
7533         (draw_pedal_d): Add parameter to control drawing of labels.  Update
7534         all callers.
7535         Revert drawing direction.
7537         * mf/feta-schrift.mf (draw_fermata): Use single path.
7538         (draw_short_fermata): Replace `filldraw' with `fill'.
7539         (draw_long_fermata, draw_very_long_fermata): Replace calls to
7540         `draw_rounded_block' with a single path.
7541         ("Thumb"): Draw full circle instead of mirroring segments.
7542         (draw_accent): New macro.
7543         ("> accent", "espr"): Use it.
7544         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
7545         ("open (unstopped)"): Draw full circle instead of mirroring
7546         segments.
7547         (draw_vee): Removed.
7548         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
7549         ("Downbow"): Replace calls to `draw_rounded_block' with a single
7550         path.
7551         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
7552         partial pieces drawn with `fill' -- these do still overlap with the
7553         stem of the `t' but just once, not multiple times so that fontforge
7554         can handle it gracefully.
7555         Change other parts of the glyph so that fontforge's overlapping
7556         algorithm reliably works.
7557         (draw_heel): Replace `draw' with `fill'.
7558         (draw_toe): Use `draw_accent' instead of `draw_vee'.
7559         ("Flageolet"): Replace `draw' with `penstroke'.
7560         ("Segno"): Replace `filldraw' with `penstroke'.
7561         Replace `draw' with `drawdot'.
7562         ("Coda"): Replace `fill' with `penstroke', using a single path.
7563         ("Varied Coda"): Use less overlapping paths.
7564         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
7565         single path.
7567         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
7568         group to better control the `labels' command.
7569         Rename argument to `offset' and use it actually.  Update all
7570         callers.
7571         Replace `filldraw' with `fill'.
7572         ("mordent", "prallmordent", "upmordent", "downmordent",
7573         "lineprall"): Replace `draw' with `draw_gridline'.
7574         ("upprall", "downprall"): Replace `draw' with `fill'.
7576         * mf/feta-timesig.mf: Formatting.
7578         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
7579         to...
7580         ("Flat"): Here.
7581         (draw_paren): Move code to draw labels to...
7582         ("Right Parenthesis"): Here.
7584 2005-01-02  Graham Percival <gperlist@shaw.ca>
7586         * Documentation/user/notation.itely: add example of \setTextDecresc
7587         and \setTextDim.
7589 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
7591         * scm/define-markup-commands.scm :  fix glyph-strings of
7592         accidentals and \note-by-number
7594 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7596         * VERSION: 2.5.6 released.
7597         
7598         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
7600         * input/regression/new-markup-scheme.ly: oops. font-family=music
7601         -> font-encoding fetaMusic.  
7603         * lily/main.cc: put default to PS.
7605         * lily/tfm.cc: idem.
7607         * lily/afm.cc: idem.
7609         * lily/include/modified-font-metric.hh (struct
7610         Modified_font_metric): remove coding_scheme() method.
7612         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
7614         * scripts/convert-ly.py (conv): crash on encountering \encoding.
7616         * input/les-nereides.ly: convert to utf8
7618         * lily/modified-font-metric.cc (text_dimension): idem.
7620         * lily/parser.yy (TODO): idem.
7622         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
7624         * lily/lexer.ll: remove encoding
7626         * scm/framework-ps.scm (output-variables): separately scale the
7627         page to mm 
7629         * lily/pango-font.cc (Pango_font): fix scaling.
7631         * lily/font-metric.cc (design_size): design_size returns a
7632         dimension now as well.
7634 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7636         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
7637         brace generation. 
7639         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
7641 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7643         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
7644         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
7646 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7648         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
7649         in first run as well.
7651         * scm/paper.scm (layout-set-staff-size): use text-font-size in
7652         dimension less points (ie. 12 = 12 point)
7654         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
7656         * lily/all-font-metrics.cc (find_pango_font): set description_
7658         * lily/pango-font.cc (text_stencil): export size as well.
7659         (text_stencil): fix scaling and extents box.
7661 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7663         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
7665         * Documentation/user/invoking.itely (Invoking lilypond): document
7666         texstr
7668         * scripts/convert-ly.py (conv): add ancient rules.
7670         * scm/clef.scm (c0-pitch-alist): replace - with .
7672         * scripts/lilypond-book.py (process_snippets): add texstr support.
7674         * scm/framework-texstr.scm (header): change extension to .textmetrics
7676         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
7677         -f tex.
7679         * lily/text-metrics.cc: new file.
7680         (try_load_text_metrics): new function
7682         * lily/include/text-metrics.hh: new file.
7684 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7686         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
7687         ly_scheme_function to ly_lily_module_constant.
7689         * lily/modified-font-metric.cc (text_dimension): try
7690         lookup_tex_text_dimension() first.
7692         * lily/tfm.cc: new function ly:load-text-dimensions
7694 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7696         * scm/output-texstr.scm (text): use \lilygetmetrics
7698         * scm/framework-texstr.scm (header): dump in new format.
7700         * tex/lilypond-tex-metrics: new file.
7701         
7702 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7704         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
7705         mapping.
7706         (index_to_charcode): New method.
7708         * scm/output-ps.scm (glyph-string): 
7709         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
7711 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
7713         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
7714         implement fully, need FONT to get to charcode.
7716         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
7718         * scm: Cleanups.
7720         * Documentation/user/changing-defaults.itely: Fix internalsrefs
7721         {Tunable context properties},
7722         {All layout objects},
7723         {Music definitions}.
7725 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7727         * VERSION: release 2.5.5
7728         
7729         * lily/main.cc: use TeX as default output format.
7731         * flower/file-path.cc (find): try to open directly as well, so we
7732         find absolute path files. 
7734         * lily/pango-select.cc: new file.
7736         * scm/framework-ps.scm: remove all encoding code. 
7737         load pfb/pfa for PangoFont too.
7738         
7739         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
7741 2004-12-22  Werner Lemberg  <wl@gnu.org>
7743         Prepare glyph shapes for mf2pt1 conversion.
7745         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
7747         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
7748         (define_triangle_shape): Use it to replace `draw' with `fill' and
7749         `unfill'.  Update all callers.
7750         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
7751         (draw_cross): Ditto.
7752         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
7753         Use penrazor for better conversion with mf2pt1.
7754         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
7755         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
7756         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
7757         draw_la_head, draw_ti_head): Replace `filldraw' with
7758         `fill'.  Update all callers.
7760 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7762         * lily/paper-book.cc (output): revert: only allow a single output
7763         format.
7765         * lily/include/pango-font.hh: new file.
7767         * lily/pango-font.cc: new file.
7769         * lily/font-metric.cc (text_stencil): new routine
7771         * lily/all-font-metrics.cc (find_pango_font): new routine.
7773         * lily/include/font-metric.hh (struct Font_metric): add
7774         text_stencil()
7776         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
7778 2004-12-22  Werner Lemberg  <wl@gnu.org>
7780         Prepare glyph shapes for mf2pt1 conversion.
7782         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
7784         * mf/feta-toevallig.mf: Formatting.
7785         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
7786         ("Natural"): Fix paths to allow better postprocessing.
7787         (draw_meta_flat): Use `z3l' as additional point in path to get
7788         better conversion with mf2pt1.
7789         Other minor cleanups.
7790         ("3/4 Flat"): Add auxiliary points and modify path to replace
7791         `draw' with `fill'.
7792         ("Double Sharp"): Mirror path segments instead of picture elements
7793         to get a single outline.
7794         Modify path to replace `filldraw' with `fill'.
7796 2004-12-22  Graham Percival  <gperlist@shaw.ca>
7798         * input/test/unfold-all-repeats.ly: added file back.
7800         * Documentation/user/notation.itely,
7801         Documentation/user/programming-interface.itely
7802         Documentation/user/changing-defaults.itely: fixed misc broken
7803         links to input/test/ files.
7805 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
7807         * tex/texinfo.tex: Update.  We should not be distributing this,
7808         but since we do, use latest version.
7810         * Documentation/user/macros.itexi: Comment-out \fetaflat,
7811         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
7812         macros for feta glyphs.
7814 2004-12-22  Graham Percival  <gperlist@shaw.ca>
7816         * Documentation/user/changing-defaults.itely: fix index for set.
7818         * Documentation/user/converters.itely: added convert-ly bugs list
7819         from CVS.
7821 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7823         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
7824         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
7825         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
7826         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
7828         * mf/GNUmakefile (pfa_warning): Use less broken check.
7830         * python/lilylib.py (setup_environment): Remove cruft from
7831         GS_FONTPATH.
7833         * configure.in: Bump mftrace requirement to 1.1.1.
7835 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7837         * scm/output-svg.scm (beam): Use polygon.
7839         * scm/lily-library.scm: Bugfix.
7841         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
7843         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
7845 2004-12-19  Werner Lemberg  <wl@gnu.org>
7847         Prepare glyph shapes for mf2pt1 conversion.
7849         * mf/feta-eindelijk: Some formatting.
7850         (multi_rest_x, multi_beam_height): Removed.  Unused.
7851         ("Quarter rest"): Use `intersectiontimes' to create a single
7852         outline.
7853         (rest_crook): Removed.  Unused.
7854         (draw_rest_bulb): Return path (wihtout filling).  Update callers.
7855         Simplified.
7856         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
7857         "128th rest"): Simplify `pat'.
7858         Create single outline.
7860 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7862         * mf/GNUmakefile (ALL_GEN_FILES):
7863         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
7865         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
7866         function.
7868 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7870         * scm/output-texstr.scm (placebox): add routine
7872         * VERSION (PACKAGE_NAME): release 2.5.4
7874         * scm/framework-texstr.scm (output-framework): new file.  
7876         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
7877         processing.
7879         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
7881         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
7882         rule.
7884         * configure.in (gui_b): bump mftrace requirement to 1.1.0
7886         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
7888         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
7890 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7892         * scm/framework-svg.scm (dump-page): Implement landscape.
7894 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7896         * lily/main.cc (setup_paths): Add svg to search path.
7898         * scm/output-svg.scm:
7899         * scm/framework-svg.scm: Add pageSet.  Update.
7900         (dump-fonts): New function.
7901         (output-framework): Use it.
7903         * mf/GNUmakefile: 
7904         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
7906 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7908         * tex/lilyponddefs.tex: comment out new ifpdf code.
7910 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7912         * GNUmakefile.in: 
7913         * SConstruct (symlink): Replace afm by otf.
7915         * scm/framework-gnome.scm (gnome-main): Remove invocation of
7916         ly:pango-add-afm-decoder.
7918         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
7920 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7922         * scm/output-ps.scm (new-text): don't access t glyph for getting
7923         space dimension.
7925         * ly/init.ly: warn about \version
7927         * lily/lexer.ll: set version-seen?
7929 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7931         * scm/output-svg.scm (string->entities): Update.
7933 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7935         * lily/main.cc (setup_paths): replace afm by otf for path. 
7937         * lily/pangofc-afm-decoder.cc: remove.
7939         * lily/include/pangofc-afm-decoder.hh: remove.
7941         * scm/framework-scm.scm (output-framework): new file.
7943         * mf/GNUmakefile: remove SAUTER_FONTS.
7944         remove SVG/sodipodi hacks.
7946         * scm/lily-library.scm (stderr): move stderr.
7948         * mf/GNUmakefile: remove AFM support.
7950         * buildscripts/mf-to-table.py (base): remove AFM support.
7952         * lily/open-type-font.cc (design_size): use design_size
7954 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
7956         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
7958 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7960         * mf/GNUmakefile: Generate combined aybabtu info.
7961         * mf/aybabtu.pe.in (i): Load it.
7963         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
7964         are not symbols.
7966         * lily/include/open-type-font.hh (count): New method.
7968         * mf/aybabtu.pe.in: Typo.
7970         * Documentation/user/out/lilypond-internals.nexi (Scheme
7971         functions): Typo.
7973         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
7975 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7977         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
7978         subfonts.
7980         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
7982         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
7983         (tex-font-command-raw): new function.
7985         * lily/include/virtual-font-metric.hh (Module): remove file
7987         * lily/virtual-font-metric.cc (Module): remove file.
7988         
7990         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
7991         (get_indexed_char): read bbox from lily table if present.
7993 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7995         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
7996         aybabtu.subfonts
7998         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
7999         global glyphname. Enables more than 64 glyphs in the OTF.
8001 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8003         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
8004         braces.
8006         * lily/open-type-font.cc (design_size): Use 12 as default for
8007         design size.
8009         * mf/aybabtu.pe.in: New file.  Merge all our braces.
8011         * mf/GNUmakefile: Generate aybabtu.
8013         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
8015 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8017         * scm/lily-library.scm (char->unicode-index): Remove.
8019         * scm/output-gnome.scm (text): Bugfix for plain string input.
8020         Updates.
8022         * scm/output-svg.scm (svg-font): Add weight to font selection.
8024 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8026         * Documentation/topdocs/INSTALL.texi (Top): Point to
8027         buildscripts/out/clean-fonts instead of
8028         buildscripts/clean-fonts.sh. 
8030 2004-12-13  Graham Percival  <gperlist@shaw.ca>
8032         * input/regression/figured-bass.ly: attempt to clarify text.
8034         * Documentation/user/notation.tely: add cindex for tag, attempt to
8035         add figured bass example.
8037         * Documentation/user/changing-defaults: basic editing.
8039 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8041         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
8043         * lily/open-type-font.cc (LY_DEFINE): new function
8044         ly:font-sub-fonts
8046         * lily/include/font-metric.hh (struct Font_metric): new method
8047         sub_fonts()
8049         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
8050         . with - in add.stem.
8051         
8052 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8054         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
8055         and fetaDynamic.
8057         * lily/rest.cc (glyph_name): Change - to . .
8059         * scm/output-gnome.scm (text): Hello world, again.
8061         * scm/output-svg.scm (named-glyph): New function.  Hello world!
8063         * lily/modified-font-metric.cc (index_to_charcode): New method.
8065         * lily/include/font-metric.hh (index_to_charcode): New function.
8067         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
8068         new function.
8069         (ly:font-glyph-to-index): Remove.
8071 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8073         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
8075         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
8077         * lily/open-type-font.cc (load_scheme_table): new function
8079         * lily/dots.cc (print): replace - 
8081         * lily/open-type-font.cc (attachment_point): new function.
8082         (load_table): read LILC table
8084         * buildscripts/gen-bigcheese-scripts.py (Module): new
8085         file. Generate FF scripts.
8087         * mf/feta-din10.mf: idem.
8089         * mf/feta-nummer10.mf: remove mf files.
8091         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
8093 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8095         * lily/lily-guile.cc: Use scm_from_locale_stringn.
8097         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
8098         compatibility.
8100 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8102         * lily/open-type-font.cc (get_indexed_char): scale metrics by
8103         design-size and units_per_EM.
8105         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
8107 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8109         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
8110         does not crash fontforge.
8112         * scm/lily-library.scm (char->unicode-index): Hack to map onto
8113         PUA.
8115 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8117         * scm/framework-ps.scm (ps-embed-cff): new function.
8119         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
8121 2004-12-12  Werner Lemberg  <wl@gnu.org>
8123         * mf/bigcheese.pe.in: Add PUA mapping.
8124         Don't create Type 42 but bare CFF font.
8126 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8128         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
8129         within canvas boundaries.
8131         * mf/merge.pe.in: Set font names, version, license GPL.
8133         * make/substitute.make: Add FONTFORGE.
8135         * config.make.in (FONTFORGE): Add.
8137         * configure.in (gui_b): Use PATH_PROG for fontforge.
8139 2004-12-11  Graham Percival  <gperlist@shaw.ca>
8141         * scm/define-markup-commands.scm: add baseline-skip to info
8142         about \column.
8144 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8146         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
8148         * scm/output-gnome.scm (named-glyph): Use it.
8150         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
8152         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
8153         (upper_string, lower_string, reverse_string): Remove.
8155         * configure.in (fontforge): Reinstate version check.
8157         * ly/engraver-init.ly: Fix clef glyph names.
8159         * lily/time-signature.cc (special_time_signature): Fix fraction
8160         glyph names.
8162 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8164         * mf/merge.pe: new file.
8166         * lily/freetype.cc: new file.
8168         * lily/include/open-type-font.hh (class Open_type_font): new file.
8170         * lily/include/freetype.hh: new file.
8172         * lily/open-type-font.cc: new file.
8174         * lily/all-font-metrics.cc (find_otf): new function.
8176 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8178         * lily/time-signature.cc (special_time_signature): Fix.
8180         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
8181         GTK2 before checking for pango.  Fixes -fgnome.
8183         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
8184         Scheme name.
8186         * scm/define-markup-commands.scm:
8187         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
8189         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
8191         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
8192         date versions.  Fixes configure.
8193         (STEPMAKE_CHECK_VERSION): Support optional actual program version
8194         argument.
8196 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8198         * buildscripts/mf-to-table.py (write_ps_encoding): write real
8199         names in .enc
8201         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
8203 2004-12-09  Graham Percival  <gperlist@shaw.ca>
8205         * Documentation/user/changing-defaults.itely: add info about
8206         make-dynamic-script
8208         * Documentation/user/notation.itely: add link in dynamics to
8209         section about make-dynamic-script.
8211 2004-12-09  Christian hitz  <chhitz@gmx.net>
8213         * lily/lily-guile.cc: change MACOS_X to __APPLE__
8215 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8217         * buildscripts/mf-to-table.py (parse_logfile): use . for
8218         concatting name and group.
8219         (parse_logfile): use M for Minus (negative.)
8221         * lily/include/type-swallow-translator.hh
8222         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
8224         * lily/*.cc: cosmetics around = sign.
8226         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
8227         lyric spacing on the penultimate column.
8229 2004-12-05  Christian Hitz  <chhitz@gmx.net>
8231         * configure.in:
8232         * lily/accidental-placement.cc:
8233         * lily/bar-line.cc:
8234         * lily/beam-concave.cc:
8235         * lily/beam-quanting.cc:
8236         * lily/beam.cc:
8237         * lily/bezier-bow.cc:
8238         * lily/bezier.cc:
8239         * lily/break-align-interface.cc:
8240         * lily/custos.cc:
8241         * lily/dimension-cache.cc:
8242         * lily/dot-column.cc:
8243         * lily/font-metric.cc:
8244         * lily/font-select.cc:
8245         * lily/gourlay-breaking.cc:
8246         * lily/grob-property.cc:
8247         * lily/grob.cc:
8248         * lily/lily-guile.cc:
8249         * lily/line-spanner.cc:
8250         * lily/lookup.cc:
8251         * lily/lyric-extender.cc:
8252         * lily/lyric-hyphen.cc:
8253         * lily/mensural-ligature.cc:
8254         * lily/midi-def.cc:
8255         * lily/misc.cc:
8256         * lily/note-collision.cc:
8257         * lily/note-column.cc:
8258         * lily/note-head.cc:
8259         * lily/paper-outputter.cc:
8260         * lily/percent-repeat-item.cc:
8261         * lily/rest-collision.cc:
8262         * lily/side-position-interface.cc:
8263         * lily/simple-spacer.cc:
8264         * lily/slur-configuration.cc:
8265         * lily/slur-scoring.cc:
8266         * lily/slur.cc:
8267         * lily/spaceable-grob.cc:
8268         * lily/spacing-spanner.cc:
8269         * lily/spanner.cc:
8270         * lily/staff-symbol-referencer.cc:
8271         * lily/stem.cc:
8272         * lily/stencil.cc:
8273         * lily/system-start-delimiter.cc:
8274         * lily/system.cc:
8275         * lily/text-item.cc:
8276         * lily/tie.cc:
8277         * lily/tuplet-bracket.cc:
8278         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
8279         <cmath> beacause isinf/isnan is undefined in <cmath>
8281 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8283         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
8285 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8287         * VERSION: release 2.5.3
8288         
8289 2004-11-29  Arno Waschk <arno@arnowaschk.de>
8291         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
8293 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8295         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
8297         * lily/note-head.cc (internal_print): always try the "s" head if
8298         u/d not found.
8300         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
8302 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8304         * mf/parmesan-heads.mf (overdone_heads): typos.
8306 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8308         * lily/parser.yy (markup): in markups, { .. } without command
8309         before are also flattened, ie \line must be explicitely used.
8311         * Documentation/user/changing-defaults.itely:
8312         * Documentation/user/notation.itely: 
8313         * input/wilhelmus.ly: 
8314         * input/regression/instrument-name-markup.ly: 
8315         * input/regression/markup-score.ly: 
8316         * input/regression/new-markup-scheme.ly: 
8317         * input/regression/new-markup-syntax.ly: 
8318         * input/test/coriolan-margin.ly: use \line in markups where
8319         appropriate
8320         
8321 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8323         * scm/new-markup.scm (map-markup-command-list): helper function
8324         used in parser.yy to map markup commands on a markup list.
8326         * lily/parser.yy: get rid off < > in markups by treating { } as
8327         real lists.
8329         * lily/lexer.ll: remove < > from markup lexer mode.
8331         * scripts/convert-ly.py (conv): add rule for converting 
8332         \markup < > to \markup { }
8334         * ly/titling-init.ly: 
8335         * input/test/coriolan-margin.ly: 
8336         * input/regression/new-markup-syntax.ly: 
8337         * input/regression/new-markup-scheme.ly: 
8338         * input/regression/multi-measure-rest-text.ly: 
8339         * input/regression/markup-stack.ly: 
8340         * input/regression/markup-score.ly: 
8341         * input/regression/instrument-name-markup.ly: 
8342         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
8343         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
8344         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
8345         * input/wilhelmus.ly: 
8346         * Documentation/user/notation.itely: 
8347         * Documentation/user/music-glossary.tely: 
8348         * Documentation/user/changing-defaults.itely: change < > to { } in
8349         markups
8351 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8353         * lily/accidental-placement.cc (position_accidentals): shortcut if
8354         no accidentals to place.
8356 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8358         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
8359         typo s/ly:dimension ?/ly:dimension?/
8361         * input/regression/lily-in-scheme.ly: 
8362         * input/regression/music-function.ly: 
8363         * ly/spanners-init.ly (assertBeamSlope): 
8364         * scm/music-functions.scm (def-grace-function): add the paper
8365         argument to music function definitions.
8367 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8369         * lily/moment.cc (LY_DEFINE):
8370         ly:moment-main-{denominator,numberator}, new function.
8372         * lily/score-engraver.cc (typeset_all): assign to column on basis
8373         of axis-group-parent-X setting.
8375         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
8376         add_element() on basis of axis-group-parent-Y setting.
8378         * lily/grob.cc: add axis-group-parent-{XY} properties.
8380         * input/regression/spacing-stick-out.ly: new file.
8382         * lily/simple-spacer.cc (add_columns): use binary search for
8383         setting column rods. Changes O(n^2) to O(n log(n)) for
8384         constructing spacing problem from columns.
8385         (add_columns): read allow-outside-line to make sure no texts stick
8386         out.
8387         (solve): Simple_spacer::is_active() only determines
8388         satisfies_constraints_ for non-ragged typesetting.
8390         * lily/simultaneous-music.cc (to_relative_octave): only set
8391         old_relative_used if return pitch actually changed.
8393         * scm/define-context-properties.scm
8394         (all-user-translation-properties): change to match implementation.
8396         * python/lilylib.py: Replace re.match by re.search and adds "-c
8397         showpage" to the gs command line (Johannes Schindelin)
8399         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
8400         before processing. Prevents crash when inf is in the extent.
8402         * scm/define-markup-commands.scm (note-by-number): add "s" to
8403         "noteheads-" glyphname.
8405         * lily/parser.yy (Generic_prefix_music): supply parser argument to
8406         music function as well.
8407         
8408 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8410         * VERSION: release 2.5.2
8412         * Documentation/user/changing-defaults.itely (Creating titles):
8413         add breakbefore variable.
8415         * lily/paper-book.cc (set_system_penalty): new function. Set
8416         penalty_ based on breakBefore setting
8418         * lily/context-specced-music-iterator.cc (construct_children):
8419         interpret special context id $uniqueContextId 
8421         * lily/context.cc (create_unique_context): new method. Move
8422         creation of unique (\new) contexts into interpreting phase. This
8423         makes
8425           foo= \new Staff ..
8426           << \foo \foo >>
8428         produce 2 staves.
8429         
8431         * scm/define-music-properties.scm (all-music-properties): add
8432         quoted-voice-direction
8434         * ly/music-functions-init.ly: killCues function.
8436         * scm/music-functions.scm (cue-substitute): move creation of voice
8437         contexts further to the back. 
8439 2004-11-25  Werner Lemberg  <wl@gnu.org>
8441         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
8442         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
8444 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
8446         * buildscripts/guile-gnome.sh: Fixed typo.
8448 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8450         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
8452         * scripts/abc2ly.py (dump_slyrics): add ord(). 
8454         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
8455         to regular engraver. 
8457 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8459         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
8461 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8463         * scm/define-markup-commands.scm (fill-line): Typo.
8465         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
8466         and newer.
8468 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
8470         * ly/dynamic-scripts-init.ly: Fixed typo.
8472 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8474         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
8475         note-head, to have different attachment points for up and down.
8477         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
8479         * mf/feta-generic.mf (else): remove solfa.
8481         * mf/feta-bolletjes.mf (tishape): remove unicode test.
8483         * scm/define-context-properties.scm
8484         (all-user-translation-properties): add shapeNoteStyles property.
8486         * lily/shape-note-heads-engraver.cc (process_music): new file.
8488         * lily/event.cc (transpose): call Event::transpose() for
8489         transposing the tonic.
8491 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8493         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
8494         Unicode/OpenType and AFM.
8496         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
8498 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8500         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
8502         * lily/context.cc (Context): unprotect key from ctor.
8504         * scm/stencil.scm (stack-lines): return empty-stencil if argument
8505         is '()
8506         (stack-stencils): idem.
8508         * Documentation/user/changing-defaults.itely (Creating titles):
8509         document new title layout options.
8511         * lily/parser.yy (lilypond_header_body): copy previous
8512         $globalheader if present.
8514         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
8515         ly:module-copy
8516         
8517         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
8519         * scm/titling.scm: remove old titling functions
8521         * lily/stencil.cc (translate): remove absolute dimension.
8523         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
8524         via markup.
8526         * scm/page-layout.scm (marked-up-headfoot): create header/footer
8527         field from user-supplied markup
8529         * scm/define-markup-commands.scm (on-the-fly): new markup
8530         command. Enter SCM markup procedure directly in Scheme.
8531         (fromproperty): new markup command. Read markup from props argument.
8533         * scm/titling.scm (marked-up-title): create title via
8534         user-specified markup. 
8536         * scm/define-markup-commands.scm (column): remove empty stencils
8537         from column.
8539         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
8540         not have side-effect of creating variable stub.
8542         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
8544 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8546         * scm/encoding.scm (coding-alist): 
8547         * scm/font.scm (add-ec-fonts):
8548         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
8549         Extended-TeX-Font-Encoding---Latin.
8551         * lily/side-position-interface.cc (general_side_position): Add
8552         actual offset to error message (avoid constant error messages).
8554         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
8555         block.
8557         * lily/font-select.cc (select_encoded_font)
8558         (get_font_by_mag_step, get_font_by_design_size): 
8559         * lily/modified-font-metric.cc (Modified_font_metric): 
8560         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
8562         * scm/encoding.scm (coding-alist): Add fetaDynamic.
8563         (read-encoding-file): Bugfix: do not require space after bracket.
8565         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
8566         these do not exist.
8568 2004-11-20  Graham Percival  <gperlist@shaw.ca>
8570         * Documentation/user/notation.itely: added info about typesetting
8571         boxed bar numbers.
8573 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8575         * flower/interval.cc (T_to_string): gcc4 fixes.
8577         * scm/define-markup-commands.scm (fill-line): use
8578         stack-stencils. This fixes problems with putting already centered
8579         stencils in a line.
8581         * VERSION: release 2.5.1
8583         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
8585 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8587         * input/example-[1-3].ly: simplify.
8589         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
8591         * scm/output-ps.scm (new-text): new function. Use glyphshow to
8592         show glyphs.
8594         * scm/encoding.scm (decode-byte-string): new function.
8596         * scripts/convert-ly.py (conv): add warning about
8597         set-global-staff-size.
8599         * Doxyfile: add. 
8601         * scripts/convert-ly.py (conv): add raggedlastbottom rule
8602         (conv): warn for TextSpanner split.
8603         (conv): warn for textheight.
8605 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8607         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
8608         building the documentation, info with images are installed.
8609         (final-install): Fix description.  Mention sourcing of login
8610         scripts (instead of running).
8612 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8614         * Debian lmodern support.  Note that LilyPond will issue warnings
8615         
8616             no such encoding: "FontSpecific"
8618           The font selection mechanism wants to get the encoding from the
8619           font itself, but the idea of lmodern is that it is usable with
8620           different encodings, ie, Lily should get the encoding from the
8621           font tree, rather than the font itself.  This would require some
8622           more work.
8623         
8624         * configure.in: Test for and accept lmodern if EC fonts not found.
8626         * scm/framework-tex.scm (font-load-command): TeX font name
8627         mangling for latin1 encoded cork-lm fonts.
8628         (convert-to-ps): Load lm.map if available.
8630         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
8631         available.
8633         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
8635         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
8636         available.
8638         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
8639         path for absolute file name, that is silly.
8641         * lily/score-engraver.cc (initialize): 
8643         * Documentation/user/GNUmakefile (local-install-info): Invoke
8644         install-info --remove first.
8646         * #include cleanup (Andreas Scherer).
8648 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
8650         * input/test/script-abbreviations.ly: fix typos.
8652 2004-11-17  Werner Lemberg  <wl@gnu.org>
8654         * python/lilylib.py (options_help_str): Support pretty-printing of
8655         newlines in fourth element of option description.
8657         * scripts/lilypond-book.py (option_definitions): Use new lilylib
8658         feature.
8659         Sort options.
8661         * Documentation/user/lilypond-book.itely: Finish update.
8663 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8665         * Documentation/user/macros.itexi: Add comment about \command.
8667         * Documentation/user/lilypond.tely:
8668         * Documentation/user/lilypond-book.itely: Fix names of lilypond
8669         and lilypond-book nodes, so that `info lilypond' visits the manual
8670         at top level, and `info lilypond-book' visits the lilypond-book
8671         section.
8673         * Documentation/user/GNUmakefile (local-install-info): Fix rules
8674         and packager messages.
8676         * lily/pangofc-afm-decoder.cc: Update test.
8678 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8680         * scm/lily-library.scm (char->unicode-index): New function.
8682         * scm/output-gnome.scm: 
8683         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
8685         * Proper naming of file name throughout; s/filename/file[-_]name/.
8687         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
8689         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
8691 2004-11-16  Werner Lemberg  <wl@gnu.org>
8693         * scripts/lilypond-book.py: The Lord has commanded me to use only
8694         tabs for indentation.  Your humble servant obeys.
8696 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8698         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
8699         including font, if LilyPond-feta font is only feta font in path.
8701         * scm/output-gnome.scm (text): Revert to file name of font if font
8702         has no name.  Fixes ec font selection.
8703         (char): Bugfix: do not utf8 twice.  Fixes clefs.
8705         * scm/framework-svg.scm:
8706         * scm/output-svg.scm: New file.  TODO: figure out how to
8707         do character by index in font.
8709         * scm/output-sodipodi.scm: Remove.
8711         * scm/output-ps.scm (stem): Remove.
8713 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8715         * scm/output-gnome.scm (beam): New function.
8716         (slur): Round corners.
8717         (round-filled-box): Round corners.
8719 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8721         * scm/output-gnome.scm (beam): add function.
8722         (draw-line): new routine.
8723         (dashed-line): stub; call draw-line
8724         (polygon): new routine.
8726 2004-11-15  Werner Lemberg  <wl@gnu.org>
8728         * Documentation/user/lilypond-book.itely: Revise section on
8729         lilypond-book options.
8730         Other minor fixes.
8732         * scripts/lilypond-book.py: Change indentation to 4.
8733         Minor formatting.
8735 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8737         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
8738         grobs that have tweaks specced.
8739         
8740 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
8742         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
8744 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8746         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
8747         actual char #, not 0 based index.
8749         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
8751         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
8752         Warning: do make -C mf clean.
8754         * lily/context-property.cc: Compile fix.
8756         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
8757         Grok ec-fonts, braces and dynamics.
8759         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
8761 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8763         * lily/include/tweak-registration.hh: new file.
8765         * lily/tweak-registration.cc: new file.
8767         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
8768         saving tweaks.
8770         * scm/output-gnome.scm (text): comment dribble.
8772 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8774         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
8776         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
8777         path-def before using.  Fixes muchtomany slurs in wrong places
8778         bug.
8780 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8782         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
8784         * lily/include/object-key-undumper.hh (Module): new file.
8786         * lily/object-key-undumper.cc (Module): New file. Deserialize
8787         keys. SCM bindings
8789         * lily/object-key-dumper.cc (Object_key_dumper): idem.
8790         Provide SCM bindings.
8792         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
8793         new file. Serialize object keys.
8794         
8795         * lily/object-key.cc (dump): new function.
8796         (as_scheme): new virtual function
8797         (undump): new function
8798         (undumpers): new table.
8800         * lily/include/global-context.hh (Context): take \score key upon init.
8802         * lily/object-key-dumper.cc (serialize_key): new file.
8804         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
8806         * lily/lily-lexer.cc: remove \quote.
8808         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
8810         * lily/context.cc (Context): take key argument in ctor.
8811         (create_context): new function
8813         * lily/grob.cc (Grob): take key argument in ctor.  
8815         * lily/lilypond-key.cc (do_compare): new file.
8817         * lily/object-key.cc (Object_key): new file.
8819         * lily/include/object-key.hh (class Object_key): new file.
8821         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
8823 2004-11-13  Graham Percival  <gperlist@shaw.ca>
8825         * Documentation/user/lilypond-book.itely: add small warning about
8826         noindent default in lilypond-book.
8828         * Documentation/user/converters.itely: add examples for convert-ly.
8830         * Documentation/user/examples.itely: change version string in templates
8831         to 2.4.0.
8833 2004-11-12  Karl Hammar  <karl@aspodata.se>
8835         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
8836         cmdline, use xargs instead (backportme)
8838 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
8839         
8840         * Documentation/user/: Numerous fixes in the user manual.
8842 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8844         * lily/parser.yy (re_rhythmed_music): search music expression for
8845         context-id, surround by \new Voice if not found. Fixes:
8846         addlyrics-second-staff.ly
8848         * VERSION: 2.5.0 released.
8849         
8850 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8852         * Documentation/index.html.in: Fix url to one big page.  (backportme)
8854         * Documentation/user/GNUmakefile: Separate rules for split and
8855         unsplit html documents.  Remove perl massaging.  (backportme)
8857 2004-11-11  Graham Percival  <gperlist@shaw.ca>
8859         * Documentation/user/lilypond-book.itely: add short warning about
8860         \lilypond{} in LaTeX docs.
8862 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8864         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
8865         found.  (backportme)
8867         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
8868         version requirement.  (backportme)
8870         * configure.in: Be explicit about old versions of
8871         ec-fonts-mtraced.  (backportme)
8873         * lily/context-selector.cc (set_tweaks): New function.
8874         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
8875         web with -DTWEAK.
8877         * Documentation/user/introduction.itely (Automated engraving):
8878         Remove fragment option.  Fixes web.
8880         * lily/context-property.cc (make_item_from_properties):
8881         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
8882         #ifdef.
8884         * scm/define-context-properties.scm
8885         (all-internal-translation-properties): Add tweakRank and tweakCount.
8887         * lily/grob.cc: 
8888         * scm/define-grob-properties.scm (all-internal-grob-properties):
8889         Add tweak-rank and tweak-count.
8891 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8893         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
8894         New function.
8895         (text): Use them.
8897         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
8898         animated/opaque grob dragging tweaks.
8900         * buildscripts/guile-gnome.sh: Update.
8902 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8904         * scm/define-grobs.scm (all-grob-descriptions): Added
8905         line-interface to the LigatureBracket object.
8907 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8909         * scm/framework-gnome.scm (item-event): Support non-animated mouse
8910         dragging tweaks.
8912         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
8914         * lily/context-selector.cc (store_context): New function.
8916         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
8917         (store_grob): New function.
8918         (identify_grob): Add Moment parameter.
8920         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
8921         exists.
8923         * scm/framework-gnome.scm (save-tweaks): Write as alist.
8925 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8927         * scm/framework-gnome.scm (item-event): Print grob id.
8928         (save-tweaks): New function.
8929         (tweak): New funtion.
8930         (item-event): Use it, bound to arrow keys.
8932         * lily/context-property.cc (make_item_from_properties): Register grob.
8933         * lily/context.cc (add_context): Register context.
8935         * lily/include/context-selector.hh:
8936         * lily/include/grob-selector.hh:
8937         * lily/context-selector.cc:
8938         * lily/grob-selector.cc: New file.
8940 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8942         * lily/slur.cc: add 'positions to interface
8944         * lily/main.cc: reinstate PS as standard output format. 
8946         * scm/framework-tex.scm (output-preview-framework): print systems
8947         up to first non title system.
8949         * lily/grace-engraver.cc (start_translation_timestep): split
8950         scm_cadddr
8951         
8952 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8954         * lily/quote-iterator.cc (Module): remove old quote-iterator
8956         * scm/define-music-types.scm (music-descriptions): move
8957         NewQuoteMusic over QuoteMusic
8959         * Documentation/user/notation.itely (Formatting cue notes): use
8960         \cueDuring.
8962         * lily/new-quote-iterator.cc (quote_ok): new function.
8964         * input/regression/quote-cue-during.ly: new file.
8966         * input/regression/quote-grace.ly: new file.
8968         * scm/define-context-properties.scm (Module): change definition of
8969         graceSettings
8971         * lily/context-property.cc (Module): rename from
8972         translator-property.cc
8974         * lily/context.cc (context_name_symbol): new function
8976         * lily/grace-engraver.cc: new file. Set properties for grobs based
8977         on the grace-ness of now_moment().
8979         * scm/music-functions.scm (add-grace-property): use list
8980         iso. vector for graceSettings
8981         remove set-{start,stop}-grace-properties. 
8983         * lily/new-quote-iterator.cc (construct_children): set
8984         quote_outlet_ if no quoted-context-{id,type} specified.
8986         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
8988         * lily/parser.yy (command_element): remove \quote.
8990         * ly/music-functions-init.ly (location): add quoteDuring music
8991         function. 
8993         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
8994         optional semicolon. (backportme)
8996 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8998         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
8999         need to link to GUILE et al.
9001 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9003         * scm/define-music-properties.scm (all-music-properties): add
9004         quoted-context-type, quoted-context-id.
9006         * scm/lily.scm (type-check-list): new function.
9007         
9008         * scm/lily-library.scm: new file. Generic library routines.
9010         * lily/parser.yy (Generic_prefix_music): move typechecking out of
9011         parser.
9013         * ly/music-functions-init.ly: add quoteDuring function.
9015         * lily/include/music-iterator.hh (class Music_iterator): rename
9016         set_translator -> set_context
9018         * lily/parser.yy (Generic_prefix_music_scm): add
9019         MUSIC_FUNCTION_SCM_SCM_MUSIC
9021         * scm/lily.scm (sanitize-command-option): new function. (backportme)
9023         * scm/framework-tex.scm (header): sanitize TeX paper size.
9024         (backportme)
9026 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9028         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
9030         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
9032         * scm/framework-tex.scm (font-load-command): Use T1 if no
9033         font-encoding set.  (backportme)
9035         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
9036         exists before converting.  (backportme)
9038         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
9039         exists before converting.  (backportme)
9040         (convert-to-ps): Remove .ps file if it exists before
9041         converting.  (backportme)
9043         * lily/lexer.ll: Remove extra progress newline, use present tense.
9045         * scm/paper.scm (paper-alist): public.
9046         * scm/framework-tex.scm (convert-to-ps):
9047         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
9048         command line.
9050 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9052         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
9054         * lily/recording-group-engraver.cc (derived_mark): mark
9055         now_events_. (backportme)
9057 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9059         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
9061         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
9062         invoking latex. (backportme.)
9064         * lily/stem.cc (off_callback): center stems for all rest stems.
9066 2004-11-05  Werner Lemberg  <wl@gnu.org>
9068         * Documentation/user/lilypond.tely: Add more guidelines for writing
9069         lilypond texinfo documents.
9071 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
9073         * Documentation/index.html.in: remove <hr>.
9075         * THANKS: change 2.3 to 2.4.
9077 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
9079         * scm/output-gnome.scm: More fontconfig comment.
9081 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
9083         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
9084         <package> directory in $(builddir)/share according with
9085         PACKAGE_NAME defined in the VERSION file.
9087 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9089         * lily/beam.cc (rest_collision_callback): use local beam
9090         multiplicity.
9092         * input/regression/stem-stemlet.ly: new file.
9094         * lily/stem.cc (add_head): store rests as well.
9096         * scm/define-grob-properties.scm (all-user-grob-properties): add
9097         stemlet-length
9099         * lily/stem.cc: store rests as well.
9100         
9101         * input/regression/new-slur.ly: mention forcing.
9103 2004-11-04  Werner Lemberg  <wl@gnu.org>
9105         * Documentation/user/*: A new round of layout fixes and document
9106         structure cleanup.
9108 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
9110         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
9112 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9114         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
9116 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9118         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
9120         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
9122         * lily/main.cc (main): Invoke identify.
9124         * scm/lily.scm (postscript->pdf): Remove progress newline.
9125         Write progress to stderr.
9127         * lily/paper-book.cc (output): Remove progress newline.
9129         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
9130         gettext on user messages, and remove whitespace.
9132         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
9134         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
9135         argv[0] (Thomas Scharkowski).
9137         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
9138         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
9139         for ec-fonts-mtraced.
9141         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
9142         --srcdir build (Bertalan).
9144         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
9145         headers and library too (Laura Conrad).
9147         * Documentation/topdocs/INSTALL.texi (Top): Mention development
9148         package for guile too (Laura Conrad).
9150         * lily/main.cc (usage): Typo.
9152 2004-11-02  Werner Lemberg  <wl@gnu.org>
9154         * Documentation/user/notation.ly: More fixes to improve appearance.
9156         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
9157         better output for multicolumn tables.
9159 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9161         * lily/main.cc (dir_info): Fixed typo in the printouts.
9163 2004-11-01  Werner Lemberg  <wl@gnu.org>
9165         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
9166         of output.
9167         Set `per_line' to 2; replace hard-coded value with it.
9169         * Documentation/user/*: Many fixes to improve appearance of
9170         printed manual.
9172 2004-11-01  Werner Lemberg  <wl@gnu.org>
9174         * Documentation/user/changing-defaults.itely,
9175         Documentation/user/notation.ly,
9176         Documentation/user/programming-interface.itely: Use @/.
9177         Fix formatting of some lilypond snippets and tables.
9179         * scripts/lilypond-book.py (compose_ly): Provide useful default
9180         for LINEWIDTH in `override'.
9182 2004-10-31  Graham Percival  <gperlist@shaw.ca>
9184         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
9186 2004-10-31  Werner Lemberg  <wl@gnu.org>
9188         Resetting @exampleindent to `5' gives ugly results with texinfo's
9189         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
9190         (if not quoting) to change @exampleindent only locally.
9192         * scripts/lilypond-book.py (NOQUOTE): New variable.
9193         (output) [LATEX]: Remove AFTER and BEFORE.
9194         [TEXINFO]: Remove AFTER and BEFORE.
9195         Fix QUOTE and VERBATIM pattern.
9196         Add NOQUOTE pattern.
9197         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
9198         and BEFORE.
9199         [output_texinfo]: Use NOQUOTE.
9201 2004-10-31  Graham Percival  <gperlist@shaw.ca>
9203         * Documentation/user/changing-defaults.itely: clarify paper
9204         size commands with correct info.
9206         * Documentation/user/lilypond-book.itely: add more docs for
9207         filename extensions.
9209 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9211         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
9212         (PATCH_LEVEL): start 2.5.0.
9214 2004-10-30  Graham Percival  <gperlist@shaw.ca>
9216         * Documentation/user/notation.itely: add warning about bar numbers
9217         in multistaff music, add warning about quoting grace notes.
9219         * Documentation/user/changing-defaults.itely: clarify paper size commands,
9220         add missing subsubtitle entry to Creating titles.
9222         * Documentation/user/tutorial.itely: change 3.0 references to 2.4.
9224 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9226         * scripts/convert-ly.py (conv): fixed \context Foo = mixedCaps
9227         case.
9228         (conv): add dummy 2.4.0 conversion rule.
9230         * Documentation/user/lilypond.tely: add @finalout.
9232         * lily/slur-scoring.cc (enumerate_attachments): use stem_extent_
9233         for attaching, fixes slur/stem left attachment of
9234         downslur/downstem.
9236         * lily/quote-iterator.cc (process): use <= for comparisons. Fixes
9237         quote problem if for last note of quoted sequence. 
9239         * input/regression/part-combine-text.ly (comm): add expect strings.
9241 2004-10-30  Werner Lemberg  <wl@gnu.org>
9243         * Documentation/user/examples.itely: Improved layout.
9245         * Documentation/invoking.itely: Use `@/' to insert breakpoints.
9247         * Documentation/macros.itexi (@inputfileref) [@tex]: Use `@/'.
9249         * Documentation/notation.itely: Use `@/'.
9250         Other layout fixes.
9252 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9254         * lily/part-combine-iterator.cc (unisono): examine last_playing_
9255         (not state_), this fixes a2 printing after chord.
9257         * input/regression/no-staff.ly: fix octave, revise syntax.
9259         * input/regression/lyrics-bar.ly (texidoc): fixes.
9261         * input/regression/beam-dir-functions.ly (Module): remove from regtest
9263         * input/regression/accidentals.ly (Module): remove from regtest.
9265         * lily/parser.yy (Prefix_composite_music): 
9266         oops. Chords should be unrelativable, not bass figures untransposable.
9268         * VERSION: 2.3.26 released.
9269         
9270         * lily/completion-note-heads-engraver.cc (try_music): only return
9271         something when is_first_ is true. Fixes lyrics with completion_heads. 
9273         * make/lilypond-vars.make: add scripts/out/ to PATH, to find ps2png. 
9275         * scm/lily.scm (ly:system): new function. Catches uninstalled
9276         ps2png.
9278 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9280         * Documentation/user/notation.itely: remove
9281         @hyphenatedinternalsref.
9283 2004-10-29  Werner Lemberg  <wl@gnu.org>
9285         * scm/framework-tex.scm (dump-line): Fix dimensions for \lybox.
9287         * scripts/lilypond-book.py (no_options): New dictionary.
9288         (simple_options): New list.
9289         (ly_options): Remove NOINDENT and EXAMPLEINDENT patterns.
9290         (compose_ly): Use `no_options' and `simple_options'.
9291         Fix logic of option handling.
9292         Handle `linewidth' option without parameter.
9294 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9296         * lily/lookup.cc (triangle): use (0, interval.length()) for X
9297         extent, since the stencil is translated later on.
9299         * lily/ledger-line-spanner.cc (print): swap linear_combination
9300         arguments, effectively shortens ledger line. 
9302         * Documentation/user/GNUmakefile
9303         ($(outdir)/lilypond/lilypond.html): use find to remove files.
9305         * lily/main.cc: --no-pages option.
9307 2004-10-28  Carl Sorensen  <carldsorensen@comcast.net>
9309         * Documentation/user/notation.itely (Fret diagrams): add extra
9310         notes to example to avoid collisions between fret diagrams.
9312 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9314         * Documentation/user/notation.itely (Automatic note splitting):
9315         note about lyrics. 
9317         * Documentation/user/converters.itely (Invoking convert-ly): note
9318         about version numbers. 
9320         * scripts/abc2ly.py (dump_score): revise lyric dumping
9322         * scripts/mup2ly.py (pre_processor_commands): always open file.
9324         * scripts/etf2ly.py (Frame.calculate): always close \grace.
9325         (Etf_file.dump): add \version
9327         * VERSION: 2.3.25 released.
9329         * lily/scm-option.cc: add 'resolution to ly:get-option argument
9330         list.
9332 2004-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9334         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-origin
9336 2004-10-28  Werner Lemberg  <wl@gnu.org>
9338         * Documentation/user/music-glossary.tely: More fixes to improve
9339         appearance with DVI output.
9341         * scripts/lilypond-book.py (compose_ly): Use 0.4in for
9342         EXAMPLEINDENT.  This is the maximum value for quotation environments
9343         used in `texinfo.tex' -- many warnings in lilypond.dvi are now gone.
9345 2004-10-27  Werner Lemberg  <wl@gnu.org>
9347         * Documentation/user/music-glossary.tely: Revised.
9349 2004-10-26  Carl Sorensen  <carldsorensen@comcast.net>
9351         * input/test/fret-diagram.ly: insert breaks, remove raggedright to
9352         improve fret diagram spacing in printed output.
9354         * Documentation/user/notation.itely (Fret diagrams): Remove raggedright
9355         from options for the example so fret-diagrams won't overlap
9356         one another.
9358 2004-10-26  Werner Lemberg  <wl@gnu.org>
9360         * scripts/lilypond-book.py: Some additional formatting for
9361         orthogonality.
9362         (ly_options) [*]: Format strings.
9363         [RAGGEDRIGHT]: Don't set `indent'.  This is now properly handled
9364         by `compose_ly'.
9365         (output) [LATEX][OUTPUT]: Format string and simplify.
9366         (PREAMBLE_LY, FRAGMENT_LY): Format string.
9367         (classic_lilypond_book_compatibility): Take key/value pair as
9368         parameter.
9369         Return key/value pair.
9370         (compose_ly): Rewritten, taking the snippet type as third parameter. 
9371         The default values are now set more sensible, and a `linewidth'
9372         option is no longer overwritten under some circumstances.
9374         * Documentation/user/music-glossary.tely: Replace all accented
9375         character macros with latin-1 codes.
9377 2004-10-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9379         * lily/music-function.cc (ly_make_music_function): when an
9380         argument predicate is markup?, the signature keyword becomes
9381         "markup" iso "scm".
9383         * lily/lexer.ll (music_function_type): new MUSIC_FUNCTION_*MARKUP*
9384         tokens, for functions which signatures contain "markup".
9386         * lily/parser.yy (Generic_prefix_music_scm): add treatment for new
9387         MUSIC_FUNCTION_*MARKUP* tokens.
9389 2004-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9391         * input/regression/lyrics-bar.ly: Make StaffGroup accept the new
9392         Lyrics context.
9394 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9396         * python/lilylib.py (make_ps_images): return list of output files.
9398         * lily/simple-spacer.cc (LY_DEFINE): for ragged, we can end with
9399         all springs tight, and still satisfy the constraints.
9401 2004-10-25  Werner Lemberg  <wl@gnu.org>
9403         * scripts/lilypond-book.py: s/option-sep/option_sep/.
9404         (format_res) [LATEX, TEXINFO]: Skip whitespace before comma also.
9405         (snippet_res): Fix regexps and make them ignore whitespace properly.
9406         (compose_ly): Use `re.split' instead of `string.split' to remove
9407         surrounding whitespace.
9408         Some formatting to get more consistency.
9410 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9412         * VERSION: 2.3.24
9413         
9414         * scm/define-context-properties.scm
9415         (all-user-translation-properties): add verticallySpacedContexts.
9417         * scm/define-grob-interfaces.scm (vertically-spaceable-interface):
9418         add interface
9420         * scm/define-grob-properties.scm (all-internal-grob-properties):
9421         add spaceable-staves
9423         * scm/define-grobs.scm (all-grob-descriptions): set
9424         vertically-spaceable-interface for VerticalAxisGroup and
9425         RemoveEmptyVerticalGroup
9427         * lily/system.cc (get_line): determine staff_refpoints_
9428         using spaceable-staves.
9430         * lily/score-engraver.cc (acknowledge_grob): ack
9431         vertically-spaceable-interface and verticallySpacedContexts to
9432         set spaceable-staves.
9434         * input/regression/new-slur.ly: add slur under 16th subbeam case.
9436         * lily/slur-scoring.cc (fill): init has_same_beam_ before use.
9438 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9440         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): tune
9441         minimumVerticalExtent tweaks. 
9443         * mf/feta-schrift.mf: include size of thumb appendix in
9444         bbox. Fixes: c-thumb-notehead.ly  
9446         * THANKS: add Meisters to the Development team.
9448         * scm/framework-tex.scm (convert-to-dvi): redirect output to
9449         /dev/null for non-verbose.
9451         * Documentation/user/invoking.itely (Invoking lilypond): add note
9452         about resource usage.
9454         * tex/GNUmakefile (TEX_FILES): add texinfo.cnf
9456         * stepmake/stepmake/texinfo-vars.make (MAKEINFO): add
9457         --enable-encoding
9459         * Documentation/user/lilypond.tely: add -*- coding: latin-1 -*- everywhere. 
9461         * Documentation/user/changing-defaults.itely (Text encoding):
9462         change to latin1.
9464         * Documentation/user/lilypond.tely: add language and encoding.
9466         * scm/define-grobs.scm (all-grob-descriptions): add
9467         line-interface.
9469         * configure.in (PKG_CONFIG_PATH): bump makeinfo version to 4.7
9471         * input/test/ossia.ly: font sizes for ossia.
9473         * scripts/convert-ly.py (conv): \context Foo = NOTENAME
9474         -> \context Foo = "NOTENAME".
9476         * lily/main.cc (determine_output_options): fix ordering.
9478 2004-10-24  Erik Sandberg  <ersa9195@student.uu.se>
9480         * THANKS: Added bughunters for 2.3.
9482 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9484         * Documentation/user/macros.itexi: use findex functions/internals
9485         objects.
9487         * scm/documentation-generate.scm (string-append): add syncodeindex
9489         * Documentation/user/tutorial.itely (A lead sheet): use \chords
9490         for tutoring chord names.
9492         * Documentation/user/lilypond.tely: remove @authors.
9494 2004-10-23  Werner Lemberg  <wl@gnu.org>
9496         * scm/framework-tex.scm (dump-page): Add width to \lybox call.
9497         Remove first two parameters of \lybox.
9498         Don't emit \vbox around \lybox.
9499         (dump-line): Add width to \lybox call.
9500         Remove first two parameters of \lybox.
9502         * tex/lilyponddefs.tex (\topalign, \leftalign): Removed.
9503         (\lyitem): Updated.
9504         (\lybox): Only take three parameters.
9505         Create box which has zero depth, only height.
9506         Center box vertically along the x-height of current font.
9508 2004-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9510         * VERSION (PACKAGE_NAME): release 2.3.23
9512         * scm/framework-tex.scm (convert-to-ps): add -E if filename
9513         contains .preview.
9515 2004-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9517         * lily/lyric-extender.cc (print): only run to right-bound if
9518         broken. This fixes input/regression/lyric-extender.ly
9520         * input/regression/beamed-chord.ly: removed.
9522         * Documentation/user/macros.itexi: add \global to definitions for
9523         feta macros.
9525         * po/fr.po: updated po file.
9527         * po/de.po: updated po file.
9529 2004-10-22  Werner Lemberg  <wl@gnu.org>
9531         * tex/lilyponddefs.tex (\lilypondend): Undo change from 2004-10-20.
9533 2004-10-21  Werner Lemberg  <wl@gnu.org>
9535         * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex
9536         (\lilypondexperimentalfeatures): Removed.
9538 2004-10-20  Jürgen Reuter  <reuter@ipd.uka.de>
9540         * Documentation/user/notation.itely: fixed 2 typos
9542 2004-10-20  Werner Lemberg  <wl@gnu.org>
9544         * scm/framework-tex.scm (header-end): Don't set \outputscale.
9545         (dump-line): Produce prettier output.
9547         * tex/lilyponddefs.tex: Comment all macros extensively.
9548         (\lilypondstart): Set \outputscale.
9549         Define \lilypondpagebreak and \lilypondnopagebreak here.
9550         Don't test for positive \lilypondpaperlinewidth -- this is always
9551         positive in the normal case (LilyPond produces bad output otherwise
9552         so we can safely ignore negative or zero values).
9553         (\lilypondend): Remove useless test for \lilypondbook.
9554         (\fetasixteen, \fetafont, \fetachar): Removed, unused.  We also
9555         don't input `feta20.tex'.
9557 2004-10-19  Graham Percival  <gperlist@shaw.ca>
9559         * Documentation/user/examples.itely: added texidoc lilypond-book
9560         template.
9562 2004-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9564         * cygwin/lilypond.hint: Update.
9566 2004-10-18  Carl Sorensen  <carldsorensen@comcast.net>
9568         * Documentation/user/notation.itely (Fret diagrams): Add documentation
9569         for fret diagram markups to user manual
9571         * scm/fret-diagrams.scm (fret-diagram-terse): Fix mistake in internal
9572         documentation for fret-diagram-terse
9574         * Documentation/user/notation.itely: Added section on fret diagrams.
9576 2004-10-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9578         * scripts/convert-ly.py (usage): Fix --help description.  Apply
9579         range also for --show-rules.
9581 2004-10-18  Werner Lemberg  <wl@gnu.org>
9583         * scripts/lilypond-book.py (Snippet, Include_snippet)
9584         [replacement_text]: Use group `match'.
9586 2004-10-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9588         * Documentation/user/macros.itexi: Use @ref instead of @inforef
9589         for html.  Apparently, ``you should'' in texinfo documentation is
9590         merely a guideline that can safely be ignored.
9592         * elisp/lilypond-init.el (auto-mode-alist): Add .ily to
9593         auto-mode-alist.
9595         * input/test/engraver-example.ily: 
9596         * input/regression/allfontstyle.ily: Rename, update users.
9598 2004-10-16  Graham Percival  <gperlist@shaw.ca>
9600         * Documentation/user/lilypond-book.itely: add more details about
9601         building .lytex files.
9603         * Documentation/user/examples.itely: added piano-lyrics template
9605         * input/template/piano-4-voices.ly, piano-lyrics.ly: remove.
9607         * input/GNUmakefile: remove "templates" from build subdirs.
9609         * input/template: removed.
9611 2004-10-16  Werner Lemberg  <wl@gnu.org>
9613         * scripts/lilypond-book.py (snippet_res): Define group `match'
9614         everywhere.
9615         Accept more spaces between commands and its arguments and options.
9616         Fix some regexps.
9617         (output): Remove some newlines in string values and suppress spaces
9618         in output.
9619         (output_texinfo): Output `output_print_filename' only if not empty.
9620         (Lilypond_snippet)[find_toplevel_snippets]: Use group `match'.
9622 2004-10-16  Werner Lemberg  <wl@gnu.org>
9624         * scm/framework-tex.scm (font-load-command, define-fonts): Protect
9625         some TeX line ends with `%' to avoid additional horizontal space in
9626         output.
9628         * scripts/lilypond-book.py: Unexpand spaces to tabs.
9629         (snippet_res): Use `x' modifier to represent regular expressions
9630         in a friendlier way.
9631         Fix `lilypond_block' for LaTeX to accept `%\end{lilypond}'.
9632         (find_toplevel_snippets): Don't use indices from match group 0,
9633         which is the whole pattern space, but group 1.
9635 2004-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9637         * flower/include/direction.hh (enum Direction): add
9638         DIRECTION_LIMIT
9640 2004-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9642         * po/fr.po: new po file.
9644 2004-10-15  Jan Nieuwenhuizen  <janneke@gnu.org>
9646         * Documentation/user/macros.itexi: Do not construct external
9647         references using @uref.  That results in broken links.
9649         * lily/slur.cc (outside_slur_callback): Use int in for loop;
9650         avoids g++-3.4.1 enum beature.
9652 2004-10-13  Graham Percival  <gperlist@shaw.ca>
9654         * Documentation/user/examples.itely: added lilypond-book template.
9656         * Documentation/user/lilypond-book.itely: added filename extension
9657         page.
9659 2004-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9661         * debian/rules (binary-indep): Link images for info.
9663         * elisp/lilypond-mode.el (LilyPond-command): Set XEDITOR.  Cool
9664         feature nicked from jEdit.
9666 2004-10-12  Pedro Kroger  <kroeger@pedrokroeger.net>
9668         * Documentation/user/introduction.itely: Minor corrections.
9670         * Documentation/user/notation.itely: Minor corrections.
9672         * Documentation/user/tutorial.itely: Minor corrections.
9674 2004-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9676         * scm/framework-ps.scm (page-header): Fix Layout renaming bug.
9678         * scm/*.scm:
9679         * ly/paper-defaults.ly: Use papersizename only.
9681 2004-10-11  Werner Lemberg  <wl@gnu.org>
9683         * tex/lilyponddefs.tex (\lyitem): Don't use \topalign to make
9684         \raise work with positive values.
9686 2004-10-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9688         * Documentation/user/notation.itely (Multi measure rests): Update
9689         the docs corresponding to the implementation change from 2004-10-08.
9691 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9693         * VERSION (MY_PATCH_LEVEL): release 2.3.22
9695         * scm/part-combiner.scm (determine-split-list): reinstate
9696         playing+resting case. 
9698         * Documentation/user/invoking.itely (Reporting bugs): rename.
9700         * lily/lexer.ll (Lily_lexer): bump version req to 2.3.22.
9702         * lily/parser.yy (Prefix_composite_music): change no-transposition
9703         for mode_changing_head to figures too.
9705         * lily/phrasing-slur-engraver.cc (acknowledge_grob): do something
9706         with normal slurs too.
9707         
9708         * lily/slur-scoring.cc (move_away_from_staffline): new function.
9709         (get_base_attachments): move away attachment point for breaks
9710         similar to attachment points on slurs (staffline collision, and
9711         half a space of padding)
9713         * scm/page-layout.scm (ly:optimal-page-breaks): don't compute
9714         force twice.
9716         * lily/simple-spacer.cc (LY_DEFINE): if line too long in ragged
9717         mode, return #f.        
9719         * scm/page-layout.scm (ly:optimal-page-breaks): set force = 0.0
9720         for last page if raggedlast. 
9722         * lily/parser.yy (Prefix_composite_music): untransposable is for
9723         FiguredBass, not ChordNames
9725 2004-10-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9727         * scm/framework-tex.scm: Merge fix.
9729 2004-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9731         The grand \paper -> \layout, \bookpaper -> \paper renaming.
9733 2004-10-10  Graham Percival  <gperlist@shaw.ca>
9735         * Documentation/user/notation.itely: add raggedright to a whole
9736         bunch of places.
9738 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9740         * scm/paper.scm (set-paper-dimension-variables): new
9741         function. Define dimension-variables explicitly in \paper too.
9742         This allows overriding linewidth inside \score { \paper { } }
9743         blocks
9745         * scm/framework-tex.scm (convert-to-ps): invoke dvips with -t
9746         landscape.
9747         (header): add landscape and papersize options.
9749 2004-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9751         * lily/*.cc: use robust_scm2moment() where appropriate.
9753         * lily/moment.cc (robust_scm2moment): new function.
9755         * scm/titling.scm (default-score-title): remove caps for piece.
9757         * VERSION: 2.3.21 released.
9758         
9759         * lily/include/slur-scoring.hh (struct Slur_score_state): new file
9761         * lily/include/slur-configuration.hh (class Slur_configuration):
9762         new file.
9764         * lily/slur-configuration.cc: new file. move scoring functions
9765         into Slur_configuration.
9767         * lily/slur-scoring.cc (Slur_score_state): change static functions
9768         to methods of Slur_score_state.
9770         * lily/bezier-bow.cc (Message): 
9772         * flower/include/interval-set.hh (Message): new file.
9774         * flower/interval-set.cc (Message): new file.
9776 2004-10-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9778         * lily/multi-measure-rest-engraver.cc (process_music): always
9779         generate MultiMeasureRestNumbers.
9781         * SConstruct (txt_files): switch of make dist
9783         * lily/bezier-bow.cc (get_slur_indent_height): change recipe to
9784         make sure that (indent < len / 3). This fixes progerror-max_h.ly
9786         * lily/multi-measure-rest-engraver.cc (process_music): make
9787         MultiMeasureRestNumber too.
9789 2004-10-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9791         * Documentation/user/notation.itely (Bar lines): Added a note that
9792         defaultBarType is to be changed in the Timing context.
9794 2004-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9796         * lily/include/guile-compatibility.hh: add file.
9798         * scm/framework-tex.scm (convert-to-dvi): use max of current
9799         extra_mem_top and 1M.
9801         * lily/kpath.cc (LY_DEFINE): ly_kpathsea_expand_variable. New
9802         function.
9804 2004-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9806         * scm/framework-tex.scm (convert-to-dvi): set extra_mem_top to 1M.
9808 2004-10-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9810         * lily/slur-scoring.cc (struct Slur_score_state): add
9811         has_same_beam_, edge_has_beams_, is_broken_ bools.
9812         (get_base_attachments): simpler Y attachment determination for
9813         broken slurs.
9815 2004-10-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9817         * buildscripts/texi2omf.py: Add hashbang.  Starting the script in
9818         bash without that is quite interesting.  Add xml and some omf
9819         keys.
9821 2004-10-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9823         * Documentation/user/macros.itexi: Add xml macros.
9825         * Documentation/user/GNUmakefile (extra-local-help): Add xml rules.
9827         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): Fix location.
9829 2004-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9831         * lily/break-substitution.cc (substitute_mutable_property_alist):
9832         only put property back into value if != SCM_UNDEFINED
9834         * lily/lyric-extender.cc (print): don't take common refpoint of
9835         null object if right_text isn't there.
9837         * lily/slur-scoring.cc (struct Slur_score_state): new
9838         struct. Collect scoring function arguments.
9839         (struct Slur_score_state): add musical_dy_
9840         (get_extra_encompass_infos): new function. Split off state
9841         computations.
9843         * scm/part-combiner.scm (determine-split-list): remove playing1
9844         and playing2.
9846 2004-10-02  Graham Percival  <gperlist@shaw.ca>
9848         * Documentation/index.html.in: remove link to templates.
9850         * Documentation/user/notation.itely: more small fixes.
9852 2004-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9854         * lily/timing-engraver.cc (process_music): move setting
9855         measure-length. This fixes spacing-whole-rest.ly
9857         * VERSION (PACKAGE_NAME): release 2.3.20
9858         
9859         * input/regression/quote-transposition.ly: update example
9861         * scm/define-music-properties.scm (all-music-properties): change
9862         meaning of instrumentTransposition.  It is now the pitch played
9863         that sounds as middle C. This means that instrumentTransposition
9864         can be \transposed. 
9865         Fixes: transpose-quote.ly
9867         * lily/parser.yy (command_element): reverse setting of
9868         instrumentTransposition
9870         * lily/pitch.cc (pitch_interval): rename.
9872         * lily/recording-group-engraver.cc (stop_translation_timestep):
9873         remove macrameing of accumulator and set_car/cdr.
9874         Fixes: transposition-quote.ly
9876         * lily/music.cc (transpose): fold Event::transpose() in.
9878         * lily/event.cc: remove Transpose. 
9880         * lily/recording-group-engraver.cc: cleanup.
9882         * ly/music-functions-init.ly (displayMusic): add function.
9884         * make/lilypond.fedora.spec.in: rename file.
9886         * lily/lily-lexer.cc (mark_smob): don't use ly_cdr() for getting
9887         to-be-marked objects. Use SCM_CELL_WORD_1 instead. 
9889         * Documentation/user/changing-defaults.itely (Changing context
9890         properties on the fly): typo.
9892         * lily/slur.cc (outside_slur_callback): try three sample points
9893         for determining collisions. This fixes: slur-script.ly.
9895 2004-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9897         * scripts/lilypond-book.py (ext2format): Add latex as Latex.
9899 2004-10-01  Graham Percival  <gperlist@shaw.ca>
9901         * Documentation/user/notation.itely: more small fixes.
9903         * Documentation/user/examples.itely: make new sections.
9905         * input/test/bar-lines.ly: improve output, fix bug.
9907         * Documentation/user/changing-defaults.itely: small fixes.
9909 2004-10-01  Werner Lemberg  <wl@gnu.org>
9911         * tex/lilyponddefs.tex (\lilypondECencoding): New command to handle
9912         T1 encoding in texinfo mode.
9913         (\lilypondstart): Use it.
9914         (\lilypondloop, \lilyponditerate): Removed.  Unused.
9916 2004-09-30  Werner Lemberg  <wl@gnu.org>
9918         * tex/lilyponddefs.tex (\lilypondstart): Define
9919         \lilypondfontencoding for both texinfo and latex mode.
9921         * scm/framework-tex.scm (font-load-command): Use
9922         \lilypondfontencoding.
9924 2004-09-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9926         * scm/framework-tex.scm (dump-page): take with-extents?
9927         argument. If true, output Y extents. Used for lilypond-book
9928         documents.
9930         * scripts/lilypond-book.py (PREAMBLE_LY): set dump-extents for
9931         \bookpaper.
9933         * lily/slur.cc (outside_slur_callback): epsilon-delta management
9934         for slur edges. Fixes: progerror-no-bezier-intersection.ly
9936         * scm/framework-tex.scm (dump-page): put stencil height in dumped
9937         page.
9939 2004-09-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9941         * Documentation/user/notation.itely (Multi measure rests):
9942         Improved example.
9944 2004-09-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9946         * lily/auto-beam-engraver.cc (test_moment): robustify.
9948 2004-09-28  Werner Lemberg  <wl@gnu.org>
9950         * scm/framework-tex.scm (font-load-command): Define proper font
9951         macro which sets font encoding if available.
9952         (define-fonts): Define \lilypondpaperinputencoding, to be taken
9953         from the \bookpaper block.
9955         * tex/lilyponddefs.tex (\lilypondstart): Use
9956         \lilypondpaperinputencoding for global input encoding.
9958 2004-09-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9960         * lily/score.cc (Score): oops. Copy error_found_ too.
9962 2004-09-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9964         * stepmake/stepmake/texinfo-rules.make: 
9965         * Documentation/GNUmakefile: --srcdir build fixes.
9967         * input/test/coriolan-margin.ly: Put papersize settings in \bookpaper.
9969         * Documentation/user/latex-lilypond-example.latex:
9970         * Documentation/user/latex-example.latex: Fix compile errors.
9971         Still buggy, need more love.
9973 2004-09-27  Werner Lemberg  <wl@gnu.org>
9975         * tex/lilyponddefs.tex (\lilypondstart): Use \frenchspacing.
9977 2004-09-26  Juergen Reuter  <reuter@ipd.uka.de>
9979         * Documentation/user/examples.itely: removed \midi block to
9980         simplify the example
9982         * Documentation/user/notation.itely: Removed superfluous
9983         TextSpanner tweakings (is already done by engraver-init.ly).
9984         Documented bug: vertical alignment of articulations.
9986         * Documentation/user/notation.itely, ly/engraver-init.ly
9987         (VaticanaVoice, GregorianTranscriptionVoice): Bugfix: TextSpanner
9988         padding.
9990         * Documentation/user/notation.itely, ly/engraver-init.ly: moved
9991         docu about TextSpanner padding bug from manual to engraver.ly
9992         (since it's workarounded and hence not user-visible any more)
9994 2004-09-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9996         * VERSION: release 2.3.19
9998 2004-09-26  Graham Percival  <gperlist@shaw.ca>
10000         * ly/property-init.ly: fix bug in displaying ledger lines while
10001         \hideNotes is on.
10003         * Documentation/user/notation.itely: more editing.
10005         * Documentation/user/examples.itely: add piano-dynamics template.
10007         * input/template/piano-dynamics.ly: remove.
10009         * Documentation/user/sound-output.itexi: more editing
10011 2004-09-25  Graham Percival  <gperlist@shaw.ca>
10013         * Documentation/user/notation.itely: more editing.
10015 2004-09-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10017         * scm/ly-from-scheme.scm (read-lily-expression): use ~s in format
10018         instead of ~a, to get #{ #"foo" #} actually printed to #"foo".
10020 2004-09-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10022         * lily/hairpin.cc (print): check columns of bounds, not bounds
10023         themselves.
10024         (print): robustify bound-padding lookup.
10026         * lily/*: ly_c[ad]+r -> scm_XXX , ly_c_pair_p -> scm_is_pair.
10028         * scripts/lilypond-book.py (Compile_error.process_include): catch
10029         Compile_error exception, and remove output .texi.
10031         * scm/define-music-properties.scm (all-music-properties): add
10032         error-found
10034         * lily/parser.yy (Music_list): add error-found to music with errors.
10036         * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors.
10038         * lily/book.cc (process): ignore books with errors
10040         * lily/include/score.hh (class Score): add error_found_ member.
10042         * lily/drum-note-engraver.cc (try_music): idem.
10044         * lily/note-heads-engraver.cc: remove start-playing-event.
10046         * lily/part-combine-iterator.cc (Part_combine_iterator): use
10047         BusyPlayingEvent to determine which voice was active last.
10048         (unisono): use last active to where to get unisono information
10049         from. This fixes: partcombine-rest.ly (again).
10051         * scm/part-combiner.scm (determine-split-list): cleanups
10053 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10055         * input/regression/lyric-extender.ly: simplify.
10056         complexify.
10058         * lily/lyric-extender.cc (print): use it to determine size of
10059         extender. Remove Lyric_extender::is_visible().
10061         * lily/extender-engraver.cc (acknowledge_grob): store lyric in
10062         next property.
10064         * lily/lyric-engraver.cc: remove get_current_rest().
10065         
10066 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10068         * input/regression/lyric-extender.ly: Fix and add test.
10070         * lily/extender-engraver.cc (stop_translation_timestep): Oops, typo.
10072 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10074         * lily/note-head.cc: remove Note_head::extent.
10076 2004-09-23  Graham Percival  <gperlist@shaw.ca>
10078         * Documentation/user/tutorial.itely: do manual style 2-space
10079         indents in examples
10081         * Documentation/user/notation.itely: more editing.
10083 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10085         * lily/lyric-engraver.cc (get_current_rest): New function.
10087         * lily/extender-engraver.cc (stop_translation_timestep): Use it:
10088         stop at rest.
10090         * lily/lyric-extender.cc (print): Fix crash (Russ Ross).
10092         * lily/slur-scoring.cc (get_bezier): Fix for broken beziers.
10094 2004-09-23  Juergen Reuter  <reuter@ipd.uka.de>
10096         * Documentation/user/examples.itely (Small ensembles): added
10097         example for transcription of mensural music
10099         * Documentation/user/notation.itely (The Lyrics context): fixed broken
10100         link to SATB vocal score
10102         * Documentation/user/notation.itely (System start delimiters):
10103         fixed typo: GrandStaff->StaffGroup
10105         * Documentation/user/notation.itely (Ancient articulations):
10106         removed obsolete comment on \episem bug
10108 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10110         * scm/framework-tex.scm (output-preview-framework): Fix invocation
10111         of header.
10113 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10115         * lily/dynamic-engraver.cc (acknowledge_grob): attach hairpin
10116         start to note-column.
10118         * lily/hairpin.cc (print): check text-interface, to attach to
10119         dynamic texts.  
10121         * lily/include/text-item.hh (class Text_interface): rename
10122         Text_item -> Text_interface
10124         * lily/piano-pedal-bracket.cc (print): robustify.
10126 2004-09-22  Pedro Kroger  <kroeger@pedrokroeger.net>
10128         * scm/paper.scm (set-paper-dimensions): add printfirstpagenumber.
10130         * scm/page-layout.scm (plain-header): if printfirstpagenumber is
10131         true will print the page number in the first page.
10133         * Documentation/user/changing-defaults.itely: Document
10134         printfirstpagenumber.
10136 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10138         * lily/phrasing-slur-engraver.cc (acknowledge_grob): avoid more
10139         objects.
10141         * lily/beam-concave.cc (calc_concaveness): take absolute value of
10142         dy for scaling. This fixes various downbeams.
10143         
10145         * lily/beam-quanting.cc (best_quant_score_idx): 
10147 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10149         * scm/framework-tex.scm (header-to-file): Fix.
10151 2004-09-22  Werner Lemberg  <wl@gnu.org>
10153         * lily/parser.yy <score_body>: Fix typo.
10155 2004-09-22  Graham Percival  <gperlist@shaw.ca>
10157         * Documentation/user/tutorial.itely: modified a "future planning"
10158         comment.
10160         * Documentation/user/notation.itely: more editing.
10162 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10164         * scm/define-markup-commands.scm (note-by-number): read font-size
10165         to determine stem length. Fixes: markup-note.ly
10167 2004-09-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10169         * lily/slur.cc (outside_slur_callback): read #'padding for
10170         slur-padding. Fixes: slur-script.ly
10172         * lily/parser.yy (score_body): disallow \bookpaper in \score.
10174 2004-09-21  Juergen Reuter  <reuter@ipd.uka.de>
10176         * Documentation/user/notation.itely (ancient flags): documented
10177         flags-related known bugs
10179         * lily/include/ligature-engraver.hh: added comment about why and
10180         how of (non-)use of abstract virtual methods
10182         * ly/engraver-init.ly (VaticanaVoice,
10183         GregorianTranscriptionVoice): bugfix (workaround): TextSpanner:
10184         unset dash-fraction property in order to get solid lines
10186         * ly/engraver-init.ly (MensuralStaff): fixed bad comment
10188 2004-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10190         * scripts/convert-ly.py (ly): Corrected replacement of \scriptBoth
10192 2004-09-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10194         * lily/parse-scm.cc (internal_ly_parse_scm): Eval in module, not
10195         in function.
10197         * scm/framework-tex.scm (convert-to-dvi): Use nonstopmode.  Set
10198         openout_any=p.  Throughout: progress to stderr, translate user
10199         messages.
10201         * scm/output-gnome.scm: Fix font dir description.
10203 2004-09-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10205         * input/test/mensural-ligatures.ly (voice): move linethickness
10206         settings to bookpaper.
10208         * lily/simple-spacer.cc (Module): use force to stretch to 
10209         line length as force measure for ragged spacing.
10210         
10211         * lily/lily-parser.cc (get_paper): don't set parent for \paper
10212         blocks in the parser. This eliminates ordering dependency for
10213         \bookpaper and \paper
10215         * ly/part-paper-init.ly: remove file.
10217         * lily/includable-lexer.cc (new_input): elucidate message.
10219         * VERSION: 2.3.18 released.
10220         
10221 2004-09-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10223         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: 
10224         * input/mutopia/R.Schumann/romanze-op28-2.ly:
10225         * input/mutopia/F.Schubert/standchen.ly: Remove obsolete
10226         #'Slur.attachment setting.
10228         * elisp/lilypond-mode.el (LilyPond-command-alist): Use -ftex,
10229         friendlier for point and click.
10231 2004-09-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10233         * ly/init.ly: reverse collected scores.
10235         * scm/page-layout.scm (ly:optimal-page-breaks): use non-ragged
10236         layout to determine force.
10237         
10238 2004-09-18  Werner Lemberg  <wl@gnu.org>
10240         * ly/engraver-init.ly <Score> [quotedEventTypes]: Add tuplets and
10241         ties.
10243         * ly/declarations-init.ly (escapedBiggerSymbol,
10244         escapedSmallerSymbol): Fix typos.
10246         * scripts/convert-ly.py: s/removeTag/removeWithTag/.
10248 2004-09-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10250         * input/{input,regression}/*.ly: run convert-ly
10252         * VERSION: release 2.3.17
10254         * lily/slur-scoring.cc (enumerate_attachments): make stem_extent a
10255         little wider for attachment calculation. This prevents stem and
10256         slur touching.
10258         * lily/parser.yy (direction_less_char): soft code \< \> \! \( \) (
10259         ) 
10261         * input/regression/tie.ly (texidoc): cleanup.
10263         * ly/declarations-init.ly (tildeSymbol): soft-code meaning of [ ]
10264         and ~
10266         * lily/slur-scoring.cc (score_extra_encompass): check if extra
10267         objects are on boundary column. 
10269         * lily/main.cc (parse_argv): process --tex too.
10271         * ly/music-functions-init.ly (keepWithTag): add music functions
10272         keepWithTag and removeWithTag.
10274         * lily/quote-iterator.cc (Quote_iterator): init transposed_musics_.
10276         * lily/accidental-engraver.cc (recent_enough): interpret laziness
10277         = #t. This fixes no-reset accidental-style.
10279         * input/regression/accidental-piano.ly (Module): new file.
10281         * lily/lily-guile.cc (LY_DEFINE): ly_assoc_get: new function.
10283 2004-09-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10285         * lily/slur-scoring.cc (score_extra_encompass): widen X extent of
10286         extra encompass.
10287         (score_extra_encompass): use Y coordinate of attachment if X
10288         attachment falls in extra encompass X extent.
10290         * buildscripts/guile-gnome.sh (SLIB_PATH): add SLIB_PATH to
10291         GUILE_LOAD_PATH
10293 2004-09-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10295         * scm/output-gnome.scm: Small fixes.
10297         * buildscripts/guile-gnome.sh: Getting close to 2.6.0 release.
10299 2004-09-16  Juergen Reuter  <reuter@ipd.uka.de>
10301         * Documentation/user/notation.itely (Ancient flags): Removed
10302         documentation on adjust-if-on-staffline (this property was removed
10303         by Han-Wen).
10305         * Documentation/user/notation.itely (Ancient notation): Minor
10306         cleanups and fixes.  Renamed "Vaticana style contexts" ->
10307         "Gregorian Chant contexts".  Added section "Mensural contexts".
10308         Added section "Ancient articulations".
10310         * ly/engraver-init.ly: Added "MensuralVoice" and "MensuralStaff".
10312 2004-09-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10314         * buildscripts/guile-gnome.sh: Add missing bit.
10316 2004-09-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10318         * buildscripts/guile-gnome.sh (LD_LIBRARY_PATH): new script.
10320         * lily/slur-scoring.cc (get_y_attachment_range): set end point
10321         using base_attachment.
10323         * scm/page-layout.scm (default-page-make-stencil): whoops. Add
10324         page header back.
10326         * scm/documentation-generate.scm (top-node): move version to top
10327         node.
10329         * lily/ledger-line-spanner.cc: add ledgered-interface, with
10330         property no-ledgers.
10332 2004-09-16  Heikki Junes  <hjunes@cc.hut.fi>
10334         * Documentation/user/{changing-defaults,examples,invoking,
10335         tutorial}.itely: Expand 's to is.
10337         * Documentation/user/notation.itely: Capitalize only first letter.
10339         * Documentation/user/programming-interface.itely: Capitalize Scheme.
10341         * Documentation/user/lilypond-book.itely: use @refbugs.
10343         * THANKS: sort.
10345         * input/mutopia/F.Schubert/morgenlied.ly,
10346         input/mutopia/J.S.Bach/baerenreiter-sarabande.ly,
10347         input/mutopia/R.Schumann/romanze-op28-2.ly: Add lifetime and full
10348         name.
10350 2004-09-15  Juergen Reuter  <reuter@ipd.uka.de>
10352         * mf/parmesan-heads.mf: bugfixes: (i) removed duplicate
10353         lneomensural char entry; (ii) fixed mensural/neomensural naming
10354         clash typo; (iii) lneomensural char: fixed stem attachment point.
10355         WARNING: FONT CHANGED!
10357 2004-09-15  Graham Percival  <gperlist@shaw.ca>
10359         * Documentation/user/introduction.itely: update \stemBoth to
10360         \stemNeutral.
10362         * Documentation/user/notation.itely: more editing of the manual.
10364 2004-09-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10366         * lily/slur-scoring.cc (score_edges): add exp(slope*dir*leftright)
10367         factor in edge attraction. This reflects that the left edge may
10368         have a larger gap for an ascending up-slur.
10369         (get_base_attachments): copy bound Y from right bound, if there is
10370         only one note-column after the line break.
10372 2004-09-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10374         * buildscripts/guile-gnome.sh: Update with tarball [pre]releases.
10376 2004-09-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10378         * lily/phrasing-slur-engraver.cc (process_music): Create
10379         PhrasingSlur instead of Slur.
10381         * Documentation/user/changing-defaults.itely (Defining new
10382         contexts): Fixed misprinted context name.
10384 2004-09-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10386         * ly/property-init.ly (hideStaffSwitch): remove turnOff.
10388         * scripts/convert-ly.py (conv): change Both to Neutral in property
10389         settings.
10391         * ly/engraver-init.ly: increase extent of Staff. 
10393 2004-09-13  Graham Percival  <gperlist@shaw.ca>
10395         * scm/script.scm: change behaviour of slur and accent.
10397         * Documentation/user/music-glossary.tely: de-gender a few entires.
10399         * Documentation/user/introduction.itely: de-gender a few sentences.
10401 2004-09-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10403         * input/regression/rehearsal-mark-number.ly: Reuse the existing
10404         formatting routine when adding boxed numbers. Makes it easier to
10405         extrapolate how to do for boxed letters.
10407 2004-09-12  Graham Percival  <gperlist@shaw.ca>
10409         * Documentation/user/notation.itely: fixed Time Signature numbers bug.
10411         * Documentation/user/invoking.itexi: updated the "reporting bugs"
10412         section.
10414 2004-09-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10416         * scm/define-grobs.scm (all-grob-descriptions): longer
10417         ideallengths for stems in higher order beams.
10419         * Documentation/user/changing-defaults.itely (Page layout):
10420         document them.
10422         * scm/page-layout.scm (ly:optimal-page-breaks): use new parameters
10423         to get sane spaces for titles.
10425         * ly/book-paper-defaults.ly: new parameters aftertitlespace,
10426         beforetitlespace, betweentitlespace.
10428         * input/regression/beam-quant-standard.ly (primeSixteenths): add
10429         16th notes.
10431         * lily/beam.cc (set_minimum_dy): new function. Round non-zero
10432         small slope up to smallest quant. This prevents small slopes from
10433         getting rounded to zero.
10435         * lily/beam-quanting.cc (quanting): don't allow dy_mus slopes that
10436         are smaller than the smallest quant.
10438         * input/tutorial/brahms*.ly: remove.
10440         * input/*: update all .ly files.
10441          
10442         * ly/a4-init.ly (vsize): remove papersize init files.
10444         * scripts/convert-ly.py (conv): add conversion.
10446         * lily/parser.yy: change mode changing commands to XXXmode,
10447         eg. drummode.
10448         (mode_changing_head): group mode changes.
10449         (mode_changing_head_with_context): new commands: create context as
10450         well as change mode.
10452         * input/regression/system-overstrike.ly: new file.
10454         * scm/page-layout.scm (ly:optimal-page-breaks): add
10455         betweensystempadding also to fixed distance for the spring.
10457         * scm/define-grobs.scm (all-grob-descriptions): fix order of
10458         key-cancellation.
10460         * input/regression/beam-concave-damped.ly: new file.
10462         * lily/beam-concave.cc: new file, with new routines for concave
10463         decisions. There are now two types of concaveness: 1. a sharp
10464         logic decision forcing a beam horizontal, and 2. a number that
10465         measures how concave beams are that are not caught by 1.
10467         This fixes: morgenlied.ly and input/regression/beam-concave.ly
10468         
10469         * lily/new-fingering-engraver.cc (stop_translation_timestep): new
10470         property: add-stem-support
10472 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10474         * lily/slur-scoring.cc (get_bound_info): only do
10475         broken trend at the end of the line.
10477         * VERSION (PACKAGE_NAME): release 2.3.16.
10479         * input/regression/phrasing-slur.ly (Module): remove (duplicate
10480         with phrasing-slur-slur-avoid.ly)
10482         * lily/slur-scoring.cc (struct Extra_collision_info): collect
10483         parameters for extra offset.
10484         (get_bezier): add slurs mid-points for curve determination
10485         (score_extra_encompass): add slur end points for scoring.
10487 2004-09-11  Matthias Neeracher  <neeracher@mac.com>
10489         * scm/framework-ps.scm (reencode-font): Handling font scaling
10490         and reencoding differently to work around a bug in gs 8.30 and
10491         earlier.
10492         Update callers.
10494 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10496         * lily/slur-scoring.cc (broken_trend_y): always take use vdir
10497         extent index of other system. Fixes slurs across line breaks.
10499         * lily/tuplet-engraver.cc (start_translation_timestep): use
10500         Tuplet_description::stop_ for determining when to stop producing
10501         tuplet brackets. This fixes: tuplet-overwrite.ly
10503         * lily/*-engraver.cc: remove all Protected_scm objects to fix GC
10504         errors with GUILE 1.7 CVS.
10506         * lily/translator.cc (derived_mark): new function.
10508         * lily/slur-scoring.cc (score_encompass): new penalty type:
10509         variance penalty demerits slurs where one head/stem is much
10510         closer to the slur than average.
10512         * lily/tuplet-bracket.cc (print): use robust_relative_extent
10513         iso. extent()
10514         (calc_position_and_height): use robust_relative_extent(). This
10515         fixes a couple of programming_errors
10517         * input/regression/part-combine-mmrest-after-solo.ly (Module): new
10518         file.
10520         * lily/part-combine-iterator.cc (unisono): bugfix for the case
10521         that voice-2 plays solo, and voice-1 has an mmrest that starts
10522         earlier. In that case, we switch to voice-2, so we catch the
10523         mmrest of voice-2. This fixes: partcombine-rest.ly.
10525 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10527         * scm/define-grob-properties.scm (all-internal-grob-properties):
10528         add adjacent-hairpins property.
10530         * lily/hairpin.cc: lengthen hairpin if space is available.
10532         * input/regression/dynamics-hairpin-length.ly (Module): new file.
10534 2004-09-10  Graham Percival  <gperlist@shaw.ca>
10536         * Documentation/user/notation.itely: small fixes to docs.
10538 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10539         
10540         * VERSION (PACKAGE_NAME): release 2.3.15
10542         * make/lilypond.redhat.spec.in (Requires): bump requirement for
10543         ec-fonts-mftraced
10545         * mf/GNUmakefile (SAUTER_FONTS): remove ecb10. This is provided by
10546         the latest ec-fonts-mftraced package.
10548         * scm/define-context-properties.scm
10549         (all-internal-translation-properties): add property. Remove
10550         definition of quotes property.
10552         * Documentation/user/notation.itely (Quoting other voices):
10553         document it
10555         * lily/quote-iterator.cc (moment_less): add quotedEventTypes
10556         property, to determine what events are processed in \quote.
10558 2004-09-10  Juergen Reuter  <reuter@ipd.uka.de>
10560         * (many files): removed most occurrences of underscore ("_")
10561         from font characters; made font character naming more
10562         consistent
10564         * input/test/gregorian-scripts.ly: fixed another victim of grand
10565         replacement operations
10567         * lily/vaticana-ligature-engraver.cc: caught some more "_"
10568         inconsistencies
10570         * input/puer-fragment.ly: bugfix: lyrics hyphen: syntax update
10572 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10574         * Documentation/user/changing-defaults.itely (Paper size): doc
10575         landscape
10576         
10578         * scm/framework-ps.scm (eps-header): bugfixes. 
10580         * scm/titling.scm (default-score-title): remove opus from the
10581         \score title.
10583 2004-09-08  Pedro Kroger  <kroeger@pedrokroeger.net>
10585         * scripts/convert-ly.py (program_name): changed to sys.argv[0]
10587         * scripts/abc2ly.py (program_name): changed to sys.argv[0]
10589         * scripts/etf2ly.py (program_name): changed to sys.argv[0]
10591         * scripts/lilypond-book.py (program_name): changed to sys.argv[0]
10593         * scripts/lilypond-latex.py (program_name): changed to sys.argv[0]
10595         * scripts/midi2ly.py (program_name): changed to sys.argv[0]
10597         * scripts/mup2ly.py (program_name): changed to sys.argv[0]
10599         * scripts/ps2png.py (program_name): changed to sys.argv[0]
10601 2004-09-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10603         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Increment
10604         character position.  Huh?
10606         * scm/output-gnome.scm (placebox): Shield affine-relative.
10608         * buildscripts/guile-gnome.sh: Update.  Do not use GUILE CVS,
10609         cater for system's pango 1.5.1.
10611         * input/regression/new-slur.ly: Add ugly slur from scsii-sarabande.
10613         * scm/slur.scm: Tweak.
10615 2004-09-08  Graham Percival  <gperlist@shaw.ca>
10617         * Documentation/user/{first couple of chapters}: more editing.
10619 2004-09-07  Graham Percival  <gperlist@shaw.ca>
10621         * Documentation/topdocs/AUTHORS.texi, THANKS: add/modify my name
10622         and summary.
10624         * Documentation/user/{first couple of chapters}: the big "Graham's
10625         moved to a new city, his friends haven't arrived, and he has no
10626         internet access" patch.  Numerous editorial and stylistic changes
10627         to the manual.
10629 2004-09-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10631         * scm/framework-ps.scm (output-framework): handle landscape settings.
10633         * ps/lilyponddefs.ps: cleanup.
10635 2004-09-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10637         * scm/define-grobs.scm (all-grob-descriptions): unset
10638         threshold. This fixes morgenlied. 
10640         * scm/page-layout.scm (ly:optimal-page-breaks): whoops. Thinko in
10641         rod calculation.
10643         * lily/system.cc (get_line): don't take piano-pedal & dynamic line
10644         spanners into account for staff-extents.
10646         * lily/ottava-bracket.cc (print): take common refpoint of dots
10647         into account as well.
10649 2004-09-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10651         * lily/lookup.cc (triangle): translate by interval.
10653         * VERSION (PACKAGE_NAME): release 2.3.14
10655         * Documentation/user/changing-defaults.itely (Page layout): add
10656         betweensystempadding
10658         * scm/page-layout.scm (ly:optimal-page-breaks): typo.
10660         * input/regression/quote-cyclic.ly (Module): new file.
10662         * scm/lily.scm (print): add function.
10664         * scm/music-functions.scm (quote-substitute): new
10665         function. Substitute \quote when putting music into \score.
10667         * input/regression/key-signature-cancellation.ly (Module): new file.
10669         * lily/*.cc: more ly_scm2 -> scm_to converions.
10671         * lily/key-signature-interface.cc (print): take position
10672         difference into account when spacing naturals.
10674         * lily/key-engraver.cc (create_key): create KeyCancellation grob
10675         separately, so the cancellation can be put before the staff-bar
10677         * scm/define-grobs.scm (all-grob-descriptions): add a
10678         KeyCancellation grob.
10680         * lily/tuplet-engraver.cc (struct Tuplet_description): new
10681         struct. Use to clean-up Tuplet_engraver
10683 2004-09-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10685         * lily/*: ly_scm2int -> scm_to_int
10686         ly_scm2double -> scm_to_double
10688         * lily/include/lily-guile.hh (scm_from_double): more compat glue.
10690 2004-09-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10692         * lily/simple-spacer.cc (LY_DEFINE): return something sensible for
10693         0 springs
10695         * lily/system.cc (post_processing): 
10697         * scm/page-layout.scm (ly:optimal-page-breaks): implement uniform
10698         density for vertical spacing by means of force penalty.
10699         
10700         * scm/paper.scm (paper-set-staff-size): add betweensystemspace as
10701         dimension-variables
10703         * Documentation/user/changing-defaults.itely (Page layout): add
10704         betweensystemspace variable.
10706         * ly/book-paper-defaults.ly: set betweensystemspace: 20 mm
10708         * scm/page-layout.scm (space-systems): new function. Use spring
10709         and rod approach for vertically spacing systems.
10711         * ly/engraver-init.ly: tune down minimumVerticalExtent.
10713         * scm/define-grobs.scm (all-grob-descriptions): set threshold for
10714         vertical alignment.
10716         * lily/slur-engraver.cc (process_music): add warning for slur.
10718 2004-09-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10720         * lily/include/lily-guile.hh (scm_is_number): add scm_is_number
10722         * lily/simple-spacer.cc (LY_DEFINE): ly_solve_spring_rod_problem:
10723         export spacing routine to SCM.
10725         * lily/include/simple-spacer.hh (struct Simple_spacer_wrapper):
10726         new class, separate Grobs from interface.
10728 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10730         * lily/include/lily-guile.hh: compatibility glue for 1.6
10732         * lily/*.cc (acknowledge_grob): ly_string_p -> scm_is_string.
10734         * lily/lily-guile.cc: remove ly_scm2str0.
10736 2004-09-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10738         * Documentation/user/macros.itexi: Use @inforef iso @uref for
10739         external references.  Fixes HTML cross references with makeinfo 4.7.
10741 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10743         * lily/include/simple-spacer.hh (struct Simple_spacer): remove
10744         expand_only option.
10746 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10748         * lily/system.cc (get_line): add System stencil to exprs. Fixes
10749         system-extents.ly.
10751         * ly/engraver-init.ly: decrease minimumVerticalExtent to (-5,5).
10753         * scm/define-grobs.scm (all-grob-descriptions): decrease padding
10754         for MultiMeasureRestNumber
10756         * VERSION (PACKAGE_NAME): release 2.3.13
10758 2004-08-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10760         * lily/context-scheme.cc (LY_DEFINE): ly:context-grob-definition
10761         takes two arguments.
10763 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10765         * input/regression/slur-stem-broken.ly: remove.
10767         * lily/slur.cc: add quant-score.
10769         * input/regression/slur-staccato.ly (texidoc): remove
10771         * make/lilypond.redhat.spec.in (Group): remove musedata2ly
10773 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10775         * lily/include/bezier-bow.hh: remove.
10777         * lily/slur-bezier-bow.cc (Module): remove.
10779         * lily/include/slur.hh (Module): remove.
10781         * lily/slur.cc: remove
10783         * input/test/slur-beautiful.ly (Module): remove
10785         * input/test/slur-attachment-override.ly (Module): remove
10787         * lily/slur-quanting.cc (after_line_breaking): only do scoring
10788         when less than 4 control-points.
10790         * lily/key-signature-interface.cc: add style.
10792         * Documentation/user/notation.itely (Automatic staff changes):
10793         document new behavior.
10795         * input/regression/slur-extreme.ly: new file.
10797         * ly/engraver-init.ly (Score): set bassStaffProperties to \clef
10798         bass. Obviates \clef bass in the bass staff, when using \autochange 
10800         * lily/auto-change-iterator.cc (construct_children): instantiate
10801         up/down Staff, create Voice on up staff initially. Obviates
10802         explicit instantiation of up/down contexts for \autochange. 
10804         * lily/slur-quanting.cc (get_bezier): new functionality, blow up
10805         slur depending on extents of note heads.
10806         
10807 2004-08-28  Graham Percival  <gperlist@shaw.ca>
10809         * Documentation/user/tutorial.itely: minor editing.
10811         * Documentation/user/examples.itely: tiny editing.
10813 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10815         * lily/slur-quanting.cc (init_score_param): read scoring
10816         parameters from slur-details property
10818         * scm/define-grobs.scm (all-grob-descriptions): add inside-slur to
10819         Accidental
10821         * Documentation/user/advanced.itely: removed.
10823         * Documentation/user/programming-interface.itely (How markups work
10824         internally): new subsection.
10826         * Documentation/user/converters.itely (Invoking abc2ly): remove
10827         musedata2ly.
10829 2004-08-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10831         * Documentation/user/point-and-click.texi (Point and click): new file.
10832         put point & click in appendix.
10833         
10834         * Documentation/user/changing-defaults.itely (Vertical spacing):
10835         corrections
10837 2004-08-27  Graham Percival  <gperlist@shaw.ca>
10839         * Documentation/user/introduction.itely: add note about the
10840         "example templates" section of the manual, and remove link to
10841         input/template/
10843 2004-08-27  Juergen Reuter   <reuter@ipd.uka.de>
10845         * Documentation/user/lilypond-book.itely: fix parse error: @LaTeX
10846         -> La@TeX
10848         * mf/parmesan-heads.mf: draw_diamond_head: fixed pen width; added
10849         missing lneo_mensural head; editorial cleanups
10851         * lily/mensural-ligature.cc: added more comments
10853 2004-08-26  Graham Percival  <gperlist@shaw.ca>
10855         * Documentation/user/examples.itely: second, third, fourth, and fifth
10856         sections added.
10858         * input/template/{various}: removed files included in examples.itely.
10860 2004-08-26  Juergen Reuter   <reuter@ipd.uka.de>
10862         * lily/stem.cc: bugfix: adjust-if-on-staffline: use
10863         Stem::stem_end_position instead of broken
10864         Staff_symbol_referencer::get_position
10866 2004-08-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10868         * debian/changelog: debian patch by Anthony Fok.
10870         * lily/stem.cc (flag): bugfix for mensural flags (thanks Juergen!)
10872         * lily/slur-engraver.cc (try_music): ignore slurs_. Otherwise we
10873         get spurious messages with skipTypesetting on.
10875 2004-08-25  Graham Percival   <gperlist@shaw.ca>
10877         * Documentation/user/lilypond-book.itely: slight clean-up.
10879         * Documentation/user/examples.itely: began section.
10881 2004-08-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10883         * lily/script-interface.cc: add slur property.
10885         * lily/slur-quanting.cc (score_extra_encompass): avoid other slurs
10886         too.
10888         * input/regression/phrasing-slur-slur-avoid.ly: new file.
10890         * lily/ottava-bracket.cc (print): always start from right edge of
10891         a broken bound. This fixes ottava-clef.ps 
10893 2004-08-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10895         * input/regression/slur-script-inside.ly: new file.
10897         * lily/new-slur.cc (outside_slur_callback): new function, to make
10898         scripts avoid slurs 
10900         * lily/slur-engraver.cc (finalize): 
10902         * lily/script-interface.cc: add inside-slur property.
10904         * lily/slur-engraver.cc (finalize): read inside-slur property.
10906         * scm/lily.scm (postscript->png): use ~a iso. ~s in progress
10907         message.
10909         * ly/property-init.ly (unHideNotes): hide accidentals at staff
10910         level. Fixes: hideNotes-accidental.ly
10912 2004-08-23  Pedro Kroger  <kroeger@pedrokroeger.net>
10914         * scm/page-layout.scm (plain-header): fix bug that print page
10915         number in the first page if firstpagenumber was different than 1.
10917 2004-08-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10919         * scm/framework-ps.scm (define-fonts): use UPCASE for Bluesky
10920         fonts. Fixes triangle markup for chords.
10922         * lily/slur-quanting.cc (score_extra_encompass): make score depend
10923         on distance. This fixes slur-tenuto.ly and slur-tie.ly
10925         * flower/include/interval.hh (T>): add distance() function
10927         * lily/ottava-bracket.cc (print): add dots to extent. Fixes
10928         octaviation-dot.ly 
10930         * lily/context-scheme.cc: ly_context_grob_definition: new function.
10932         * VERSION (MY_PATCH_LEVEL): release 2.3.12
10934         * lily/new-slur.cc (add_column): remove set_interface()
10936 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10938         * input/regression/slur-double.ly: new file. 
10940         * lily/slur-engraver.cc: add doubleSlurs property
10942         * scm/fret-diagrams.scm (label-fret): use cond instead of case for
10943         symbols.
10945         * Documentation/user/notation.itely (Easy Notation note heads):
10946         revise notation Chapter.
10948         * ly/music-functions-init.ly (makecluster): add makeClusters music
10949         function.
10951         * lily/part-combine-engraver.cc: rename soloADue ->
10952         printPartCombineTexts
10954         * scripts/convert-ly.py (conv): junk script{Up|Down|Both}.
10956         * lily/horizontal-bracket.cc (print): use
10957         Tuplet_bracket::make_bracket, so it supports bracket-flare,
10958         edge-eight and shorten-pair.
10960 2004-08-22  Pedro Kroger  <kroeger@pedrokroeger.net>
10962         * Documentation/user/changing-defaults.itely (Page layout):
10963         description of firstpagenumber. Moved @refbugs about rightmargin
10964         to the end of the section (it was looking like the documentation
10965         after the refbugs was part of the bug comment).
10967         * scm/framework-ps.scm (output-framework): set the first
10968         postscript page number to firstpagenumber
10970         * scm/page-layout.scm (ly:optimal-page-breaks): print the first
10971         page number according to firstpagenumber
10973         * scm/paper.scm (set-paper-dimensions): added firstpagenumber
10974         parameter
10976 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10978         * lily/slur-engraver.cc (class Slur_engraver): simplify: remove
10979         nested slurs. 
10981         * scripts/convert-ly.py (lilypond_version_re_str): handle
10982         \version "bar" % "foo"
10984         * lily/completion-note-heads-engraver.cc (process_music): set
10985         duration-log before announcing object.
10986         
10987         * lily/staff-symbol.cc (print): subtract thickness from staff line
10988         length
10990         * lily/parser.yy (book_body): disallow { ..music.. } inside \book
10991         
10992 2004-08-21  Carl Sorensen  <carldsorensen@comcast.net>
10994         * scm/stencil.scm: remove fontify-text and fontify-text-white
10996 2004-08-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10998         * scm/part-combiner.scm: skip name string. Fixes segfault problem.
11000         * Documentation/user/sound-output.texi (Sound): new file. Move all
11001         MIDI related information.
11003 2004-08-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11005         * lily/script-engraver.cc (acknowledge_grob): only take into
11006         account note heads with a music cause. Fixes ambitus-accent.ly
11008         * scm/define-markup-commands.scm (finger): set encoding to
11009         fetaNumber.
11011 2004-08-20  Erik Sandberg <ersa9195@student.uu.se>
11013         * scripts/convert-ly.py: typo
11015 2004-08-19  Carl Sorensen  <carldsorensen@comcast.net>
11017         * scm/fret-diagrams.scm: Eliminate use of fontify-text; make 
11018         font calls for diagrams based on paper and props
11020 2004-08-19  Graham Percival <gperlist@shaw.ca>
11022         * scripts/convert-ly.py: add \newpage -> \pageBreak rule.
11024 2004-08-19  Erik Sandberg <ersa9195@student.uu.se>
11026         * ly/spanners-init.ly: Correct meanings of setTextDecresc/Dim,
11027         added setHairpinDecresc/Dim
11029 2004-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11031         * lily/include/lily-guile.hh: Cosmetics.
11033 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11035         * input/regression/fermata-rest-position.ly: new file
11037         * ly/property-init.ly (hideNotes): remove \setMmRestFermata
11039         * scripts/convert-ly.py (conv): add rule for \setMmRestFermata
11041 2004-08-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11043         * scm/framework-tex.scm (output-preview-framework) 
11044         (output-classic-framework): 
11045         * scm/framework-ps.scm (output-preview-framework):
11046         s/ly:paper-book-lines/ly:paper-book-systems/g
11048         * scm/fret-diagrams.scm (ss-font-encoding):
11049         s/my-font-encoding/ss-font-encoding
11051 2004-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11053         * scm/music-functions.scm (direction-polyphonic-grobs): Set
11054         direction also on fingerings.
11056         * lily/clef-engraver.cc: Add forceClef to list of read properties.
11058 2004-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11060         * po/nl.po: Some updates.
11062         * scm/lily.scm (_): New function.
11063         (postscript->pdf, postscript->png, lilypond-main)
11064         (postscript->pdf): Use it.  Write messages to stderr.
11066         * stepmake/stepmake/po-targets.make (ALL_PO_SOURCES): Add SCM_FILES.
11068         * scm/GNUmakefile (XGETTEXT_FLAGS): Set language to Lisp.
11069         xgettext does not recognise scheme yet.  Patch submitted.
11071         * lily/scm-option.cc (LY_DEFINE):
11072         * lily/main.cc: The program is now called lilypond (WAS:
11073         lilypond-bin).
11075         * lily/rest-collision.cc (do_shift): Uniformise two too many rests
11076         messages.
11078         * lily/include/paper-book.hh
11079         * lily/include/paper-system.hh: Finish renaming of paper-line to
11080         system.  Fix users.
11082 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11084         * scm/documentation-generate.scm (string-append): add version.
11086         * scm/define-markup-commands.scm (box): add box-padding and
11087         thickness props for the box command.
11089         * Documentation/user/changing-defaults.itely (Text encoding):
11090         elucidate use of \encoding for \header strings.
11092         * lily/parser.yy (lyric_element): use \encoding for lyrics strings.
11094         * lily/score.cc (LY_DEFINE): check if length of music > 0. Fixes:
11095         staff-change.ly
11097         * lily/output-def.cc (assign_context_def): use set_variable().
11099         * lily/text-item.cc (interpret_string): accept string input
11100         encoding too.
11102         * scm/encoding.scm (read-encoding-file): print warning when file
11103         can't be found.
11105         * tex/latin1.enc: remove.
11107         * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS.
11109         * lily/rod.cc (columnize): robustness fix. Don't crash for
11110         nil span points. Fixes: appoggiatura-segfault.ly
11111         (add_to_cols): extra robustness fix.
11113 2004-08-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11115         * lily/text-item.cc (interpret_string): use lookup_variable() to
11116         fidn inputencoding. Now, \paper inherits inputencoding from
11117         \bookpaper.
11119         * lily/script-engraver.cc (stop_translation_timestep): remove slur
11120         collision kludge.
11122         * lily/dynamic-engraver.cc (typeset_all): remove slur collision
11123         kludge.
11125 2004-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11127         * lily/main.cc (parse_argv): Bugfix: handle 'p'.  Add warning.
11129 2004-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11131         * lily/spanner.cc (spanned_rank_iv): Bugfix.
11133         * lily.scm: Mark un-internationlised user messages (with FIXME).
11135         * lily/include/modified-font-metric.hh (struct
11136         Modified_font_metric): New file.  (WAS: incorrectly named
11137         scaled-font-metric.hh ?)
11139         * lily/include/scaled-font-metric.hh: Remove.
11141         * lily/text-item.cc (interpret_string): Identify and document
11142         input-encoding problem.
11144         * lily/paper-book.cc (pages): Do not use `paper' as variable name
11145         for a Bookpaper.
11147         * tex/latin1.enc: Replace /minus with /hyphen.
11149         * scm/encoding.scm: For latin1 (input-)encoding, use
11150         latin1.  (Cork.enc is NOT latin1 -- see man latin1).
11152         * ly/book-paper-defaults.ly: Add a comment about suspicious TeX
11153         inputencoding.
11155 2004-08-12  Heikki Junes  <hjunes@cc.hut.fi>
11157         * Documentation/topdocs/INSTALL.html: fixes.
11159 2004-08-12  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11161         * buildscripts/builder.py: Fix for scons CVS.
11163 2004-08-11  Heikki Junes  <hjunes@cc.hut.fi>
11165         * Documentation/user/notation.itely,
11166         Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly,
11167         input/test/ambitus-mixed.ly: fix plurals:
11168         english: ambit, pl. ambits; latin: ambitus, pl. ambitus.
11170 2004-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11172         * lily/dynamic-engraver.cc (typeset_all):
11173         * lily/script-engraver.cc (stop_translation_timestep): Handle
11174         collisions with new-slur.
11176 2004-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11178         * scm/define-grobs.scm (all-grob-descriptions): Add
11179         new-slur-interface.
11181 2004-08-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11183         * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now
11184         produces .PS
11186 2004-08-09  Carl Sorensen  <carldsorensen@comcast.net>
11188         * scm/define-grob-properties.scm (all-user-grob-properties): fix
11189         definition of number-type
11191 2004-08-08  Carl Sorensen  <carldsorensen@comcast.net>
11193         * scm/fret-diagrams.scm : change sans-serif font encoding from 
11194         TeX-text to ec (uses ecss fonts instead of cmss fonts)
11196         * scm/define-grob-interfaces.scm (fret-diagram-interface): add
11197         number-type and label-dir
11199         * scm/define-grob-properties.scm: add number-type and label-dir
11201         * scm/fret-diagrams.scm (label-fret): allow fret label to be on either
11202         left or right.  Allow choice of upper-case roman, lower-case roman, or
11203         arabic numerals in fret label
11205 2004-08-04  Werner Lemberg  <wl@gnu.org>
11207         * lily/slur-quanting.cc: Include libc-extension.hh.
11208         s/round/my_round/.
11209         * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice):
11210         s/autobeaming/autoBeaming/.
11212 2004-08-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11214         * VERSION: 2.3.11 released.
11216         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate
11217         renameinput.
11219 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11221         * lily/lookup.cc (round_filled_box): remove warnings about blot
11222         diameter.
11224         * scm/paper.scm (paper-set-staff-size): make linethickness more
11225         easily tunable.
11227         * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics,
11228         \newlyrics -> \addlyrics
11230         * lily/text-spanner.cc (print): use it.
11232         * lily/dynamic-text-spanner.cc (print): use it.
11234         * lily/grob.cc (robust_relative_extent): new function.
11236         * scripts/lilypond-book.py (main): add -f tex as default process.
11238         * lily/text-spanner.cc (print): only take linear_combination of
11239         nonempty interval.
11240         
11242 2004-08-02  Pedro Kroger  <kroeger@pedrokroeger.net>
11244         * scm/page-layout.scm (default-page-make-stencil): If leftmargin
11245         isn't specified by the user in \bookpaper center the music in the
11246         page.
11248 2004-08-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11250         * Fix some problems after the renaming of my-lily -> lily
11252 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11254         * lily/lily-parser.cc (parse_string): don't overwrite keytable_.
11256         * lily/slur-quanting.cc (enumerate_attachments): apply center on
11257         stem-X in more cases. 
11259         * lily/stem.cc (dim_callback): solve todo.
11261 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11263         * input/test/README: new file.
11265         * lily/lily-parser.cc: rename my-lily* files.
11267         * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect
11268         parser.
11270         * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer.
11272         * lily/include/my-lily-parser.hh: rename My_lily -> Lily
11274         * make/mutopia-targets.make (local-WWW): don't make ps.gz
11275         examples. They take a huge amount of space.
11277         * Documentation/user/GNUmakefile: fix symlinks.
11279         * VERSION: 2.3.10 released.
11280         
11281         * input/test/lyrics-skip-notes.ly: remove
11283         * input/test/stem-cross-staff.ly (noFlag): fold into manual
11285         * input/test/{spacing-2,staff-space,tablature,textscript}.ly:
11286         remove.
11288 2004-08-01  Heikki Junes  <hanwen@xs4all.nl>
11290         * Documentation/user/{changing-defaults,notation,tutorial}.itely:
11291         fixes.
11293 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11295         * input/regression/beam-dir-functions.ly: move from test/
11297         * Documentation/user/notation.itely (Feathered beams): new node.
11299         * Documentation/user/changing-defaults.itely (Difficult tweaks):
11300         new node
11302         * input/regression/lyric-hyphen-retain.ly: move to regression.
11304         * input/regression/harmonic.ly: fold into manual
11305         
11306         * input/test/{hshift,move-accidentals,crescendi,feathered-beam,
11307         stem-length,chord-names-no-inversions}.ly: remove
11308         
11309         * input/test/tie-cross-voice.ly: move to regression.
11311         * Documentation/user/notation.itely (Running trills): new node.
11313         * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner
11315         * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent
11317         * lily/trill-spanner-engraver.cc: new file.
11319         * input/regression/trill-spanner.ly: new file.
11321         * input/test/timing.ly: fold into manual.
11323         * input/test/time.ly: remove
11325         * input/test/trill.ly: remove
11326         
11327         * input/test/time-signature-double.ly: fold into manual
11329         * input/test/separate-staccato.ly: remove
11331         * input/test/spanner-after-break-tweak.ly: fold into manual.
11333         * input/test/script-priority.ly: fold into manual.
11335         * input/test/scheme-interactions.ly: remove.
11336         
11337         * input/test/unfold-all-repeats.ly (mel),
11338         input/test/repeat.ly,input/test/repeat-shorter-bracket.ly,
11339         input/test/polymetric-differing-notes.ly input/test/polymetric.ly:
11340         fold into manual.
11342         * input/regression/no-staff.ly: move from input/test/
11344         * input/regression/markup-score.ly: move from input/test/
11346         * input/test/lyrics-melisma-faster.ly: fold into manual
11347         
11348         * input/test/lyrics-melisma-variants.ly: fold into manual
11350         * Documentation/user/notation.itely (Popular music): new node. 
11352         * input/test/gourlay.ly: remove
11353         
11354         * input/test/improv.ly: fold into manual.
11356         * input/test/figured-bass-alternate.ly (fl): remove
11358         * lily/dynamic-text-spanner.cc (print): new file.
11360         * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner
11362         * lily/engraver-group-engraver.cc (do_announces): reorder logic:
11363         keep recursing into children in case a parent context inserts a
11364         grob into a child context.
11366         * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to
11367         
11368 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11370         * scm/define-markup-commands.scm (postscript): new markup command
11371         \postscript
11373         * Documentation/user/notation.itely (Formatting cue notes): new
11374         section.
11376         * input/test/clef-end-of-line.ly: fold into manual.
11378         * input/test/scales-greek.ly: remove.
11380         * input/test/chords-without-melody.ly: fold into manual.
11382         * input/test/cadenza-skip.ly: remove.
11384         * input/test/clef-8-syntax.ly: remove.
11386         * input/test/clef-manual-control.ly: move into manual.
11388         * Documentation/user/notation.itely (Aligning to cadenzas): fold
11389         in cadenza-skip.ly
11391         * mf/parmesan*.mf: change neo_mensural to neomensural.
11393         * input/test/trills.ly: remove.
11395         * input/test/transposition.ly: remove.
11397         * input/test/to-xml.ly: move to no-notation.
11399         * buildscripts/lilypond-profile.sh: change zsh bomb to warning.
11401         * lily/ledger-line-spanner.cc (print): use staff variable, not
11402         me. Fixes ledger lines on differently sized staves.
11404         * input/test/rhythm-excercise.ly: remove file.
11406         * lily/stem.cc (dim_callback): only do something if visible. Fixes
11407         spurious flag not found warning for 128th rest.
11409         * input/regression/rest-dot-position.ly: new file.
11410         
11411         * input/test/rest-dot-positions.ly: remove
11413         * lily/staff-symbol-referencer.cc (get_position): emergency
11414         fallback: use coordinate * 2.
11416         * input/no-notation/midi-scales.ly: move from test/
11418         * scm/define-markup-commands.scm (score): remove debugging code.
11420         * input/test/incipit.ly (violin): remove. 
11422         * lily/system-start-delimiter.cc (print): only draw system
11423         delimiter to staves that reach up to left bound of the delimiter.
11425         * input/no-notation/embedded-scm.ly: move from test/
11427         * input/test/follow-voice.ly: remove
11429         * input/no-notation/dynamic-absolute-volume.ly: move from test/.
11431         * input/test/drarn*: remove
11432         
11433         * input/test/count-systems.ly: remove.
11435         * lily/bar-line.cc (compound_barline): fix : for staff without
11436         lines.
11438         * lily/accidental.cc (print): use music_font_alist_chain(). This
11439         fixes smaller cautionaries.
11441         * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
11442         encoding for accidental.
11444         * Documentation/user/notation.itely (Educational use): new section
11446         * input/test/*.ly: clean up directory: move examples into manual
11447         or regtest.
11448         
11450         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add
11451         mode as well. This fixes resolution errors.
11453 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11455         * scm/lily.scm (postscript->png): show commands for --verbose.
11457         * flower/include/getopt-long.hh: opps. short option should be
11458         char, not int.
11460         * Documentation/user/GNUmakefile: use symlinks to save space.
11462         * VERSION: 2.3.9 released.
11464         * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.
11466         * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
11467         manual.
11469         * Documentation/user/tutorial.itely (Integrating text and music):
11470         remove \score and \notes from manual.
11472         * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note
11473         mode in the beginning.
11475 2004-07-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11477         * Documentation/user/changing-defaults.itely (Horizontal spacing):
11478         Correct the documentation of the spacing parameters. 
11480         * Documentation/user/tutorial.itely (Integrating text and music), 
11481         Documentation/user/lilypond-book.itely (Integrating LaTeX and
11482         music): Document that you need to add the map file ec-mftrace.map
11483         in the dvips command.   
11485 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11487         * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not
11488         found.
11490         * lily/text-item.cc (interpret_string): insert encoding setting
11491         here
11493         * scm/framework-ps.scm (ps-font-command): remove feta/parmesan
11494         encoding kludge.
11496         * Documentation/user/changing-defaults.itely (Text encoding): node
11497         on encoding.
11499         * lily/lyric-engraver.cc (try_music): remove superfluous check.
11501         * lily/book-paper-def.cc (find_scaled_font): remove default
11502         encoding, because it messes up font loading for feta and
11503         parmesan. Encoding should only be specified for running texts.
11505         * lily/modified-font-metric.cc (text_dimension): support coding
11506         scheme ""
11507         
11508 2004-07-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11510         * lily/tie-engraver.cc (stop_translation_timestep): remember tie
11511         definition, so \override works as expected.
11513         * lily/measure-grouping-engraver.cc: clarify
11515 2004-07-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11517         * lily/parser.yy (context_def_mod): remove \consistsend
11519         * lily/context-def.cc (instantiate): use Translator::must_be_last
11520         to determine engraver order.
11522         * lily/translator.cc (must_be_last): new function
11524         * scripts/convert-ly.py (conv): rule.
11526         * lily/bar-line.cc (print): return '() for height == 0.0 too.
11528 2004-07-27  Heikki Junes  <hjunes@cc.hut.fi>
11530         * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs.
11532 2004-07-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11534         * lily/include/lily-guile.hh (scm_is_int): compat glue.
11536 2004-07-25  Pedro Kroger  <kroeger@pedrokroeger.net>
11538         * input/regression/page-layout.ly: new file.
11540         * scm/paper.scm (set-paper-dimensions): Preliminary support for
11541         left and right margins.
11543         * Documentation/user/changing-defaults.itely (Page layout):
11544         Explain the leftmargin option.
11546 2004-07-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11548         * input/test/lyrics-melisma-variants.ly (texidoc): new file.
11550         * input/test/lyrics-melisma-faster.ly: new file.
11552         * lily/new-lyric-combine-music-iterator.cc (find_voice): allow
11553         change of melody by setting associatedVoice.
11555         * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode.
11557         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy
11558         file contents, rather \include them, so default linewidth is set.
11559         (ly_options): make BOOKPAPER set of options. Move linewidth
11560         settings there.
11562         * Documentation/user/examples.itely: new file. Templates are to be
11563         moved here.
11565         * Documentation/user/programming-interface.itely: move chapter.
11567         * scm/document-markup.scm (doc-markup-function): add @code
11569         * stepmake/stepmake/texinfo-rules.make: remove chmod.
11571 2004-07-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11573         * scm/page-layout.scm (plain-header): add printpagenumber boolean
11574         to bookpaper.
11576         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
11577         $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary.
11579         * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere.
11581         * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin 
11583         * scripts/lilypond-latex.py: move from lilypond.py
11585         * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting.
11586         (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book.
11588         * scm/lily.scm (postscript->png): new function
11589         (postscript->pdf): new function
11591         * lily/paper-book.cc (post_processing): call
11592         convert-to-{dvi,ps,png,pdf}
11594         * scripts/ps2png.py (option_definitions): new file.
11596         * lily/paper-book.cc (output): call output-preview-framework
11597         (post_processing): new function. Do PDF/PNG conversion.
11599         * lily/paper-outputter.cc (close): new function.
11601         * scm/framework-ps.scm (convert-to-pdf): new function. Call
11602         ps2pdf.
11603         (output-preview-framework): new function. Generate a preview .ps
11604         
11606 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11608         * VERSION: release 2.3.8
11609         
11610         * lily/note-head.cc: remove ledger line handling.
11612         * lily/ambitus.cc (print): strip away accidental / note head code,
11613         and associated properties.
11615         * lily/ambitus-engraver.cc (create_ambitus): change name to
11616         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
11617         other ambitus parts.
11618         (create_ambitus): group grobs in Ambitus grouping object. 
11620         * lily/include/pitch-interval.hh (Pitch>): new file.
11622         * lily/pitch-interval.cc (add_point): new file.
11624         * lily/ledger-line-engraver.cc: new file.
11626         * lily/ledger-line-spanner.cc (print): new file. Set limits to
11627         ledger line length to avoid clashes.
11629 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11631         * Documentation/user/invoking.itexi (Invoking lilypond): remove
11632         deprecated options
11634 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11636         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
11637         to command line option: fast=1 (default on).
11639         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
11640         This brings SCons run-time on up-to-date tree down from 48s with
11641         only checksums, to 34s without 2day checksums, to 14s (make needs
11642         4 seconds).
11643         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
11644         necessary.
11646 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11648         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
11649         (score_extra_encompass): process scripts at edges too, by checking
11650         control points directly. 
11652 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11654         * po/nl.po: Update.
11656         * lily/main.cc: Fix ly:option-usage help.
11658         * input/regression/slur-script.ly: More collision tests.
11660         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
11662 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11664         * VERSION: release 2.3.7
11666         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
11667         files.
11669         * Documentation/user/notation.itely (Slurs): document ^ and _ for
11670         slurs.
11672         * input/regression/slur-script.ly: new file.
11674         * lily/accidental-engraver.cc (process_acknowledged_grobs):
11675         make accidental appear to come from note head engraver.
11677         * lily/slur-quanting.cc: new file.
11678         (score_extra_encompass): new function. Avoid scripts and
11679         accidentals
11681 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11683         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
11684         This greatly reduces the number of files that get recompiled
11685         after touching config.hh.
11687         * config.hh.in: Remove GUILE_*_VERSION.
11689         * lily/new-slur.cc: Resolve conflicts.
11691         * lily/stem-engraver.cc (make_stem): New method.
11693         * lily/include/script-interface.hh:
11694         * lily/script-interface.cc: New file.
11696         * lily/include/script.hh:
11697         * lily/script.cc: Remove.
11699         * lily/music.cc (duration_log): New method.
11701         * lily/script.cc (struct Skript): Remove.
11703         * lily/new-slur.cc (get_base_attachments): Try at articulations.
11704         Lots of coding cleanups (Stom).
11706 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11708         * lily/new-slur.cc (avoid_staff_line): new function: avoid
11709         collisions with staff lines.
11711         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
11712         global_path
11714         * scm/define-grobs.scm (all-grob-descriptions): set ratio
11715         .25. This flattens short slurs.
11717         * lily/new-slur.cc (enumerate_attachments): move X of attachment
11718         points for tilted slurs.
11720         * input/regression/slur-tilt.ly: new file.
11722         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
11723         stems of 16th graces too.
11725         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
11726         quant penalty dependent on how much the line is in the gap.
11728         * input/regression/grace-stem-length.ly: new file.
11730         * lily/beam-quanting.cc (score_forbidden_quants): remove
11731         interquant check. The penalty of 1000 is much too harsh, and the
11732         inter case should be caught by check-staff-line-in-gap check.
11734         * lily/scm-option.cc: move debug-beam to \paper.
11736         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
11737         .txt files to appease makeinfo.
11739         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
11740         remove texttagline.
11741         
11742         * lily/new-slur.cc: cleanup, split in functions.
11744         * lily/parser.yy (chord_body_element): allow octave-check = inside
11745         chord body. 
11747         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
11749         * lily/stem.cc (height): call Beam::after_line_breaking().
11751         * lily/rest-collision.cc (force_shift_callback): only call shift
11752         for columns containing rests.
11754         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
11756         * input/regression/font-postscript.ly: invoke afm2tfm. 
11758 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11760         * mf/SConscript: Build map files.
11762         * SConstruct: Rename $out to out-www in web.
11764 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11766         * SConstruct (web_kluts): Have make web build in out-www.  Not.
11768 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11770         * Documentation/user/music-glossary.tely (Top): add fragment to
11771         pertinent @lilypond entries.
11773         * scm/define-grobs.scm: switch on new-slur by default.
11775         * lily/scm-option.cc: symbol != string.
11777         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
11778         really work yet.
11779         (set_end_points): make X coord of attachment dependent on  Y.
11780         (score_encompass): add edges too.
11782 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11784         * lily/stem.cc (get_beaming): new function.
11786         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
11787         for fragment snippets. This fixes inclusion of toplevel-music
11788         examples (such as new-slur.ly)
11790 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11792         * scripts/lilypond-book.py: Remove second import of stat.
11794         * More SCons cleanups.
11796         * Documentation/bibliography/computer-notation.bib (note): Remove
11797         extraneous closing brace.
11799 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11801         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
11802         stat calls.
11804         * Documentation/bibliography/SConscript (bibs): failed try to get
11805         bib2html find html-long.bst.
11807         * buildscripts/bib2html.py (stat): fail if bibtex fails.
11809         * make/stepmake.make: use usescons for using scons. 
11811 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11813         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
11814         for lilypondend.  Import stat (huh?).
11816 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11818         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
11819         bypass dvi. 
11821         * input/regression/font-postscript.ly: new file. 
11823         * scm/framework-ps.scm (load-fonts): load pfb files too.
11825         * lily/pfb.cc (pfb2pfa): new file.
11827 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11829         * scripts/lilypond-book.py (PREAMBLE_LY): set
11830         toplevel-music-handler too.
11832 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11834         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
11835         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
11837         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
11839         * python/SConscript:
11840         * python/vim:
11841         * input/mutopia/*SConscript: New file.
11843         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
11845         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
11846         fixes web build.
11848         * make/stepmake.make (scons): re-route to SCONS if user has been
11849         running scons in this tree.
11851         * SConstruct (config_vars): Add CPPDEFINES.
11852         (env): Set checksums type to "content".
11853         (save_config_cache): Do not exit after configuring when using
11854         checksums (the default) instead of timestamps.
11856 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11858         * SConstruct: Further development.
11860         * input/test/SConscript: 
11861         * input/template/SConscript: 
11862         * input/regression/SConscript: 
11863         * Documentation/bibliography/SConscript:
11864         * Documentation/bibliography/index.html.in: New file.
11866         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
11867         generation.
11869         * buildscripts/builder.py: Add new builders.
11871         * make/stepmake.make: 
11872         * stepmake/stepmake/*.make: 
11873         * configure.in:
11874         * lily/*:
11875         * flower*: Use config.hh (Was config.h).
11877         * scm/encoding.scm (get-coding): Print friendly error message when
11878         no encoding is found, rather than crashing.
11880 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11882         * lily/new-slur.cc (score_slopes): strong sloping score only when
11883         stems point in same dir. 
11885 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11887         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
11888         for beam start.
11890         * lily/parser.yy (context_prop_spec): check grob name for
11891         alphanumericness..
11893         * lily/lyric-engraver.cc: creates LyricText objects
11895 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11897         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
11899 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11901         * SConstruct: Configure only pristine build tree or on user
11902         request.  Cleanups.  Add Documentation/topdocs to subdirs.
11903         Use checksums instead of timestamps.
11904         (CheckYYCurrentBuffer): Return result.
11906         * Documentation/topdocs/SConscript: New file.
11908 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11910         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
11912         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
11913         scm_from_int instead.
11915 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11917         * SConstruct: Updates.  Add targets: tar, dist, release.
11919 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11921         * input/mutopia-header.ly: Generate output.
11923         * SConstruct:
11924         * buildscripts/builder.py:
11925         * Documentation/user/SConscript: SCons fixes.
11927 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11929         * lily/new-slur.cc (class New_slur): new file. Score based slur
11930         computations.
11932 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11934         * mf/SConscript: Remove Builders.
11936         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
11938         * input/SConscript: 
11939         * Documentation/user/SConscript: New file.
11941 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11943         * Documentation/topdocs/NEWS.texi (Top): add note about new
11944         emacs electric-|
11946         * scm/*.scm: adapt ly:warn calls.
11948         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
11950         * lily/repeat-acknowledge-engraver.cc (process_music): look at
11951         main timing, not grace timing. Fixes volta-repeat-grace.
11953         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
11954         remove ly:kpathsea-gulp-file.
11956         * scm/translation-functions.scm (format-metronome-markup): make
11957         note smaller, align to bottom.
11959         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
11961         * lily/metronome-engraver.cc (stop_translation_timestep): attach
11962         metronome to musical column. Don't ack time sigs or bar lines.
11964 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
11966         * THANKS: sort, add David. Kristof contributed code, he is a
11967         contributor.
11969 2004-07-09  David Svoboda      <svoboda@cmu.edu>
11971         * elisp/lilypond-mode.el,
11972         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
11973         count beats between last measure stop | and point in emacs.
11974         
11975 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11977         * tex/GNUmakefile (TEX_FILES): don't dist
11978         music-drawing-routines.ps, latin1.enc 
11980         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
11981         --no-pdf, --pdftex
11982         (copyright): add --latex option
11983         (ic_p.make_include_option): use direct PS as default.
11985         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
11987         * input/regression/beam-concave.ly (rossFourBeams): add cases from
11988         Ross
11990         * scm/script.scm (default-script-alist): marcato should follow
11991         into staff
11992         
11993 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11995         * buildscripts/builder.py:
11996         
11997         * Documentation/SConscript (outdir): New file.  Add *list.ly
11998         dependencies.  Fixes PDF doc build.
12000 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12002         * SConstruct: Add Tar target (incomplete), fix install issues, fix
12003         run from build-dir.
12005         * ly/SConscript:
12006         * scm/SConscript: New file.
12008         * lily/main.cc (dir_info): Print variables in sh format.
12010         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
12012         * mf/SConscript: Update multiple target rules.
12014         * SConstruct (assert_version): Add.
12016 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12018         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
12020 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12022         * buildscripts/mf-to-table.py: Do not try to open ''.
12024         * mf/SConscript: New file.
12026 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
12028         * scm/fret-diagrams.scm : Convert many properties to constants,
12029         reducing the pollution of the property namespace.
12031         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
12032         unnecessary properties for fret-diagram
12034         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
12035         for interface
12037 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12039         * SConstruct: Update.
12041 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12043         * input/regression/beam-quant-standard.ly (seconds): print desired
12044         quants when failing.
12046 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12048         * SConstruct:
12049         * flower/SConscript:
12050         * lily/SConscript: New file.
12052 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
12054         * scm/define-grob-properties.scm (all-user-grob-properties): Add
12055         descriptions for all fret-diagram properties.
12057         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
12058         fret-diagram interface code
12060 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12062         * ly/book-paper-defaults.ly: set default encoding to ec.
12064         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
12065         installed.
12067         * tex/latin1.enc: new file, from a2ps. 
12069 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
12071         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
12072         add a faint, green border line.
12074         * Documentation/index.html.in: drop <table>, add a faint border line.
12076 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12078         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
12080         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
12082 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
12084         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
12086         * scm/output-tex.scm (white-text): Add scale parameter to allow font
12087         scaling
12089         * scm/stencil.scm (fontify-text-white) : Adjust to better center,
12090         properly scale white text
12092         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
12093         position for numbered dots so dot will touch fret.
12094         (various routines): move to font-metric interface, rather than
12095         name, size interface.  Clean up comments.
12097         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
12098         size and offset to better center white text.
12100 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12102         * ChangeLog: Remove pre-2.1 changes.
12104         * Documentation/misc/ChangeLog-2.1: New file.
12106         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
12107         from ChangeLog.
12109 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12111         * input/test/chords-below-volta-bracket.ly,
12112         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
12114 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12116         * VERSION: release 2.3.6
12118         * input/regression/beam-quant-standard.ly: new file: test standard
12119         beam quants.
12121         * scm/beam.scm (check-quant-callbacks): new function
12122         (check-beam-quant): new function: check whether current beam
12123         quants match argument.
12125         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
12126         forbidden quant for sitting (upstem)/hanging (downstem) on outer
12127         staffline line.
12129 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12131         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
12132         functions.
12134         * lily/note-collision.cc (do_shifts): align colliding notes to
12135         their leftmost note.
12137         * input/regression/collision-alignment.ly: new file.
12139         * ly/init.ly: don't print gc stats.
12141         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
12142         extra newline
12144         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
12145         for dimensions. This fixes ottava-remove-empty-staff.ly
12147         * input/regression/lyrics-tenor-clef.ly: new file.
12149         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
12150         cyclic parents when two axis-group-engravers are
12151         present. Fixes: crash-axis-group-engraver.ly. 
12152         
12153         * input/test/volta-chord-names.ly: new file.
12155         * scm/define-context-properties.scm
12156         (all-user-translation-properties): change voltaOnThisStaff
12157         definition. 
12159         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
12160         if necessary.
12162         * lily/volta-bracket.cc (print): handle volta brackets without
12163         bars. 
12165 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12167         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
12168         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
12170 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12172         * scm/output-gnome.scm: updated instructions for running gnome
12173         backend
12175 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
12177         * scm/fret-diagrams.scm (draw-dots): default values for dot size
12178         and dot-position now depend on finger-code value; in-dot makes
12179         dots larger and centered.
12180         (draw-barre): added straight-barre indicator option
12181         (draw-dots): made fontify-text-white work.
12183         * music-drawing-routines.ps: added /draw_white_text
12185         * scm/output-tex.scm:  added white-text
12187         * scm/output-ps.scm:  added white-text
12189         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
12190         list of stencil expressions
12192         * scm/stencil.scm: Added fontify-text-white
12194 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
12196         * input/regression/+.ly: use @unnumbered section.
12198 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12200         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
12201         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
12203 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12205         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
12207 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12209         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
12210         was causing an error. (was not actually commited in 2004-06-20)
12212         * input/regression/lily-in-scheme.ly (withPaddingC): does not
12213         breaks anymore
12215 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12217         * VERSION: 2.3.5 released.
12218         
12219         * lily/my-lily-parser.cc (parse_string): switch module too.
12221 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
12223         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
12224         ec-fonts-mftraced to running requirements.
12226 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12228         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
12229         assignments don't reach the original file.
12231         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
12232         exists
12234 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
12236         * scm/output-gnome.scm: 
12237         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
12239         * debian/: Apply Debian patch (Anthony Fok).
12241 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
12243         * Documentation/user/music-glossary.tely: fix titling; @top is already
12244         an @unnumbered @chapter.
12246 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12248         * debian/GNUmakefile (EXTRA_DIST_FILES):
12249         (CONF_FILES): update file list.
12251         * lily/stencil.cc (interpret_stencil_expression): bugfix.
12253 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12255         * debian/: Remove cruft (requested Anthony Fok.)
12257         * buildscripts/guile-gnome.sh: Build without gcc libtool version
12258         juggling.
12260         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
12261         Add popup menu with grob properties.
12263         * lily/grob-scheme.cc (ly:grob-properties):
12264         (ly:grob-basic-properties): New function.
12266         * lily/stencil.cc (interpret_stencil_expression): Comment-out
12267         "no-origin" call.  Fixes -fps output.
12269         * scm/output-ps.scm (no-origin): Add dummy implementation.
12271         * scm/output-gnome.scm (define-origin): Remove
12272         (grob-cause): Add.
12274         * scm/output-ps.scm (scm):
12275         * scm/output-tex.scm (scm): Remove define-origin from exports list.
12276         (define-origin): Remove.
12278         * scm/output-gnome.scm (define-origin): 
12280         * scm/lily.scm (ly:all-output-backend-commands): Remove
12281         define-origin.  Add grob-cause.
12283 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
12285         * buildscripts/lilypond-words.py: add ly/portugues.ly.
12287 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
12289         * Documentation/user/GNUmakefile:
12290         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
12291         --include-css=.../texinfo.css; command includes css into the html.
12293         * Documentation/texinfo.css: add file.
12294         define <hr> as black and thin.
12296 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12298         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
12299         stencil expression. Junk define-origin.
12301         * lily/my-lily-parser.cc (parse_string): init parser variable when
12302         lexer_ is set, ie. in parse_string and parse_file.
12304         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
12305         ly:score-bookify.
12307         * scm/lily.scm (collect-scores-for-book): new function.
12309         * ly/init.ly: print collected scores/musics.
12311         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
12312         scope, not in lily module.
12314         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
12316         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
12317         encapsulate gtk/pango tests.
12319         * po/tr.po: Turkish translation.
12321 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12323         * input/regression/lily-in-scheme.ly: regression test for #{
12324         ... #} syntax
12326         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
12327         was causing an error.
12329         * Documentation/user/programming-interface.itely (Using LilyPond
12330         syntax inside Scheme): documentation for #{ ... #} syntax.
12332 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
12334         * Documentation/index.html.in: use black thin <hr>.
12336         * buildscripts/mutopia-index.py: use thin black <hr>.
12338 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12340         * scm/fret-diagrams.scm: Use UNIX style line endings.
12341         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
12342         typo.  Fixes compile.
12344         * scm/output-ps.scm (white-dot): Remove second incarnation.
12346         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
12348 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12350         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
12351         single file error.
12353         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
12355 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
12357         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
12358         remove size as argument to fret-diagram interface;
12359         improved white-circle dots for fret;
12360         improved top-fret thick line/
12362         * scm/output-ps.scm: added white-dot function
12364         * scm/output-tex.scm: added white-dot function
12366         * tex/music-drawing-routines.ps: added draw_white_dot function
12368         * ps/music-drawing-routines.ps: added draw_white_dot function
12370         * input/test/fret-diagram.ly: examples to show multiple
12371         functions and multiple interfaces
12373 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12375         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
12376         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
12378         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
12379         conflict.  Have I told you lately how much I love autotools?
12381 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12383         * lily/lily-guile.cc: 
12384         * lily/pangofc-afm-decoder.cc:
12385         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
12386         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
12388         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
12389         developers.
12391         * lily/paper-outputter.cc (file): New method.
12392         (dump_string): Use it.
12394         * scm/output-gnome.scm: Update with pango CVS info, lilylib
12395         musing.
12397         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
12398         of them has a comma :-).
12400         * scm/framework-gnome.scm: Add pango decoders.
12402         * lily/include/pangofc-afm-decoder.hh: 
12403         * lily/pangofc-afm-decoder.cc: New file.
12405         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
12407         * configure.in: Check for pango.
12409         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
12410         autoconf).
12411         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
12413         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
12415 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12417         * Documentation/user/tutorial.itely (Integrating text and music):
12418         fix grammar & punctuation.
12420 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12422         * lily/: Stray janitorial cleanups.
12424         * scm/lily.scm (ly:all-stencil-expressions):
12425         * scm/lily.scm (ly:all-output-backend-commands): New function.
12427         * scm/safe-lily.scm (safe-objects): Add them.
12429         * scm/framework-gnome.scm (<gnome-outputter>): New class.
12431         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
12433 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12435         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
12437 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12439         * scm/page-layout.scm (default-page-make-stencil): add
12440         raggedbottom, raggedlastbottom.
12442         * Documentation/user/changing-defaults.itely (Page layout): add doc.
12444         * scm/framework-tex.scm (define-fonts): fix export of
12445         papersize.
12447         * lily/paper-book.cc (classic_output): strip suffixes from
12448         framework functions.
12450         * lily/tuplet-bracket.cc (before_line_breaking): do not return
12451         SCM_UNDEFINED to Scheme.
12453 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12455         * lily/book.cc: remove Book::to_stencil().
12456         (process): whoops. Score::book_rendering returns vector, not list.
12458         * scripts/convert-ly.py (conv): remove \notes.
12459         apply to input examples.
12461         * lily/paper-outputter.cc (output_stencil): don't use
12462         smobify_self() but self_scm()
12464         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
12465         from smobify_self().
12467         * lily/paper-book.cc (output): load framework module
12468         scm_c_resolve_module().
12470         * python/lilylib.py (exit): exit with argument i.
12472 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12474         * scm/framework-gnome.scm (output-framework-gnome): Try loading
12475         gnome modules from non-toplevel.
12477         * lily/ly-module.cc (ly:import-module): Export to ly:.
12479         * lily/paper-score.cc (process): Do not show progress newline.
12481         * lily/paper-book.cc (output, classic_output): Show progess
12482         newline after score.
12484 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
12486         * buildscripts/lilypond-words.py: add ly/vlaams.ly
12488 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12490         * lily/score.cc (ly:run-translator): Do not crash on empty music
12491         list.
12493         * lily/book.cc (process): Do not render score when systems is empty.
12495         * input/simple-song.ly: Down one octave.
12497         * scm/output-gnome.scm: Remove script again; re-add modules fix
12498         (CVS conflict resolve?)
12500         * lily/stencil.cc (ly:interpret-stencil): Was:
12501         interpret_stencil_expression.
12503 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12505         * buildscripts/guile-gnome.sh: New file.
12507         * scm/output-gnome.scm: White background, better window size, sane
12508         canvas size.  Cleanups.
12510 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12512         * VERSION: release 2.3.4
12514         * Documentation/user/invoking.itexi (Invoking the lilypond
12515         binary): document --safe.
12517         * scm/output-gnome.scm: set PATH in script.
12519         * scm/page-layout.scm (default-page-make-stencil): don't stretch
12520         if there is too few systems on a page.
12522         * lily/parser.yy (relative_music): start at middle C without pitch
12523         argument.
12525         * Documentation/user/changing-defaults.itely (Page layout): new node.
12526         (Paper size): rename node
12527         (Page breaking): new node.
12528         (Titling): move from invoking.
12529         (File structure): new node.
12531         * lily/parser.yy (score_body): allow \header and music anywhere in
12532         \score body.
12534 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12536         * scm/lily.scm (ly:load): Remove page-breaking.scm.
12538 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12540         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
12542         * lily/include/paper-line.hh: rename to Paper_system.
12544         * lily/include/paper-book.hh: doc class.
12546         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
12548         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
12549         (plain-header): add instrument-name.
12550         (default-page-make-stencil): bugfixes.
12552         * lily/parser.yy (book_body): allow \header anywhere in \book{}
12554         * lily/paper-book.cc: remove copyright & tagline. Remove
12555         interactions with Page
12557         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
12558         here, 
12559         (default-page-make-stencil): new function
12560         (default-page-music-height): new function
12561         (page-headfoot): new function
12562         (ly:optimal-page-breaks): generate stencils directly from here
12564         * scm/titling.scm: new file, group titling functions
12566 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12568         * scm/output-gnome.scm: Handle multiple pages.
12570         * scm/framework-gnome.scm: Do not load output-gnome.
12571         (framework-gnome): Invoke output-gnome::header and
12572         output-gnome::end-output as faked stencils.  Fixes experimental
12573         gnome output.
12575 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12577         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
12578         octavation compatibility fixes. Backportme. 
12580         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
12581         pages.
12582         (ly:optimal-page-breaks): combine-penalties: no shortcut for
12583         negative. Now we handle negative penalties (ie. \pageBreak)
12584         correctly.
12586         * lily/system.cc (get_line): extract page-penalty from the left
12587         bound.
12589         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
12591 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12593         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
12595 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12597         * scm/output-gnome.scm: Update script.  Move development to
12598         lilypond_2_3_2 branch for now.
12600 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12602         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
12603         negative penalties.
12604         cleanups.
12606         * Documentation/user/changing-defaults.itely (Creating contexts):
12607         index entries
12609         * scm/page-breaking.scm (ly:optimal-page-breaks): new
12610         file. Rewrite function. 
12612         * lily/paper-book.cc (pages): new interface: page-breaking returns
12613         list of line-list.
12615         * lily/page.cc (Page): take lines argument.
12617         * scm/document-translation.scm (all-engravers-doc): link to user man
12619         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty
12620         iso. score.
12622         * Documentation/user/notation.itely (Relative octaves): typo.
12624         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
12626 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12628         * scm/output-gnome.scm: Update build script.
12630 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12632         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
12633         gnome backend.
12635         * scm/framework-gnome.scm: New file.
12637         * scm/lily.scm: Use it.
12639         * lily/paper-outputter.cc: Janitorial cleanups.
12640         (ly:outputter-dump-string): Remove unreachable statement.
12642         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
12643         (ice-9): Bugfix: Add srfi-1.
12645         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
12647 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12649         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
12650         in do_quit()
12652 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12654         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
12656 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12658         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
12659         override of Beam::position-callbacks. Why would grace beams not be
12660         quantized? Fixes: weird-stem-size-grace. 
12662         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
12663         warning only once. Backportme.
12665         * lily/accidental-engraver.cc (number_accidentals_from_sig):
12666         bugfix, 2nd try. Backportme.
12668         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
12670 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12672         * Documentation/user/notation.itely (Instrument transpositions):
12673         Correct the name of the instrumentTransposition property.
12675 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12677         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
12679 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12681         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
12682         and postLilyPondExample are called when defined.
12684 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12686         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
12687         This fixes setting notenames with `\include "nederlands.ly" '
12689         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
12690         new function.
12692 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12694         * scm/page-layout.scm: don't do piece, it should be in score-title
12695         only.
12697         * lily/lexer.ll: lex \score separately.
12699         * lily/paper-book.cc: junk stencil2line.
12701         * lily/paper-line.cc (Paper_line): construct from Stencil
12702         directly. No futzing with the dimensions.
12704         * lily/include/paper-line.hh (class Paper_line): 
12706         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
12707         takes arbitrary number of arguments.
12709         * input/test/markup-score.ly (tuning): simplify example. 
12711 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12713         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
12715         * scm/define-markup-commands.scm (score): define score-markup
12717         * lily/parser.yy (markup): use score-markup.
12719         * lily/score.cc: add ly:score? 
12721 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
12723         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
12724         fret-parse-string so it prepares for calls to fret-diagram-verbose
12725         Changed display constants to props so they are available for
12726         \override.
12728 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12730         * VERSION: release 2.3.3
12732         * stepmake/stepmake/generic-vars.make: unset LANG.
12734         * input/regression/tuplet-nest.ly: bugfix.
12736         * lily/tie-performer.cc (stop_translation_timestep): reset
12737         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
12739         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
12740         clear repeat_ directly after setting stem_tremolo_. Fixes:
12741         tremolo-repeat.ly
12743         * input/regression/span-bar-break.ly: new file.
12745         * scm/define-grobs.scm (all-grob-descriptions): remove
12746         break-visibility from SpanBar. Fixes: piano-repeat.ly
12748 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12750         * python/lilylib.py (make_ps_images): only compute bbox when needed.
12752         * scripts/lilypond-book.py (process_snippets): use lily -f ps
12753         files for generating pngs. (failed experiment)
12755         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
12756         file with PFA fonts included.
12758         * lily/score.cc (default_rendering): put header in too.
12760         * lily/paper-line.cc (LY_DEFINE): change function to
12761         ly:paper-line-extent
12763         * scm/page-layout.scm (default-book-title): only add lines for
12764         non-nil fields.
12765         (default-score-title): idem.
12767         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
12769         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
12771         * lily/include/paper-book.hh (class Paper_book): remove height_
12772         member.
12774         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
12776         * lily/ly-module.cc (LY_DEFINE): bugfix.
12778         * lily/paper-book.cc (book_title): separate function for the book
12779         title.
12781         * scm/page-layout.scm (default-book-title): only account for
12782         markup fields.
12784         * scm/framework-ps.scm: new file. Move high level interface from
12785         output-ps.scm
12787         * scm/music-functions.scm (def-grace-function): move macros from
12788         ly/music-functions-init.ly
12790         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
12791         framework-tex.scm
12793         * scm/framework-tex.scm (dump-line): new file. High level
12794         interface for output (pages, systems, header). 
12796         * lily/include/page.hh (class Page): add is_last_ field.
12798         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
12800         * lily/paper-book.cc (split_string): new function
12801         (output): output multiple formats, i.e. --format=ps,tex
12803         * scm/output-ps.scm (output-scopes): dump variables directly.
12804         (define-fonts): rewrite for new interface
12806         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
12808         * lily/paper-outputter.cc (Paper_outputter): take format argument.
12810         * lily/main.cc (parse_argv): don't set extension for output.
12812         * lily/clef-engraver.cc (create_clef): remove
12813         Staff_symbol_referencer::set_position() call. 
12815 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12817         * ly/music-functions-init.ly (addlyrics): set the 'origin property
12818         with the location argument in music function definitions.
12820 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12822         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
12823         staffsymbol dependency.
12825         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
12826         cleanups.
12828         * lily/book.cc (process): return Paper_book
12829         (to_stencil): use Book::process().
12831         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
12832         header_ field. Store in $globalheader
12834         * lily/parser.yy (book_body): book header is initted to
12835         $globalheader.
12838 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12840         * input/test/fill-a4.ly: removed.
12842         * lily/parser.yy (output_def): push scope of parent_ Output_def
12843         too.
12845 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12847         * scm/output-gnome.scm: Update info.
12849 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12851         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
12853         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
12854         than 1 module.
12856         * lily/include/ly-module.hh (ly_use_module): rename is_module to
12857         ly_c_module_p.
12859         * scm/page-layout.scm (default-book-title): move Scheme titling
12860         functions to here.
12862         * lily/parser.yy (book_paper_block): remove scope too.
12864         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
12866         * lily/rest.cc: add direction to rest properties.
12868         * lily/include/output-def.hh: new file, move from
12869         music-output-def.hh
12871 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12873         * scm/output-gnome.scm: Describe feta-cork hack.
12875 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12877         * lily/include/book-paper-def.hh: derive from Output_def 
12879         * lily/include/paper-def.hh: move all functionality out of class.
12880         Junk header.
12882         * lily/include/music-output-def.hh: rename Music_output_def to
12883         Output_def.
12885         * input/wilhelmus.ly: only set space for Paper formatting. 
12887         * lily/include/midi-def.hh: remove file, remove class.
12888         Move functions to Music-output-def.
12890         * lily/music-output-def.cc (Music_output_def): remove separate
12891         translator table. Lookup translators in scope directly. This
12892         obviates Context suffix for context identifiers, i.e.
12894         \context {
12895           \Staff
12896           .. 
12897           }
12900         will work.
12903         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
12905         * Documentation/user/changing-defaults.itely (Horizontal spacing):
12906         document spacing override hack.
12908 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12910         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
12911         installation info.  Support point-and-click.  Add +/- zoom
12912         keybindings.
12914 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12916         * VERSION: 2.3.2 released
12918         * lily/parser.yy (book_body): set default bookpaper.
12920         * scm/output-tex.scm (header): kludge: hard code linewidth. 
12922         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
12924 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12926         * lily/score.cc (default_rendering): scale outputdef before
12927         starting.
12929 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12931         * scm/fret-diagrams.scm: Add header.
12933         * scm/output-gnome.scm: Hello world :-)
12935 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12937         * scripts/lilypond.py (run_dvips): only add papersize if present.
12939         * lily/accidental-engraver.cc (update_local_key_signature): new
12940         function, fold code from initialize() and process_music().
12941         (update_local_key_signature): use deep copy. This fixes one
12942         problem from custom-key-signatures.ly.
12943         (number_accidentals_from_sig): tighter check for
12944         accidental-too-old.
12946         * ly/engraver-init.ly: remove localKeySignature
12947         definition from ChoirStaff, StaffGroup, Score.
12949         * lily/percent-repeat-engraver.cc (try_music): add moments for
12950         barlines too. Fixes: skipbars-percent-repeat.ly.
12952 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12954         * lily/context-def.cc (filter_performers): don't go to cdrloc if
12955         skipping last pair. Fixes: crash-bar-number.
12957         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
12958         D. Sorensen)
12960         * input/test/fret-diagram.ly: new file.
12962         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
12963         (scale-paper): divide by scale.
12965 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12967         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
12968         case.
12970 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12972         * scm/stencil.scm (fontify-text): reinstate function
12974         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
12976         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
12978         * lily/parser.yy (book_paper_head): \bookpaper {} 
12980         * python/midi.c: remove config.h
12982 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12984         * scm/output-gnome.scm: Update.
12986 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12988         * scm/output-gnome.scm: New file.
12990         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
12992 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12994         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
12995         (find_scaled_font): move from Paper_def
12997 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12999         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
13000         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
13002         * po/fr.po: update po.
13004         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
13006         * lily/book-paper-def.cc (print_smob): new file.
13008 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
13010         * buildscripts/lilypond-words.py: search words also from
13011         music-functions-init.ly.
13013 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13015         * ly/music-functions-init.ly (def-music-function): new helper
13016         macro for defining music functions. \addlyrics \appoggiatura
13017         \acciaccatura \grace \partcombine \autochange \applycontext
13018         \applyoutput and \breathe are now defined here thanks to it.
13020         * lily/parser.yy: 
13021         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
13022         \grace \partcombine \autochange \applycontext \applyoutput and
13023         \breathe keywords removed from the parser.
13025         * lily/parser.yy: 
13026         * lily/music-function.cc (ly_make_music_function): 
13027         * lily/lexer.ll (music_function_type): added a case for 0-arg
13028         music functions.
13030 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13032         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
13033         refering to a music expression can be used in lily-inside-scheme:
13034         #{ $music #}
13036         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
13037         and ly:parser-define, and change ly:parser-parse-string in order
13038         to make #{ $music #} work.
13040         * scm/new-markup.scm (compile-markup-expression): when an argument
13041         is a string, use `make-simple-markup'.
13043 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13045         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
13047 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13049         * scripts/convert-ly.py (FatalConversionError.func): handle + in
13050         font-size. (backportme)
13052 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13054         * lily/paper-outputter.cc (output_stencil): dump font definitions
13055         before each stencil.
13057         * lily/include/paper-book.hh (struct Score_lines): new
13058         struct. Collect info per Paper-score.
13060         * lily/include/page.hh (class Page): to_stencil() returns Stencil
13061         everywhere.
13063         * lily/stencil.cc (find_expression_fonts): new function
13065         * lily/paper-outputter.cc (output_stencil): use
13066         interpret_stencil_expr
13068         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
13069         (interpret_stencil_expr): new function. Generic stencil
13070         interpretation.
13072         * lily/paper-def.cc (find_scaled_font): divide lookup
13073         magnification by outpuscale for non-virtual fontmetrics. This
13074         fixes ludicrously long font definitions for text
13075         fonts. (backportme)
13077         * lily/score-engraver.cc: remove
13078         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
13080 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13082         * input/test/markup-score.ly: Remove \notes.
13084         * lily/parser.yy (book_body): Grok Composite_music and \header.
13085         (markup): Push NOTES mode before score_block.
13087         * VERSION: release 2.3.1
13089         * mf/feta-klef.mf: 
13090         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
13092         * Documentation/user/programming-interface.itely: Use @emph (was:
13093         @em).
13095         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
13097 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13099         * scm/output-tex.scm (output-tex-string): tighten safe security.
13101         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
13103         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
13104         allowed ly functions.
13106         * lily/ly-module.cc (ly_module_define): only define variable if
13107         bound.
13108         (ly_make_anonymous_module): take safe option.
13110 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13112         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
13114 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13116         * input/regression/newaddlyrics.ly: Fix.
13118         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
13119         \score \notes.
13121 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
13123         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
13125 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13127         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
13129         * lily/paper-line.cc (Paper_line): don't store list of stencils,
13130         but convert to single Stencil immediately.
13132         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
13134 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13136         * scm/output-sodipodi.scm: Resurrect sodipodi output.
13138 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
13140         * elisp/lilypond-mode.el: Changed the way defaults are created for
13141         LilyPond-command-master.  LilyPond-mode will now check the
13142         timestamps of the files to see which command has to run next.
13144 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13146         * scm/bass-figure.scm (format-bass-figure): don't set
13147         number-markup for strings. This fixes string in bass
13148         figure. (backportme)
13150         * lily/parser.yy (bass_number): insert number-markup into figure
13151         definition.
13153         * scm/define-music-properties.scm (all-music-properties): make
13154         'figure a markup.
13156         * scripts/convert-ly.py (conv): \apply -> \applymusic
13158 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
13160         * elisp/lilypond-mode.el: changed the order of some commands
13161         ("Midi" after "2Midi"), use the user-defined
13162         LilyPond-command-default as default instead of "LilyPond"
13164         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
13165         to set the master file for the next command.
13167         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
13168         with font-lock-reference-face.
13170 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
13172         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
13174         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
13176 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13178         * ly/music-functions-init.ly (TODO): new file.
13180         * lily/parser.yy (Generic_prefix_music_scm): add more
13181         music_function symbols.
13182         (Prefix_composite_music): change \apply to music-function   
13184         * lily/include/music-function.hh: rename to music-function
13186 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13188         * lily/music-head.cc (LY_DEFINE): change order of args.
13190         * input/regression/music-head.ly (texidoc): new file.
13192         * lily/parser.yy (Generic_prefix_music): allow generic
13193         music-transformation functions. 
13195         * lily/include/music-head.hh (is_music_head): new file.
13197         * lily/music-head.cc (get_music_head_transform): new file.
13199 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13201         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
13202         empty extent. This fixes ottava brackets on rests. (backportme)
13204         * make/lilypond.redhat.spec.in (Group): ln png files for info.
13206         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
13208         * cygwin/lily-wins.py: update for the lily-wins.py script.
13210 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13212         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
13213         code. This will obviate typeset_grob () in the future.  The effect
13214         of this is that improperly written spanner handling will result in
13215         invalid spanner bounds.
13216         (announce_grob): add to elems_ from here
13217         (typeset_grob): comment out.  
13219         * lily/include/engraver.hh (make_spanner): new calling interface
13220         for make_{item,spanner}. This obviates most calls to
13221         announce_grob().
13223         * scm/music-functions.scm (set-accidental-style): use GrandStaff
13224         iso. PianoStaff for piano styles.
13226 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
13228         * Documentation/user/music-glossary.tely: add segno after d.s.
13230 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13232         * lily/include/audio-column.hh: remove unused variables.
13233         (patch by Michael Welsh Duggan)
13235         * flower/include/axes.hh (other_axis): inline Axes function
13236         (thanks to David Brandon).
13238 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13240         * cygwin/mknetrel: Install image links (backportme).
13242         * Documentation/user/GNUmakefile (local-install-info): Activate
13243         actual installing of image links (backportme).
13245 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13247         * Documentation/user/notation.itely (Measure repeats): Removed
13248         unnecessary (and confusing) \context Voice{.
13250 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
13252         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
13254         * lily/page.cc (Page): Do not use ly_scheme_function for
13255         volatile/configurable variables (FIXME: better name).
13257         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
13258         get_scmvar).
13260 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13262         * scripts/convert-ly.py (FatalConversionError.subst): use
13263         \transposition.
13265 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
13267         * lily/include/page.hh (class Page): Declare left_margin ().
13269         * lily/page.cc: Remove paper var caching.
13271 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13273         * Documentation/user/music-glossary.tely: Add name to @top node.
13274         Remove comment from @table definitions (workaround for makinfo
13275         bug).
13277         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
13278         ly:stencil-get-expr).  Update callers.
13279         (ly:stencil-align-to!):  Return stencil too.
13281         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
13282         stencil.  Remove looped line-based page output.
13283         (output_line): Use line stencil.  Remove looped stencil-based line
13284         output.
13286         * lily/page.cc (ly:page-paper-lines): New function.
13288         * input/test/markup-score.ly: New file.
13290         * scm/define-markup-commands.scm (stencil): New markup.
13292         * lily/book.cc (to_stencil): New method.
13294         * lily/parser.yy (markup): Use it to grok \score.
13296 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13298         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
13300         * lily/paper-book.cc (pages): Change signature.  Update callers.
13302         * lily/include/page.hh:
13303         * lily/page.cc: New file.
13305         * lily/paper-line.cc (to_stencil): New method.
13307         * lily/paper-outputter.cc (output_stencil): New method.
13309         * lily/paper-outputter.cc (output_line): Use them.
13311         * lily/warn.cc: Remove.
13313         * lily/my-lily-parser.cc (distill_inname): Remove.
13315         * flower/include/file-name.hh: 
13316         * flower/file-name.cc: New file.  Update users.
13318         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
13319         (find): New method of same name.
13321         * lily/my-lily-parser.cc (ly:parse-file): Use it.
13323         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
13324         constant error message.
13326 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
13328         * input/test/{blank-notes.ly,staff-container.ly}: typos.
13330 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13332         * Documentation/user/music-glossary.tely: @table @strong' replaced
13333         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
13334         (backportme).
13336 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13338         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
13340         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
13341         #{ lily music expression #} that returns an equivalent scheme
13342         music expression by parsing the string.
13344 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
13346         * lily/my-lily-parser.cc:
13347         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
13348         SCM string (foo.ly/toto.scm support).
13350 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
13352         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
13354 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
13356         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
13358         * scripts/lilypond-book.py: LY code that includes \header is
13359         not assumed to be a fragment.
13361 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13363         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
13364         tremolo beams up.
13366         * lily/stem.cc (chord_start_y): Return 0 if no heads.
13367         (get_default_stem_end_position): No tremolo head juggling if no
13368         heads.  Fixes tremolo crash on rests (backportme).
13370         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
13372 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
13374         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
13375         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
13377         * lily/lexer.ll: Allow \encoding in NOTES mode.
13379         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
13380         for lyrics, not for commands.
13382         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
13383         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
13385         * input/regression/newaddlyrics.ly: New file.
13387         * Documentation/topdocs/NEWS.texi: Update.
13389         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
13390         (Music_list): Allow embedded scm.
13392         * lily/score.cc (ly:score-bookify): New function.
13394         * lily/music.cc (ly:music-scorify): Idem.
13396         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
13397         (ly:parser-print-score): Idem.
13399         * scm/lily.scm (default-toplevel-book-handler): Idem.
13400         (default-toplevel-music-handler): Idem.
13401         (default-toplevel-score-handler): Idem.
13403         * ly/declarations-init.ly: Set default toplevel handlers.
13405         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
13407         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
13408         printer for score at toplevel.
13410 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13412         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
13413         Fix for simple case: input/simple-song.ly, more complex stuff
13414         does not work yet.
13416 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13418         * lily/parser.yy (Prefix_composite_music): split Composite_music
13419         in Prefix_composite_music and Grouped_music_list.
13420         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
13422 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13424         * scm/lily.scm (toplevel-expression): New define.
13426         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
13428         * lily/parser.yy (toplevel_expression): Use it.
13430         * lily/include/my-lily-parser.hh: Smobbify.
13432         * lily/my-lily-parser.cc (parse_string): New method.
13434         * lily/my-lily-parser.cc (ly:parse-string): New function.
13436         * Documentation/user/lilypond.tely: Add comment and workaround for
13437         gs-8.01 crash.  Fixes make web.
13439         Simplification of toplevel music.
13441         * lily/lexer.ll, lily/parser.yy:
13443         * In LYRICS mode, return LYRICS_STRING.  This fixes one
13444         shift/reduce problem.
13446         * Use NOTES mode at start of maininput.
13448         * Grok toplevel composite music expression, put in score and book.
13450         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
13452         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
13454         * input/simple.ly: New file.
13456         * input/simple-song.ly: Idem.
13458 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13460         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
13461         Sandberg.
13463 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13465         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
13467 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
13469         * input/regression/accidental-octave.ly: doc automatic showing
13470         of note names.
13472 2004-04-16  Heikki Junes <janneke@gnu.org>
13474         * po/fi.po: do "make po && make -C po po-update" at top-level,
13475         then "cp po/out/fi.po po/fi.po" and update fields.
13477         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
13479 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
13481         * Documentation/user/introduction.itely (About this manual): Fix
13482         templates and regression urls (backportme).
13484 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13486         * ly/engraver-init.ly (Score:graceSettings): Increase
13487         beamed-lengths, especially for 32nd notes.
13489         * Documentation/user/notation.itely (Grace notes): Correct the
13490         syntax for add-grace-property example.
13492 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13494         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
13495         `Generated' tag.
13497         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
13498         Severely broken (the Debian package, at least).
13500 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13502         * lily/context.cc (find_create_context): assign to lvalue.
13504 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13506         * lily/include/translator.hh (class Translator): rename
13507         get_parent_context() to context () to avoid confusion.
13509         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
13511         * lily/lexer.ll: change is_string -> ly_c_string_p 
13513         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
13515         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
13517 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13519         * VERSION: release 2.3.0
13521         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
13523         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
13524         if nonempty.
13526         * lily/include/context.hh (class Context): make members protected.
13527         (children_contexts): new accessor function.
13529         * lily/include/translator.hh (class Translator): make
13530         daddy_context_ protected.
13531         (class Translator): clean up. 
13533         * lily/include/context.hh (class Context): make daddy_context_
13534         private.
13536         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
13537         higher for finding Voice. (backportme)  
13539         * lily/include/context.hh (class Context): remove
13540         find_context_below() as a method.
13542         * Documentation/user/notation.itely (The Lyrics context): add note
13543         about manual durations
13545         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
13546         encoding.
13548         * scm/output-tex.scm (text): dump \inputencoding{} for text.
13550 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13552         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
13553         \usepackage{inputenc}
13555         * lily/paper-book.cc (classic_output): don't advance Offset for
13556         TeX output.
13558         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
13559         ec-sauter.map in rules
13561         * mf/ecb.mf (font_identifier): new file, based on ecbx
13563         * mf/ecb10.mf (gensize): new file.
13565         * Documentation/topdocs/NEWS.texi (Top): document some more new
13566         features.
13568         * ly/declarations-init.ly: run convert-ly
13570         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
13571         from input-file-results. Remove input-file-results.* 
13573 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13575         * scm/output-ps.scm (font-command): Fix, again.
13577         * input/test/title-markup.ly: Add \noPagebreak test.
13579         * lily/score-engraver.cc (try_music): Bugfix.
13581 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13583         * lily/main.cc (main_with_guile): excise dependency options -M and
13584         --dep-prefix
13586         * lily/input-file-results.cc: excise Makefile dependency code
13588         * Documentation/user/invoking.itexi (Invoking the lilypond
13589         binary): remove dep doco
13591         * lily/main.cc (main_with_guile): call lilypond-main
13593         * scm/lily.scm (lilypond-main): new function: handle multiple files.
13595         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
13596         exception.
13598         * lily/my-lily-parser.cc: remove paper_description function
13600         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
13601         new function.
13603         * lily/main.cc: remove global_score_count.
13605         * lily/book.cc (process): don't take header from global_input_file.
13607         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
13609         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
13611         * lily/music-output-def.cc (LY_DEFINE): new function
13612         ly_output_description. This function does the bulk for  setting,
13613         parsing and breaking down of an input file.
13615         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
13616         anonymous modules globally. Let's hope they get GCd
13618         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
13620 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13622         * scm/output-ps.scm (header): Papersize from paper.
13624         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
13625         for classic output.
13627         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
13628         lilypondclassic is defined.
13629         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
13631         * input/regression/between-systems.ly: Remove.
13633         * python/lilylib.py (get_bbox): Fix regular expression
13634         for bounding box.
13636         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
13638         * scm/output-tex.scm (stop-page): Use it.
13640         * scm/output-ps.scm (define-fonts): Bugfix.
13642         * lily/grob.cc: Add penalty to interface.
13644         * lily/include/paper-line.hh (class Paper_line): New member
13645         var penalty_.
13647         * lily/system.cc (get_line): Initialise Paper_line with
13648         page-penalty's from original grobs.
13650         * scm/define-music-properties.scm (all-music-properties): Add
13651         page-penalty.
13653         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
13655         * lily/score-engraver.cc (try_music): Handle page-penalty.
13657         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
13659 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13661         * ly/declarations-init.ly (melismaEnd): typo
13663         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
13665         * scm/output-ps.scm (text): split string into spaces, use moveto
13666         for setting space. 
13668 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13670         * po/nl.po: Update.
13672         * scm/font.scm (add-cmr-fonts): Typo.
13674 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13676         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
13677         font-encoding.
13679         * scm/define-grobs.scm (all-grob-descriptions): idem.
13681         * lily/time-signature.cc (numbered_time_signature): idem.
13683         * scm/font.scm (add-cmr-fonts): use real encoding names for
13684         font-encoding.
13686 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13688         * lily/paper-book.cc (classic_output): 
13689         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
13690         Fixes classic output.
13691         (lilypondstart):
13692         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
13693         kludge.
13695         * scripts/old-lilypond-book.py: Remove.
13697         Page layout for SCOREs enclosed in a BOOK:
13699         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
13700         layout tweaking.
13702         * input/les-nereides.ly (theScore): Add \book.
13704         * input/test/title-markup.ly: Add \book.
13706         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
13707         only if 'verbose.
13709         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
13711         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
13713         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
13714         * scm/output-tex.scm (start-system): Update for page layout by
13715         LilyPond.
13717         * scm/output-ps.scm (start-system): Previously (new-start-system).
13719         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
13720         passed to define-fonts.
13722         * lily/paper-column.cc: 
13723         * lily/system.cc (get_line):
13724         * ly/property-init.ly (newpage): 
13725         * scm/define-grob-properties.scm:
13726         * scm/output-ps.scm: 
13727         * scm/output-tex.scm: Remove between-system-string kludge.
13729         * scm/output-ps.scm (define-fonts, font-command,
13730         font-load-encoding): Handle ENCODING = #f.
13732         * scm/output-tex.scm (output-scopes): Check if variable is bound.
13734         * scm/define-markup-commands.scm (fill-line): Use
13735         make-simple-markup (WAS: unexisting make-word-markup).
13737         * lily/text-item.cc (interpret_markup): Bugfix, transpose
13738         ENCODING, MARKUP parameters for interpret_string.
13740         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
13742         * lily/score.cc (book_rendering): New method.
13743         (default_rendering): Create Paper_book helper locally, dump
13744         output.
13746         * lily/my-lily-lexer.cc (the_key_tab): Add book.
13748         * lily/parser.yy: Handle \book.
13750         * lily/include/book.hh: 
13751         * lily/book.cc: New file.
13753 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13755         * lily/text-item.cc (interpret_string): new file, select font with
13756         encoding.
13758         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
13760         * scm/define-markup-commands.scm (encoded-simple): new markup command.
13762         * lily/parser.yy (markup): take encoding from lexer.
13764 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13766         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
13768         * scm/output-ps.scm: Remove some cruft.
13770 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13772         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
13774         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
13776 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13778         * scm/font.scm (add-century-schoolbook-fonts):
13779         (make-century-schoolbook-tree): New function.
13781         * input/test/title-markup.ly: Use Century Schoolbook font.
13783 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13785         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
13786         to Erik Sandberg) 
13788         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
13790         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
13792         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
13794         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
13796 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13798         * scm/part-combiner.scm (determine-split-list): bugfix: if no
13799         solo-state (at end of solo), we can set the solo status
13800         too. (backportme.)
13802         * input/regression/part-combine-solo-end.ly: new file.
13804 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13806         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
13807         flavour abc files.  Really ignore unknown keys (backportme).
13809 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13811         * lily/scaled-font-metric.cc (text_dimension): only multiply with
13812         magnification_ when looking up in orig_.
13814         * scm/output-tex.scm (text): switch off char-mapping.
13816         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
13817         because AFM's encoding field cannot have spaces.
13819 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13821         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
13823 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13825         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
13827         * mf/cmr.enc: new file, without hi-bit ascii info. 
13829         * lily/bezier-bow.cc (slur_shape): make indent dependent on
13830         width. This removes the 'hook' at the end of a long slur.
13832         * buildscripts/mf-to-table.py (parse_logfile): don't append
13833         encoding to fontname.
13835 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13837         * scm/output-ps.scm (define-fonts): Load .enc only once.
13839         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
13840         too.
13842 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13844         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
13845         encoding field.
13847         * lily/stencil-scheme.cc: remove ly:fontify-atom 
13849         * ly/portuges.ly (pitchnames): new file.
13851         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
13852         Michael Welsh Duggan
13854         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
13856         * ly/nederlands.ly: add comment about digits.
13858         * lily/scaled-font-metric.cc (derived_mark): idem.
13860         * scm/encoding.scm (make-encoding-mapping): change permutation to
13861         mapping.
13863         * lily/scaled-font-metric.cc (derived_mark): is a const method.
13864         (Modified_font_metric): make alist for coding_description_
13865         (LY_DEFINE): remove coding-name.
13867         * scm/output-tex.scm (text): remove debugging code.
13869         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
13871         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
13872         from infile.
13874         * mf/feta-generic.mf: move fet_beginfont into generic code.
13875         use fetaMusic (without space) as encoding
13877         * mf/feta-autometric.mf: take encoding argument
13879         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
13881         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
13882         use.
13884         * scm/encoding.scm (read-encoding-file): use symbol for glyph
13885         name.
13887 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13889         * input/test/title-markup.ly: Set inputencoding.
13891         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
13893         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
13895         * scm/encoding.scm (get-coding-filename, get-coding-command): New
13896         function.
13897         (coding-alist): Also hold filename, command.
13898         (read-encoding-file): Return symbols.
13900 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13902         * scm/output-tex.scm: remove fontify; text and char take a font
13903         argument.
13905         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
13907         * lily/scaled-font-metric.cc (text_dimension): init
13908         coding_{permutation,table}_ too 
13909         (LY_DEFINE): ly:font-encoding, new function return
13911         * lily/paper-def.cc (find_scaled_font): take input coding from
13912         inputcoding paper var.
13914         * lily/performance.cc (output): remap modulo 16.
13916         * lily/text-item.cc (interpret_markup): whoops, variable
13917         shadowing fixed.
13919 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
13921         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
13922         symbols, not symbols to strings.
13924         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
13925         symbols, not symbols to strings.
13927 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13929         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
13930         (ly:kpathsea-gulp-file): New function.
13932         * scm/encoding.scm (read-encoding-file): Use it.
13934 2004-04-06  Werner Lemberg  <wl@gnu.org>
13936         * scm/encoding.scm (coding-alist): Fix typo.
13938 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13940         * lily/scaled-font-metric.cc (text_dimension): move function from
13941         Font_metric
13942         (make_scaled_font_metric): init coding_scheme_ to TeX
13943         (text_dimension): use get-coding-vector for non TeX coding_scheme_
13945         * lily/include/scaled-font-metric.hh (struct
13946         Modified_font_metric): rename from Scaled_font_metric
13948         * scm/encoding.scm (read-encoding-file): split up large function,
13949         leave caching to (delay)
13951         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
13953 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
13955         * lily/my-lily-lexer.cc (set_encoding): New method.
13957         * lily/lexer.ll: Grok \encoding.
13959         * lily/font-metric.cc (get_encoded_index): New function.
13961         * lily/include/font-metric.hh (coding_scheme): New method.
13963         * scm/encoding.scm: New file.
13965         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
13967 2004-04-05  Werner Lemberg  <wl@gnu.org>
13969         * Documentation/user/tutorial.itely: Revised (finished).
13971         * Documentation/user/macros.itexi (@separate): Removed.
13973 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13975         * scm/output-ps.scm (define-fonts): fix scaling.
13977         * lily/scaled-font-metric.cc (design_size): add function.
13979         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
13980         partial cut&paste of ly:font-magnification.
13982 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
13984         * scm/output-ps.scm (define-fonts):
13985         (fontify): Update.
13987 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13989         * po/fr.po: update. (backportme).
13991         * po/nl.po: update. (backportme). 
13993         * mf/feta-beugel.mf: document why design size is not fixed.
13995         * mf/feta-braces-a.mf: rename to stress that it's not design size.
13997 2004-04-04  Werner Lemberg  <wl@gnu.org>
13999         * Documentation/user/tutorial.itely: Revised (continued).
14001 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14003         * po/nl.po: Update (backportme).
14005 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14007         * po/de.po: update. (backportme).
14009         * scm/output-tex.scm (font-command): use ly: functions to
14010         construct name.
14011         (define-fonts): don't use alist, just dump \font definitions.
14012         (font-load-command): calculate proper scaling by taking
14013         outputscale from paper argument.
14015         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
14016         expression.
14018         * lily/paper-outputter.cc (output_header): pass paper arg to
14019         define-fonts
14021         * lily/paper-def.cc (font_descriptions): dump list of
14022         Scaled_font_metrics
14023         (find_scaled_font): take Font_metric argument, store
14024         Scaled_font_metrics in hash-table containing (size ->
14025         Scaled_font_metrics) alist.
14026         (get_dimension): rename from get_realvar
14028         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
14029         ly:font-magnification, ly:font-name: new functions
14031 2004-04-03  Werner Lemberg  <wl@gnu.org>
14033         * Documentation/user/dedication.itely,
14034         Documentation/user/preface.itely,
14035         Documentation/user/introduction.itely,
14036         Documentation/user/tutorial.itely: Revised.
14037         Removing leading spaces which distorts output if info files are read
14038         with stand-alone info.
14039         Removing superfluous inter-word spaces which also distorts output
14040         for stand-alone info.
14041         Using ` and ' instead of `` and '' everywhere to improve
14042         legilibility with stand-alone info
14043         Using @samp for single-letter input items and data which contains
14044         spaces, @code for other things.
14046         * lily/grob-interface.cc: Adding copyright.
14047         (check_interfaces_for_property): Improve format of warning message.
14049 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14051         * lily/include/font-metric.hh (struct Font_metric): add
14052         design_size () method.
14054         * buildscripts/mf-to-table.py (base): add DesignSize comment.
14056         * lily/afm.cc (read_afm_file): read design size.
14058         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
14060         * scm/music-functions.scm (unfold-repeats): handle dots too.
14062 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14064         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
14065         (backportme)
14067 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
14069         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
14070         lyric indent.  Revert melismaBusyProperties using \unset.
14072 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14074         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
14076         * lily/parser.yy (command_element): allow redefinition of |
14077         meaning.
14079         * lily/break-align-engraver.cc (acknowledge_grob): construct
14080         LeftEdge where the first cause for alignment is coming from.
14081         This makes \override Staff.LeftEdge work as expected.
14083         * lily/slur-performer.cc (Slur_performer): add inits
14085         * lily/beam-performer.cc (Beam_performer): add inits
14087 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14089         * VERSION (PACKAGE_NAME): release 2.2.0
14091 #Local variables:
14092 #coding: utf-8
14093 #End: