(set_env_dir): New function.
[lilypond/patrick.git] / ChangeLog
blobaffb81ba29204a87dac6bf4dfdaaf80d54a2a4d7
1 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * lily/relocate.cc (set_env_dir): New function.
4         (set_relocation): Use it to fix setting PANGO_PREFIX.
6 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8         * input/regression/stem-direction-context.ly: remove rest.
10         * lily/melody-engraver.cc (process_music): restart for bar lines.
11         (acknowledge_slur): restart for slurs.
13 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
15         * Documentation/user/invoking.itely: describe how to view SVG 
16         output using Inkscape which replace embedded fonts with OTF fonts.
18 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
20         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
22 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
24         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
25         comment.
27 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
29         * VERSION (PACKAGE_NAME): release 2.7.25
31         * Documentation/topdocs/NEWS.tely (Top): document new feature.
33         * input/regression/stem-direction-context.ly: new file.
35         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
37         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
38         on rest.
40         * ly/engraver-init.ly: add Melody_engraver
42         * lily/beam.cc (calc_direction): use default-direction
43         iso. get_default_direction()
45         * scm/define-grob-properties.scm (all-user-grob-properties): add
46         default-direction property.
48         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
50         * lily/stem.cc (calc_default_direction): remove
51         Stem::get_default_direction, use default-direction with callback
52         instead.
54         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
56         * lily/melody-engraver.cc: new file. Acknowledge stems for
57         interpolated stem directions. 
59         * lily/melody-spanner.cc: new file. Interpolate stem directions.
61         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
63         * lily/slur-configuration.cc (fit_factor): more robust check for
64         point in curve X-extent.
66         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
67         (outside_slur_callback): check for 'outside avoidance.
69         * lily/slur-configuration.cc (score_extra_encompass): don't use
70         bound->column() == avoid->column() for checking extents, as this
71         doesn't work for accidentals. 
73         * lily/slur-engraver.cc (acknowledge_extra_object): remove
74         DynamicText hardcoding.
76         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
77         crash if bound stem is NULL
79         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
80         pedals.
82 2005-12-22  Graham Percival  <gpermus@gmail.com>
84         * scm/define-markup-commands.scm: typo.  @code{\raise}
85         => @code{\\raise}.
87         * darwin.patch: now used again, includes a
88         required patch from fink.
90 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
92         * po/TODO: mention gtranslator along with kbabel.
93         * po/fi.po: update translations.
95 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
97         * lily/relocate.cc (setup_paths): Bugfix.
99 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
101         * lily/slur-configuration.cc (score_extra_encompass): don't use
102         "avoid" choice for avoid-slur.
104         * stepmake/bin/install.py (dest): don't create existing dir.
106 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
108         * stepmake/bin/install.py: Remove file before copying.
110         * config.make.in: 
111         * stepmake/aclocal.m4: Do not substitute INSTALL.
113 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
115         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
116         depend on link-tree.
118         * lily/relocate.cc (setup_paths): only check path for non-absolute
119         dir without directory part.
121         * flower/file-name.cc (is_absolute):  new method.
122         (is_absolute): check root_ too.
124 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
126         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
127         relocation code.  Oops, don't comment out too much.
129         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
130         iso itself.
132         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
133         compile.
135 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
137         * .cvsignore: Add install-sh.
139         * autogen.sh (srcdir): Typo.
141 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
143         * autogen.sh (srcdir): urg. Touch install-sh.
145         * stepmake/bin/install-sh (Module): remove.
147         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
149         * lily/include/relocate.hh: new file.
151         * lily/relocate.cc: new file. Contain relocation logic.
153         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
154         (main): read LILYPOND_VERBOSE as the first thing.
156         * stepmake/aclocal.m4: remove INSTALL variable.
158         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
159         separate target for making font symlinks.
160         (documentation-dir): use $(if $(findstring )) for switching off
161         Documentation.
163         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
164         something if DOCUMENTATION is no.
166 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
168         * VERSION: release 2.7.24
170         * lily/script-column-engraver.cc (stop_translation_timestep):
171         delay adding to script-column.
173         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
175         * python/convertrules.py (conv): rule for number-visibility
177         * lily/slur-configuration.cc (score_extra_encompass): different
178         distance measure for avoid and inside avoidance.
179         (score_extra_encompass): use 1/(distance+eps) as penalty.
181         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
182         encompass objects for generating slur curves.
184         * lily/slur.cc: use details iso. slur-details property.
186         * input/regression/slur-tuplet.ly: new file.
188         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
190         * flower/include/offset.hh (class Offset): new operator /=
192         * lily/tuplet-number.cc (print): new file, new interface.
194         * scm/define-grob-properties.scm (all-user-grob-properties):
195         remove number-visibility property.
197         * lily/tuplet-bracket.cc (calc_control_points): new function
198         (calc_connect_to_neighbors): new function.
199         (print): remove text handling for tuplet numberdef.
201         * lily/tuplet-engraver.cc (struct Tuplet_description): create
202         TupletNumbers too. 
204         * lily/lily-guile.cc (robust_scm2booldrul): new function
206         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
208         * lily/tuplet-bracket.cc (calc_position_and_height): use
209         staff-padding to control whether tuplet brackets are over staves.
211         * lily/grob.cc (suicide): clear dim_caches_.
213         * lily/dimension-cache.cc (clear): new function.
215         * lily/grob.cc (extent): swap order of min-extent and extent
216         calculations. This fixes hara kiri staves. 
218 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
220         * lily/main.cc: Nitpick: relocation is not based on path, but on
221         directory (location).
223 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
225         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
227         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
229         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
231         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
233         * stepmake/stepmake/generic-vars.make (Module): idem.
235         * stepmake/stepmake/executable-targets.make (default): use it.
237         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
239         * make/GNUmakefile: don't install make rules.
241         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
242         slashes.
243         (prepend_env_path): more verbosity.
245 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
247         * GNUmakefile.in: add dir argument for find command.
249         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
250         fixes weird line numbers for point & click.
252         * lily/source-file.cc (get_counts): init line/column/char counts.
254 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
256         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
258 2005-12-16  Graham Percival  <gpermus@gmail.com>
260         * Documentation/user/basic-notation.itely, advanced-notation.itely:
261         minor fixes from Fredric.  Thanks!
263 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
265         * ly/music-functions-init.ly: add \bar and \clef music function 
267         * lily/lily-lexer.cc: idem.
269         * lily/parser.yy (FIXME): remove BAR and CLEF.
271 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
273         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
275         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
276         function arguments too
278         * lily/main.cc (set_relocation): new function.
280         * scripts/musicxml2ly.py (convert): add \version
282         * lily/tie.cc: remove get_default_attachments()
284         * VERSION (PACKAGE_NAME): release 2.7.23
285         
286         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
287         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
289         * Documentation/topdocs/NEWS.tely (Top): document new feature.
291         * lily/tie-formatting-problem.cc (score_ties): new function
292         (get_variations): new function. Try flipping dirs for collisions.
293         (generate_optimal_chord_configuration): new function. 1-opt search
294         for better configuration.
296         * lily/tie-configuration.cc: new file.
298         * lily/tie.cc: junk Tie::get_configuration()
300         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
301         (score_ties_configuration): new function.
302         (generate_ties_configuration): new function.
303         (generate_base_chord_configuration): new function.
304         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
305         (set_manual_tie_configuration): Move body from tie-column-format.cc 
307         * input/regression/tie-dot.ly: new file.
309         * lily/tie-formatting-problem.cc (score_configuration): score
310         tie/dot collisions.
312         * lily/tie-helper.cc (get_transformed_bezier): new function
314         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
316         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
317         -undefined suppress iso. -framework Python 
319         * scm/define-grobs.scm (all-grob-descriptions): set
320         springs-and-rods (thanks Joe Neeman!)
322 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
324         * input/no-notation/display-lily-tests.ly (test): 
325         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
326         changed from \tag #'(a b) to \tag #'a \tag #'b
328 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
330         * Documentation/topdocs/NEWS.tely: strip out-www.
332         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
334         * config.make.in (AR): add AR and RANLIB
336         * flower/libc-extension.cc: include cassert
338         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
339         darwin check.
341 2005-12-11  Graham Percival  <gpermus@gmail.com>
343         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
345         * stepmake/stepmake/python-modules-vars.make: define
346         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
348         * THANKS: added Johannes Schindelin.
350 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
352         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
354         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
355         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
357         * lily/parser.yy: reorganize file layout.
359         * ly/music-functions-init.ly: add tweak music function.
361         * lily/grob-info.cc (ultimate_music_cause): new function:
362         recursively lookup causes. 
364         * lily/parser.yy (chord_body_element): allow music functions for
365         post-events, allow music functions for chord elements. 
367         * lily/font-config-scheme.cc (display_fontset): add cast.
369         * python/convertrules.py (FatalConversionError.sub_syms): \tag
370         #'(a b) -> \tag #'a \tag #'b rule.
372         * python/musicexp.py (Output_printer.dump_version): new function
374 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
376         * lily/parser.yy (FIXME): remove \tag
377         (FIXME): remove tag_music() function.
379         * lily/lily-lexer.cc: remove \tag
381         * ly/music-functions-init.ly: define music-function "tag"
383         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
385 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
387         * VERSION (PATCH_LEVEL): release 2.7.22
389         * input/regression/lyric-hyphen-retain.ly: renew.
391         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
392         grob
394         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
395         iso. minimum-length property for rods.
397         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
398         LyricSpace item to keep lyrics spaced apart.
400         * ly/engraver-init.ly: remove Separating_line_group_engraver
402         * Documentation/user/music-glossary.tely: do setfilename before
403         music-glossary.
405 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
407         * Documentation/user/lilypond-book.itely: use `,´ after xref:
408         See xref documentation, for example.
410 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
412         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
413         pending_skip iso. ly_voice[-1]
414         (main): add if __main__ for debugging.
416         * python/musicxml.py (Accidental.__init__): new class.
418         * scripts/musicxml2ly.py (progress): new function
419         (musicxml_key_to_lily): don't barf on modeless keys.
420         (create_skip_music): new function.
421         (musicxml_spanner_to_lily_event): new function. Handle beams too.
422         (musicxml_note_to_lily_main_event): new function.
424         * python/musicexp.py (Music.__init__): add comment field.
425         (NestedMusic.append): new routine.
426         (SequentialMusic.print_ly): print comment.
427         (ArpeggioEvent.ly_expression): new class
428         (BeamEvent.ly_expression): new class
429         (NoteEvent.__init__): support for cautionary/forced accs.
431         * lily/lookup.cc (slur): normal order for array loop.
433         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
434         to 0.0.
436         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
437         collapsed.
439 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
441         * scm/music-functions.scm: Make phrasing slurs follow voice direction
443         * scripts/lilypond-book.py: Introduce option
444         --preserve-line-breaks, for usage with srcltx
446 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
448         * scm/output-lib.scm (print-circled-text-callback): draw circle
449         around text using make-circle-markup.
451         * Documentation/user/*: strip out-www from file names.
453 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
455         * Documentation/user/lilypond.tely (direntry): remove empty lines;
456         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
458 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
460         * Documentation/user/GNUmakefile: idem.
462         * Documentation/user/macros.itexi: strip out-www
464         * python/rational.py: python 2.3 compat.
466         * VERSION (PATCH_LEVEL): release 2.7.21
468         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
469         option formatting, lilypond style.
471         * python/musicexp.py: grab from Ikebana: a library for composing
472         ly music expressions. 
473         (Output_printer): class for advanced .ly printing.
474         (eg. tupletting) 
476         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
477         convert to pythonesque structure.
479         * python/rational.py: PD rational number class.
481         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
483 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
485         * lily/part-combine-iterator.cc: Minor bugfix
486         
487         * THANKS: Update bughunters
489 2005-12-02  Werner Lemberg  <wl@gnu.org>
491         * mf/README: Document process for proper mf2pt1 conversion.
493         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
494         overlapping.
496         * mf/feta-harmonica.mf: Removed.  Unused.
498 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
500         * scripts/lilypond-book.py (do_file): fix thinkos.
502 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
504         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
505         ($(outdir)/parser.cc): 
506         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
508 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
510         * ly/titling-init.ly (tagline): it should be a space between
511         "Music engraving by LilyPond" and the version number.
513 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
515         * VERSION (PACKAGE_NAME): release 2.7.20
517 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
519         * scm/define-markup-commands.scm (pad-to-box): new markup command.
521         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
522         1.0.
523         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
525 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
527         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
529         * kpath-guile/: remove directory
531         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
532         file. Encapsulate kpathsea using commandline tools.
534         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
535         kpathsea) module.
537 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
539         * Documentation/user/advanced-notation.itely (Setting automatic
540         beam behavior): Correct a few typos. Thanks to David Bobroff.
542         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
543         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
545 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
547         * scripts/*.py: gmane address for bugs.
549 2005-11-28 Pal Benko <benkop@freestart.hu>
550         
551         * make/ly-rules.make: add -f switch to mv
553         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
555         * lily/bar-line.cc: interpret it
557 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
559         * configure.in (--disable-documentation): New switch.
561         * GNUmakefile.in: Use it.
563         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
565 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
567         * scripts/lilypond-book.py (do_file): search chunks for
568         \\begin{document}
570         * GNUmakefile.in: add copy step in between so we can lose the
571         out-www directories.
573 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
575         * lily/pango-font.cc (pango_item_string_stencil): put
576         geometry.width into glyph-string too.
578 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
580         * scm/define-music-display-methods.scm (RevertProperty):
581         (OverrideProperty): Use grob-property-path property, a list of
582         symbols, instead of grob-property, which used to be a single
583         symbol.
584         (BassFigureEvent): a figure can be a plain number, not necessarily a
585         markup.
587 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
589         * VERSION: release 2.7.19
590         
591         * lily/figured-bass-engraver.cc (process_music): check
592         figuredBassCenterContinuations first.
594         * scm/translation-functions.scm (format-bass-figure): make double
595         sharp larger. 
597         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
598         determine X-parent.
600         * lily/system-start-delimiter-engraver.cc: move from
601         Nested_system_start_delimiter_engraver, rename
602         Nested_system_start_delimiter_engraver ->
603         System_start_delimiter_engraver.
605         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
606         bracket type from hierarchy.
608 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
610         * lily/rest.cc (y_offset_callback): read staff-position.
612         * scm/define-grob-properties.scm (all-user-grob-properties): don't
613         mark after-line-breaking-callback as internal.
615         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
617 2005-11-25  Werner Lemberg  <wl@gnu.org>
619         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
621 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
623         * stepmake/bin/add-html-footer.py (do_file): add google
625         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
626         staff if first_start_ is true.
628 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
630         * scripts/midi2ly.py (split_track): add __repr__ members.
631         (track_first_item): only return Item if not None. This fixes a
632         problem when dumping a track that starts with an empty channel.
634         * python/midi.c: doc module.
636 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
638         * Documentation/user/global.itely (Creating MIDI files): Fix
639         compilation problem.
641 2005-11-22  Graham Percival  <gpermus@gmail.com>
643         * Documentation/user/basic-notation.itely: clarify dynamic
644         padding text.
646         * Documentation/user/advanced-notation.itely: add unicode
647         escape control example, whatever that is.  :)
649         * Documentation/user/global.itely: added "removing dynamics
650         from MIDI" code.
652 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
654         * VERSION (PATCH_LEVEL): release 2.7.18
656         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
657         System_start_delimiter_engraver by
658         Nested_system_start_delimiter_engraver.
660         * lily/nested-system-start-delimiter-engraver.cc (struct
661         Bracket_nesting_node): new class.
662         (struct Bracket_nesting_group): new class
663         (struct Bracket_nesting_staff): new class.
664         (process_music): create hierarchy of grobs. This allows separate
665         tuning of different SSDs. 
667         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
668         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
670 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
672         * lily/side-position-interface.cc (aligned_side): multiply
673         staff_radius by 2.
675         * lily/script-engraver.cc (make_script_from_event): allow setting
676         values to '()
678 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
680         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
682         * scm/define-grobs.scm (all-grob-descriptions): new grob
683         NestedSystemStartDelimiter.
685         * input/regression/system-start-heavy-bar.ly: new file.
687         * lily/nested-system-start-delimiter-engraver.cc: new file.
689         * lily/nested-system-start-delimiter.cc: new file.
691         * input/regression/system-start-nesting.ly: new file.
693         * scm/define-grobs.scm (all-grob-descriptions): use X side
694         positioning for positioning braces for nested contexts.
696         * lily/system-start-delimiter.cc (print): don't divide extent by
697         staff_space.
698         (print): use style iso. glyph.
699         (staff_bracket): translate glyph inside routine already.
701 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
703         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
704         names.
706 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
708         * scm/define-context-properties.scm
709         (all-user-translation-properties): rename figuredBassFormatter
710         from newFiguredBassFormatter.
712         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
714         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
716         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
718         * lily/beam.cc (calc_beaming): new function.
719         (calc_shorten): new function.
721         * THANKS: add Edward Neeman.
723         * input/regression/accidental-clef-change.ly: new file.
725         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
727         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
729         * lily/clef-engraver.cc (inspect_clef_properties): reset
730         localKeySignature for clef changes.
732 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
734         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
735         add dummy definition that works in Linux and add information in
736         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
738         * Documentation/user/changing-defaults.itely (Modifying context
739         plug-ins): Add index for \with.
741         * Documentation/user/music-glossary.tely (dal segno): Updated
742         example to version >=2.6.
744 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
746         * Documentation/user/instrument-notation.itely (Printing chord
747         names): Reorder \chordmode and \repeat in one example.
749 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
751         * VERSION: release 2.7.17
752         
753         * Documentation/topdocs/NEWS.tely (Top): add note about
754         refactoring.
756         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
757         new function. Search region of 3 positions for best tie.
758         (score_configuration): new function.
759         (score_aptitude): new function.
760         (generate_configuration): new function.
761         (get_configuration): new function.
762         (Tie_formatting_problem): new function
764         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
766         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
768         * THANKS: add Eduardo Vieira & Ralph Little
770         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
771         narrower.
773         * lily/include/tie-formatting-problem.hh (class
774         Tie_formatting_problem): add Tie_details to
775         Tie_formatting_problem. Update calling conventions.
777         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
778         config.make.
780         * Documentation/user/lilypond.tely: remove musedata2ly entry.
782 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
784         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
785         scm/define-context-properties.scm: Maintenance bugfix: make
786         ligature brackets work again by removing obsolete ligature
787         primitive callback push/pop.
789         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
790         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
791         value.
793 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
795         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
796         used and do not call it a path.
797         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
799 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
801         * lily/include/tie-formatting-problem.hh (class
802         Tie_formatting_problem): new file.
804         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
806         * Documentation/misc/ChangeLog-2.3:  new file.
808         * lily/audio-staff.cc (output): degarianize.
810 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
812         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
813         Unset PYTHONOPTIMIZE.  Fixes install if set.
815 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
817         * python/convertrules.py (conv): add warning about drums. 
819         * make/stepmake.make: include toplevel-version.make after config.make.
821         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
822         also allow python2.4
824         * config.make.in (configure-srcdir): remove GXX GCC vars.
826         * stepmake/aclocal.m4: don't do non-srcdir build with
827         symlinks. Use inclusion, so the src directory name can be changed.
829 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
831         * make/mutopia-vars.make:
832         * make/ly-vars.make: Use src-wildcard iso wildcard for source
833         files.
835 2005-11-13  Werner Lemberg  <wl@gnu.org>
837         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
838         but the affected path.  This ensures that the (overlapping) outlines
839         have the same direction, which is a necessary prerequisite for
840         FontForge's algorithm to remove overlaps.
841         Formatting.
843         * mf/feta-haak.mf: Formatting.
844         (draw_bracket): Slightly modify outline to avoid an unnecessary
845         corner.
846         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
847         them from the affected paths.
849 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
851         * mf/README: remove xpm / accordion notes.
853         * lily/tie-column-format.cc (set_chord_outline): add dots into
854         skyline extents. This fixes tie formatting if the left head has dots.
856         * lily/tie.cc (get_configuration): only shift tie by a whole staff
857         space inside the staff.
858         (get_configuration): shift another position if necessary in case
859         of left head tie  
861 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
863         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
864         buildscript-dir iso. $(depth)/buildscripts.
866         * tex/GNUmakefile (local-uninstall): remove
867         music-drawing-routines.ps juggling.
869         * stepmake/stepmake/install-targets.make (local-install-files):
870         prepend src-dir to install targets.
872         * lily/system-start-delimiter-engraver.cc
873         (acknowledge_system_start_delimiter): use
874         add_offset_callback(). This fixes translation of nested
875         staffgroups.
877         * lily/grob-closure.cc (add_offset_callback): only encaps in
878         simple_closure if it's a procedure.
879         
880         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
881         from bar-line.
883         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
884         remove-empty where pertinent.
886 2005-11-12  Graham Percival  <gpermus@gmail.com>
888         * Documentation/user/instrument-notation.itely: added
889         Cameron Horsburgh's multiple stanzas docs.  Thanks!
891 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
893         * lily/GNUmakefile
894         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
895         make picture in builddir, not srcdir.
897 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
899         * VERSION: release 2.7.16
900         
901         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
902         shell arguments. 
904 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
906         * Documentation/user/examples.itely (Piano templates): Minor
907         modification to the Piano centered lyrics example.
909 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
911         * scripts/lilypond-invoke-editor.scm (run-browser): look at
912         $BROWSER.
914         * Documentation/user/point-and-click.itely: simplify p&c
915         instruction: don't configure firefox. Put lilypond-invoke-editor
916         in front of the browser.
918         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
919         (run-browser): new function.
921         * lily/parser.yy (Lily_lexer): recognize Book
923         * lily/book.cc (clone): new function
925         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
927 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
929         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
930         Maintenance bugfix: reduce number of font related warnings by
931         updating naming conventions for glyph-name.
933 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
935         * scm/define-grobs.scm (all-grob-descriptions): add
936         rhythmic-grob-interface to TabNoteHead.
938         * scm/layout-beam.scm (check-quant-callbacks): remove
939         set_stem_lengths()
941 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
943         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
944         alignment of centered divisiones.
946         * scm/scripts.scm (articulations): Maintenance bugfix:
947         follow-into-staff -> quantize-position.
949         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
950         plica head in porrectus deminutus.
952 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
954         * make/lilypond.fedora.spec.in (Group): add %clean section.
956         * lily/tuplet-bracket.cc (print): change check: remove bracket if
957         less then 1/5th of total length.  
958         (print): use gap too.  Fixes tupletUp-single-bracket.ly
960         * scm/music-functions.scm (glue-mm-rest-texts): also put other
961         events into EventChord. This fixes textspanners on mm rests. Fixes
962         spanner-rest.ly
964         * lily/side-position-interface.cc (get_axis): read side-axis
965         (set_axis): set side-axis.
967         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
968         properties everywhere.
970         * lily/spacing-spanner.cc (breakable_column_spacing): add
971         average-spacing-wishes. Take maximum if not set.
972         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
974         * scm/define-grobs.scm (all-grob-descriptions): add
975         average-spacing-wishes.
977         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
978         offset callbacks. This fixes alignment for Fingering objects.
980         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
981         space for key - timesig combination. 
983         * input/regression/script-stem-tremolo.ly (Module): new file.
985         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
986         to key sig.
988         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
989         Fixes: c-tremolo-script.ly.
990         
991         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
993         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
994         
995         * scm/define-grobs.scm (all-grob-descriptions): remove
996         self-X-offset. Fixes alignment of octavate-8.
998         * scripts/lilypond-book.py (datadir): look in
999         LILYPONDPREFIX/share/lilypond/current/
1001         * GNUmakefile.in: symlink current to <VERSION>. 
1003 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
1005         * lily/main.cc: eps listed as a backend.
1007 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1009         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
1011 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1013         * lily/include/score.hh (class Score): remove texts_ member.
1015         * lily/beam.cc (set_stem_lengths): force direction callback.
1016         (print): read quantized-positions, so we can force
1017         Beam::set_stem_lengths to occur.
1018         (rest_collision_callback): use common X parent. 
1020 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1022         * flower/file-path.cc (find): Bugfix: Return name of file found.
1024         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
1025         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
1026         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
1028 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1030         * flower/offset.cc: idem.
1032         * mf/*.mf: update email address.
1034         * lily/font-config-scheme.cc:  new file.
1036         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
1038         * lily/*:  cs.uu.nl -> xs4all.nl
1040         * VERSION (PATCH_LEVEL): release 2.7.15
1042         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
1043         spec files.
1045         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
1047 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1049         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
1051         * lily/staff-performer.cc (process_music): add audio
1052         elements. This makes MIDI instrument changes work once again.
1054         * lily/main.cc (LY_DEFINE): add gmane address.
1056         * lily/beam.cc: remove calc_positions()
1058         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
1059         original_ in private scope.
1060         (class Grob): drop pscore_ pointer, change to output_def pointer.
1061         (class Grob): cleanup class definition.
1063         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
1065 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1067         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
1068         absolute.  Better diagnostics.
1070         * GNUmakefile.in: Add bin/ to tree and populate with some links.
1071         This makes lilypond run from the build directory using argv0
1072         relocation (without any --prefix or LILYPONDPREFIX setting).
1074 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1076         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
1078         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
1079         with simple-closure.
1081         * lily/self-aligment-interface.cc (set_align_self): new function
1082         (set_center_parent): new function.
1084         * lily/side-position-interface.cc (set_axis): new function.
1086         * lily/new-fingering-engraver.cc (position_scripts): use drul for
1087         generic code. 
1089         * scm/define-grob-properties.scm (all-user-grob-properties):
1090         remove [XY]-offset-callbacks add [YX]-offset
1091         
1092 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1094         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
1095         entry for time signatures after breathing signs. Bug report by
1096         Scott Russell.
1098 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1100         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
1101         not absolute, make it absolute using PATH.
1103 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1105         * python/midi.c (initmidi): Fix type for mingw.
1107 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1109         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
1111         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
1112         cross compiling.
1114         * stepmake/aclocal.m4: Support python cross compiling.
1116         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
1117         Add mingw section.
1119 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1121         * scm/output-lib.scm (chain-grob-member-functions): replace
1122         chained-callback.cc
1124         * lily/chained-callback.cc (Module): remove file.
1126         * lily/rest-collision.cc (force_shift_callback_rest): change to
1127         chained callback.
1129         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
1131         * lily/grob.cc (y_parent_positioning): remove axis argument from
1132         parent_positioning callbacks.
1133         (Grob): junk init code
1134         (get_offset): use generic property callbacks for
1135         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
1136         (axis_parent_positioning): new function
1137         (axis_offset_symbol): new function
1138         (chain_offset_callback): new function
1139         (add_offset_callback): new function
1141         * lily/beam.cc (rest_collision_callback): change signature; this
1142         is now a chained callback.
1144         * lily/include/dimension-cache.hh (class Dimension_cache): remove
1145         callback administration.
1147         * lily/simple-closure.cc: new file. Smob type that allows "grob
1148         member functions",
1150             (ly:make-simple-closure FUNC A B)
1152         is evaluated as (FUNC grob A B). This allows chaining of callbacks
1153         in various ways.
1155         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
1156         callbacks.
1158         * lily/slur.cc (outside_slur_callback): take 2 arguments.
1160         * lily/rest.cc (polyphonic_offset_callback): remove.
1162         * lily/script-engraver.cc (try_music): remove bool* argument.
1164         * scm/script.scm (default-script-alist): set quantize-position
1165         appropriately.
1167         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
1169         * lily/side-position-interface.cc (aligned_side): move staff
1170         position quantization from
1171         Side_position_interface::quantised_position().
1172         (quantised_position): remove
1173         
1174 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1176         * input/regression/beam-quant-standard.ly: reindent, set
1177         debug-beam-quanting to #t.
1179         * lily/beam-concave.cc (calc_concaveness): set concaveness to
1180         10000 if this is a "hard" concave beam.
1182         * lily/beam.cc (calc_least_squares_positions): change from
1183         calc_least_squares_dy
1184         (set_stem_lengths): this is now a chained callback.
1186         * lily/context-property.cc (execute_general_pushpop_property):
1187         bugfix override with procedure should have effect.
1189         * scm/define-grob-properties.scm (all-internal-grob-properties):
1190         remove position-callbacks.
1192         * scm/define-grobs.scm (all-grob-descriptions): use
1193         ly:make-callback-chain for positions property.
1195         * scm/layout-beam.scm (check-quant-callbacks): return list of
1196         chained callbacks.
1198         * scm/lily.scm (type-p-name-alist): add callback-chain
1200         * lily/lily-guile.cc (type_check_assignment): type check failure
1201         is warning not message.
1203         * lily/grob-property.cc (try_callback): walk callback chain if
1204         appropriate.
1206         * lily/chained-callback.cc: new file. new smob type.
1208         * lily/lily-guile.cc (procedure_arity): new function.
1210 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1212         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
1214 2005-10-25  John Mandereau  <john.mandereau@free.fr>
1216         * Documentation/user/instrument-notation.itely (Figured bass):
1217         describe new features
1219 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1221         * lily/beam.cc (calc_least_squares_dy): use property callback.
1223         * lily/beam-concave.cc (calc_concaveness): use property callback.
1225         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
1227 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1229         * HACKING: Update.
1231 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1233         * scm/layout-page-layout.scm (page-headfoot): annotate
1234         pagetopspace too.
1236         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
1238         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
1239         doesn't take y-space.
1241         * scm/paper.scm (paper-alist): fix A7 dimensions. 
1243 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
1245         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
1246         src-wildcard, remove $(wildcard).
1248         * po/GNUmakefile (PO_FILES): 
1249         * ps/GNUmakefile (PS_FILES): 
1250         * tex/GNUmakefile (TEX_FILES): 
1251         * cygwin/GNUmakefile (POSTINSTALLS):
1252         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
1253         some wildcard calls.
1255 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1257         * THANKS: add Thomas Bushnell.
1259 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1261         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
1262         (lilypond-main): Redirect to gui-main if 'gui is set.
1263         Backportme.
1265         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
1266         for alternative installations kludging s/share/lib/g
1267         LILYPONDPREFIX. Backportme.
1269         * SConstruct (libdir_package_version): Define.
1271         * python/SConscript: 
1272         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
1273         module in libdir.  Backportme.
1275 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1277         * lily/main.cc: clarify --safe.
1279 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1281         * VERSION: release 2.7.14
1282         
1283         * Documentation/user/*.itely: remove minimumVerticalExtent.
1285         * scm/define-grobs.scm (all-grob-descriptions): remove
1286         RemoveEmptyVerticalGroup
1288         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
1290         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
1291         compile on MOSX
1293         * python/convertrules.py (conv): add rules.
1295         * lily/grob.cc: remove is_empty()
1297         * lily/grob-property.cc: remove add_to_list_property().
1299         * scripts/convert-ly.py (datadir): add prefix switching hack to
1300         .py too.
1302         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
1303         space-function tweak.
1305         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
1307         * scm/define-grob-properties.scm (all-user-grob-properties):
1308         remove callback property.
1310         * lily/include/grob.hh (class Grob): remove property_callbacks_
1311         member. Properties of procedure type are assumed to be callbacks.
1313         * lily/ligature-engraver.cc (override_stencil_callback):
1314         rewrite. Use noteHeadLigaturePrimitive as source.
1316         * scm/define-grob-properties.scm (all-internal-grob-properties):
1317         remove ligature-primitive-callback
1319         * lily/include/dimension-cache.hh (class Dimension_cache): make
1320         class, with Grob as friend.
1322         * lily/grob.cc: remove set_extent_callback(), set_extent() and
1323         has_extent_callback()
1325         * scm/translation-functions.scm (format-new-bass-figure): read
1326         figuredBassPlusDirection
1328         * scm/define-context-properties.scm
1329         (all-user-translation-properties): add figuredBassPlusDirection.
1331         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
1333         * lily/align-interface.cc (set_ordered): new function.
1335         * lily/grob.cc (flush_extent_cache): rewrite.
1337         * lily/dimension-cache.cc (Dimension_cache): cache extent as
1338         Interval pointer directly.
1340         * lily/main.cc (setup_paths): insert extra / .
1341         (setup_paths): junk cff entry.
1343         * lily/font-config.cc (init_fontconfig): only add type1 / otf
1344         directories.
1346         * lily/axis-group-engraver.cc (finalize): remove
1347         extraVerticalExtent, minimumVerticalExtent verticalExtent.
1349         * lily/grob.cc (Grob): don't set extent from ctor.
1350         (extent): use property callbacks. 
1352         * lily/axis-group-interface.cc: remove set_axes() function.
1354         * lily/grob-property.cc (del_property): new function.
1356 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1358         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
1359         
1360 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1362         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
1364 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1366         * mf/SConscript: Updates.
1368         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
1370         * stepmake/stepmake/*:
1371         * */GNUmakefile:
1372         * config.make.in:
1373         * GNUmakefile.in:
1374         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
1375         from any directory in build-dir.  Cleanups.
1377         * make/srcdir.make.in: Remove.
1379         * lily/main.cc (setup_paths): Fix and document build-dir hack.
1381         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
1382         main).
1384         * lily/SConscript: Remove ttftools.
1386         * SConstruct: Resurrect.
1388 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1390         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
1391         Y coordinate. 
1393         * lily/paper-book.cc (add_score_title): put Paper_score title into
1394         systems_ list.
1396         * scm/translation-functions.scm (format-new-bass-figure): also
1397         allow plus in combination with _
1399 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1401         * VERSION: 2.7.13 released.
1403         * lily/note-collision.cc (check_meshing_chords): don't wipe
1404         stencil, merely set transparent.
1406         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
1407         (Top): document #'callbacks.
1408         (Top): document nested \override.
1410         * input/regression/figured-bass.ly: update for slash and pluses.
1412         * input/regression/figured-bass-continuation-forbid.ly (Module):
1413         new file.
1415         * scm/translation-functions.scm (format-new-bass-figure): use
1416         slashed-digit if diminished is set.
1417         (format-new-bass-figure): add + if 'augmented is set.
1419         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
1421         * input/test/piano-staff-distance.ly: remove file.
1423         * Documentation/user/advanced-notation.itely (Formatting cue
1424         notes): use length-fraction for making stems/beams smaller.
1426         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
1427         modifications.
1429         * lily/new-figured-bass-engraver.cc: new property
1430         centerFiguredBassContinuations
1432         * Documentation/user/changing-defaults.itely (Difficult tweaks):
1433         use callbacks.
1435         * lily/context-property.cc (execute_general_pushpop_property):
1436         robustness checks.
1438         * input/regression/override-nest.ly: new file.
1440         * python/convertrules.py (FatalConversionError.subber): conversion
1441         rule for #'callbacks
1443         * input/regression/override-nest.ly: new function.
1445         * lily/parser.yy (music_property_def): allow \override #'a #'b =
1446         #c too. 
1448         * lily/context-property.cc (lookup_nested_property): new function.
1449         (evict_from_alist): new function.
1450         (general_pushpop_property): new function.
1451         (execute_general_pushpop_property): rewrite. Support nested
1452         properties too.
1454 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1456         * lily/beam.cc: use length-fraction too.
1458         * scm/define-grob-properties.scm (all-user-grob-properties):
1459         remove property flag-width-function
1460         (all-user-grob-properties): remove space-function.
1462         * scm/layout-beam.scm: remove flag-width-function.
1464         * lily/beam.cc: remove flag-width-function
1466         * scm/layout-beam.scm: remove beam dir functions.
1468         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
1470         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
1471         for easier grace tweaks.
1473         * lily/beam.cc: remove dir-function.
1475         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
1477         * lily/grob.cc: remove spacing-procedure.
1479         * lily/note-head.cc (calc_stem_attachment): new function.
1480         (internal_print): use callback to get glyph-name.
1482         * lily/grob-property.cc (get_interfaces): new function.
1484         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
1486         * lily/stem.cc (calc_stem_end_position): new function.
1487         (calc_length): new function.
1488         document details for stem.
1489         remove Stem::get_direction()
1491         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
1493         * lily/grob-property.cc (set_callback): new function.
1495         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
1497         * lily/item-scheme.cc: new file.
1499         * lily/bar-line.cc (before_line_breaking): remove function.
1500         remove bar-size-procedure, break-glyph-function
1502         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
1504         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
1506         * lily/system-start-delimiter.cc (print): suicide from
1507         here. Remove after_line_breaking_callback.
1509         * lily/script-interface.cc (calc_direction): use callback for direction.
1511         * lily/side-position-interface.cc (aligned_side): don't use
1512         Side_position_interface::get_direction directly. Use callback. 
1514         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
1515         calculate stencil.
1516         (get_print_stencil): rename from get_stencil: create stencil with
1517         transparency, color and cause. 
1519         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
1521         * python/convertrules.py (conv): insert temporary warning rule.
1523         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
1525         * lily/grob-property.cc (try_callback): remove marker if applicable.
1527         * lily/grob.cc: elucidate doc about after/before-line-breaking
1529         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
1531         * lily/stem.cc (height): idem.
1533         * lily/stem-tremolo.cc: idem.
1535         * lily/slur.cc (height): don't use get_uncached_stencil()
1537         * lily/rest.cc (y_offset_callback): use offset callback
1538         iso. after-line-breaking callback.
1540         * lily/grob.cc: change after/before-line-breaking-callback to
1541         after/before-line-breaking dummy properties.
1543         * lily/include/grob.hh: remove Grob_status.
1545         * scm/define-context-properties.scm
1546         (all-user-translation-properties): remove verticalAlignmentChildCallback
1548         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
1549         (calc_direction): use callback
1550         (calc_positions): use callback.
1552         * lily/tie.cc (calc_direction): use callback. Only call parent
1553         positioning for more than one tie.
1555         * lily/tie-column.cc (calc_positioning_done): use callback
1557         * lily/slur-scoring.cc (calc_control_points): use callback
1559         * lily/slur.cc (calc_direction): use callback.
1561         * lily/note-collision.cc (force_shift_callback): remove.
1563         * lily/dot-column.cc (force_shift_callback): remove. Use
1564         other_axis_parent_positioning.
1566         * lily/grob.cc (other_axis_parent_positioning): new function.
1567         (same_axis_parent_positioning): new function
1569         * lily/align-interface.cc (alignment_callback): remove function.
1571         * lily/note-collision.cc (calc_positioning_done): use callback.
1573         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
1574         (calc_direction): idem.
1575         remove print function.
1577         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
1579         * lily/dot-column.cc (calc_positioning_done): use callback.
1581         * lily/break-align-interface.cc (calc_positioning_done): use callback.
1583         * lily/beam.cc (calc_direction): use pseudo-property for beam
1584         direction callback.
1585         (calc_positions): use callback 
1587         * lily/align-interface.cc (calc_positioning_done): use
1588         callback. Fold fixed  distance and normal alignment in one function.
1590         * lily/stem.cc (calc_stem_end_position): use callback.
1591         (calc_positioning_done): idem.
1592         (calc_direction): idem.
1593         (calc_stem_end_position): idem
1594         (calc_stem_info): idem.
1596         * lily/grob-property.cc (get_property_data): new function: 
1597         (try_callback): new function.
1599         * scm/define-grob-properties.scm (all-user-grob-properties): doc
1600         callbacks property.
1602         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
1604 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1606         * lily/tie.cc (get_position): robustness fix. Don't crash if a
1607         tie
1608         has no heads.
1609         
1610         * lily/include/*.hh (Module): compile fixes.
1612 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
1614         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
1615         as an argument for char-syntax: use (char-syntax (or nil 0)) 
1616         instead of (char-syntax nil), thanks to Milan Zamazal.
1618 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1620         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
1621         dist.
1623         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
1624         themselves.
1626 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1628         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
1629         add class_name() method.
1631         * lily/music-scheme.cc: remove ly:music-name.
1633 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1635         * cygwin/postinstall-lilypond.sh: Remove cruft.
1637         * cygwin/postremove-lilypond.sh: Remove.
1639         * cygwin/GNUmakefile (default): Remove postremove rules.
1641 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1643         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
1644         even header too.
1645         
1646         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
1647         MacOS 9 users.
1649         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
1650         consider break index for broken spanner.
1652         * scm/define-markup-commands.scm (wordwrap-string): remove \r
1653         characters from string before splitting.
1655 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1657         * scm/framework-ps.scm (output-preview-framework): use
1658         is-book-title to determine whether to chop off the booktitle.
1660         * lily/paper-book.cc (systems): init from book-title-properties
1661         (add_score_title): init score-title-properties.
1663         * ly/paper-defaults.ly: add {score,book}-title-properties.
1665         * scm/document-backend.scm (lookup-interface): error message if
1666         using unknown interface.
1668         * lily/volta-bracket.cc (after_line_breaking): new function. Set
1669         edge-height.
1671         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
1672         make_bracket.
1673         (make_bracket): new function.
1675         * scm/lily.scm (define-scheme-options): add paper-size option.
1677         * ly/declarations-init.ly (laissezVibrer): get paper size from
1678         -dpaper-size
1680         * scm/translation-functions.scm: use \fontsize for changing the
1681         fontsize.
1683         * scm/define-grobs.scm (all-grob-descriptions): set
1684         between-length-limit to 1.0
1686         * lily/tie-helper.cc: add between_length_limit_ detail property.
1688         * mf/feta-bolletjes.mf: typos.
1690         * lily/note-head.cc (internal_print): don't shadow idx
1691         parameter. This fixes wrong attachment for do shape heads.
1693 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1695         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
1697         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
1699         * scm/layout-slur.scm: rename from slur.scm
1701         * scm/layout-page-layout.scm: rename from page-layout.scm
1703         * scm/layout-beam.scm: rename from beam.scm
1705         * scm/define-grob-interfaces.scm (bass-figure-interface): add
1706         bass-figure-interface
1708         * lily/new-figured-bass-engraver.cc (process_music): add
1709         implicitBassFigures property.
1710         
1711         * scm/define-markup-commands.scm (pad-x): new markup.
1713         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
1714         minimumVerticalExtent on FiguredBass context.
1716         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
1717         case the continuation crosses a line break.
1719 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1721         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
1722         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
1723         absolute file name bug.  Backportme.
1725 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1727         * VERSION (PACKAGE_NAME): release 2.7.12
1729         * input/regression/figured-bass-continuation-center.ly: new file.
1731         * input/regression/beam-outside-beamlets.ly: new file.
1733         * lily/beam.cc (set_beaming): don't clip edges.
1734         (connect_beams): don't clip edges.
1736         * lily/beaming-info.cc (clip_edges): new function.
1738         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
1740         * Documentation/user/instrument-notation.itely (Figured bass):
1741         demonstrate extenders, update seealso links.
1743         * scm/titling.scm (marked-up-headfoot): change tagline
1744         handling. tagline = ##f will blank the tagline as well.
1746 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1748         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
1750         * lily/new-figured-bass-engraver.cc (struct
1751         New_figured_bass_engraver): add new_music_found_ member.
1753         * lily/lilypond-version.cc (Lilypond_version): deal with
1754         incorrectly formatted version strings. 
1756         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
1757         New_figured_bass_engraver by default.
1759         * lily/ttf.cc (print_trailer): only define glyph names when
1760         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
1762 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1764         * lily/horizontal-bracket.cc (make_bracket): new function.
1766         * scm/define-grobs.scm (all-grob-descriptions): new grobs
1767         NewBassFigure, BassFigureBracket, BassFigureContinuation,
1768         BassFigureLine, BassFigureAlignment
1770         * lily/new-figured-bass-engraver.cc (process_music): new file.
1772         * lily/figured-bass-continuation.cc: new file.
1774         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
1775         new file.
1777 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1779         * scripts/lilypond-book.py: Bug fix, put the quote around the
1780         actual score for LaTeX documents.
1782         * scm/define-grobs.scm (all-grob-descriptions): Change
1783         collapse-height of the SystemStartBracket grob to 5.0, 
1784         so the bracket disappears for single stave score lines (similarly
1785         to SystemStartBraces). 
1787         * Documentation/user/advanced-notation.itely (Polymetric
1788         notation): Clarify the use of compressMusic.
1790         * Documentation/user/basic-notation.itely (Grace notes): Clarify
1791         that the grace spacer note in other staves need the same duration
1792         and document the stroke-style property.
1794 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1796         * Documentation/user/global.itely (Vertical spacing): document
1797         alignment-extra-space and fixed-alignment-extra-space.
1799         * Documentation/topdocs/NEWS.tely (Top): add entry.
1801         * input/regression/alignment-vertical-spacing.ly: new file.
1803         * python/convertrules.py (conv): add rule.
1805         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
1807         * lily/align-interface.cc (stretch_after_break): new
1808         function. Read fixed-alignment-extra-space property.
1809         (align_elements_to_extents): read alignment-extra-space property.
1811         * lily/lily-guile.cc (robust_scm2dir): new function.
1813         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
1814         (annotate-space-left): new function. Annotate space left on page. 
1815         (annotate-y-interval): new function.
1816         (paper-system-annotate-last): new function. Annotate bottom-space.
1818         * mf/feta-beugel.mf (y): 
1820 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1822         * VERSION (PACKAGE_NAME):  release 2.7.11
1824         * scm/lily-library.scm (interval-translate): new function
1825         (interval-center): new function. 
1827         * scm/page-layout.scm (paper-system-annotate): new function. Add
1828         arrows for dimensions.
1830         * scm/stencil.scm (dimension-arrows): new function.
1832         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
1834         * input/regression/page-spacing.ly: add annotatespacing
1836         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
1837         (LY_DEFINE): new function ly:paper-system-set-property!
1839         * Documentation/user/global.itely (Paper size): explain how to add
1840         sizes.
1842         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
1843         correspond to GS's definition.
1845         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
1846         tuplet bracket.
1847         (print): only connect to next bracket if the next one is alive.
1848         (print): set padding to 0.0 if the bound is a breakable
1849         column. This makes tupletFullLength brackets reach up to the staff
1850         line if it doesn't connect to the next line.
1852 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1854         * lily/bar-number-engraver.cc: correct docs.
1856         * scm/output-lib.scm (first-bar-number-invisible): rename from
1857         default-bar-number-visibility
1859 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1861         * scm/define-music-properties.scm (all-music-properties): remove
1862         predicate property.
1864 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
1866         * po/fi.po: refresh.
1868 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1870         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
1871         superfluous s1.
1872         (disappear): bugfix.
1874         * lily/stem-tremolo.cc (raw_stencil): read slope property.
1876         * lily/include/paper-system.hh (class Paper_system): remove
1877         staff_extents_ member.
1879         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
1881         * lily/include/paper-system.hh (class Paper_system): remove
1882         number_ variable. Remove is_title_. Remove break_before_penalty_
1884         * lily/paper-book.cc (systems): use 'number property iso. number_
1885         member.
1887         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
1888         remove ly:paper-system-number.
1890         * scm/lily-library.scm (paper-system-title?): new function.
1892         * lily/book.cc (process): bugfix: flip ?: cases. 
1894         * Documentation/user/changing-defaults.itely (Difficult tweaks):
1895         add outputProperty.
1897         * ly/music-functions-init.ly: add outputProperty music function.
1899         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
1901         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
1902         and next-padding.
1903         (optimal-page-breaks): rename from ly:optimal-page-breaks.
1905         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
1907         * lily/paper-system.cc (internal_get_property): new function.
1909         * Documentation/user/global.itely (Vertical spacing): refer to
1910         page-spacing.ly
1912         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
1913         pagetopspace
1915         * input/regression/page-spacing.ly: new file.
1917         * input/regression/page-top-space.ly: new file.
1919         * lily/spacing-spanner.cc: cmath -> math.h
1921         * lily/paper-system.cc (read_left_bound): new function. Read
1922         line-break-system-details from left bound to determine extents.
1924         * Documentation/user/programming-interface.itely (Using LilyPond
1925         syntax inside Scheme): change applyxxx -> applyXxx.
1927         * ly/music-functions-init.ly: add outputProperty music function.
1929         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
1931         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
1933         * python/convertrules.py (conv): rule
1935         * ly/music-functions-init.ly: applyxxx -> applyXxx
1937         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
1938         TabVoice to Voice.
1940 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1942         * flower/include/real.hh: include <math.h> iso. <cmath>
1944         * flower/include/offset.hh: include real.hh
1946 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1948         * Documentation/user/changing-defaults.itely (Difficult tweaks):
1949         fix example, now that 'interfaces is no longer directly available.
1951         * lily/book.cc (process): don't crash if paper == NULL.
1953         * po/fr.po: update.
1955 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1957         * scm/define-music-types.scm (music-descriptions): set length and
1958         start-callback for QuoteMusic
1960 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1962         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
1963         arguments. Fixes compilation error with gcc 3.3.
1965 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1967         * VERSION: release 2.7.10
1969         * stepmake/stepmake/python-module-rules.make
1970         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
1972         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
1973         real.hh
1975 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1977         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
1978         -Werror. Otherwise GCC barfs over various optimizations.
1980         * scm/define-grob-properties.scm (all-internal-grob-properties):
1981         add note-head property
1983         * Documentation/user/instrument-notation.itely (Laissez vibrer
1984         ties): new node.
1986         * input/regression/laissez-vibrer-ties.ly: new file.
1988         * lily/laissez-vibrer-engraver.cc: new file.    
1990         * lily/include/tie-column-format.hh: new file.
1992         * lily/tie-column-format.cc: new file. 
1994         * lily/tie-column.cc (set_manual_tie_configuration): new function.
1996         * lily/laissez-vibrer-tie.cc: new file.
1998         * lily/include/laissez-vibrer-tie.hh: new file.
2000         * ly/engraver-init.ly: add Laissez_vibrer_engraver
2002         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
2004         * scm/define-grobs.scm (all-grob-descriptions): add
2005         LaissezVibrerTie, LaissezVibrerTieColumn
2007         * lily/tie-column.cc (set_tie_config_directions): new function
2008         (final_shape_adjustment): new function.
2009         (shift_small_ties): new function.
2011         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
2013         * lily/include/tie.hh (struct Tie_details): add x_gap_
2014         (struct Tie_configuration): add head_position_
2016         * lily/tie-column.cc (set_chord_outline): new function.
2018         * mf/cmr.enc.in:  remove file.
2020 2005-09-11  Graham Percival  <gpermus@gmail.com>
2022         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
2024 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2026         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
2027         reduce aliasing effects.
2029         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
2030         box in skyline.
2032 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2034         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
2036         * flower/include/real.hh: std::fabs too.
2038 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2040         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
2042         * lily, flower: Include C++ iso C headers.  Import namespace std
2043         throughout.
2045         * lily/side-position-interface.cc: 
2046         * lily/scm-hash.cc: 
2047         * lily/note-head.cc: 
2048         * lily/include/includable-lexer.hh: 
2049         * flower/include/string-data.icc: Remove using std::*.
2051         * lily, flower: Include C++ iso C headers.  Import namespace std
2052         throughout.
2054         * lily/side-position-interface.cc: 
2055         * lily/scm-hash.cc: 
2056         * lily/note-head.cc: 
2057         * lily/include/includable-lexer.hh: 
2058         * flower/include/string-data.icc: Remove using std::*.
2060         * Documentation/user/instrument-notation.itely (Entering lyrics):
2061         Multiple latin-1->utf-8 conversion fix.
2063         * Documentation/user/*tely: Update Emacs cookie to utf-8.
2065 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2067         * lily/tie.cc (get_configuration): also avoid dots for non-space
2068         situations.
2070 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2072         * Documentation/user/instrument-notation.itely: Bugfix.
2074 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2076         * tex/GNUmakefile: don't install texinfo.tex
2078         * tex/ : cleanup: remove unused files.
2080         * lily/general-scheme.cc: remove my_{isinf,isnan}.
2082         * flower/include/real.hh: using std::{isnan,isinf}
2083         
2084         * VERSION (PATCH_LEVEL): release 2.7.9
2086 2005-09-05  Graham Percival  <gpermus@gmail.com>
2088         * Documentation/user/ instrument-notation.itely,
2089         advanced-notation.itely: minor tweaks.
2091         * input/test/script-chart.ly: add item padding.
2093 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2095         * flower/offset.cc: use math.h iso. <cmath>
2097         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
2098         of IE users.
2100         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
2101         (widen-left-stencil-edges): new function. Fix alignment problems
2102         with LaTeX includegraphics.
2104         * lily/text-interface.cc (interpret_markup): use abort().
2106 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2108         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
2110         * lily/tie.cc (get_configuration): update bezier shape as we
2111         change Y positions.
2112         (get_configuration): don't move large ties if we're outside of the
2113         staff.
2115 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2117         * scm/define-markup-commands.scm (strut): swap X and Y dims.
2118         
2119 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2121         * .cvsignore: Add auto-generated configure files and then some.
2123 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2125         * scm/define-grobs.scm (DynamicLineSpanner): Add
2126         X-extent-callback.  Fixes hairpin-slur collision.
2128 2005-08-31  Graham Percival  <gpermus@gmail.com>
2130         * Documentation/user/advanced-notation.itely,
2131         basic-notation.itely: minor changes.
2133 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2135         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
2136         \linebreak between each .eps file if \betweenLilyPondSystem is
2137         undefined. 
2139         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
2140         music): Document the \linebreak
2142         * Documentation/user/lilypond-book.itely,
2143         input/tutorial/lbook-latex-test.tex,
2144         Documentation/user/examples.itely: Remove \usepackage{graphics}
2146 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2148         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
2150         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
2151         compat bugfix.
2153         * scripts/lilypond-book.py (PREAMBLE_LY): define
2154         inside-lilypond-book
2155         (modify_preamble): new function. Insert \RequirePackage{graphics}
2156         when no {graphics found in preamble.  
2158 2005-08030  Graham Percival  <gpermus@gmail.com>
2160         * Documentation/user/basic-notation.itely, global.itely,
2161         tutorial.itely: misc small changes.
2163 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2165         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
2166         VERSION.
2168 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2170         * lily/tie-column.cc (new_directions): put Tie down on center
2171         staff line. 
2173         * lily/script-interface.cc (before_line_breaking): use
2174         Grob::programming_error
2176         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
2178         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
2179         of splitext.
2181 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2183         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
2185 2005-08-29  Werner Lemberg  <wl@gnu.org>
2187         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
2188         the `*.scale.pfa' files to avoid warnings.
2190 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2192         * lily/tempo-performer.cc (process_music): idem.
2194         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
2196 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2198         * Documentation/user/advanced-notation.itely (Text markup): not a
2199         fragment.
2201         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
2203         * lily/staff-performer.cc (initialize): add tempo/name to
2204         audio_staff_
2207 2005-08-26  Graham Percival  <gpermus@gmail.com>
2209         * Documentation/user/advanced.itely: add text-only example.
2211         * Documentation/user/invoking.itely: add index entries for
2212         convert-ly.
2214         * Documentation/user/ tutorial.itely, basic-notation.itely:
2215         small fixes suggested by Steve D.  Thanks!
2217 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2219         * input/regression/markup-bidi-pango.ly: new file.
2221         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
2222         standard. Remove #ifdef. Remove memleak.
2223         (text_stencil): use text_dir to decide how to composite items.
2224         (text_stencil): determine uniform text direction for the entire
2225         string.
2227         * scripts/lilypond-book.py (output_name): remove
2228         latex_filter_cmd. Non-portable to non-Unix systems. 
2229         (get_latex_textwidth): use File.write and os.unlink() instead.
2231         * THANKS: add Vicente & Trevor.
2233         * lily/grob.cc (discretionary_processing): look up origin for
2234         programming_error too. 
2236         * input/regression/tie-broken.ly: new file.
2238         * lily/tie-column.cc (set_chord_outlines): set outline for line
2239         break case too.
2240         
2241 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2243         * lily/pango-font.cc (text_stencil): don't translate glyphs in
2244         unscaled transform, just translate stencils.
2246         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
2247         MIDI.
2249         * scm/define-markup-commands.scm (wordwrap-string): use
2250         text-direction
2251         (wordwrap-stencils): idem.
2252         (line): idem.
2253         (fill-line): idem.
2254         (wordwrap-stencils): translate last line to right for
2255         text-direction = LEFT.
2257         * scm/define-grob-properties.scm (all-user-grob-properties): add
2258         text-direction.
2260 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2262         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
2263         when copying a Lily_parser object.
2265 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2267         * scm/define-markup-commands.scm (null): add null markup.
2269 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2271         * lily/item.cc: Add documentation of center-invisible
2273 2005-08-24  Graham Percival  <gpermus@gmail.com>
2275         * Documentation/user/advanced-notation.itely: add info about
2276         raising text.
2278         * Documentation/user/programming-interface.itely: fix example
2279         involving raised text.
2281 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2283         * lily/beam.cc (print): fix X start/end points of isolated
2284         beamlets.
2286         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
2288         * lily/multi-measure-rest.cc (set_text_rods): new function.
2290         * lily/vertical-align-engraver.cc (process_music): call
2291         Align_interface::set_axis(). This forces #'elements to be ordered,
2292         preventing random vertical reordering of staves.
2294         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
2295         add avoid-slur property. 
2297         * Documentation/user/basic-notation.itely (Measure repeats): add
2298         countPercentRepeats example.
2300         * Documentation/user/advanced-notation.itely (Other text markup
2301         issues): remove remark about normal-font.  We have \normal-text
2303         * input/regression/tie-chord.ly: add note about remaining bugs.
2305         * lily/tie.cc (print): try Tie_column::set_directions () if
2306         control-points not yet defined.
2308 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2310         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
2311         extent. This fixes braces falling out of the EPS bbox.
2313         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
2314         exactly to bbox.
2316 2005-08-23  Graham Percival  <gpermus@gmail.com>
2318         * {various} : change #up->#UP and #down->#DOWN.
2320         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
2322         * Documentation/user/advanced-notation.itely: clarify
2323         what objects handles text on a multimeasure rest.
2325 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2327         * VERSION (PATCH_LEVEL): release 2.7.7
2329 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2331         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
2333         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
2335         * input/regression/*.ly: formatting clean-up. Default layout
2336         before music expression.
2338         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
2339         romanze28-2 example.
2341         * scm/ps-to-png.scm: remove dir-re function.
2342         (make-ps-images): generate page names, instead of globbing them.
2343         This brings down LilyPond memory usage for make web by a factor
2344         10. (backportme?) 
2346         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
2347         don't use glob. With 3000 files, globbing
2348         Documentation/user/out-www/ can take too much time. (backportme?)
2349         
2350         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
2352         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
2354         * input/regression/tie-manual.ly: new file
2356         * input/regression/tie-chord.ly: update.
2358         * flower/include/interval.hh (struct Interval_t): 
2360         * lily/tie.cc (distance): new function 
2361         (height): new function.
2362         (init): new function
2363         (Tie_details): new struct.
2365         * lily/skyline.cc (skyline_height): new function.
2367         * lily/tie-column.cc (set_chord_outlines): new function.
2368         (new_directions): read tie-configuration
2370         * lily/skyline.cc: fix ASCII art.
2371         
2372 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2374         * python/convertrules.py (string_or_scheme): Fix spelling error
2376 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2377         
2378         * lily/tie-column.cc (set_directions): set directions only once.
2379         (add_configuration): new function.
2381         * lily/tie.cc (set_control_points): new function
2383         * lily/tie-column.cc (new_directions): new function.
2385         * ly/music-functions-init.ly: set 'pitch property
2386         iso. trill-pitch. This makes \relative work with \pitchedTrill
2388         * lily/tie.cc (get_configuration): new function. Don't generate
2389         control points, rather, generate configuration.
2390         remove head-pair property.
2392         * lily/include/tie.hh (struct Tie_configuration): new struct.
2394 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
2396         * Documentation/topdocs/NEWS.tely: clarify.
2398 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2400         * lily/tie.cc: remove minimum-length
2402         * scm/define-grob-properties.scm (all-user-grob-properties):
2403         remove staffline-clearance, y-offset 
2405         * input/regression/tie-dots.ly (Module): remove.
2407         * lily/tie.cc (get_control_points): rewrite. Put short ties in
2408         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
2410         * input/regression/tie-single.ly: new file.
2412 2005-08-21  Graham Percival  <gpermus@gmail.com>
2414         * ly/bagpipe.ly: fix compile problem.
2416 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2418         * lily/midi-item.cc (name): new method.
2420         * lily/staff-performer.cc (acknowledge_audio_element): use
2421         signature of baseclass.
2423         * lily/engraver-group.cc (do_announces): move recursion call out
2424         of while loop. 
2426         * lily/drum-note-performer.cc (class Drum_note_performer): use
2427         process_music everywhere.
2429         * ly/performer-init.ly: add default children everywhere.
2431         * lily/paper-book.cc (output): call paper-book-write-midis
2432         directly: always write MIDI, even if no \layout {} block. 
2434 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2436         * VERSION (PACKAGE_NAME): release 2.7.6
2438         * lily/percent-repeat-engraver.cc (try_music): don't print warning
2439         about not being able to handle repeat.
2441 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2443         * Documentation/user/examples.itely (Piano templates):
2444         * lily/include/performer-group.hh: Remove last traces of
2445         Performer_group_performer.  Fixes make web.
2447 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2449         * Documentation/user/examples.itely (Piano templates): change
2450         Engraver_group_engraver -> Engraver_group
2452         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
2453         scm_stand_in_procs is not weak_any.
2455         * lily/volta-bracket.cc (print): don't use strcmp().
2457         * lily/volta-engraver.cc (process_music): use
2458         Text_interface::is_markup() for setting the 'text property of the
2459         volta bracket.
2461         * input/mutopia/claop.py (accents): update syntax to 2.6
2463         * scm/define-context-properties.scm
2464         (all-user-translation-properties): add countPercentRepeats.
2466         * Documentation/user/basic-notation.itely (Measure repeats): add
2467         isolated percent example.
2469 2005-08-18  Graham Percival  <gpermus@gmail.com>
2471         * input/ {various}: change direction #1, #-1 to
2472         #up/#down or \fooUp, \fooDown.
2474         * Documentation/user/music-glossary.tely: #-1 to #down.
2476         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
2477         to #up, #-1 to #down.
2479 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2481         * lily/include/engraver-group.hh: rename.
2483         * lily/include/performer-group.hh: rename.
2485 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2487         * input/test/script-abbreviations.ly: Removed some old LaTeX
2488         left overs.
2490 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2492         * python/convertrules.py (conv): inside-slur -> avoid-slur.
2493         Remove functions.  Remove if 1: constructs, reindent.
2495         * scripts/convert-ly.py (add_version): Add functions from
2496         convertrules.py
2498         * scm/script.scm (default-script-alist):
2499         s/priority/script-priority.  Fixes script stacking.  Backportme.
2500         (Fermata): Very low priority.
2502 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2504         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
2506         * input/regression/slur-script.ly: remove padding tweaks. Add
2507         comment strings.
2509         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
2510         time sigs and related stuff.
2512         * scm/define-grob-properties.scm (all-user-grob-properties): add
2513         @code{} tags to property description.
2515         * lily/include/line-group-group-engraver.hh (Module): remove file.
2517         * python/convertrules.py (conv): add rule for
2518         Engraver_group_engraver -> Engraver_group.
2520         * lily/include/performer-group-performer.hh: analogous.
2522         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
2524         * lily/context-def.cc (instantiate): check for
2525         Engraver_group_engraver and Performer_group_performer not
2526         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
2528 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2530         * input/les-nereides.ly: Remove three fingering tweaks, update
2531         remaining one.
2533         * input/regression/slur-script-inside.ly: Update, fix doc.
2535         * scm/script.scm: Update to avoid-slur.
2537         * scm/define-grob-properties.scm (avoid-slur): New property.
2539         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
2540         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
2541         outside_slur_callback if avoid-slur != #'inside.
2543         * scm/define-grobs.scm (Fingering, Textscript): No
2544         inside-slur/outside-slur preference.
2545         (DynamicLineSpanner): Always outside slur.
2547         * input/regression/slur-script.ly: More tests.
2549 2005-08-17  Graham Percival  <gpermus@gmail.com>
2551         * Documentation/user/lilypond-book: fix notime entry.
2553         * Documentation/user/advanced-notation.itely: add info on
2554         getting an I rehearsal mark.
2556         * Documentation/user/putting.itely: reinstate "I", re-enforce
2557         the fact that \override numbers are the result of
2558         experimentation and personal taste.
2560         * Documentation/user/invoking.itely: update convert-ly bugs.
2562 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2564         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
2565         to #t.
2567         * lily/timing-translator.cc (initialize): don't initialize timing.
2569         * input/regression/stem-spacing.ly (Module): remove file.
2571         * input/regression/spacing-stick-out.ly: specify Score context for
2572         \override
2574         * input/regression/clefs.ly: remove spurious {}s 
2576 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
2578         * Documentation/topdocs/NEWS.tely,
2579         input/regression/repeat-percent-count.ly: clarify a bit.
2581 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2583         * input/no-notation/display-lily-tests.ly: delete
2584         display-lily-init call.
2586         * ly/music-functions-init.ly (displayLilyMusic): move
2587         display-lily-init call at top level, so that the user should not
2588         have to call it.
2590         * scm/define-music-display-methods.scm (note-name->lily-string):
2591         retrieve note names directly from pitchnames using new function `rassoc'.
2592         (display-lily-init): note names list construction removed.
2594 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2596         * THANKS: spello.
2598         * lily/lily-parser.cc (get_header): copy module, instead of
2599         returning it.
2601         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
2602         counters.
2604         * Documentation/user/basic-notation.itely (Measure repeats): add
2605         links to Counter grobs.
2607         * scm/define-grobs.scm (all-grob-descriptions): add
2608         DoublePercentRepeatCounter
2609         (all-grob-descriptions): add PercentRepeatCounter
2611         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
2612         also create counter grobs.
2614         * lily/separation-item.cc (extremal_break_aligned_grob): don't
2615         return grob without space-alist.
2617         * input/proportional.ly: tune staff-padding.
2619         * input/regression/repeat-percent-count.ly: new file. 
2621 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2623         * input/no-notation/display-lily-tests.ly: moved from
2624         input/regression/ to input/no-notation. Be sure to call
2625         `display-lily-init' before trying to use the display function.
2627 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2629         * scripts/lilypond-book.py (option_definitions): Don't localize
2630         the empty string. Fixes bug when --psfonts was used with
2631         non-English locale.
2633 2005-08-15  Graham Percival  <gpermus@gmail.com>
2635         * lily/tuplet-bracket.cc: simple build fix.
2637         * Documentation/user/putting.itely: use "we" instead of "I".
2639         * Documentation/user/basic-notation.itely: cautionary accidentals
2640         work with naturals, too.
2642 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2644         * lily/tuplet-bracket.cc (calc_position_and_height): add
2645         staff-padding support.
2647         * input/proportional.ly: set staff-padding.
2648         
2649         * VERSION (PATCH_LEVEL): release 2.7.5
2651         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
2652         fixes. Remove tweaks.
2654         * input/regression/tuplet-slope.ly: add a test case.
2656         * lily/tuplet-bracket.cc (calc_position_and_height): revert
2657         erroneous fix. Add spanner bounds to offset array with relative X
2658         positions.
2660         * ly/engraver-init.ly: add Rest_engraver only once.
2662         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
2663         (*parser*) lookup if (*parser*) != #f.
2665 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2667         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
2668         Cut-and paste update.
2670         * input/regression/slur-script.ly: Add example of reverting
2671         inside-slur for fingering.
2673         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
2674         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
2676         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
2677         outside_slur_callback if inside-slur == #f (as opposed to unset).
2679 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2681         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
2682         encoding files are already removed.
2684 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2686         * Documentation/user/advanced-notation.itely (Instrument names):
2687         Document a workaround for instrument names that collide with
2688         system start braces/brackets.
2690 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2692         * lily/rest-collision.cc (do_shift): spello.
2694         * input/proportional.ly: use #'used property. Set break-overshoot
2695         property.
2697         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
2699         * lily/paper-column.cc: add #'used property
2701         * lily/mark-engraver.cc (stop_translation_timestep): set grob
2702         array for staves found.
2704         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
2705         array for stavesFound.
2707         * lily/staff-spacing.cc (next_note_correction): add fixed and
2708         space to calling convention. This fixes spacing of accidentals
2709         after barlines.
2711         * input/regression/spacing-accidental-stretch.ly: add barline -
2712         accidental case.
2714         * scm/framework-ps.scm (page-header): add version number to
2715         creator
2716         (eps-header): idem.
2718         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
2719         
2720 2005-08-13  Graham Percival  <gpermus@gmail.com>
2722         * Documentation/user/global.itely: add "fit as much as
2723         possible onto this page" example (Vertical spacing).
2725 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2727         * *: Nitpick run.
2729         * buildscripts/fixcc.py: Fixes.
2731 2005-08-12  Graham Percival  <gpermus@gmail.com>
2733         * Documentation/user/advanced-notation.itely: add markup
2734         example to Text spanners.
2736 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2738         * Documentation/user/basic-notation.itely (Ties): Add example of
2739         tying a tremolo to a chord. Thanks to Steve Doonan. 
2741         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
2742         properties and move tieMelismaBusy to the list of written
2743         properties. 
2745 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
2747         * po/TODO: suggest to use a dedicated tool like kbabel.
2749         * po/fi.po: update using kbabel.
2751 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2753         * *: Remove obsolete files.  Nitpick run.
2755         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
2757 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2759         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
2760         too.
2762         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
2764         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
2765         whitespace as symbol separator.
2767         * lily/side-position-interface.cc: Add slur-padding.
2769         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
2770         quite a large fix, and it never worked in a stable release; so not
2771         really a regression.
2773         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
2774         Update cut and paste code from Slur_engraver.
2776         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
2777         Add.
2779         * scm/define-grobs.scm (DynamicLineSpanner): Add
2780         dynamic-line-spanner-interface.
2781         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
2783 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2785         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
2786         to_boolean () so that non-set 'inside-slur means false.
2788         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
2789         slur has control-points.  Skip script without direction.  Always
2790         do_shift if script inside slur, even if slur not contained in
2791         script y-extent.  Increment k in loop.
2793 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2795         * scm/define-markup-commands.scm: Improved regexp to search for
2796         EPS bounding boxes and corrected call to ly:warning.
2798 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2800         * Documentation/user/programming-interface.itely (Displaying music
2801         expressions): doc for \displayLilyMusic. Also some precisions in
2802         "Markup construction in Scheme"
2804 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2806         * scm/define-markup-commands.scm (normal-text): Added 2 new
2807         markup commands, \normal-text and \medium (the latter thanks to
2808         Bruce Fairchild). 
2810 2005-08-08  Graham Percival  <gpermus@gmail.com>
2812         * Documentation/user/programming-interface.itely: fix @{ @}.
2814         * scm/define-markup-commands.scm: add linewidth info to
2815         \justify and \wordwrap, add "upright is the opposite of italic".
2817         * Documentation/user/advanced-notation.itely: shaped->shape,
2818         add (cons (markup "foo")) type of example to text markup,
2819         reword multi-measure rests section.
2821         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
2822         comment.  No actual code was touched.
2824         * Documentation/user/invoking.itely: add more info about
2825         \include.  Thanks, Bruce!
2827         * THANKS: add Bruce Fairchild, alphabetise.
2829         * Documentation/user/global.itely: document \score{\header{}}
2830         behavior.
2832         * Documentation/user/basic-notation.itely: reword multi-measure
2833         rest discussion in Rests.
2835 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2837         * Documentation/user/programming-interface.itely (Markup
2838         construction in Scheme): Corrected example and tried to clarify
2839         the implicit \line in the table.
2841 2005-08-07  Graham Percival  <gpermus@gmail.com>
2843         * Documentation/user/instrument-notation.itely: moved
2844         some bagpipe info back into the bagpipe section.  Somehow
2845         it ended up in the "other vocal issues" section?!  :o_O
2847 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2849         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
2850         directories, not paths).
2852 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2854         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
2855         plain emmentaler/aybabtu.  Backportme.
2857         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
2858         missing dir correction.
2860 2005-08-05  Graham Percival  <gperlist@shaw.ca>
2862         * scm/define-markup-commands: fix reversed justify/wordwrap
2863         doc strings.
2865 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
2867         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
2868         lily/gregorian-ligature-engaver.cc,
2869         lily/include/ligature-engraver.hh,
2870         lily/include/coherent-ligature-engraver.hh,
2871         lily/include/gregorian-ligature-engraver.hh: make these classes
2872         truely abstract.  This should fix some internal oddities such as
2873         duplicate as well as dead translator/property declarations, and
2874         also some dead code.
2876         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
2877         bugfix: avoid message "junking empty ligature" on ligature
2878         brackets by collecting dummy grobs.
2880 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2882         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
2884         * input/proportional.ly (staffKind): bugfix.
2885         (staffKind): updates by Trevor Baca.
2887         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
2888         default layout. 
2890         * lily/tuplet-bracket.cc (print): check whether edge-text is a
2891         pair.
2893         * lily/beam.cc (rest_collision_callback): call position_beam() if
2894         necessary.
2896         * VERSION: release 2.7.4
2898         * input/regression/spacing-uniform-stretching.ly: new file.
2900         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
2902         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
2903         contributor.
2905         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
2907         * input/proportional.ly: new file.
2909         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
2910         columns is empty
2912         * lily/tuplet-engraver.cc (finalize): new function. Reset right
2913         bounds to currentCommandColumn for the last step.
2914         (start_translation_timestep): if tupletFullLength is set, set
2915         bound to Paper Column
2917         * input/regression/tuplet-full-length.ly (indent): new file.
2919         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
2920         clique of loose columns, eg. a set of grace notes in strict
2921         notespacing.
2923         * input/regression/spacing-strict-spacing-grace.ly: new file.
2925         * lily/key-signature-interface.cc: change property name to
2926         alteration-alist
2928         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
2929         keyAccidentalOrder
2931         * python/convertrules.py (conv): keyAccidentalOrder ->
2932         keyAlterationOrder
2934         * lily/key-engraver.cc (create_key): always print a cancellation
2935         for going to C-major/A-minor, regardless of printKeyCancellation.
2936         (create_key): remove typecheck for visibility. This fixes key
2937         signature not being printed.
2939         * lily/spacing-determine-loose-columns.cc: new file.
2941         * input/regression/spacing-strict-notespacing.ly: new file.
2943         * lily/spacing-spanner.cc (generate_springs): rename from
2944         do_measure. 
2945         (generate_pair_spacing): new function.
2946         (init, generate_pair_spacing): set between-cols for floating
2947         nonmusical columns.
2949         * lily/spaceable-grob.cc (get_spring): new function. 
2951         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
2952         relative to the right edge of the prefatory matter.
2954         * lily/beam.cc (print): read break-overshoot to determine where to
2955         stop/start broken beams.
2957         * input/regression/spanner-break-overshoot.ly: new file.
2959 2005-08-04  Graham Percival  <gperlist@shaw.ca>
2961         * ly/bagpipe.ly: updated.
2963         * Documentat/user/instrument.itely: un-comment out bagpipe example.
2965 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2967         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
2968         support: now (de)crescs avoid slurs as well.
2970         * Documentation/user/instrument-notation.itely (Bagpipe example):
2971         comment out non-functioning bagpipe example.
2972         (Bagpipe definitions): idem.
2974         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
2975         (Top): add proportionalNotationDuration example.
2977         * input/regression/spacing-proportional.ly: new file.
2979         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
2980         synched to a beam.
2982         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
2983         fixes beams with a single stem (eg. beams across linebreaks.)
2985         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
2987         * flower/rational.cc (operator +): prevent overflow. This fixes
2988         heavily nested tuplets.
2990         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
2991         have to protect even those unlikely to be corrupted data members.  
2993 2005-08-04  Graham Percival  <gperlist@shaw.ca>
2995         * ly/bagpipe.ly: new file.
2997         * THANKS: added Sven Axelsson.
2999 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3001         * lily/spacing-engraver.cc (stop_translation_timestep): directly
3002         copy proportionalNotationDuration into currentMusicalColumn if
3003         set.
3005         * lily/spacing-spanner.cc (musical_column_spacing): if
3006         uniform-stretching set, fixed space is 0.0
3008         * input/regression/spacing-multi-tuplet.ly: show
3009         uniform-stretching property.
3011         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
3013         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
3014         (struct Spacing_options): new struct.
3016         * lily/spacing-basic.cc: new file.
3018         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
3019         delta_t doesn't have to be smaller than shortest_playing_len
3021 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3023         * input/regression/markup-arrows.ly:  new file.
3025         * lily/tuplet-bracket.cc: document new behavior.
3027         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
3028         with line breaks.
3030         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
3032         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
3033         default 
3035         * lily/tuplet-bracket.cc: add edge-text property.
3036         add break-overshoot.
3037         (print): read break-overshoot.
3038         (print): read edge-text, add stencils.
3040         * mf/feta-arrow.mf: new file.
3042         * mf/feta-generic.mf: add feta-arrow.
3044 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3046         * Documentation/user/lilypond-book.itely (An example of a
3047         musicological document): Added flag -o to dvips for people who use
3048         the default setting in teTeX where output is sent to the printer. 
3050         * Documentation/user/global.itely (Vertical spacing): Added
3051         reference to the Axis_group_engraver which documents the *Extent
3052         properties.
3054 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3056         * Documentation/user/basic-notation.itely (Tuplets): add note
3057         about nested tuplets. Remove BUG. 
3059         * input/regression/tuplet-nest.ly: update: remove manual hack. 
3061         * lily/tuplet-bracket.cc (print): use robust_scm2drul
3062         (print): manually call print() for subtuplets.
3063         (calc_position_and_height): add subtuplets to the
3064         support. Vertically shift outer tuplet 
3066         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
3067         remove-first for Lyrics, ChordNames and FiguredBass
3069         * scm/define-grob-properties.scm (all-internal-grob-properties):
3070         use ly:grob-array? iso. grob-list?
3071         (all-internal-grob-properties): add tuplets grob-array.
3073         * lily/tuplet-bracket.cc (add_tuplet_bracket):
3074         new function
3076 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3078         * input/test/time-signature-staff.ly: new file.
3080         * ly/declarations-init.ly (center): escape to Scheme. Fixes
3081         spurious #<Music FingerEvent> errors. Backportme.
3083 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3085         * Documentation/user/programming-interface.itely (Markup
3086         construction in Scheme): Corrected markup syntax in the
3087         translation table.
3089 2005-08-03  Graham Percival  <gperlist@shaw.ca>
3091         * Documentation/user/instrument-notation.itely: small update
3092         to bagpipe notation docs; thanks Sven!
3094         * Documentation/user/basic-notation.itely: add link about trills.
3096 2005-08-02  Graham Percival  <gperlist@shaw.ca>
3098         * Documentation/user/music-glossary: remove accidentally committed
3099         fink patch.
3101 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
3103         * lily/lily-parser.cc (get_header): new function. Enable multiple
3104         \header definitions.
3106         * lily/parser.yy (lilypond_header_body): use get_header.
3108         * ly/init.ly:
3109         * scm/lily-library.scm (print-score-with-defaults): renamed
3110         $globalheader to $defaultheader
3111         
3112         * Documentation/user/global.itely (Creating titles): added short
3113         explanation that multiple headers are useable.
3116 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3118         * lily/module-scheme.cc (LY_DEFINE): new file. 
3120         * Documentation/user/advanced-notation.itely (Font selection): add
3121         doco for make-pango-font-tree.
3123 2005-07-31  Graham Percival  <gperlist@shaw.ca>
3125         * Documentation/user/music-glossary: more languages
3126         for tenuto.
3128         * Docuemntation/user/instrument-notation.itely: minor
3129         update for bagpipe example.
3131 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3133         * input/regression/+.ly (TODO): add some text.
3135 2005-07-28  Graham Percival  <gperlist@shaw.ca>
3137         * Documentation/user/invoking.itely: \score begins with music.
3139         * Documentation/user/ basic-notation.itely,
3140         instrument-notation.itely: minor changes.
3142         * Documentation/user/music-glossary.itely: began tenuto entry.
3144 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3146         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
3148         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
3150 2005-07-27  Graham Percival  <gperlist@shaw.ca>
3152         * Documentation/user/examples.itely: remove bagpipe template.
3154         * Documentation/user/instrument-notation.itely: add bagpipe
3155         section, maybe fix quotes in lyrics.  I hate text encoding.
3156         Clarify chord durations, more bagpipe stuff.
3158 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3160         * lily/accidental-engraver.cc: formatting fixes.
3162         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
3163         grob-array.
3165         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
3167         * lily/note-column.cc (arpeggio): new function.
3169         * lily/note-spacing.cc (get_spacing): also take arpeggio into
3170         account for spacing.
3172 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3174         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
3175         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
3176         mingw build.
3177         
3178 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3180         * scm/lily.scm (lilypond-all): clear anonymous modules after
3181         processing files.
3183 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3185         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
3186         SCM_I_CONSP
3188         * VERSION: 2.7.3 released
3190         * Documentation/user/invoking.itely (Invoking lilypond): add
3191         LILYPOND_GC_YIELD documentation.
3193         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
3194         scm_from_real / scm_make_real.
3196         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
3197         higher. This increases memory footprint, but provides overall
3198         speedup of 15 to 20%. 
3200         * lily/include/translator.hh (class Translator): remove
3201         PRECOMPUTED_VIRTUAL everywhere.
3203         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
3205         * lily/context.cc (now_mom): non-recursive now_mom() 
3207         * lily/include/profile.hh: new file.
3209         * lily/profile.cc: new file.
3211         * lily/grob.cc (Grob::Grob): look properties up directly.
3213         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
3214         lookups.
3216         * lily/include/box.hh (class Box): smob Box type.
3218         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
3220         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
3221         protect() and unprotect(). Use throughout.
3223 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3225         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
3227         * scm/define-music-display-methods.scm (markup->lily-string):
3228         markup elements can also be strings (without simple-markup
3229         appended)
3231 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3233         * lily/context.cc (where_defined): also assign value in
3234         where_defined().
3236         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
3237         (curve_coordinate): new function
3239         * lily/simple-spacer.cc (add_columns): only add rods between
3240         column i and begin/end if keep-inside-line is set (this repleces
3241         allow-outside-line as default)
3243 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3245         * lily/tuplet-engraver.cc (start_translation_timestep): only read
3246         tupletSpannerDuration if applicable.
3248         * lily/font-size-engraver.cc (process_music): read fontSize only
3249         once per timestep.
3251         * lily/engraver*cc: use throughout.
3252         
3253         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
3255         * lily/translator.cc (add_acknowledger): new file. Directly jump
3256         into an Engraver::acknowledge_xxx () method based on a grobs
3257         interface-list.
3259         * lily/include/translator-dispatch-list.hh (class
3260         Engraver_dispatch_list): new struct, new file.
3262         * scm/define-context-properties.scm
3263         (all-internal-translation-properties): remove acceptHashTable,
3264         acknowledgeHashTable
3266         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
3268         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
3269         change acknowledgeHashTable to C++ member. 
3271         * lily/rest-collision.cc (do_shift): use extract_grob_set().
3273 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3275         * scm/display-lily.scm: new file. Define a `display-lily-music'
3276         function, that displays the music expression given as an argument,
3277         using LilyPond notation.
3279         * scm/define-music-display-methods.scm: new file. Implementation
3280         of display methods for each music type.
3282         * ly/music-functions-init.ly (displayLilyMusic): new function for
3283         displaying music with LilyPond notation.
3285         * input/regression/display-lily-tests.ly: new regression test file
3286         for `display-lily-music'.
3288         * scm/markup.scm: remove obsolete debugging code (for printing
3289         markups with LilyPond notation).
3291         * scm/define-music-types.scm (music-name-to-property-table):
3292         * scm/clef.scm (supported-clefs): export, in order to be accessible
3293         from the (scm display-lily) module.
3295 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
3297         * Documentation/topdocs/NEWS.tely (Top): Typo.
3299 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
3301         * Documentation/index.html.in, Documentation/texinfo.css,
3302           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
3303           Documentation/bibliography/index.html.in,
3304           Documentation/bibliography/html-long.bst: revert css-width patch,
3305           it does not work with IE6.
3307 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3309         * Documentation/texinfo.css: revert 760px hack. 
3311         * VERSION: release 2.7.2
3313         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
3315         * Documentation/user/basic-notation.itely (Barnumber check): add
3316         section.
3318         * scm/music-functions.scm (skip-to-last): new function. Show only
3319         last showLastLength part of the \score.
3321         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
3323         * python/convertrules.py (conv): add ly:x-moment rule
3325         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
3327         * Documentation/topdocs/NEWS.tely (Top): add new feature.
3329         * Documentation/user/instrument-notation.itely (Flexibility in
3330         alignment): options in subsections.
3332         * lily/lyric-engraver.cc (process_music): don't typeset text for _
3333         syllable text. Instead, assume that the previous lyric text is a
3334         melismated text.
3336         * Documentation/index.html.in: revert 800x600 change.
3338 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3340         * lily/main.cc (main): Remove invalid handle kludge.
3342         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
3343         (lambda): add gui define.
3345 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3347         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
3349         * Documentation/user/instrument-notation.itely (Musica ficta
3350         accidentals): add section Musica ficta accidentals
3352         * lily/accidental-engraver.cc (make_suggested_accidental): new
3353         function.
3354         (make_standard_accidental): move into new function.
3355         (create_accidental): new function.
3357         * scm/define-grobs.scm (all-grob-descriptions): new Grob
3358         AccidentalSuggestion
3360         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
3362         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
3363         undefined.
3365         * Documentation/user/global.itely (Page formatting): document
3366         horizontalshift.
3368         * scm/page-layout.scm (default-page-music-height):
3369         horizontalshift: new variable, shift all systems by
3370         horizontalshift to the right, to make space for instrument names.
3372         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
3374         * lily/input-scheme.cc (LY_DEFINE): take format commands.
3376 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3378         * lily/note-column.cc (dir): idem.
3380         * lily/spacing-spanner.cc (Module): idem.
3382         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
3384         * lily/include/paper-column.hh (class Paper_column): add
3385         non-static get_rank() member.
3387         * VERSION: release 2.7.1
3388         
3389         * scm/framework-null.scm: new file, used for benchmarking.
3391 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
3393         * Documentation/topdocs/INSTALL.texi, configure.in: fix
3394         version dependencies for fontforge and gs.
3396         * Documentation/index.html.in, Documentation/texinfo.css,
3397         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
3398         Documentation/bibliography/index.html.in, 
3399         Documentation/bibliography/html-long.bst: optimize width of
3400         html for a 800x600 screen (width:760), increases printability
3401         when 'fit to page' is not set and readability in wide screens.
3403         * stepmake/bin/add-html-footer.py: add missing </p>.
3405 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3407         * scm/define-markup-commands.scm (beam): use polygon in beam
3408         command.
3410         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
3411         all acknowledged grobs, and do potentially expensive merge and
3412         write in one go.
3414         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
3416         * configure.in (reloc_b): add --enable-static-gxx to statically
3417         link to libstdc++
3419         * lily/GNUmakefile (static-gxx-libs): new target
3420         static-gxx-libs. Create symlink to libstdc++.a
3422         * lily/new-lyric-combine-music-iterator.cc: rename to
3423         Lyric_combine_music_iterator
3425         * lily/lyric-combine-music-iterator.cc
3426         (Old_lyric_combine_music_iterator): rename to
3427         Old_lyric_combine_music_iterator
3429         * lily/*-engraver.cc (various): remove double use of
3430         PRECOMPUTED_VIRTUAL function: only use
3431         start_translation_timestep() and stop_translation_timestep(), not
3432         both.
3434         * lily/break-substitution.cc (fast_substitute_grob_array): do
3435         fast_substitute_grob_array for all unordered grob_arrays.
3436         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
3437         (substitute_grob_array): optimize.
3439         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
3441         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
3443         * lily/parser.yy: revert $globalheader patch.
3444         
3445         * lily/include/translator.icc
3446         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
3447         Translator methods, without _static helper.
3449         * lily/grob-smob.cc (derived_mark): rename from
3450         do_derived_mark(). Return void.
3452         * scm/define-context-properties.scm
3453         (all-internal-translation-properties): remove tweakCount/tweakRank.
3455         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
3456         predefined break-visibilities.
3458         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
3459         booleans for break-visibility.
3461         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
3463         * python/convertrules.py (conv): rule for Timing_translator. 
3465         * lily/include/translator.icc: new file. 
3467         * lily/paper-column-engraver.cc (process_music): new
3468         file. Separate Paper_column factory from Score_engraver.
3470         * lily/vertically-spaced-context-engraver.cc: administer
3471         spaceable-staves property of System.
3473         * lily/translator-group-ctors.cc: new file.
3475         * lily/context-property.cc (make_grob_from_properties): construct
3476         the right Grob class programmatically, looking at the class entry
3477         for the meta property.
3479         * lily/break-align-engraver.cc (stop_translation_timestep): call
3480         Break_align_interface::add_element() directly.
3482         * lily/context.cc (measure_position): measure_position() is now a
3483         normal function.
3485         * lily/include/translator.hh (class Translator): rename
3486         process_acknowledged_grobs() to process_acknowledged() and move to
3487         Translator.
3489         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
3490         field for each grob description.
3492         * lily/include/translator-group.hh (class Translator_group):
3493         change to base class. Separate class from Translator. This gets
3494         rid of virtual inheritance for Engravers/Performers.
3496         * lily/staff-performer.cc (class Staff_performer): derive
3497         Staff_performer from Performer, not Performer_group_performer 
3499         * Lily/translator-group.cc (precomputed_recurse_over_translators):
3500         new function.
3501         (precompute_method_bindings): new function. Precompute lists of
3502         Translators, so we only call methods (process_music,
3503         start_translation_timestep, etc.) for Translators needing
3504         it. Also: dispose of pointer-to-member-function calls.
3506         * lily/engraver-group-engraver.cc: remove engraver_each,
3507         recurse_down_engravers ()
3509         * lily/note-head.cc (internal_print): only call
3510         glyph-name-procedure if style != default. 
3512 2005-07-16  Graham Percival  <gperlist@shaw.ca>
3514         * ly/titling-init.ly: add printallheaders option.
3516         * Documentation/user/global.itely: document printallheaders.
3518 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3520         * lily/system.cc (do_derived_mark): don't mark from object_alist_
3521         anymore, but do it centrally.  
3523         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
3524         hammer hack.
3526         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
3528         * scm/output-lib.scm: remove hammer-print-function.
3530         * lily/include/pointer-group-interface.hh (extract_grob_set): new
3531         macro. Declare a Link_array<Grob> and fill it from a grob.
3532         (extract_item_set): idem for item.
3534         * lily/break-substitution.cc: add header.
3535         (fast_substitute_grob_array): rewrite for Grob_arrays.
3536         (substitute_grob_array): idem.
3538         * lily/group-interface.cc (add_thing): remove file.
3540         * flower/include/parray.hh (class Link_array): slice() is const.
3542         * lily/include/grob-array.hh: new file.
3544         * lily/grob-array.cc (spanner): new file.
3546         * lily/beam-quanting.cc (fill): read details property from beam.
3548         * lily/beam.cc: support details property.
3550         * total speedups below: approx 10%.
3552         * lily/include/beam.hh: new struct, softcode beam quanting parameters
3554         * lily/include/grob.hh (class Grob): add interfaces_ member.
3556         * lily/bezier.cc (init_polynomial_cache): new function: cache
3557         binom(3,j) t^j (1-t)^{3-j}
3558         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
3560         * lily/*.cc: substitution throughout.
3562         * lily/grob-property.cc (internal_get_object): new routine.
3563         (internal_set_object): idem. Store grob refrences in separate
3564         alist. This saves processing time, since properties aren't
3565         break-substituted, and the per grob namespace is smaller, both for
3566         grobs and non-grob properties.
3568         * scm/define-grob-properties.scm (all-internal-grob-properties):
3569         remove center-element.
3571         * lily/grob.cc: remove tweak-count, tweak-rank.
3573 2005-07-15  Graham Percival  <gperlist@shaw.ca>
3575         * Documentation/user/lilypond-book.itely: fixes example.
3577 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3579         * Documentation/user/global.itely (Creating titles):    
3580         * Documentation/user/examples.itely (All headers): change the
3581         place of \header in \score blocks (after music block) to make
3582         examples compile (cf. changes on parser.yy on 2005-07-10)
3584 2005-07-13  Graham Percival  <gperlist@shaw.ca>
3586         * python/convertrules.py: add exc -> ecc rule.
3588         * scripts/convert-ly.py: add location of convertrules.py
3589         in a comment.
3591         * Documentation/user/changing-defaults.itely: fix language.
3593 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3595         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
3597 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3599         * scm/output-socket.scm (grob-bbox): don't use inf? 
3601         * flower/include/rational.hh: add operator bool() 
3603         * scm/define-music-types.scm (music-descriptions): remove
3604         internal-class-name properties.
3606         * lily/include/event.hh: remove file.
3608         * lily/include/music-constructor.hh: remove file.
3610         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
3611         in 'types property.
3613         * lily/music.cc (duration_length_callback): new function.
3615         * lily/event.cc: remove file.
3617         * lily/music-constructor.cc: remove file.
3619         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
3621         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
3622         (get_context_key): idem.
3624         * scm/lily.scm (lambda): new option object-keys (default to #f)
3626         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
3628         * scm/output-gnome.scm: remove beam routine.
3630         * scm/output-ps.scm (scm): idem.
3632         * scm/output-svg.scm: remove beam.
3634         * ps/music-drawing-routines.ps: remove draw_beam.
3636         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
3638         * flower/include/guile-compatibility.hh (scm_from_locale_string):
3639         add scm_from_locale_string compatibility glue. 
3641 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
3643         * scripts/lilypond-book.py: Prevent occuring error when
3644         'lilypond-book --output=foo/ somefile.ly' is executed multiple
3645         times and target file shoud be overwritten.  (Error message said
3646         'input file and output file is same'.)
3648 2005-07-13  Graham Percival  <gperlist@shaw.ca>
3650         * input/regression/slur-extreme.ly,
3651         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
3652         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
3653         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
3654         "excentricity" to "eccentricity".
3656         * Documentation/user/converters.itely: fix URL for Noteedit and
3657         Rosegarden.
3659         * THANKS: added Yoshinobu Ishizaki.
3661 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3663         * scm/define-markup-commands.scm (justify-field): add. 
3665         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
3667 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3669         * lily/lookup.cc (filled_box): express filled_box with
3670         round_filled_box
3672         * scm/midi.scm (paper-book-write-midis): new function. Write all
3673         performances in numbered MIDI files.
3675         * lily/performance-scheme.cc (LY_DEFINE): new file.
3676         (LY_DEFINE): new function ly:performance-write.
3678         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
3679         new function.
3680         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
3682         * scm/framework-*.scm: use port arguments throughout.
3684         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
3686         * lily/paper-outputter.cc (Paper_outputter): take port argument.
3688         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
3690         * scm/framework-texstr.scm (output-framework): 
3692         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
3694         * scm/output-lib.scm (tablature-stem-attachment-function):
3695         tablature stem attachment fix. 
3697 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3699         * lily/bezier.cc: hardcode binomial coefficients of order 3.
3701         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
3703         * scm/define-music-types.scm (music-descriptions): don't use
3704         Music_wrapper type.
3706         * lily/paper-column.cc (print): print moment too.
3708         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
3709         remove compatibility cruft.
3711         * lily/parser.yy (score_body): \score can only begin with Music. 
3713         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
3714         make-score. Take music argument only. Move parser interaction to
3715         Scheme.
3717         * scm/lily-library.scm (scorify-music): new function.
3719         * python/lilylib.py (datadir): remove 2.1 compat kludge.
3720         (datadir): remove resource import.
3721         (print_environment): remove get_bbox()
3722         (cp_to_dir): remove pre 1.5.2 compat glue.
3724 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3726         * lily/include/simple-spacer.hh (Module): idem.
3728         * lily/include/spring.hh (struct Spring): store inverse
3729         strength. This prevents division by zero.
3731         * VERSION: release 2.7.0
3732         
3733         * lily/include/music.hh (class Music): remove Music::duration_log()
3735         * lily/stem-engraver.cc (make_stem): take duration log from event.
3737         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
3739 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3741         * scm/lily.scm (ly:load): load autochange.scm
3743         * Documentation/user/tutorial.itely (Running LilyPond for the
3744         first time): remove reference to DVI/TeX
3746         * scm/define-markup-commands.scm (text): add \text markup command.
3748         * configure.in (reloc_b): bump requirement to Python 2.2.
3750         * lily/include/dots.hh (class Dots): make has_interface() static.
3752         * python/convertrules.py (conv): add rule for ly:grob-default-font
3754         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
3755         alphabetical order.
3757         * input/regression/trill-spanner-pitched.ly: new file.
3759         * lily/font-interface-scheme.cc (LY_DEFINE): function
3760         ly:grob-default-font (changed from get-default-font).
3762         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
3764         * lily/note-head.cc (internal_print): if style is not a symbol,
3765         set style to 'default. 
3766         (internal_print): no style suffix if glyph-name-procedure not
3767         set. Default to quarter head.
3769         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
3771         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
3773         * ly/music-functions-init.ly: \pitchedTrill
3775         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
3777         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
3779         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
3781         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
3783         * po/fr.po: update
3785         * po/de.po: update.
3787 2005-07-06  Graham Percival  <gperlist@shaw.ca>
3789         * Documentation/user/changing-defaults.itely: add link
3790         to grob-iterface.
3792         * Documentation/user/advanced-notation.itely: add material
3793         to Setting automatic beam behaviour.  Thanks, Joe!
3795         * Documentation/user/lilypond.itely: change encoding to utf-8.
3797 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3799         * Documentation/user/advanced-notation.itely (Setting automatic
3800         beam behavior): Correct the documentation of
3801         revert-auto-beam-setting (backportme)
3803 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3805         * lily/ly-module.cc (ly_make_anonymous_module): define
3806         %module-public-interface of module. 
3808         * lily/lily-parser.cc (print_smob): allow printing of parser smob
3809         without lexer.
3811 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3813         * input/regression/fret-diagrams.ly: stretch example.
3815 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3817         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
3818         Fodor).
3820 2005-06-30  Graham Percival  <gperlist@shaw.ca>
3822         * Documentation/topdocs/AUTHORS.texi: update personal web address.
3824         * Documentation/user/examples.itely, lilypond-book.itely:
3825         change \RequirePackage to \usepackage.
3827         * Documentation/user/global.itely: document copyright and tagline.
3829 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3831         * Documentation/user/basic-notation.itely (Transpose): remove link
3832         to nonexistent UntransposableMusic.
3834         * scm/output-svg.scm: remove old definitions.
3836         * scripts/lilypond-book.py (do_file): search for kpsewhich before
3837         invoking.
3839         * python/lilylib.py (search_exe_path): new function.
3841 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3843         * python/lilylib.py (mkdir_p): remove setup_environment()
3844         (backportme)
3846         * buildscripts/mutopia-index.py (headertext): trim text.
3848         * Documentation/topdocs/NEWS.tely (Top): refresh.
3850         * scm/define-markup-commands.scm (wordwrap-string): new function:
3851         split string in paras and words.
3852         (wordwrap-markups): new function.
3853         (wordwrap-stencils): new function. 
3854         (justify): use it.
3855         (wordwrap): use it.
3856         (wordwrap-string): use it
3857         (justify-string): use it.
3859         * scm/lily-library.scm (regexp-split): new function.
3861         * scm/define-markup-commands.scm: remove encoded-simple. 
3862         remove font-markup.
3863         (fontsize): remove old version  of fontsize.
3864         (wordwrap): new markup function. Wrap into paragraphs.
3866         * VERSION: Branch lilypond_2_6
3867         (MINOR_VERSION): go to 2.7.0
3869 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3871         * po/zh_TW.po: update from translation project.
3873 2005-06-28  Graham Percival  <gperlist@shaw.ca>
3875         * scm/midi.scm: compile fix.
3877 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3879         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
3880         patch. Now, the tempfile module is loaded too, not only used.
3882 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
3884         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
3885         0.05 - 1.00 to 0.25 - 1.00
3887         * scm/midi.scm: moved the default-instrument-equalizer procedure
3888         to just under the insturment-equalizer-alist it takes as an
3889         argument.
3891 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3893         * Documentation/user/advanced-notation.itely (Font selection):
3894         remove CMR note.
3896         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
3898 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3900         * THANKS: Add UTF-8 marker.
3902         * Documentation/user/point-and-click.itely (http): Update: use
3903         lilypond-invoke-editor.  Fix: instruct to use user.js.
3905 2005-06-27  Graham Percival  <gperlist@shaw.ca>
3907         * ly/titling-init.ly: implements printpagenumber, increases
3908         space between dedication and title (to avoid collisions with
3909         "g" and "q" in dedication), and nicer logic about copyright
3910         and instrument fields being printed on the first page.
3911         Thanks Vincent!
3913         * Documentation/user/global.itely: document printpagenumber.
3915 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3917         * Documentation/topdocs/NEWS.tely: Update to 2.6.
3919 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3921         * THANKS: update to 2.6
3923         * VERSION: 2.6.0 released.
3925 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3927         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
3928         rule, errorneously removed probably because of misleading comment.
3930 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3932         * python/lilylib.py (datadir): py2exe comments.
3934         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
3936         * configure.in (reloc_b): make fontconfig REQUIRED.
3938 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
3940         * po/fi.po: add latest translations.
3942 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3944         * ChangeLog: recode utf-8
3946         * Documentation/pictures/lilypond.xpm (Module): edited photo as
3947         logo.
3949         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
3951         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
3953         * python/convertrules.py (do_conversion): don't print program_name
3954         from within a module
3956         * configure.in (reloc_b): bump fontforge requirement to 20050624.
3958         * python/convertrules.py (conv): add 2.6.0 dummy rule.
3960 2005-06-23  Graham Percival  <gperlist@shaw.ca>
3962         * Documentation/user/lilypond-book.itely,
3963         Documentation/user/examples.itely: add \RequirePackage{graphics}.
3965         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
3966         fixes baseline-skip.  Thanks Vincent!
3968         * Documentation/user/advanced-notation.itely, global.itely:
3969         moved "Selecting font sizes" to global, since it deals with
3970         notation font size, not text fonts.
3972 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3974         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
3975         to fonts.
3977 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3979         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
3980         workaround since /dev/stdin doesn't work on Cygwin. Using a
3981         temporary file in the current directory since latex doesn't
3982         understand the path name to the default TMP in Cygwin (at least on
3983         win XP).
3984         
3985         * Documentation/user/global.itely (Creating titles): Correct
3986         misprint in example. Thanks to Rob Vlasaty.
3988 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3990         * VERSION (PATCH_LEVEL): release 2.5.32
3992         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
3993         variable in lily module
3995         * scm/framework-ps.scm (output-classic-framework): error message
3996         regarding the classic framework.
3998         * Documentation/user/henle-flat-gray.png (Module): new file.
4000         * Documentation/user/baer-flat-gray.png (Module): new file.
4002         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
4003         whiteout for markups.
4005         * buildscripts/substitute-encoding.py (note_glyph): include _ in
4006         regex too. This fixes change clef appearance in PDF. 
4008         * ttftool/include/*: remove.
4010         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
4012         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
4014         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
4016         * ttftool/*: remove ttftool subdirectory.
4018         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
4020         * lily/ttf.cc (print_header): new file. Convert to type42, using
4021         FreeType to parse the TTF. 
4023         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
4024         and post table may differ. Pass around post_nglyphs as well.
4026 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4028         * ly/music-functions-init.ly (musicMap): new music function
4029         musicMap. 
4030         
4031 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4033         * make/mutopia-rules.make: anti-alias-factor = 2
4035         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
4036         page switch.
4038         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
4039         anti-alias-factor for lilypond-book runs.
4041         * scm/ps-to-png.scm (scale-down-image): new function.
4042         (my-system): new function.
4043         (make-ps-images): blow up GS resolution by anti-alias-factor,
4044         scale down image by anti-alias-factor.  This improves appearance
4045         of bitmaps
4046         (make-ps-images): remove showpage. Fixes spurious empty png at
4047         end.
4049         * scm/framework-ps.scm (write-preamble): downcase filename before
4050         string-matching. Should fix .TTF files (as opposed to ttf files)  
4052         * Documentation/user/tutorial.itely (Running LilyPond for the
4053         first time): separate subsections for windows, macos and unix.  
4055         * Documentation/user/invoking.itely (Updating files with
4056         convert-ly): add MacOS X note.
4058 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4060         * Documentation/user/introduction.itely (Engraving): don't include
4061         file optical-spacing, add directly.
4063         * lily/paper-outputter.cc (file): open file in binary mode. This
4064         fixes OTF embedding on windows.
4066 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4068         * scm/framework-ps.scm (write-preamble): remove debugging output.
4070         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
4072         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
4073         outdir.
4074         (install-fc-cache): install font cache in installation directories.
4076 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4078         * scm/editor.scm (editor-command-template-alist): Use char iso
4079         column, except for Emacs.
4080         (get-editor-command): Substitute char too (Bertalan Fodor).
4082 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4084         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
4085         quoted ~s.  This should fix PNG output on Windows; single quotes
4086         are regular characters on Windows.
4088 2005-06-16  Graham Percival  <gperlist@shaw.ca>
4090         * Documentation/user/basic-notation.itely: include ChoirStaff
4091         in System start delimiters.
4093         * Documentation/user/putting.itely: new doc section on
4094         fixing overlapping notation.
4096 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4098         * Documentation/user/global.itely (Paper size): \paper is in
4099         \book, not \score.
4101         * make/mutopia-rules.make: -ddelete-intermediate-files
4103         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
4105 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4107         * ChangeLog: Recode utf-8.
4109         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
4110         datadir with .py modules.
4112 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
4114         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
4116 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4118         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
4119         
4120         * scm/framework-ps.scm (write-preamble): remove status check.
4122         * Documentation/user/invoking.itely (Updating files with
4123         convert-ly): remove -o option.
4125         * VERSION (PACKAGE_NAME): release 2.5.31
4127         * scm/framework-ps.scm (write-preamble): use ly:system.
4128         (write-preamble): verbosity.
4130         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
4132         * python/convertrules.py: new file. Store conversion rules
4133         separately.
4135 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4137         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
4139 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4141         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
4142         \musicDisplay 
4144         * Documentation/user/instrument-notation.itely (More stanzas): Add
4145         reference to StanzaNumber.
4147 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4149         * THANKS: separate section for website translators.
4151 2005-06-14  Graham Percival  <gperlist@shaw.ca>
4153         * Documentation/topdocs/INSTALL.texi: update vim info;
4154         thanks Simon Bailey!
4156         * Documentation/user/advanced-notation.itely: included
4157         color names.
4159         * Documentation/user/advanced-notation.itely,
4160         Documentation/usr/notation-appendices.itely: moved
4161         color names into an appendix.
4163 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4164         
4165         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
4167         * scm/lily.scm (lambda): initialize program options from here.
4169         * scm/framework-*.scm: add header info.
4171         * lily/main.cc (parse_argv): only set output format to pdf if no
4172         other format specified.
4174         * scm/backend-library.scm (postprocess-output): process
4175         'delete-intermediate-files after running convert-to-*. This fixes
4176         PNG generation when 'delete-intermediate-files is set.
4177         
4178 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4180         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
4181         links on website. 
4183 2005-06-13  Graham Percival  <gperlist@shaw.ca>
4185         * Documentation/topdocs/INSTALL.texi,
4186         Documentation/user/lilypond-book.itely: typos.
4188 2005-06-12  Pal Benko  <benkop@freestart.hu>
4190         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
4191         added between program name and switch; -b changed to -f not
4192         to generate pdf
4194 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4196         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
4197         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
4199         * input/sakura-sakura.ly: add \midi.
4201         * buildscripts/mutopia-index.py (find): use /usr/bin/find
4202         iso. python find. 
4204         * ttftool/test.c (main): cosmetics.
4206         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
4208         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
4209         create a ttf2ps binary.
4211         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
4213         * scm/backend-library.scm (postscript->png): set rename-page-1 to
4214         true.
4216 2005-06-11  Graham Percival <gperlist@shaw.ca>
4218         * Documentation/user/lilypond-book.itely: add warning about
4219         the font warnings in dvips.
4221 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4223         * THANKS: typo
4225         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
4227         * GNUmakefile.in: remove links for .map, .enc
4228         don't fail if out/ doesn't exist yet.
4230 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4232         * ttftool/util.c (surely_read): return nbytes
4234         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
4236         * VERSION (PACKAGE_NAME): release 2.5.30
4238         * flower/string-convert.cc (precision_string): >? fix.
4240         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
4241         (make-ps-images): add verbose -q too.
4243         * lily/default-actions.cc (Module): new file. default
4244         {book,score}-print functions.
4246         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
4247         pass results via parseStringResult, lookup via ly:parser-lookup.  
4249         * lily/lily-parser.cc (Lily_parser): only clone lexer in
4250         constructors.
4251         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
4252         (parse_string): idem.
4254         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
4256         * lily/main.cc (main_with_guile): copy be_verbose_global into
4257         ly_set_option()
4259 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4261         * scm/backend-library.scm (postscript->pdf):
4262         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
4263         verbose mode.  Search for several names of gs executable.
4265 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4267         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
4268         directly. This fixes a massive memory leak, provided you use CVS
4269         GUILE.
4271 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
4273         * ly/property-init.ly: Added tieDashed.
4275         * THANKS: Added some bughunters for 2.5.
4277 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4279         * lily/program-option.cc: add debug-gc option.
4281         * lily/include/lily-guile-macros.hh: don't protect exported module
4282         objects.
4284         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
4286         * scm/backend-library.scm (postscript->pdf): use
4287         delete-intermediate-files iso. running-from-gui? 
4289         * ttftool/util.c (surely_read): robustness. Allow read() to return
4290         less bytes than requested, as per posix standards.
4292         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
4293         program option.
4295         * ttftool/include/ttftool.h ("C"): rename verbosity to
4296         ttf_verbosity. Add to public interface.
4298         * scm/music-functions.scm (unfold-repeats): remove debugging display.
4300         * lily/program-option.cc: rename from scm-option.cc
4302         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
4303         (get_help_string): Print pretty help string.
4305         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
4306         to snippet preamble.
4308         * lily/scm-option.cc: remove command-line-settings option. Fold
4309         all command-line options plus default settings in a generic
4310         interface. 
4312         * flower/getopt-long.cc (table_string): indent 2nd lines of help
4313         texts too.
4315 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4317         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
4318         or EXT_ components non-empty.
4320 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4322         * scm/lily.scm (running-from-gui?): Export.
4324         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
4325         output in .ly source directory.
4327 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4329         * ttftool/util.c (surely_lseek): more verbosity.
4331         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
4332         compile.
4334         * lily/parser.yy (Repeated_music): remove >? 
4336         * scm/backend-library.scm (postscript->pdf): Support for
4337         -dgs-font-load=1
4339         * scm/framework-ps.scm (write-preamble): make font loading
4340         switchable to GS via --define-default gs-font-load=1
4342 2005-06-09  Graham Percival  <gperlist@shaw.ca>
4344         * Documentation/user/global.itely: added \layout docs.
4346 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4348         * lily/lily-parser-scheme.cc: add unistd.h
4350 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4352         * scm/editor.scm: add char argument.
4354         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
4356         * ttftool/util.c (syserror): use errno for better error reporting.
4358         * lily/source-file.cc (get_counts): new function. Calc column,
4359         line and char count in one go.
4361         * lily/binary-source-file.cc (quote_input): rename to quote_input
4363         * lily/input.cc (set): new function.
4365 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4367         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
4368         directory part of file name to search directory.
4370         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
4371         search path and chdir to DIR if --outname=DIR used.
4373         * lily/main.cc (prepend_env_path): Bugfix: Check directory
4374         existence before appending original path.
4376 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4378         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
4379         file" massage.
4381         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
4382         texinfo.tex is always used.
4383         
4384 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4386         * flower/include/axis.hh: rename from axes.hh
4388         * lily/include/text-interface.hh (Module): rename from text-item.hh
4390         * VERSION (PATCH_LEVEL): release 2.5.29
4392         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
4394         * scm/framework-ps.scm (font-file-as-ps-string): new function.
4395         (handle-macfont): new function. Call fondu for Native mac fonts.
4397         * scm/define-markup-commands.scm (fill-line): handle text-widths =
4398         '() case.
4400 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4402         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
4403         multi-page.  Fix .eps regular expression.
4405 2005-06-07  Graham Percival  <gperlist@shaw.ca>
4407         * Documentation/user/putting.itely: add info on modifying templates.
4409         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
4410         misc small changes.
4412 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4414         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
4416         * scripts/lilypond-ps2png.scm
4418         * VERSION (PACKAGE_NAME): release 2.5.28
4420 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4422         * lily/main.cc (prepend_env_path): Do not append /, that does not
4423         work.  Localedir lives in datadir, not in prefix.
4425         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
4426         hack for windows.
4428         * flower/include/file-cookie.hh: Compile fix.
4430 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4432         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
4434         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
4435         system primitives.
4436         (gulp-port): using read-string!/partial. We don't want to read an
4437         entire PS file  (GUILE 1.6 limits strings to 16M) 
4439         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
4440         properties. Add font-interface. 
4442         * scm/define-grob-properties.scm (all-user-grob-properties):
4443         remove old bracket properties.
4445         * scm/x11-color.scm: reformat. 
4447         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
4448         LedgerLineSpanner if new StaffSymbol is found. 
4450         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
4451         staff-symbol for finishing staff. 
4453         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
4455         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
4456         change black to currentColor everywhere. This fixes color support
4457         in SVG.
4459 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
4461         * input/regression/fret-diagrams.ly: new file to test fret diagram
4462         capability
4464         * scm/output-tex.scm: remove white-dot and white-text
4466         * scm/output-ps.scm: remove white-dot and white-text
4468         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
4469         using ly:stencil-in-color instead
4470         (draw-dots) : remove call to white-dot
4472 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4474         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
4475         support.
4477         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
4479         * flower/include/file-cookie.hh: new file. lily_cookie extension 
4481         * flower/file-cookie.cc: new file. lily_cookie extension.
4482         
4483 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4485         * scm/editor.scm (editor-command-template-alist): Add syn
4486         editor (Jaap [de Vos]).
4488 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4490         * scripts/lilypond-ps2png.scm:
4491         * scm/ps-to-png.scm: New file.
4493         * scm/backend-library.scm (postscript->png): Use it.
4495         * scripts/lilypond-ps-to-png.py: Remove file.
4497         * python/lilylib.py (get_bbox, make_ps_images): Remove.
4499 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4501         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
4503         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
4504         start on grace moment. Fixes autobeam-grace.ly.
4506         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
4507         process anything unless we're at the end of a pending beam. Fixes
4508         syncopated 8ths beamed across a beat.
4510 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4512         * scm/editor.scm (editor-command-template-alist): Start emacs if
4513         emacslient fails.
4515         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
4517         * flower/file-path.cc (is_file, is_dir): Export.
4519         * lily/main.cc (prepend_env_path, set_env_file): Use them.
4521 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4523         * lily/easy-notation.cc: Added include cctype to correct
4524         compilation error.
4526 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4528         * scm/backend-library.scm (postscript->pdf): set resolution to
4529         1200, so bitmap fonts aren't that ugly. 
4531         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
4533         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
4534         parent if we have a notehead. Fixes incorrect offsets when
4535         Paper_column is very wide in the X direction.
4537         * input/regression/font-family-override.ly (Module): new file.
4539         * scm/font.scm (make-pango-font-tree): new function.
4541         * lily/beam.cc (before_line_breaking): remove warning about less
4542         than 2 visible stems. We still get a warning when there is only
4543         one stem.
4545 2005-06-01  Werner Lemberg  <wl@gnu.org>
4547         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
4548         correctly.
4550 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4552         * lily/slur-scoring.cc (generate_avoid_offsets): new
4553         function. Generate avoid offsets once per slur.
4555         * lily/slur.cc (add_extra_encompass): add dependency to
4556         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
4558         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
4559         too. Fixes inf error with added bass notes.
4561         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
4562         argument anymore.
4564         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
4566         * input/tutorial/lbook-latex-test.tex: add line length test.
4568         * scripts/lilypond-book.py (set_default_options): new
4569         function. Call this before dissecting snippets, so linewidth
4570         settings reach the snippets.
4572 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4574         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
4576 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4578         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
4580 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4582         * stepmake/aclocal.m4: More autopackage friendliness.
4584 2005-05-31  Graham Percival  <gperlist@shaw.ca>
4586         * Documentation/index.html.in: remove link to LSR.
4588         * Documentation/user/global.itely: remove duplicate
4589         "dedication" \header{} section.
4591 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4593         * VERSION (PACKAGE_NAME): release 2.5.27.
4595         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
4596         too. Plugs memory leak.
4598         * make/lilypond.fedora.spec.in (Group): remove
4599         lilypond-pdfpc-helper.
4601         * scripts/GNUmakefile (SEXECUTABLES): remove
4602         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
4604         * scm/font.scm (make-century-schoolbook-tree): add Mono as
4605         'typewriter family.
4607         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
4608         memory leak.
4610         * lily/parser.yy (score_body): don't clone Score, that's done in
4611         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
4613         * lily/score-engraver.cc (derived_mark): new function.
4614         (initialize): unprotect Paper_score. This fixes a memory leak.
4616         * lily/score-performer.cc (derived_mark): new function.
4618         * lily/score-translator.cc (get_output): use SCM for get_output() call.
4620         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
4621         spurious warning.
4623         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
4624         serif.
4626 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4628         * configure.in (reloc_b): Add --enable-relocation.
4630 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4632         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
4634         * input/regression/alignment-order.ly: add Staff example.
4636 2005-05-31  John Mandereau   <john.mandereau@free.fr>
4638         * po/fr.po: update.
4640 2005-05-31  Graham Percival  <gperlist@shaw.ca>
4642         * Documentation/index.html.in: add link to LSR.
4644 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4646         * scm/define-stencil-commands.scm (Module): new file. Register all
4647         allowed stencil expression heads in a central place.
4649         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
4650         ly:make-stencil
4652         * lily/stencil-expression.cc (all_stencil_heads): registering
4653         stencil expressions.
4655         * lily/stencil-interpret.cc: new file. Stencil expression
4656         interpreting.
4658         * input/xiao-haizi-guai-guai.ly: move file back.
4660 2005-05-30  Graham Percival  <gperlist@shaw.ca>
4662         * Documentation/user/advanced.itely, converters.itely,
4663         instrument-notation.itely, lilypond-book.itely: misc small
4664         changes.
4666 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4668         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
4670         * make/lilypond.fedora.spec.in: Fix source url.
4672         * cygwin: Update from mingw patches.
4674         * scm/editor.scm (editor-command-template-alist): Use jedit
4675         -reuseview (Bertalan), add uedit (Patrick Huberts).
4677         * input/xiao-hai-zi-guai-guai.ly: Rename from
4678         xiao-haizi-guai-guai.ly.
4680         * input/*: Reindent, do not use TAB.
4682         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
4683         white background.
4685 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
4687         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
4688         numerical overflow error.
4690 2005-05-29 Laura Conrad <lconrad@laymusic.org>
4691         
4692         * abc2ly.py: fix to syntax error in multi-part output.
4694 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4696         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
4697         with disappearing span bars when alignAboveContext is active
4699         * lily/property-iterator.cc (check_grob): use is-grob?
4700         object-property. Fixes crash-key-sig-font-size.ly. 
4702 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4704         * lily/bar-line.cc (print): don't round barlines; this produces
4705         odd aliasing effects in Acroread.
4707         * lily/timing-engraver.cc (process_music): robustness fix.
4709         * lily/context-def.cc (filter_engravers): bugfix.
4711 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4713         * lily/lilypond.rc.in: Add ly-icon.
4715         * lily/GNUmakefile: 
4716         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
4717         rules.
4719 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4721         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
4723         * ps/music-drawing-routines.ps: 
4725         * scm/output-ps.scm: remove draw ez_ball.
4727         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4728         EasyNotation context definition.
4730         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
4731         Text_interface and color for making easy note heads.
4733         * lily/stencil.cc (with_color): new function.
4735         * ps/music-drawing-routines.ps: remove draw_zigzag_line
4737         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
4738         output routine. Zigzag now works in SVG too.
4740         * scm/output-tex.scm (filledbox): idem.
4742         * scm/output-svg.scm (filledbox): idem.
4744         * scm/output-ps.scm (lily-def): remove horizontal-line. 
4746         * lily/lookup.cc (horizontal_line): use draw-line. 
4748         * lily/system-start-delimiter.cc: remove old staff bracket code.
4750         * mf/feta-haak.mf: further tweaks.
4752         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
4754         * mf/feta-generic.mf: include feta-haak.
4756         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
4758         * scm/framework-ps.scm (write-preamble): only load fonts if their
4759         filename is a string. 
4761 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4763         * scm/output-svg.scm (circle): support circle.
4764         (bracket): stub for bracket.
4766         * scripts/lilypond-book.py (main): make sure --psfonts warning is
4767         correct.
4769 2005-05-26  Graham Percival  <gperlist@shaw.ca>
4771         * Documentation/user/lilypond.tely, advanced-notation.itely,
4772         basic-notation.itely, instrument-notation.itely, global.itely,
4773         introduction.itely, tutorial.itely: rearranging, editing,
4774         clean-up.
4776         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
4777         for compiling on FreeBSD.
4779 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4781         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
4782         otf files.
4784         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
4785         bugfixes.
4787         * VERSION: 2.5.26 released.
4789         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
4791 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
4793         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
4794         if printpagenumber is false.
4796 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4798         * lily/font-config.cc (init_fontconfig): comment out FontConfig
4799         cache warning.
4801         * lily/tie.cc (print): support dotted ties.
4802         
4803 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4805         * scm/define-grobs.scm (all-grob-descriptions): switch off
4806         debugging
4807         (all-grob-descriptions): Arpeggio has Y-extent.
4809         * scm/define-music-properties.scm (all-music-properties): document
4810         length-callback and start-callback as "read-only".
4812         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
4813         length-callback after creation. 
4815         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
4816         compressmusic -> compressMusic.
4818         * ly/music-functions-init.ly (oldaddlyrics): idem.
4820         * lily/parser.yy: NewLyricCombineMusic ->
4821         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
4823 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
4825         * ly/Welcome_to_LilyPond.ly: typo.
4827 2005-05-24  Graham Percival  <gperlist@shaw.ca>
4829         * Documentation/user/lilypond.tely: move changing-defaults to be
4830         before global issues.
4832         * Documentation/user/basic-notation.itely: move Transpose section
4833         here from advanced/Other.
4835         * Documentation/user/changing-defaults.itely,
4836         advanced-notation.itely: move Fonts to advanced, edit.
4838 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4840         * lily/parser.yy (bare_int): remove rule.  From now on, we require
4841         # before negative integers.
4843 2005-05-23  Graham Percival  <gperlist@shaw.ca>
4845         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
4847         * Documentation/user/lilypond.tely: change Unified index to
4848         LilyPond index.
4850         * Documentation/user/advanced-notation.itely,
4851         instrument-notation.itely: editing.
4853 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4855         * scm/lily.scm (lilypond-all): Bugfix: return failed.
4857         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
4859 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4861         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
4862         ly:port-move.  Needs to be stderr-specific on mingw.
4863         Run fixcc.
4865 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4867         * lily/general-scheme.cc (ly:port-move): Remove.
4869         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
4870         windows.
4872         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
4873         variables.  This eliminates the need for a gs.bat wrapper, which
4874         opens a console.
4876         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
4877         * scm/lily.scm (running-from-gui?): 
4878         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
4879         artifact of not compiling with -mwindows.
4881         * scm/editor.scm: Define PLATFORM.
4883 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4885         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
4886         can start to cut & paste lilypond-book fragments.  
4888         * scm/define-music-types.scm (music-descriptions): remove
4889         UntransposableMusic
4891 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4893         * scm/output-ps.scm (glyph-string): remove / before CIDs.
4895 2005-05-20  Graham Percival  <gperlist@shaw.ca>
4897         * Documentation/user/instrument-notation.itely: remove *Engraver.
4899         * Documentation/user/advanced-notation.itely: edit, rearrange.
4901 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4903         * scm/output-ps.scm (glyph-string): take cid? argument. Use
4904         findresource iso. findfont for CID CFF fonts.
4906         * VERSION (PACKAGE_NAME): release 2.5.25
4908         * ly/Welcome_to_LilyPond.ly: add  \version
4910 2005-05-20  Graham Percival  <gperlist@shaw.ca>
4912         * Documentation/user/programming-interface.itely: move
4913         \displayMusic into its own section.
4915         * Documentation/user/basic-notation.itely: finish editing.
4917 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4919         * flower/file-path.cc (find): don't throw away file_name.dir, but
4920         append to it. Fixes \include with directories.
4922         * flower/include/file-path.hh (class File_path): don't derive from
4923         Array<String>.
4925         * flower/include/file-name.hh (class File_name): remove to_str0()
4927         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
4928         Hara_kiri_engraver in separate file.
4930         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
4931         translation went wrong. Fixes vertically translated slurs.
4933 2005-05-19  Graham Percival  <gperlist@shaw.ca>
4935         * Documentation/user/basic-notaton.itely: editing.
4937 2005-05-18  Graham Percival  <gperlist@shaw.ca>
4939         * Documentation/user/macros.itexi, basic-notation.itely:
4940         add @commonprop (commonly used properties) macro.
4942 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4944         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
4946         * scripts/lilypond-book.py (invokes_lilypond): new function
4947         (main): only run fontextract if invokes_lilypond() is true.
4949         * lily/function-documentation.cc (ly_add_function_documentation):
4950         duh, use !=
4952         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
4954         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
4956         * scm/lily.scm (running-from-gui?): lowercase Darwin.
4958         * lily/function-documentation.cc (ly_add_function_documentation):
4959         use scm_hash_table_p() for checking.
4961 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4963         * Documentation/user/advanced-notation.itely (Text scripts):
4964         Change nonexisting @internalsref{Text markup} to @ref{Text
4965         markup}.  Change @internalsref{Text script} to
4966         @internalsref{TextScript}.
4968         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
4970 2005-05-17  Graham Percival  <gperlist@shaw.ca>
4972         * Documentation/user/tutorial.itely, basic-notation.itely,
4973         changing-defaults.itely: remove duplicate cindex entries
4974         that appear on the same page.
4976         * scm/define-grobs.scm: change default padding for TextSpanner.
4978         * Documentation/topdocs/AUTHORS.texi: update email address.
4980         * Documentation/user/global.itely: add info about \include.
4982 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4984         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
4985         when running-from-gui.
4987         * scm/editor.scm (get-editor): Add platform defaults.
4989         * scm/backend-library.scm (postscript->pdf): Typo.
4991 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4993         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
4995         * lily/font-config.cc (init_fontconfig): add warning about cache.
4997 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4999         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
5001 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5003         * lily/horizontal-bracket.cc (print): Take care of the direction
5004         property so brackets above the stave point downwards. 
5006         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
5007         for HorizontalBracket so it doesn't end up within the stave.
5009 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5011         * lily/GNUmakefile (default): Typo.
5013         * scm/lily.scm (PLATFORM): Export.
5015         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
5016         load-font-via-GS, ttftool or fopencookie is broken on windows.
5017         
5018         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
5019         -dSAFER, that is broken on windows.
5021 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5023         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
5024         for FlexLexer.h
5026         * scripts/lilypond-invoke-editor.scm: remove stray -
5028 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5030         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
5031         Fixes deprecation warning.
5033         * flower/include/string.icc (to_string): Only inline if
5034         -DSTRING_UTILS_INLINED.
5036         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
5037         name.  Remove windows comment.
5039         * scm/editor.scm (slashify): New function.
5040         (get-editor-command): Use it.
5041         (get-command-template): Do not alter editor command if
5042         environment value includes `%(file)s' magic.
5044         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
5045         (dissect-uri): Use it.
5046         (unquote-uri): Bugfix.
5048 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5050         * scm/framework-ps.scm (write-preamble): add TTF rule.
5052         * Documentation/topdocs/README.texi (Top): remove note about
5053         xdelta.
5055         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
5056         requirement.
5058         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
5059         function. Figure out where FlexLexer.h lives
5061         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
5062         
5063 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5065         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
5066         with Windows root in file name.
5068         * scm/backend-library.scm (ly:system): Only redirect output (using
5069         system and shell, ugh) if /dev/null is writable.
5071         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
5072         windows icon.
5074         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
5075         on Mingw.
5077         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
5078         click.
5080         * flower/file-path.cc (is_dir, is_file): New function.  Actually
5081         use result of stat when available.
5083         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
5084         absolute file name and root.
5086         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
5088         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
5090         * flower/file-name.cc (slashify): Bugfix, do substitute if no
5091         slashes in file name.
5093 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5095         * Documentation/user/preface.itely (Preface): Run
5096         texinfo-all-menus-update.
5098         * scm/editor.scm (get-editor-command): Bugfix: allow full
5099         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
5101         * Documentation/pictures/lilypond-48.xpm: New file.
5103         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
5105         * ly/Welcome_to_LilyPond.ly: New file.
5107         * lily/main.cc (main): Only identify if we have a terminal.
5109         * scm/backend-library.scm (postscript->png)
5110         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
5111         non-/bin/sh).
5113 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
5115         * Documentation/topdocs/AUTHORS.texi: polish, update.
5117 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5119         * Documentation/user/preface.itely (Notes for version 2.6): new
5120         notes for 2.6
5122         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
5123         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
5124         is not fully contained" warnings.
5126         * lily/slur-scoring.cc (get_bound_info): remove warning.
5128         * lily/staff-symbol-engraver.cc (process_music): start initial
5129         spanner in process_music(). This fixes overrides of StaffSymbol
5130         properties.
5132         * scm/framework-pdf.scm (Module): remove.
5134         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
5136         * lily/ambitus-engraver.cc: formatting cleanups.
5138         * mf/feta-solfa.mf (Module): remove.
5140         * ChangeLog: more details about contributions.
5142 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5144         * lily/align-interface.cc (align_elements_to_extents): warn if
5145         called too early. Fixes: disappearing-staff-lines.ly
5147         * VERSION (PACKAGE_NAME): release 2.5.24
5149 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5151         * stepmake/aclocal.m4: Typo.
5153         * flower/string.cc (substitute): Take two strings or two
5154         characters.  Update callers.
5156 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5158         * flower/file-name.cc (File_name): Slashify.
5160         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
5162         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
5164         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
5166         * configure.in (gui_b): Use it.
5168         * lily/lilypond.rc.in: New file.
5170         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
5172 2005-05-12  Graham Percival  <gperlist@shaw.ca>
5174         * Documentation/user/advanced-notation.itely: edit of Text
5175         section; clarify text scripts vs. text markup.
5177 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5179         * lily/multi-measure-rest-engraver.cc
5180         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
5181         separation items on start. Fixes mm rests in start of score.
5183         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
5184         don't access StaffSymbol if not there.
5185         Fixes: crash-staff-symbol-engraver.ly.
5187         * lily/instrument-name-engraver.cc (class
5188         Instrument_name_engraver): data member first_. Create
5189         InstrumentName on start. 
5191 2005-05-12  Graham Percival  <gperlist@shaw.ca>
5193         * Documentation/user/instrument-notation.itely: add guitar
5194         position.
5196         * Documentation/user/introduction.itely,
5197         Documentation/user/lilypond.tely,
5198         Documentation/user/tutorial.itely: begin pruning
5199         unused (duplicated) cindex entries and misc cleanup.
5201 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5203         * input/test/volta-chord-names.ly: Bring the explanation up to
5204         date.
5206 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
5208         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
5209         Specify `@documentencoding utf-8' for html, ignore warnings.
5211 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
5213         * THANKS: Added bughunters.
5215 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
5217         * lily/main.cc: update help string for `lilypond -H'.
5219         * po/fi.po: update.
5220         
5221 2005-05-10  Graham Percival  <gperlist@shaw.ca>
5223         * Documentation/user/advanced-notation.itely: minor fixes.
5225 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5227         * scm/editor.scm: New module.
5229         * scm/lily.scm (gui-main): Use it.
5231         * scm/framework-gnome.scm (spawn-editor): Use it.
5233         * scripts/lilypond-invoke-editor.scm: Use it in new script.
5235 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5237         * scm/framework-ps.scm (load-font-via-GS):  new function.
5239         * lily/pango-font.cc (pango_item_string_stencil): add support for
5240         CID keyed font.
5242         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
5244 2005-05-10  Graham Percival  <gperlist@shaw.ca>
5246         * Documentation/user/basic-notation.itely: add @ref.
5248         * Documentation/user/advanced-notation.itely: add example
5249         of 5/8 beaming.
5251 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5253         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
5255         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
5256         going through ps2pdf wrappers.
5258 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
5260         * Documentation/user/instrument-notation.itely: petrucci note
5261         heads: updated docu
5263         * input/regression/note-head-style.ly: updated regression test;
5264         indentation fixes
5266         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
5267         heads as default
5269         * mf/parmesan-heads.mf: minor editing; use musicological names
5270         (rather than optical description) as note head names
5272         * scm/output-lib.scm: complete petrucci heads
5274 2005-05-09  Pal Benko  <benkop@freestart.hu>
5276         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
5277         heads, but bigger)
5279 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5281         * lily/main.cc (main_with_guile): Remove no files check.
5283         * lily/main.cc (ly:usage): Export to Scheme.
5285         * scm/lily.scm (no-files-handler): New function.
5287         * scm/lily.scm (lilypond-main): Use it.
5289         * configure.in (gui_b): Add mbrtowc checking.
5290         Resurrect [utf8/]wchar.h checking.
5292 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5294         * Documentation/user/advanced-notation.itely (Metronome marks):
5295         Add link to the program reference for MetronomeMark
5297         * Documentation/user/lilypond-book.itely (An example of a
5298         musicological document): Correct the example using psfonts 
5300 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
5302         * po/fi.po: update after a lesson how to update entries against
5303         source.
5304         
5305         * po/TODO: document the lesson.
5307 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5309         * configure.in (gui_b): remove wcrtomb checking.
5311         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
5312         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
5314 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5316         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
5317         keep Scheme expressions and strings unmodified when doing the
5318         conversion to postfix notation for slurs and beams. Should
5319         hopefully solve most related conversion problems. 
5321         * Documentation/user/lilypond-book.itely : Clarify and correct how
5322         to call dvips with -h psfonts.
5324 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5326         * Documentation/user/instrument-notation.itely (Entering lyrics):
5327         Typo.  Fixes build.
5329 2005-05-09  Graham Percival  <gperlist@shaw.ca>
5331         * Documentation/user/lilypond-book.itely: document PSFONTS file.
5333         * Documentation/user/lilypond.tely, lilypond-book.itely,
5334         tutorial.itely: change references to 2.5.x to 2.6.x.
5336         * Documentation/user/instrument-notation.itely: clarified \addlyrics
5337         vs \lyricmode.
5339         * Documentation/user/invoking.itely: remove old info about
5340         lilypond-profile.
5342         * Documentation/topdocs/INSTALL.texi: remove old info about
5343         lilypond-profile, add warning about needing international fonts
5344         to build docs.
5346 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5348         * lily/include/grob-info.hh (class Grob_info): make data member
5349         private. Changes throughout.
5351         * input/regression/alignment-order.ly: new file. 
5353         * lily/vertical-align-engraver.cc (acknowledge_grob): read
5354         alignAboveContext and alignBelowContext
5356 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5358         * lily/pfb.cc (LY_DEFINE): add cast.
5360         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
5361         matches .otf
5362         (write-preamble): warn about unknown fonts.
5364         * lily/pfb.cc (Module): new function ly:otf->cff
5366         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
5367         (get_otf_table): new function.
5369 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5371         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
5372         iso. ps2png.
5374 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
5376         * po/fi.po: apply second round of update.
5378 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5380         * scm/x11-color.scm (make-x11-color-handler): don't use
5381         #\sp. Apparently doesn't work on all platforms. 
5383 2005-05-06  Graham Percival  <gperlist@shaw.ca>
5385         * Documentation/user/advanced-notation.itely, putting.itely,
5386         tutorial.itely, global.itely, introduction.itely: really minor fixes.
5388 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5390         * VERSION (PACKAGE_NAME): release 2.5.23
5392 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5394         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
5395         convert to utf-8.
5397         * THANKS: Add translators for this release, convert to utf-8.
5399         * mf/GNUmakefile (MFTRACE_FLAGS):
5400         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
5401         outdir as option (WAS: hardcoded).
5403 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5405         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
5406         finished_span_
5408         * THANKS: add Hans Forbrich.
5410         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5412         * Documentation/user/basic-notation.itely (Staff symbol): document
5413         start/stop staff. Reference to ossia.ly
5415         * input/test/ossia.ly: new example using stop and startStaff.
5417         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
5418         in other words, don't create "|" barline at start of the score.
5419         (start_translation_timestep): don't set whichBar for start of score.
5421         * input/regression/staff-halfway.ly: use new functionality.
5423         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
5424         start and stop staff based on events.
5426         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
5428         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
5430 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5432         * Documentation/user/programming-interface.itely (How markups work
5433         internally ): remove \encoding reference.
5435 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5437         * scripts/convert-ly.py: Attempt to do a smarter update of 
5438         text markups from versions < 1.9.0 with arbitrary nesting.
5440 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
5442         * po/fi.po: convert to utf-8, and update.
5444 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5446         * make/lilypond.suse.spec.in: update from suse 2.4 package.
5448         * lily/*.cc: more <? >? to min/max changes
5450         * lily/include/interpretation-context-handle.hh: rename
5451         Interpretation_context_handle to Context_handle.
5453 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
5455         * input/regression/GNUmakefile (local_delete): use `find` together 
5456         with `xargs` to avoid too long argument-lists in cmd line.
5458 2005-05-04  Graham Percival  <gperlist@shaw.ca>
5460         * Documentation/user/introduction.itely: updates "About this manual".
5462         * Documentation/user/advanced-notation.itely,
5463         invoking.itely: minor fixes.
5465 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5467         * COPYING: add font exception. Update FSF address. 
5469         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
5470         should be taken without child context.
5472         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
5474         * scm/define-markup-commands.scm (triangle): new command, as
5475         robust replacement for unicode Delta/Triangle.
5477 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5479         * ps/music-drawing-routines.ps: add fillp argument.
5481         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
5483         * lily/font-config.cc (init_fontconfig): don't add cff/
5485         * VERSION (PACKAGE_NAME): release 2.5.22
5487         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
5489         * lily/grace-engraver.cc (consider_change_grace_settings): use
5490         is_alias(). Fixes problem with CueVoice grace notes. 
5492         * lily/simultaneous-music-iterator.cc (construct_children): call
5493         Music_iterator::quit() for iterators that start out invalid. This
5494         fixes indefinitely continuing contexts.
5496         * buildscripts/substitute-encoding.py: new file
5498         * Documentation/user/basic-notation.itely (Basic polyphony): fix
5499         missing @end 
5501         * scripts/lilypond-book.py (write_if_updated): print file name.
5503         * Documentation/user/basic-notation.itely (Explicitly
5504         instantiating voices): idem.
5506         * Documentation/user/advanced-notation.itely (Text spanners):
5507         remove stray { } 
5509         * lily/context.cc (default_child_context_name): the default child
5510         is now first in accepts_list_.
5512         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
5513         \defaultchild to all relevant contexts.  This fixes:
5514         drums-pitch.ly.
5516         (Probably also fixes similar problems with ancient
5517         transcriptions getting CueVoices instead of the desired voices.)
5519         * lily/context-def.cc (get_default_child): new function.
5520         (get_accepted): place default child in front of list.
5522         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
5524         * lily/include/context-def.hh (struct Context_def): add
5525         default_accept_
5527 2005-05-03  Graham Percival  <gperlist@shaw.ca>
5529         * scm/define-grobs.scm: remove "remove-first" line, since
5530         the absent property is set to #f anyway.
5532         * Documentation/user/basic-notation.itely,
5533         advanced-notation.itely, instrument-notation.itely: minor
5534         fixes.
5536         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
5538         * Documentation/user/advanced-notation.itely,
5539         changing-defaults.itely: consolidate Text stuff in
5540         advanced notation.
5542         * Documentation/user/global.itely: better docs for \header.
5544         * Documentation/user/putting.itely: new chapter; placeholder
5545         for future expansion.
5547         * Documentation/user/examples.itely: moved "suggestions for
5548         writing LP files" section into putting.itely.
5550         * Documentation/user/lilypond.itely: added new chapter,
5551         fixed the short table of contents.
5553 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5555         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
5556         infinity for unfeasible beams.
5558         * make/lilypond.fedora.spec.in (Group): idem.
5560         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
5562         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
5564         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
5565         fonts directly.
5567         * buildscripts/gen-emmentaler-scripts.py (i): idem.
5569         * mf/GNUmakefile: remove all CFF rules.
5571         * scm/framework-ps.scm (ps-embed-cff): reinstate.
5573         * lily/open-type-font-scheme.cc (LY_DEFINE):
5574         new function ly:otf-font-table-data.
5575         (LY_DEFINE): new function otf-font?
5577 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5579         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
5580         ($(outdir)/Fontmap.lily): idem.
5582         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
5583         for PFAEmmentaler-XXX.pfa. 
5585         * Documentation/user/music-glossary.tely (accidental): NL
5586         translation of accidental.
5588 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5590         * flower/include/international.hh: Bugfix: include "string.hh".
5592         * lily/include/mingw-compatibility.hh: New file.
5594         * flower/include/libc-extension.hh (memrev): Rename from strrev.
5596         * configure.in: Search for mingw wcrtomb library.
5598 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5600         * scripts/convert-ly.py: Bug fix
5602         * Documentation/user/changing-defaults.itely (Common tweaks):
5603         Added example where the context has to be specified explicitly
5604         (MetronomeMark). 
5606 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5608         * scripts/lilypond-book.py (ly_options): set timing to #f for
5609         notime option.
5611         * scripts/convert-ly.py (conv): typo.
5613         * flower/*.cc: remove <? and >?
5614         
5615         * lily/*.cc: remove <? and >?
5617         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
5618         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
5619         editor.
5621 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5623         * lily/part-combine-engraver.cc: add space to variable list.
5625 2005-04-30  Graham Percival  <gperlist@shaw.ca>
5627         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
5628         remove-first to false (matches docs)
5630         * Documentation/user/advanced-notation.itely: corrected docs
5631         concerning remove-first.
5633 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5635         * lily/part-combine-engraver.cc: make sure that the relevant
5636         properties are included in the documentation.
5638 2005-04-28  Graham Percival  <gperlist@shaw.ca>
5640         * Documentation/user/lilypond-book.itely: Bernard's docs
5641         for \betweenLilyPondSystem.
5643 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5645         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
5646         remarks.
5648 2005-04-28  Pal Benko  <benkop@freestart.hu>
5650         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
5651         only on vertical lines of flexa shape, and use a constant
5652         thickness value for horizontal lines (patch slightly modified by
5653         Jürgen Reuter)
5655         * lily/include/mensural-ligature.hh: make 2 comments clearer
5657 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
5659         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
5660         to need_extra_horizontal_space; bugfix: use class scope to avoid
5661         global namespace pollution
5663         * Documentation/user/instrument-notation.itely (ligatures): added
5664         comment on possible future syntax change and how to work around
5666         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
5667         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
5668         intervals (fixes agnus dei example)
5670         * Documentation/user/instrument-notation.itely (white mensural
5671         ligatures): selected a more illustrative example
5673 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
5675         * Documentation/index.html.in: specify utf-8 charset in meta content.
5677 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5679         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
5680         empty 2nd page for single page.
5682         * scm/lily.scm: remove p&c definitions.
5684         * po/zh_TW.po (Module): new translation.
5686         * lily/lily-guile.cc (ly_chain_assoc): remove.
5688         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
5689         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
5691 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5693         * lily/beaming-info.cc: remove infinity_i
5695         * scripts/abc2ly.py (out_filename): fix thinko with \version.
5697 2005-04-26  Graham Percival  <gperlist@shaw.ca>
5699         * Documentation/user/basic-notation.itely,
5700         instrument-notation.itely, advanced-notation.itely,
5701         changing-defaults.itely: minor fixes.  Added docs
5702         for colors to advanced-notation.itely.
5704         * Documentation/user/advanced-notation.itely: fixed compile
5705         problem and added Bernard's x11-color doc patch.
5707 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5709         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
5710         alright this time round.
5712 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5714         * Documentation/topdocs/INSTALL.texi (Top): idem.
5716         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
5718         * VERSION (MAJOR_VERSION): release 2.5.21
5720         * scm/output-ps.scm (grob-cause): bugfix.
5722 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5724         * cygwin/*: Update.
5726         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
5727         stuff.
5729         * scm/output-ps.scm (grob-cause): Bugfix.
5731         * scm/lily.scm (ly:load): Remove x11-color.
5733         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
5734         quote executable, fixes getting version from program --with
5735         --options.
5736         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
5737         $ac_exeect.
5739         * Documentation/user/GNUmakefile: Only build music-glossary with
5740         rendered lilypond snippets during web.
5742 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5744         * po/de.po: update.
5746         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
5748 2005-04-22  Laura Conrad <lconrad@laymusic.org>
5750         * scripts/abc2ly:
5751         second title line append with punctuation dash character;
5752         encode abc2ly python strings in utf-8
5753        
5754 2005-04-21  Laura Conrad <lconrad@laymusic.org>
5756         * scripts/abc2ly fix chords (again)
5758 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
5760         * scm/x11-color.scm: new file
5761         All x11 color names can be accessed with:
5762         #(x11-color 'ColorName),
5763         #(x11-color "ColorName") or:
5764         #(x11-color "color name")
5765         If the x11 color name is not recognised then it defaults
5766         to black
5768         * scm/lily.scm: amended to call scm/x11-color.scm
5770 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5772         * Documentation/user/invoking.itely (Reporting bugs): comment out
5773         reference to online PNG bug repository.
5775 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5777         * lily/translator-scheme.cc (ly:translator-property): Remove.
5778         Update callers.
5780         * lily/context-scheme.cc (ly:context-now): Move from translator.
5781         Update callers.
5783 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5785         * input/regression/grid-lines.ly (skips): refine example.
5787         * scm/define-context-properties.scm
5788         (all-user-translation-properties): doc autoBeamCheck
5790         * input/regression/grid-lines.ly (Module): new file.
5792         * lily/grid-point-engraver.cc (Module): new file.
5794         * lily/grid-line.cc (Module): new file.
5796         * lily/grid-line-span-engraver.cc (Module): new file.
5798         * lily/grid-line-interface.cc (Module): new file.
5800 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5802         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
5803         missing parameter, actualy cdr through list.  Actually return a
5804         list with ENTRY removed (was '()).
5806         * scripts/convert-ly.py: Update.  Print warning if file cannot be
5807         opened.
5808         (do_conversion): Fix printing of continuation comma.
5810         * Documentation/user/advanced-notation.itely (Beam formatting):
5811         Remove refbugs about compound time and mixed duration.
5813         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
5814         modulo moments explicitely.
5816         * lily/moment.cc (operator %): New function.
5818         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
5820         * lily/translator-scheme.cc (ly:translator-now,
5821         ly:translator-property): New function.
5823         * scm/auto-beam.scm (default-auto-beam-check): New function.
5825         * lily/auto-beam-engraver.cc (test_moment): Use it.
5827         * flower/rational.cc (operator %): Bugfix.
5829 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
5831         * scripts/abc2ly: Bugfix
5833 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5835         * python/fontextract.py (write_extracted_fonts): bugfix, too many
5836         %'s on EndFont comment.
5838         * lily/ledger-line-spanner.cc: some more words of explanation.
5840 2005-04-20  John Williams <williams@tni.com>  
5841         
5842         * scripts/lilypond-book.py: htmlquote bugfix.
5843         Allow snippets to be given distinct filenames.
5844         Allow the default alt text to be overridden.
5846 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
5848         * ly/performer-init.ly: Bugfix
5850         * THANKS: Added bughunters.
5852 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5854         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
5856         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
5857         position (was: use modulo measure length).
5859         * configure.in (no gui_b): Remove optional gtk+ requirement.
5861 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5863         * Documentation/user/basic-notation.itely (Pitches): add
5864         LedgerLineSpanner.
5866         * lily/dynamic-engraver.cc (process_music): set right bound to
5867         script if present. Else, do not set.
5868         (acknowledge_grob): only set right bound of finished spanner to
5869         note column if no other bound is set.
5871         * python/lilylib.py (make_ps_images): switch back to png16m.
5872         
5873 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5875         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
5876         writing up to date file.  Add dvips usage suggestion.
5878         * scripts/convert-ly.py: Fix error message.
5879         Print usage if no files on command line.
5880         (usage): Add example usage.
5882         * input/test/compound-time.ly: New file.
5884         * input/test/circle.ly: New file.
5886         * Documentation/topdocs/NEWS.tely: Use them.
5888         * input/test/boxed-stencil.ly: Remove \score.
5890         * buildscripts/mf-to-table.py (base): Add .log dependency.
5892         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
5893         pfa's.  Add .log dependency
5895         * scm/define-markup-commands.scm (lower): New command.
5897         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
5898         make it default.
5900 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5902         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
5903         also to finished cresc as right bound. This fixes:
5904         skip-string-decresc.ly
5906         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
5907         relative_coordinate if extent is empty.
5909         * lily/stem.cc (width_callback): determine correct extent if flag
5910         is not there. This fixes slur-no-flag.ly
5912         * lily/grace-engraver.cc (consider_change_grace_settings): new
5913         function.
5914         (initialize): also consider_change_grace_settings() on
5915         initialization. Fixes large grace notes at start of score.
5917         * lily/break-align-interface.cc (do_alignment): don't translate if
5918         total_extent is empty.
5920         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
5922 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5924         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
5925         with slash.
5927 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5929         * stepmake/aclocal.m4: Remove tfm_path.
5931 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5933         * scm/music-functions.scm (markup-expression->make-markup): fix
5934         bug with cons arguments of markup commands.
5935         (music->make-music): fix music expression property list building
5937 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5939         * aclocal.m4: Massage package names.
5941         * SCons updates.
5943 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5945         * VERSION (PACKAGE_NAME): release 2.5.20
5947         * lily/stem.cc (calc_stem_info): add minimum Y extent of
5948         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
5950         * lily/percent-repeat-engraver.cc (try_music): add measure before
5951         next_moment to future processing moment. Fixes:
5952         percent-repeat-mm-rest.ly
5953         (process_music): don't add moment for 2nd time.
5955         * input/regression/repeat-percent.ly: add mmrests as extra test.
5957         * lily/axis-group-engraver.cc (acknowledge_grob): read
5958         keepAliveInterfaces to decide what to kill.
5960         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
5961         percent-repeat-interface to keepAliveInterfaces. This fixes
5962         percent-repeat-harakiri.
5964 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5966         * SCons updates.
5968 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5970         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
5972         * aclocal.m4: remove --enable-tfm-path configure option
5974         * input/test/ancient-font.ly (lowerStaff): clef name errors.
5976         * scm/backend-library.scm (postscript->png): newline after
5977         finishing command.
5979         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
5980         (LY_DEFINE): ly:paper-score-paper-systems: new function 
5982         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
5984         * lily/score.cc (default_rendering): use Music_output too.
5986         * input/test/chord-names-languages.ly (Module): rename file.
5988         * lily/text-spanner.cc: add bound-padding.
5990         * lily/paper-book.cc (systems): accept Paper_score
5991         iso. Paper_system vector. 
5993         * input/regression/line-arrows.ly: new file.
5995         * lily/paper-score.cc (process): run get_paper_systems() only once.
5997         * lily/line-spanner.cc (line_stencil): add arrows.
5999 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
6001         * lily/line-interface.cc (make_arrow): new function. 
6002         (arrows): idem.
6004 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
6006         * input/test/chord-names-german.ly: update for italian/french
6007         chords.
6008         
6009         * Documentation/user/instrument-notation.itely (Printing chord
6010         names): update.
6012 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6014         * lily/include/paper-score.hh (class Paper_score): remove unused
6015         prototypes.
6017         * lily/book.cc (process): add -COUNT to midi output.
6019         * lily/score.cc (book_rendering): remove outname argument
6020         (book_rendering): return list of Music_outputs. 
6022         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
6024         * lily/book.cc (process): loop over Music_outputs returned from
6025         Score::book_rendering().
6027         * lily/*.cc (width_callback): remove spurious "unused" warnings
6028         for assert (axis==[XY]_AXIS); 
6030         * lily/include/music-output.hh (class Music_output): smobify class.
6032         * lily/include/paper-score.hh (class Paper_score): make members
6033         private.
6035         * lily/performance.cc (process): return #f iso. #<undefined>. This
6036         prevents #<undefined> leaking into GUILE-userspace.
6038 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6040         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
6042 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
6044         * scm/chord-name.scm : support for italian and french
6045         chords names.
6047         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
6048         a space defined by chordPrefixSpacer when the root name is
6049         direclty followed by a prefix.
6051         * ly/engraver-init.ly : chordPrefixSpacer       
6052         * scm/define-context-properties.scm : chordPrefixSpacer
6053         * ly/property-init.ly : italianChords, frenchChords 
6055 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6057         * mf/feta-din.mf: Remove.
6059         * mf/GNUmakefile (fontdir): Bugfix.
6061         * mf/SConstruct: Some updates.
6063         * SConstruct: Require pkg-config.
6064         (test_program): Bugfix for double digit version compares, use
6065         integer (not string-) compare.
6066         Optionally require gs 8.14.
6068         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
6070         * lily/*: s/ifdef HAVE_*/if have/.
6072         * SConstruct (test_lib): New function.  Update pkg-config and some
6073         other requirements.
6075         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
6076         freetype, pangof2t.
6078 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6080         * po/lilypond.pot, ...: Update using bison-CVS.
6082         * python/lilylib.py (make_ps_images): Fixo.
6084 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6086         * python/lilylib.py (make_ps_images): typo.
6088         * configure.in (gui_b): make bison optional.
6090         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
6092 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
6094         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
6095         with one parameter can be defined in a LaTeX file when processed
6096         by lilypond-book this will be evaluated between the systems of
6097         a multi-system score. The parameter is the number of systems processed.
6099 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6101         * python/lilylib.py (make_ps_images): Escape newline.
6103         * Documentation/user/music-glossary.tely: Run
6104         texinfo-all-menus-update.
6106 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6108         * scm/lily-library.scm (old-relative-not-used-message)
6109         (version-not-seen-message): Add input-file-name-location to message.
6111         * lily/parser.yy (lilypond): Add token aliases.
6113         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
6114         not confuse with alteration.
6115         (alteration): Add.
6117 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6119         * python/lilylib.py (make_ps_images): use -dEPSCrop
6121         * VERSION (PACKAGE_NAME): release 2.5.19 
6123         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
6124         only put xrefs in info documentation.
6126         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
6127         .pdf rule to tex-rules.make.
6129         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
6130         from -systems.* output.
6132         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
6133         directly, remove -$(PAGESIZE) target.
6135         * input/test/embedded-postscript.ly: update.
6137 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6139         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
6141         * Documentation/user/changing-defaults.itely (Font selection):
6142         document font-name.
6144         * input/regression/font-name.ly: show Pango fonts for
6145         font-name. Update example. 
6147         * lily/pango-select.cc (properties_to_pango_description): don't
6148         convert symbol font-size to number, but use to lookup.
6150         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
6152         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
6153         (NAME . FILE-NAME) tuples for font descriptions. 
6154         (write-preamble): display BeginFont DSC comments.
6156         * python/fontextract.py (write_extracted_fonts): new file. Extract
6157         font resources from a PS file.
6159         * scripts/lilypond-book.py (option_definitions): --psfonts option.
6160         (Compile_error.process_include): do_file returns chunks.
6162         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
6164         * make/lysdoc-targets.make: .texi is .PRECIOUS
6166         * scripts/lilypond-book.py (write_if_updated): new function.
6168 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6170         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
6172 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6174         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
6176         * input/regression/markup-syntax.ly: remove \score.
6178         * scm/define-markup-commands.scm (draw-circle): add fill argument
6180         * scm/stencil.scm (make-circle-stencil): add fill argument
6182         * ps/music-drawing-routines.ps: add fill argument.
6184         * ly/performer-init.ly: add CueVoice to MIDI too.
6186         * ps/music-drawing-routines.ps: new routine BeginEPSF /
6187         EndEPSF.
6189         * input/regression/markup-eps.ly: new file.
6191         * scm/framework-ps.scm (write-preamble): change order: vars should
6192         be inited before procedures.
6194         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
6195         for EPS files.
6197         * scm/define-markup-commands.scm (epsfile): add epsfile command.
6199 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6201         * configure.in (gui_b): add check for ghostscript 8.15
6203 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6205         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
6206         start of line. Fixes cresc-after-newline.ly
6208         * lily/source-file.cc (file_line_column_string): use get_column().
6210 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6212         * lily/source-file.cc (get_column): utf-8 support for column numbers.
6214 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6216         * lily/*: use message () iso progress_indication () for messages.
6217         Revise/uniformise user messages.
6219         * flower/warn.cc (progress_indication): New function.
6220         (message): Use it.  Fixes newline problems.
6222         * config.make.in (webdir): Sort out install dirs.
6224         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
6226         * python/lilylib.py (command_name): Bugfix.
6227         (make_ps_images):
6229 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
6231         * lily/main.cc: --help says what types of backends are availabe
6233 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6235         Fix ./VERSION dependency, and without need to reconfigure.
6237         * lily/main.cc (setup_paths): Update.
6239         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
6241         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
6243         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
6244         Add \line for some simplistic cases.
6246         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
6248 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6250         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
6251         to compile LY files (useful for adding eg. "-I" args)
6252         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
6253         2Gnome command for gnome backend.
6254         (LilyPond-command-formatgnome): call the 2Gnome command. key
6255         binding: C-c C-g
6257 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6259         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
6260         depend on all PNG images.
6262 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6264         * GNUmakefile.in: Bugfix: also link .map files.
6266 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6268         * scm/music-functions.scm (music->make-music): generate 
6269         a (make-music ...) sexpr from a music expression.
6270         (display-scheme-music): use guile pretty printer to display the
6271         make-music sexpr.
6273 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6275         * ly/engraver-init.ly: reindent.
6276         Add CueVoice.
6278         * scm/music-functions.scm (music-pretty-string): handle moments
6279         too.
6280         (music-pretty-string): only print non-empty lists.
6281         (cue-substitute): create CueVoice context, which has smaller type.
6283         * lily/moment-scheme.cc (LY_DEFINE): new methods
6284         ly:moment-grace-{numerator,denominator}
6286         * lily/context-handle.cc: remove quit() method. 
6288         * lily/font-config.cc (init_fontconfig): be verbose about font path.
6289         (init_fontconfig): success is 0, not !0
6291 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6293         * mf/feta-nummer-code.mf (code): add plus glyph.
6295         * lily/tie.cc (print): idem.
6297         * lily/slur.cc (print): don't use thickness property for
6298         slur shape-thickness.
6300         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
6301         while adding stencils.
6303         * scm/define-markup-commands.scm (with-color): with-color markup
6304         command.
6305         (whiteout): new markup command 
6306         (filled-box): new markup command
6308 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6310         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
6311         test for PDF docs.
6313         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
6314         PFAAybabtu-Regular.  Fixes feta font in PDFs.
6315         
6316         Notes for tetex-3.0 make web:
6317            psclean.map: s/uhv8a/uhvr8a/
6318            config.ps add:
6319                 p +psfonts_t1.map
6320                 p +psclean.map
6321                 p +typeface.map
6323 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6325         * scm/music-functions.scm (music-pretty-string): fix bug with
6326         string argument.
6328 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
6330         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
6332 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6334         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
6335         only process options if they're there.
6336         (write_file_map): add version-seen? to snippet-map.ly
6338 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
6340         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
6341         formatting cleanups.
6343         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
6344         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
6346 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6348         * scm/framework-ps.scm (ps-font-command): don't hash, just use
6349         name directly.
6351         * lily/main.cc (setup_paths): either add mf/out to search path or 
6352         fonts/{otf,type1,etc}
6353         
6354         * lily/font-config.cc (init_fontconfig): either add mf/out to
6355         FontConfig or fonts/{otf,type1,etc}
6357         * GNUmakefile.in: don't put mf/ link in share/ dir.
6359         * lily/staff-spacing.cc: move same-direction-correction to
6360         note-spacing-interface
6362         * scm/lily.scm (lilypond-main): use variable argument count for
6363         exception handler.
6365         * lily/font-config.cc (init_fontconfig): add operator pacification
6366         message.
6368         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
6370         * buildscripts/gen-emmentaler-scripts.py (i): generate
6371         PFAEmmentaler as well.
6373         * scm/framework-ps.scm (munge-lily-font-name): new function
6374         (write-preamble): hack: insert PFA equivalent of CFF into
6375         .PS. This makes LilyPond output printable on normal PS printers
6376         again.
6378         * buildscripts/gen-emmentaler-scripts.py (i): generate
6379         PFAEmmentaler.pfa aswell.
6381 2005-04-06  John Williams <williams@tni.com>  
6382         
6383         * scripts/lilypond-book.py: refactor the compose_ly procedure.
6384         
6385 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6387         * scm/page-layout.scm (default-page-make-stencil): always combine
6388         the header stencil, even if empty. This prevents the body text to
6389         reach up to the margins.
6391         * po/rw.po (Module): new file, for Kinyarwanda.
6393         * input/test/spacing-optical.ly (Module): new file.
6395         * lily/staff-spacing.cc: add same-direction-correction
6397 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6399         * Documentation/user/introduction.itely (Engraving): Comment-out
6400         non-existent file.
6402 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6404         * scm/define-grob-properties.scm (all-user-grob-properties): add
6405         same-direction-correction
6407         * VERSION: release 2.5.18
6409 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
6411         * lily/grob.cc (mark_smob): Check pscore->layout_ before
6412         dereferencing.  Fixes make web.
6414         * lily/midi-stream.cc: Handle unwritable midi file.  Include
6415         errno.h.
6417         * Documentation/user/: Fix links.
6419 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6421         * lily/text-interface.cc (Module): rename from text-item.cc
6423         * input/regression/apply-output.ly (texidoc): function naming fix.
6425         * lily/time-signature-performer.cc (derived_mark): new function.
6427         * lily/lily-parser-scheme.cc:  print mapped file name for progress
6429         * scripts/lilypond-book.py (find_linestarts): new function.
6430         (find_toplevel_snippets): keep track of line numbers.
6432         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
6433         all key changes.
6435         * ly/declarations-init.ly (partCombineListener): use
6436         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
6438         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
6440 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6442         * lily/text-item.cc: Fix link.
6444         * Documentation/user/changing-defaults.itely (Changing defaults):
6445         Fix programs reference links.
6447         * Documentation/user/music-glossary.tely: Convert to utf-8.
6449 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6451         * make/lilypond-vars.make: remove TEXMF from variables.
6452         remove DEB_BUILD pk font variables.
6453         remove GUILE_LOAD_PATH
6454         remove TeX memory vars.
6456 2005-04-04  Werner Lemberg  <wl@gnu.org>
6458         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
6460 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6462         * ps/lilyponddefs.ps: remove reencode-font
6464         * lily/simple-spacer.cc (add_columns): also compare
6465         directly. Column rank doesn't distinguish between broken and
6466         unbroken columns. This fixes large spaces before time sig changes.
6468         * Documentation/user/point-and-click.itely: document ly:set-option.
6470         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
6471         point_and_click_global is set.
6473         * lily/scm-option.cc (LY_DEFINE): add point-and-click
6474         ly:set-option argument.
6476 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6478         * GNUmakefile.in: Include symlinks in webball.
6480         * Documentation/user/GNUmakefile (source-links): Add symlinks to
6481         source dir for split and non-split manuals.
6483         * Documentation/user/*y: Fix @uref/@inputfile links for
6484         split/non-split HTML documents.
6486         * Documentation/user/GNUmakefile (local-WWW): Do not generate
6487         .ps.gz.
6488         
6489 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6491         * GNUmakefile.in: Add newline.
6493 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
6495         * tex/lilyponddefs.tex: use color instead of xcolor
6496         * scm/output-tex.scm: minor editing
6498 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6500         * scm/music-functions.scm (display-scheme-music): pretty printer
6501         for music expressions.
6503 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6505         * buildscripts/install-info-html.sh (index_file): Fix link.
6507 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6509         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
6511         * Documentation/index.html.in: Add size estimates with some big pages.
6513         * Documentation/user/tutorial.itely (Running LilyPond for the
6514         first time): Add/replace some @rglos links.  TODO: add more
6515         @rglos links in tutorial, test non-intrusiveness (.css).
6517         * stepmake/bin/add-html-footer.py (do_file): Remove info's
6518         annoying's indication of referencing external document.
6520         * Documentation/user/GNUmakefile: Split version of glossary too.
6521         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
6522         links, not only for html.
6524         * Documentation/user/introduction.itely: Fix some links for other
6525         than html, do not use `here' as link name.
6527 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6529         * scm/documentation-generate.scm (string-append): Fix @usermanref,
6530         @glossaryref.
6532 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6534         * scm/page-layout.scm (default-page-make-stencil): only add header
6535         if existing and not empty. Fixes spurious programming error.
6537         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
6539 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
6541         * scm/output-tex.scm: implement {re,}setcolor
6542         * tex/lilyponddefs.tex: use color package
6544 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6546         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
6547         additions to website.
6549         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
6551         * Documentation/user/macros.itexi: Fix @usermanref html links in
6552         split documents: use @inforef.
6554 2005-03-30  Graham Percival  <gperlist@shaw.ca>
6556         * Documentation/user/programming-interface.itely: minor fix.
6558         * Documentation/user/advanced-notation.itely: added info to
6559         Metronome markings.
6561 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6563         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
6564         use box-stencil.  Remove y-padding argument.
6565         (make-stencil-circler): New function.
6567         * buildscripts/lilypond-words.py (F): 
6568         * elisp/SConscript (a): 
6569         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
6570         * vim/SConscript (a): 
6571         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
6573         * lily/general-scheme.cc: Build fix.
6575         * scm/markup.scm:
6576         * input/regression/markup-scheme.ly: 
6577         * input/regression/markup-syntax.ly: Drop 'new-' from name.
6579         * scm/stencil.scm (make-circle-stencil): New function.
6581         * scm/define-markup-commands.scm (draw-circle): Use it.  New
6582         name (was cicle).  Update callers.
6583         (circle): New markup command, similar to box.
6585         * scm/stencil.scm (circle-stencil): New function.
6587 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
6589         * configure.in: Detect libutf8/wchar.h variant.
6591         * stepmake/aclocal.m4: Modify shared size test.
6593 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6595         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
6597 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6599         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
6600         
6601         * VERSION (PACKAGE_NAME):  release 2.5.17
6603 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6605         * scm/backend-library.scm (postscript->png): Fix comment and png
6606         message.
6608         * GNUmakefile.in (link-tree): Fix locales.
6610 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6612         * lily/stencil-scheme.cc (LY_DEFINE): change to
6613         ly:stencil-aligned-to, non mutating.
6615         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
6617         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
6619         * lily/quote-iterator.cc (derived_mark): call
6620         Music_wrapper_iterator::derived_mark() too.
6622         * lily/grace-engraver.cc (derived_mark): change signature, add
6623         const.
6625 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6627         * SConstruct (symlink): 
6628         * GNUmakefile.in (link-tree): Add scripts to prefix.
6630         * lily/general-scheme.cc (ly:effective-prefix): New function.
6632         * scm/backend-library.scm (postscript->png): Use it.
6634 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6636         * lily/paper-score.cc (process): don't delete grobs after
6637         producing stencils. 
6639         * scm/part-combiner.scm (determine-split-list): switch off
6640         debugging info.
6642         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
6643         if available.
6645         * scm/define-context-properties.scm
6646         (all-user-translation-properties): add stringNumberOrientations.
6648         * lily/new-fingering-engraver.cc (position_scripts): make generic,
6649         so fingering and string-numbers are separately controlled.
6651 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6653         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
6654         not use debugging.
6656 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6658         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
6660         * config.hh.in: add HAVE_FONTCONFIG.
6662         * Documentation/user/instrument-notation.itely (String number
6663         indications): new node.
6665         * input/regression/new-markup-syntax.ly (texidoc): add circle.
6667         * lily/new-fingering-engraver.cc (add_string): new function. 
6668         (acknowledge_grob): accept string-number-event as well.
6670         * scm/define-markup-commands.scm (circle): new markup command.
6672         * scm/output-lib.scm (print-circled-text-callback): new function.
6674         * lily/GNUmakefile: move ifeq after include stepmake.make.
6676 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6678         * config.make.in (HAVE_LIBKPATHSEA_SO):
6679         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
6681         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
6682         add KPATHSEA_LIBS.
6684         * debian/watch: 
6685         * debian/control: Update.
6687 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6689         * input/test/title-markup.ly (spaceTest): remove.
6691         * input/test/embedded-tex.ly (Module): remove.
6693         * input/test/music-box.ly: use 'name property, not ly:music-name.
6695         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
6697         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
6699 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6701         * Documentation/topdocs/INSTALL.texi (Top): Remove information
6702         about xdeltas.  Add information about CVS.
6704         * scm/lily.scm (lilypond-main): Fix invocation of handler,
6705         gracefully handle failed files.
6707         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
6709         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
6710         small fixes.
6712         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
6713         No unnecessarily specific i18n messages.  Remove stray `1'.
6715 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6717         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
6718         documentencoding
6720         * scm/documentation-lib.scm (texi-file-head): set utf-8
6721         documentencoding.
6723         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
6724         Delta, not the Symbol one. 
6726         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
6727         for the .map file.
6729         * Documentation/topdocs/INSTALL.texi (Top): add running
6730         requirement as compilation requirement.
6732 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6734         * buildscripts/mutopia-index.py (headertext): add h1 header and
6735         utf-8 charset meta field.
6737         * input/GNUmakefile: prune example list.
6739         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
6740         options.
6742         * lily/slur-scoring.cc (get_base_attachments): only look at stem
6743         extent for visible stems.
6745         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
6747 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6749         * Documentation/topdocs/INSTALL.texi (Top): Updates.
6751         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
6753 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6755         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
6756         pass inf/nan into slur scoring.
6758         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
6759         page.
6761         * scripts/abc2ly.py (dump_voices): use alphabet().
6763 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
6764         
6765         * mf/GNUmakefile (depth): use $(FONTFORGE). 
6767 2005-03-27 Matthias Neeracher <neeracher@mac.com>
6768         
6769         * flower/include/virtual-methods.hh: simplify. Patch by
6771 2005-03-25  John Williams <williams@tni.com>  
6773         * scripts/lilypond-book.py (main): add png for HTML too, guess
6774         only if necessary. 
6776 2005-03-25  Graham Percival  <gperlist@shaw.ca>
6778         * Documentation/topdocs/INSTALL.texi: now recommends
6779         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
6781         * Documentation/user/basic-notation.itely,
6782         Documentation/user/tutoria.itely: warn about
6783         only one (phrasing) slur at once.
6785 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
6787         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
6789 2005-03-23  Graham Percival  <gperlist@shaw.ca>
6791         * Documentation/user/basic-notation.itely: fixed info about
6792         ending a (de)cresc.
6794         * Documentation/user/lilypond-book.itely: fixed
6795         lilypond-book filter example and warned about not doing
6796         --filter and --process at the same time.
6798 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6800         * lily/parser.yy (bass_number),
6801         Documentation/user/instrument-notation.itely (Figured bass): 
6802         Add the possibility to use text markup in figured bass. 
6804 2005-03-19  Graham Percival  <gperlist@shaw.ca>
6806         * Documentation/user/global.itely: added info about naming
6807         identifiers and breakbefore.
6809         * Documentation/user/invoking.itely: added info about batch
6810         processing files with convert-ly, removed references to TeX
6811         in the jail section.
6813         * Documentation/user/examples.itely: possibly fixed piano
6814         dynamics.
6816         * Documentation/user/advanced-notation.itely: added info
6817         about removing other types of Staff.
6819         * Documentation/user/instrument-notation.itely: possibly
6820         fixed piano staff line switch.
6822         * Documentation/user/changing-defaults.itely: added info
6823         about using normal font in titles.
6825 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6827         * VERSION (PATCH_LEVEL): release 2.5.16
6829         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
6830         explicitly.
6832 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6834         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
6835         whitespace.
6837         * python/lilylib.py (make_ps_images):
6838         * scm/backend-library.scm (postscript->pdf, postscript->png):
6839         Quote file name.  Use format rather than string-append juggling.
6841 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6843         * python/lilylib.py (make_ps_images): add x to -g argument. 
6845         * lily/key-performer.cc (create_audio_elements): don't use
6846         scm_eval_string. Check for minor 3rd directly.
6847   
6848         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
6849         (sarabandeCelloGlobal): key is D minor, not F major.
6851 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6853         Fix truncated --png output (Peter Danenberg).
6854         
6855         * python/lilylib.py (make_ps_images):
6856         * scripts/ps2png.py (copyright): Grok --papersize option.
6858         * scm/backend-library.scm (postscript->png): Add parameter
6859         PAPERSIZE.  Update callers.
6861         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
6862         Fixes symbol placement.
6864         * lily/spanner.cc: 
6865         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
6866         <libc-extension.hh>).
6868 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6870         * Nitpick run.
6872         * buildscripts/fixcc.py: Update.
6874         Builddir run fixes.
6876         * HACKING (datadir): Add VERSION.
6878         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
6879         higher up.
6881 2005-03-15  Werner Lemberg  <wl@gnu.org>
6883         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
6884         diagonal stem doesn't become thinner.
6886 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6888         * buildscripts/fixcc.py: Fixes (Werner).
6890 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6892         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
6893         Emmentaler/Aybabtu.
6895         * GNUmakefile.in: fix lilypond-words path.
6897         * po/tr.po: update to 2.3.21
6899         * lily/new-fingering-engraver.cc (position_scripts): take priority
6900         from head position.
6902         * input/regression/finger-chords-order.ly (texidoc): new file.
6904 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6906         * make/ly-rules.make: 
6907         * stepmake/aclocal.m4: 
6908         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
6910         * buildscripts/fixcc.py (rules): Leave space after operator.
6912 2005-03-14  Werner Lemberg  <wl@gnu.org>
6914         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
6915         top of the glyph with smooth curve.
6917 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6919         * Documentation/user/global.itely (Page layout): remove
6920         printpagenumber.
6922 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
6924         * input/regression/mensural-ligatures.ly: new file (with examples
6925         compiled by Pal Benko).
6927         * Documentation/user/instrument-notation.itely: Bugfix: yet some
6928         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
6929         musicglyph access.  Many small beautifications in ancient
6930         examples.
6932         * input/test/divisiones.ly: fixed indentation; small
6933         beautifications
6935         * ly/engraver-init.ly: added FIXME comment
6937         * scripts/lilypond-book.py,
6938         Documentation/user/lilypond-book.itely: added music fragment
6939         option "packed" to lilypond-book
6941         * Documentation/user/instrument-notation.itely: Bugfix: added
6942         missing LedgerLineSpanner color setting in several places.  Added
6943         music fragment option "packed" to VaticanaContext example.
6945 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6947         * scm/define-grobs.scm (all-grob-descriptions): switch off
6948         Hyphen_spanner::set_spacing_rods 
6950         * lily/lyric-hyphen.cc (print): add padding between syllable and
6951         hyphen.
6952         (print): shorten hyphen in tight situations (determine using
6953         minimum-length)
6955         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
6956         0.4pt.
6958 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6960         * ly/titling-init.ly (bookTitleMarkup): Refinements.
6962         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
6963         header/footer markings for regression-test.
6965         * scm/backend-library.scm (output-scopes, header-to-file): Move
6966         from framework-tex.scm.
6968         * scm/framework-ps.scm (output-framework)
6969         (output-preview-framework):
6970         * scm/framework-eps.scm (output-classic-framework)
6971         (output-framework): Use it.  Fixes collated files.
6973 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6975         * input/sakura-sakura.ly: 
6976         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
6978         * buildscripts/guile-gnome.sh: Update.
6980         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
6982         * mf/aybabtu.pe.in: Capitalize Aybabtu.
6984 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6986         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
6987         culprit: always exit the loop if we find a rod, even if it has
6988         distance < 0. 
6990         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
6991         algorithm.
6993         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
6994         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
6996         * scm/output-svg.scm (dashed-line): new  function body.
6997         
6998         * GNUmakefile.in: create .htaccess.
7000 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7002         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
7004 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7006         * VERSION (PACKAGE_NAME): release 2.5.15
7008         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
7010         * scm/framework-svg.scm (output-framework): put scaling in
7011         document header. Apply scaling only once.
7012         (output-framework): dump page size in px, not mm. 
7014         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
7015         from font-size.
7017         * lily/paper-outputter-scheme.cc (LY_DEFINE):
7018         ly:outputter-output-scheme, new function.
7020         * scm/output-svg.scm (pango-description-to-svg-font): new function
7022 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7024         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
7025         target.
7027         * input/typography-demo.ly: new file.
7029 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7031         * Documentation/user/global.itely (File structure): Add markup blocks
7032         to toplevel expressions.
7033         (Multiple movements, Creating titles): Add markup blocks.
7035         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
7036         <libc-extension.hh>).
7038         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
7040         * flower
7041         * lily
7042         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
7044 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7046         * lily/accidental.cc: special bboxes for natural. 
7048         * mf/feta-toevallig.mf: make stems heavier.
7050         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
7051         texts as well.
7053         * mf/feta-klef.mf: revise. 
7055         * mf/feta-schrift.mf: make thinning of accent less pronounced.
7057         * mf/feta-klef.mf: add rounded curve at top. 
7058         make thinnib a little heavier.
7060 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7062         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
7064         * buildscripts/fixcc.py: New file.
7066         * input/regression/utf8.ly: Update Debian font description.
7068 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7070         * stepmake/aclocal.m4: Fix test.
7072 2005-03-09  Graham Percival  <gperlist@shaw.ca>
7074         * Documentation/user/invoking.itely: added Sebastino Vigna's
7075         docs for the --jail option.
7077 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7079         * lily/stem.cc (print): only produce stemlets if there are no
7080         noteheads on this stem.
7082         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
7083         don't crash on stemlet (visible stem without heads).
7085         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
7086         unbroken situations. 
7088         * scm/output-lib.scm (center-invisible): new function.
7090         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
7091         wishes to determine loose column space.
7093         * lily/font-config.cc (init_fontconfig): add
7094         fonts/{otf,type1,cff}  to path.
7096         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
7098         * mf/GNUmakefile (Module): install all fonts under otf/
7100         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
7101         replace /fonts/otf/ by /ps/ 
7103         
7104 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7106         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
7108         * lily/book.cc (process): Oops, add score_.header_.
7110         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
7112         * lily/parser.yy: Handle toplevel and book texts as score.
7114         * scm/page-layout.scm (default-page-make-stencil):
7115         Bugfix: (page-properties rename.
7117         * scm/backend-library.scm (ly:system): Typo.
7119 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7121         * stepmake/stepmake/executable-targets.make (installexe): don't
7122         strip installed executables
7124         * lily/font-select.cc (get_font_by_design_size): revert
7125         pango_description_string as well.
7127         * lily/system.cc (set_loose_columns): put loose column just left
7128         of next column.
7130         * lily/include/group-interface.hh (extract_grob_array): rename
7131         from Pointer_group_interface__extract_grobs
7133         * input/regression/ledger-line-minimum.ly (texidoc): new file.
7135         * lily/ledger-line-spanner.cc (set_spacing_rods): new
7136         function. Keep ledgered note heads at a minimum distance.
7137         Introduce minimum-length-fraction
7138         (print): introduce length-fraction property.
7140 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7142         * tex/GNUmakefile: remove latin1.enc rules.
7144 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7146         * scm/titling.scm: Typo.
7148         * input/regression/score-text.ly: Really add.
7150         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
7152 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7154         * lily/open-type-font-scheme.cc:  new file.
7156 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7158         * scm/titling.scm (layout-extract-page-properties): Rename from
7159         page-properties.  Update callers.
7161         * lily/lexer.ll (Lily_lexer):
7162         * lily/parser.yy: Junk lyric_markup state.
7164         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
7166         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
7167         Add texts parameter.
7169 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7171         * lily/lexer.ll (lyric_markup): New mode.
7172         (Lily_lexer::push_lyric_markup_state): New method.
7173         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
7175         * lily/parser.yy (book_body):
7176         (toplevel_expression): Grok \markup texts.
7178         * lily/score-scheme.cc (ly:music-scorify): 
7179         * scm/lily-library.scm (collect-music-for-book): Take texts
7180         parameter.
7182         * lily/score.cc (texts_): New member.
7184         * lily/paper-book.cc (systems): Format score texts.
7186         * score-text.ly: New file.
7188         * ttftool/SConscript:
7189         * kpath-guile/SConscript: New file.
7191         * lily/SConscript:
7192         * SConstruct: Update.
7194 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7196         * VERSION (PACKAGE_NAME): release 2.5.14
7198 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7200         * lily/main.cc: Add dummy xgettext markers.
7202 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7204         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
7205         requirements
7207         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
7208         executable is < 40k
7210         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
7211         hack.
7213 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7215         * flower/libc-extension.cc:
7216         * flower/include/libc-extension.hh: [Open]BSD simply cast
7217         cookie/funopen declarations.
7219         * stepmake/aclocal.m4: Check for libkpathsea.so.
7221         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
7222         dl_kpse_find_file.
7224 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7226         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
7227         (open_library): alternative for static library.
7229 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7231         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
7233         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
7235         Drop run-time dependency on teTeX.
7237         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
7239         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
7240         KPATHSEA_LIBS in LIBS.
7241         (STEPMAKE_DLOPEN): New function.
7243         * lily/font-config.cc (init_fontconfig): Use dir for directory,
7244         not path.
7246         * flower/file-path.cc (directories): Rename from paths, as this
7247         return an array of directories (a single path).
7249 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7251         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
7253         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
7254         new ly:kpathsea-find-file
7256         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
7258         * kpath-guile/GNUmakefile: new file
7260         * buildscripts/gen-emmentaler-scripts.py (i): generate
7261         emmentaler-X.fontname as well.
7263         * buildscripts/ps-embed-cff.py: new script
7265         * scm/lily-library.scm: remove ps-embed-cff.
7267         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
7268         font loading. 
7270         * scm/font.scm (add-music-fonts): load dynamics/numbers through
7271         fontconfig as well.
7273         * lily/font-config.cc (init_fontconfig): add cff/ too.
7275         * ly/generate-embedded-cff.ly: capitalize.
7277         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
7278         so as to register the pango font.
7280         * lily/font-config.cc (init_fontconfig): add
7281         prefix/{otf,type1,mf/out} to fontconfig path.
7283         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
7284         overrides all. 
7286         * configure.in (gui_b): remove ec mftrace check
7288         * config.hh.in: use lilypond-Major.Minor as data directory.
7290         * scm/framework-ps.scm (dump-page): use output-units for landscape.
7292         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
7293         name.
7295 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7297         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
7298         error messages.
7300         * flower/libc-extension.cc:
7301         * flower/include/libc-extension.hh: [Open]BSD fixes for
7302         cookie/funopen declarations.
7304 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7306         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
7307         emmentaler.
7309         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
7310         lcrm10.
7312         * scm/define-markup-commands.scm (fontsize): new markup
7313         command. Also set baseline-skip
7315 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
7316         
7317         * lily/main.cc (do_chroot_jail): paranoia security for webserver
7318         use.
7320 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7322         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
7324         * lily/pdf.cc: remove PDF related files
7326 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7328         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
7329         <hamamatsu@gmx.de>
7331 2005-03-05  Graham Percival  <gperlist@shaw.ca>
7333         * Documentation/user/advanced-notation.itely: first draft
7334         of reorg done.
7336         * Documentation/user/global.itely: fixed (sub)section
7337         bits of MIDI.
7339 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7341         * cygwin/mknetrel (extras): Bufix (Bertalan).
7343         * Documentation/user/basic-notation.itely (Chords): @ref fix.
7344         * Documentation/user/instrument-notation.itely (Introducing chord
7345         names): Compile fix: must have unique name.
7347 2005-03-02  Graham Percival  <gperlist@shaw.ca>
7349         * Documentation/user/instrument-notation.itely: reorg.
7351 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7353         * scm/output-gnome.scm:
7354         * scm/output-svg.scm: Fix font scaling.
7356 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7358         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
7359         what link to use best.
7361         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
7362         * Documentation/user/tutorial.itely (Automatic and manual beams):
7363         Fix @ref.
7365         * lily/tweak-registration.cc (replace_grob_tweak): New function.
7366         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
7367         * scm/framework-gnome.scm (tweak): Use it.
7369 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7371         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
7373         * scm/output-ps.scm (white-text): reinstate white-text
7375 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7377         * scm/output-ps.scm (offset-add): Remove.
7379         * scm/lily-library.scm (offset-flip-y): New function.
7380         * scm/framework-gnome.scm (tweak): Use it.
7382         * scm/output-gnome.scm (grob-cause): Add parameter.
7384         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
7385         * scm/output-ps.scm (url-link): Move.
7386         (white-text): Warn user about brokenness.
7388         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
7389         wrt ghostscript.
7391 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7393         * lily/slash-repeat-engraver.cc (try_music): always make slashes
7394         if body length smaller than measure length.
7396         * scm/define-markup-commands.scm (with-url): oops. use Y extent
7397         for Y.
7399         * ly/titling-init.ly (tagline): put default tagline in \paper
7401 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7403         * lily/kpath.cc: 
7404         * lily/pdf.cc (Pdf_file): Use more generic error messages.
7406         * scm/lily-library.scm (version-not-seen-message): New function.
7407         * ly/init.ly: Use it.
7409         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
7410         breaks as progess.
7412         * scripts/lilypond-book.py (do_process_cmd): Do not lump
7413         whitespace with l10n message.
7415         * scm/framework-tex.scm (convert-to-ps):
7416         (convert-to-dvi): Do not use overly specific l10n messages.
7418         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
7420         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
7421         merge stderr with stdout.  
7423 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7425         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
7426         Neeracher).
7428 2005-02-29  Graham Percival  <gperlist@shaw.ca>
7430         * Documentation/user/instrument-notation.teily: moved
7431         \arpeggio to Basic.
7433         * Documentation/user/advanced-notation.itely: Articulation to
7434         Basic, a bunch of stuff from Basic moved to Advanced.
7436         * Documentation/user/basic.itely: swapped various sections,
7437         reorganized Basic.
7439 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7441         * flower/memory-stream.cc: 
7442         * flower/libc-extension.cc: Remove obsolete #undefs.
7444         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
7445         more carefully.
7447 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7449         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
7450         dependency.
7452         * VERSION (PACKAGE_NAME): release 2.5.13
7454         * GNUmakefile.in (web-ext): don't ship ps.gz
7456         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
7457         stdout
7459 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7461         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
7462         without libintl.  Now it compiles too.
7464 2005-02-28  Graham Percival  <gperlist@shaw.ca>
7466         * Documentation/user/basic-notation.itely,
7467         instument-notation.itely, advanced-notation.itely:
7468         split up contents of notation.itely.
7470         * Documentation/user/notation.itely: file removed.
7472         * Documentation/user/invoking.itely, converters.itely:
7473         moved convert-ly info to invoking.itely.
7475         * Documentation/user/global.itely, changing-defaults.itely,
7476         sound-output.itexi: moved global settings, file layout, and
7477         sound into global.itely.
7479         * Documentation/user/sound-output.itexi: file removed.
7481         * Documentation/user/lilypond.tely: removed links to
7482         notation.itely and sound.itely.
7484 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7486         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
7488         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
7490         * THANKS: add sponsor.
7492         * scm/define-markup-commands.scm (with-url): new markup command.
7494         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
7495         tagline.
7496         
7497         * scm/output-tex.scm (url-link): stub.
7499         * scm/output-ps.scm (url-link): new function.
7501         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
7502         ly:set-point-and-click
7504 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7506         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
7507         based on pdf-viewer setting.
7509         * scm/framework-ps.scm (write-preamble): Find and set preferred
7510         pdf-viewer.
7512 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7514         * Documentation/user/point-and-click.itely: update for PDF point &
7515         click.
7517         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
7518         editors based on EDITOR setting.
7520 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7522         * scm/*: Oops, more grand 2005 replace bits.
7524 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7526         * ps/music-drawing-routines.ps: new routine: insert PDF mark
7528         * scm/output-ps.scm (grob-cause): point & click support for
7529         PostScript
7531 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7533         * lily/input-scheme.cc (LY_DEFINE): rename to
7534         ly:input-file-line-column
7536 2005-02-26  Graham Percival  <gperlist@shaw.ca>
7538         * Documentation/user/examples.itely: small fix from Steve Doonan.
7540         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
7542         * THANKS: added Yuval Harel.
7544         * Documentation/user/{various}: inserted two spaces after a period.
7546         * Documentation/user/lilypond.tely: added framework for reorg.
7548         * Documentation/user/basic-notation.itely, instrument-notation.itely,
7549         advanced-notation.itely, global.itely: new files, placeholder for
7550         future reorg.
7552 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
7554         * Documentation/user/notation.itely: revamped Polyphony section
7555         
7556 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7558         * Documentation/user/lilypond-book.itely (Music fragment options):
7559         doc fontload.
7561         * Documentation/user/changing-defaults.itely (Text encoding): add
7562         fontload option to utf8 include
7564         * scripts/lilypond-book.py (compose_ly): add fontload option
7566         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
7567         force-eps-font-include option.
7569         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
7570         black triangle
7572         * Documentation/user/invoking.itely (Editor support): remove
7573         lilypond-latex section.
7575         * scripts/lilypond-latex.py (Module): remove script.
7577         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
7578         overwrite .log. 
7580         * lily/main.cc: remove -m, --no-layout
7582         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
7583         to define. We don't want to override fprintf everywhere.
7585 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
7587         * cygwin/lilypond.hint: 
7588         * cygwin/README.in: Update dependencies.
7590         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
7591         Bugfix: do not pollute CPPFLAGS, LIBS.
7593         * cygwin/mknetrel (extras): Cross compile fixes.
7595         * ttftool/util.c: 
7596         * ttftool/ttfps.c: 
7597         * ttftool/ps.c: #include libc-extension.hh
7599         * flower/include/libc-extension.hh:
7600         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
7601         wrapper using funopen.
7602         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
7603         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
7605         * config.hh.in:
7606         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
7607         (AC_CHECK_HEADERS): Add libio.h
7609         * scripts/convert-ly.py: Uniformize, internationalize.
7610         (2.5.2): Remove fatal encoding rule.
7611         (2.5.13): Handle latin1 encoding gracefully.
7613 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7615         * HACKING: Fix line breaks.
7617 2005-02-23  Werner Lemberg  <wl@gnu.org>
7619         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
7620         contains those two files.
7622 2005-02-21  Werner Lemberg  <wl@gnu.org>
7624         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
7625         to improve overlap removal process.
7627         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
7628         left and right ending.  This ensures better overlapping.
7629         Update all callers.
7630         ("lineprall"): Don't use draw_gridline to get better overlapping.
7632 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7634         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
7636         * Documentation/topdocs/NEWS.tely (Top): oops.
7638 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
7640         * HACKING: new file.
7642         * input/regression/utf8.ly (portuguese): added a portuguese example
7643         to show latin1 accents.
7645 2005-02-21  Pal Benko  <benkop@freestart.hu>
7647         * lily/mensural-ligature-engraver.cc:
7648         * lily/mensural-ligature.cc:
7649         * lily/include/mensural-ligature.hh: new algorithm implemented
7651         * scm/define-grob-properties.scm: join-left killed (add-join may
7652         be used); join-left-amount changed to join-right-amount
7654 2005-02-21  Graham Percival  <gperlist@shaw.ca>
7656         * Documentation/user/notation.itely: small but urgent fix.
7658 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
7660         * lily/duration-scheme.cc: bugfix: correct parameters to
7661         SCM_ASSERT_TYPE.
7663         * THANKS: added Pal.
7665         * Documentation/user/notation.itely: bugfix: unTeXified
7666         $\\backslash$.  Bugfix: yet another glyph renaming victim:
7667         "timesig.*x/y" -> "timesig.*xy".
7669 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7670         
7671         * VERSION (PACKAGE_NAME): release 2.5.12
7673 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7675         * ly/engraver-init.ly: set tieWaitForNote to #t by default
7677         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
7679         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
7681         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
7683 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7685         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
7686         latin1..utf-8.
7688         * input/regression/stanza-number.ly:
7689         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
7691         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
7693 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7695         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
7696         NEWS. Refer to website for older news.  
7698         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
7699         .HTML. This should be done for specific servers only.
7701         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
7702         .ly image examples.
7704         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
7705         in layer 0 too.
7707         * scm/define-context-properties.scm
7708         (all-user-translation-properties): add tieWaitForNote
7710         * scm/define-grobs.scm (all-grob-descriptions): add
7711         Tie_column::before_line_breaking
7713         * lily/tie.cc (get_column_rank): new function
7715         * lily/tie-column.cc (before_line_breaking): new function.
7716         (werner_directions): take into account ties that start on
7717         different columns.  
7719         * lily/score-engraver.cc (set_columns): move add_column() so we
7720         have column rank available.
7722         * lily/tie.cc (get_column_rank): new function.
7724         * input/regression/utf8.ly (japanese): add japanese lyrics.
7726         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
7728         * THANKS: add Steve D
7730         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
7731         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
7733 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
7735         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
7736         to show harmonic notes
7737         * scm/define-markup-commands.scm: in \markup-by-number
7738         "dots-dot" -> "dots.dot" to show dotted notes
7740 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7742         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
7744         * flower/memory-stream.cc (writer): new file.
7746         * configure.in: add endian test.
7748 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
7750         * Documentation/user/examples.itely: small
7751         simplification/beautification
7753         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
7754         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
7755         notation manual.
7757         * lily/mensural-ligature.cc: bugfix: another few victims of the
7758         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
7760         * ly/gregorian-init.ly: commit some experimental code for hi-level
7761         ligature input language lying around here for several months.
7763         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
7764         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
7766         * lily/vaticana-ligature-engraver.cc: bugfix: another few
7767         "x-y-z"->"x.y.s-z" fixes.
7769 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7771         * scm/framework-pdf.scm (scm): new file
7773         * lily/include/pdf.hh (class Pdf_file): new file.
7775         * lily/pdf.cc (write_trailer): new file.
7777 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
7779         * input/regression/color.ly: new file
7781         * lily/stencil.cc (interpret_stencil_expression):
7782         when a color expression is encountered: save current color,
7783         process the rest of the expression, and restore previous color.
7785         * lily/system.cc (get_line): check all grobs for color property and
7786         prepare the stencil scheme expressions for further processing.
7787         Fix layer-loop.
7789         * scm/define-grob-properties.scm: introduce the color property.
7791         * scm/output-lib.scm: color helper functions.
7793         * scm/output-ps.scm: introduce setcolor/resetcolor.
7795 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
7797         * ly/*.ly, input/regression/*.ly: Added missing \version
7798         statements in some files.
7800 2005-02-15  Graham Percival  <gperlist@shaw.ca>
7802         * Documentation/user/notation.itely: minor editing.
7804         * Documentation/user/converters.itely: updated convert-ly bugs.
7806         * Documentation/user/lilypond-book.itely: add info about using
7807         feta characters in latex.
7809 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7811         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
7813 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7815         * scm/define-grob-properties.scm (all-user-grob-properties):
7816         removed 'dashed property.
7818 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7820         * scm/lily.scm (define-safe-public): new macro for defining
7821         variables that can be used in --safe mode. Use it in *.scm
7822         instead of manually setting safe-objects in safe-lily.scm.
7824 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7825         
7826         * lily/slur.cc: Slur-dash patch by Bertalan.
7828         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
7830         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
7832 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7834         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
7836 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7838         * mf/GNUmakefile: teTeX-3.0 install fix.
7840         * Cygwin patch from Bertalan.
7842         * stepmake/stepmake/metafont-rules.make: Remove bashism.
7844 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7846         * GNUmakefile.in: 
7847         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
7849         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
7850         2.0.x compatibility.
7852 2005-02-08  Werner Lemberg  <wl@gnu.org>
7854         * mf/feta-din-code.mf: Format; clean up code.
7855         Replace `---' with `--' plus explicit path directions.
7856         (linethickness#, stafflinethickness#): Remove.
7857         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
7858         ("dynamic s"): Improve shape.
7859         ("dynamic p"): Improve shape.
7860         Replace `draw' with better outline approximation.
7861         ("dynamic r"): Improve shape.
7862         Don't call `fill' and `draw' at the same time.
7864 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7866         * SConstruct (symlink):
7867         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
7868         build fix: add enc symlink.
7870         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
7872         Support for DESTDIR besides prefix=/foo
7874         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
7876         * stepmake/stepmake/*.make:
7877         * */GNUmakefile:
7878         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
7880         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
7882         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
7883         mawk in fontforge (date) test.
7885 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7887         * scm/font.scm (make-century-schoolbook-tree): add NCS as
7888         font-family=roman. Add Luxi Sans as sans
7890 2005-02-07  Graham Percival  <gperlist@shaw.ca>
7892         * Documentation/user/notation.itely: add warning about
7893         percent repeats and Voice contexts.
7895         * Documentation/user/lilypond-book.itely: clarified the
7896         necessity of dvips -u arguments.
7898 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
7900         * THANKS: Added a bunch of bug hunters.
7902 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7904         * scm/framework-ps.scm (output-preview-framework): bugfix.
7906         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
7907         o/ for chord modifier..
7909         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
7911         * lily/drum-note-performer.cc:  remove unused (thanks Michael
7912         Welsh Duggan). 
7914 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7916         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
7918         * ly/titling-init.ly: Do not also print intstrument in header on
7919         first page.  Do not print page number on first and only page.
7921 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7923         * input/regression/*.ly: remove old-relative everywhere
7925         * lily/music-sequence.cc (simultaneous_relative_callback): do
7926         what-if analysis on copy, not on original. Fixes old-relative
7927         compatibility.
7929         * scm/backend-library.scm (postscript->png): space before
7930         --verbose.
7931         
7932 2005-02-05  Werner Lemberg  <wl@gnu.org>
7934         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
7935         is defined.
7937         * mf/feta-alphabet.mf: Define `staffsize#'.
7938         Include `feta-params.mf'.
7939         s/staffheight/design_size/.
7941         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
7943         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
7945         * mf/feta-nummer-code.mf: Reformatted.
7946         (draw_six): Use outline intersection to avoid a self-intersecting
7947         path.
7948         ("Numeral comma"): Fix serious outline glitches.  This slightly
7949         changes the glyph shape.
7950         ("Numeral dash"): Use `draw_rounded_block'.
7951         ("Numeral dot"): Use `drawdot'.
7952         ("Numeral 1"): Assure identical tangent directions for the
7953         intersection points of paths.  The glyph shape improvement is only
7954         visible at very high magnifications.
7955         ("Numeral 2"): Use `solve' macro to make the lower right part of
7956         the glyph outline touch the x axis exactly.  This changes the
7957         glyph shape.
7958         Minor fixes for better overlap removal support.
7959         ("Numeral 4"): Make lefter corner `rounder'.
7960         ("Numeral 5"): Assure identical tangent directions for the
7961         intersection points of paths.  This improves the glyph shape at
7962         high magnifications.
7963         ("Numeral 7"): Use `solve' macro to make the upper right part of
7964         the glyph outline touch the metrics box exactly.  This changes the
7965         glyph shape.
7966         Avoid corner in the upper left part of the glyph (causing a minor
7967         shape change).
7969         * mf/feta-ital-*.mf: Removed.  Unused.
7971 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7973         * VERSION (PATCH_LEVEL): release 2.5.11
7975         * input/regression/fill-line-test.ly: new file.
7977         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
7978         emmentaler name, eg. emmentaler-23. 
7980 2005-02-04  Christian Hitz  <chhitz@gmx.net>
7982         * scm/scm/define-markup-commands.scm (fill-line): rework for better
7983         alignment with centered texts
7985         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
7986         list of paddings
7988 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7990         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
7992         * lily/note-column.cc (translate_rests): call flush_extent_cache()
7993         of parents when translating rests. Fixes: c-chord-rest.ly 
7995         * lily/include/dimension-cache.hh (struct Dimension_cache): add
7996         dimension_callback_ member.
7998         * lily/grob.cc (flush_extent_cache): new function. Force recompute
7999         of extents.
8001 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
8003         * all but lily/*: The grand 2004/2005 replace.
8005 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8007         * lily/*: add space after ,  
8009         * scm/music-functions.scm (has-request-chord): don't use
8010         ly:music-name anywhere. Fixes <<\\>> notation. 
8012         * scm/define-markup-commands.scm (box): use font-size for
8013         padding. Fixes boxed-rehearsal-marks.ly
8015         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
8016         identifier definition too, so foo = \lyrics { ...   } bar = #1
8017         doesn't complain about "bar" being LYRICS_STRING.
8019         * lily/paper-def.cc (find_pango_font): new routine; Store
8020         pango_fonts in hash tab too. This is necessary for retrieving
8021         Pango_fonts::physical_font_tab() later on.
8023         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
8024         crash if psname is null.
8026         * lily/lily-guile.cc (ly_hash2alist): new function
8028         * Documentation/user/changing-defaults.itely (Text encoding):
8029         rewrite. 
8031         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
8032         -> font_filename mapping.
8034         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
8035         ly_pango_font_physical_fonts
8037         * scm/framework-ps.scm (supplies-or-needs): extract names from
8038         physical Pango_fonts.
8040         * utf8.ly: new file.
8042 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8044         * Documentation/user/changing-defaults.itely (Page layout): add
8045         doco about systemSeparatorMarkup.
8047         * scm/page-layout.scm (default-page-make-stencil): add-to-page
8048         function.
8049         (default-page-make-stencil): insert system separators.
8051         * scm/define-markup-commands.scm (hcenter): add
8052         (beam): add.
8054 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8056         * scm/output-ps.scm (ez-ball): reinstate ez notation.
8058 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8060         * lily/main.cc: Spell backend consistently.  Sort options.
8062 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8064         * scripts/lilypond-book.py (Module): revert @include.
8065         
8066 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8068         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
8069         Bugfix: @include .tex (not .texi).  Small cleanups.
8071         * stepmake/bin/add-html-footer.py (i18n): New function.
8073 2005-01-31  Werner Lemberg  <wl@gnu.org>
8075         * mf/feta-nummer.mf: Removed.  Unused.
8077 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8079         * lily/ : 2004 -> 2005 s&r
8081         * scm/file-cache.scm (cached-file-contents): add file. Read each
8082         file only once.
8084         * scm/font.scm (add-pango-fonts): change order. Medium weight is
8085         now default.
8087         * VERSION: release 2.5.10
8088         
8089         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
8091         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
8093         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
8094         that both X and Y extents of bbox are non-nil.
8096 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8098         * scm/chord-name.scm (alteration->text-accidental-markup): change
8099         - to . 
8101         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
8103         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
8105         * Documentation/user/invoking.itely (Invoking lilypond): add note
8106         about EPS backend.
8108         * scm/framework-eps.scm: new file: create per-system/per-page EPS
8109         files for inclusion in lilypond-book document.
8111         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
8113         * input/tutorial/lbook-texi-test.texi: new file.
8115         * scm/safe-lily.scm (safe-objects): add
8116         {begin,end}-of-line-(in)?visible as safe.
8118 2005-01-30  Graham Percival  <gperlist@shaw.ca>
8120         * Documentation/user/changing-defaults.itely: fixed example
8121         of (dynamics).
8123 2005-01-29  Graham Percival  <gperlist@shaw.ca>
8125         * lily/main.cc: fix info about -o=FILE.
8127 2005-01-29  Werner Lemberg  <wl@gnu.org>
8129         * mf/feta-toevallig.mf ("Natural"): Completely changed the
8130         construction to assure smooth transition from straight to curved
8131         lines.
8133 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8135         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
8136         stencils.
8138         * ps/lilyponddefs.ps: add start-page, start-system doesn't
8139         translate to top of page. Fixes alignment problems of
8140         lilypond-generated EPS files.
8142 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8144         * scm/part-combiner.scm (analyse-spanner-states): trigger on
8145         crescendo-end as well, since Decrescendo maybe ended with Stop
8146         Crescendo.). Fixes: partcombine-diminuendo.ly
8148         * scm/script.scm (default-script-alist): swap portato symbols.
8150         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
8152         * lily/paper-outputter-scheme.cc (LY_DEFINE):
8153         ly:outputter-port. New function.
8155         * scm/framework-ps.scm (output-classic-framework): dump a
8156         -systems.texi too
8157         (output-classic-framework): dump multiple systems on an "infinite"
8158         page EPS including fonts. 
8160         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
8161         .eps files for both texi and tex formats. Use PNG coming from
8162         lilypond.
8163         
8164 2005-01-28  Graham Percival  <gperlist@shaw.ca>
8166         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
8168         * scripts/lilypond-latex.py: fix info about -o=FILE.
8170 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8172         * ly/generate-embedded-cff.ly: write .cff.ps files.
8174         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
8176         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
8177         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
8179 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8181         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
8183 2005-01-28  Werner Lemberg  <wl@gnu.org>
8185         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
8186         macros.
8187         (draw_bulb): Improved.
8189         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
8190         metapost bug.
8191         (draw_pedal_P): Use soft_end_penstroke.
8192         (draw_pedal_d): Use soft_start_penstroke.
8194         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
8195         path.
8196         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
8197         doesn't change the glyph shape.
8199         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
8200         changing the shape) to avoid fontforge warnings.
8202         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
8203         soft_end_penstroke and fix glyph shape.
8205 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8207         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
8209 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8211         * scm/define-markup-commands.scm (line): filter out empty stencils
8212         from line command.
8214         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
8215         amount.
8217 2005-01-27  Graham Percival  <gperlist@shaw.ca>
8219         * Documentation/user/notation.itely: added info about what
8220         \voiceFoo does.  Also rewrote warning about marks at
8221         a line break.
8223         * Documentation/user/changing-defaults.itely: added info
8224         about putting dynamics in parenthesis and brackets.
8226 2005-01-27  Werner Lemberg  <wl@gnu.org>
8228         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
8230 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8232         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
8233         portato-direction.ly
8235         * lily/beam.cc (consider_auto_knees): add beam height to
8236         threshold. Fixes: knee-multiple-beam.ly
8238         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
8239         pedal line spanners. Fixes: instrument-center-pedal.ly
8241         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
8242         if encountering barline. Fixes: auto-beam-repeat.ly
8244 2005-01-26  Werner Lemberg  <wl@gnu.org>
8246         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
8247         overlapping.
8249         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
8250         with inflections for the 1/2 sharp glyph.
8252         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
8253         connection between `t' and `r'.
8254         Unify bulb with the rest of `r' to avoid grazing outlines which
8255         confuses the overlap removal algorithm of fontforge.
8257         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
8258         inflections.
8259         (draw_cross): Fix shape to have uniform thickness in corners.
8261         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
8262         to avoid an uneven number of self-intersections; this confuses
8263         fontforge.
8264         Fix a slight bug in the shape at left bottom (which is visible only
8265         at high magnifications).
8266         `Center' the stem horizontally to avoid overlapping.
8268 2005-01-24  Werner Lemberg  <wl@gnu.org>
8270         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
8271         to `asis'.
8272         (fet_begingroup): Save group name in string `feta_group'.
8273         (fet_endgroup): Updated.
8274         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
8276         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
8278         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
8279         in metapost.
8281 2005-01-24  Graham Percival  <gperlist@shaw.ca>
8283         * Documentation/user/notation.itely: really minor editing.
8285 2005-01-22  Graham Percival  <gperlist@shaw.ca>
8287         * Documentation/user/examples.itely: minor editing.
8289         * Documentation/user/changing-defaults.itely: minor editing.
8291         * Documentation/user/notation.itely: clarified info on polyphony
8292         and \addlyrics.
8294 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8296         * scm/output-gnome.scm: 
8297         * scm/output-svg.scm:
8298         * scm/lily-library.scm (font-name-style): Update font name
8299         kludging for fontconfig use.
8301 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
8303         * scm/define-markup-commands.scm: Document right-align and
8304         larger markup commands. Remove "TODO" from the topmost comment
8305         "each markup function should have a doc string." More consistent
8306         use of new-lines.
8308 2005-01-22  Graham Percival  <gperlist@shaw.ca>
8310         * Documentation/user/changing-defaults: removed info about
8311         copyright symbol, since it's likely to change soon.
8312         Added info about betweensystemspace.
8314         * Documentation/user/notation.itely: minor fixes.
8316         * Documentation/user/lilypond.tely,
8317         Documentation/user/music-glossary.tely: changed copyright
8318         date to 2005 instead of 2004.
8320         * input/test/volta-chord-names.ly: added old example back.
8322 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8324         * mf/feta-beugel.mf: use design size 20 (not 15).
8326         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
8327         change name to aybabtu completely
8329 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8331         * buildscripts/gen-emmentaler-scripts.py (outdir): add
8332         design_size to fontname
8334 2005-01-19  Werner Lemberg  <wl@gnu.org>
8336         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
8337         mf/feta-schrift.mf: s/p/pat/ if a path variable.
8339         * mf/feta-autometric.mf (set_char_box): Add code which emits
8340         specials for mf2pt1 if run with metapost.
8341         (to_bp): New macro for mf2pt1.
8343 2005-01-18  Graham Percival  <gperlist@shaw.ca>
8345         * Documentation/user/changing-defaults: added info on
8346         creating a copyright symbol.
8348 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8350         * VERSION: release 2.5.9
8351         
8352 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
8354         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
8356         * Documentation/user/notation.itely: Document
8357         score-override-auto-beam-setting Fix documentation for
8358         revert-auto-beam-setting.
8360 2005-01-18  Werner Lemberg  <wl@gnu.org>
8362         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
8363         (procset): New function to define a procset resource.
8364         (ps-embed-pfa): New function to define a font resource.
8365         (setup): New function to define a `Setup' environment.
8366         (preamble): Use new functions.
8368         * ps/lilypond.defs (init-lilypond-parameters): New function to
8369         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
8371 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8373         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
8375 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
8377         * scm/define-markup-commands.scm: Change number->markletter-string
8378         to take two arguments (vector number). Add number->mark-alphabet-vector
8379         and markalphabet markup command.
8381         * scm/translation-functions.scm: Add format-mark-box-alphabet,
8382         format-mark-alphabet, format-mark-box-barnumbers and
8383         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
8385 2005-01-17  Graham Percival  <gperlist@shaw.ca>
8387         * Documentation/user/examples.itely: add SATB automatic piano
8388         reduction template.
8390         * Documentation/user/notation.itely: added info about changing
8391         partcombine texts.  Also adds examples of alternate lyrics.
8393         * Documentation/user/changing-defaults.itely: added warning
8394         about \RemoveEmptyStaffContext overriding previous changes.
8396 2005-01-17  Werner Lemberg  <wl@gnu.org>
8398         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
8399         feta-alphabet*.
8401 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8403         * python/lilylib.py (make_ps_images): don't do final showpage for
8404         multi-page documents.
8405         
8406         * VERSION (MY_PATCH_LEVEL): release 2.5.8
8408 2005-01-16  Graham Percival  <gperlist@shaw.ca>
8410         * Documentation/user/lilypond.tely: changed order of appendices;
8411         unified index should be last.
8413         * Documentation/user/notation.itely: add example of key signatures
8414         and info about Staff.printKeyCancellation.
8416 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8418         * lily/include/repeated-music.hh (class Repeated_music): change
8419         into "namespace" class.
8421         * lily/event.cc: remove Key_change_event.
8423         * lily/include/transposed-music.hh (class Transposed_music): remove.
8425         * lily/transposed-music.cc: remove
8427         * lily/include/relative-music.hh: remove.
8429         * lily/include/music-sequence.hh (struct Music_sequence): change
8430         into "namespace" class.
8432         * lily/untransposable-music.cc (Module): remove
8434         * lily/include/un-relativable-music.hh (Module): remove
8436         * lily/include/untransposable-music.hh (Module): remove
8438         * lily/include/music-list.hh (Module): remove file
8440         * lily/un-relativable-music.cc: remove file.
8442 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8444         * lily/parser.yy: Compile fix.
8446 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8448         * lily/include/music.hh (class Music): unvirtualize transpose().
8450         * lily/sequential-music.cc: remove file.
8452         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
8454         * lily/slur-scoring.cc (get_best_curve): only switch on
8455         DEBUG_SLUR_SCORING for non NDEBUG builds.
8457         * lily/include/music.hh (class Music): replace Music::start_mom()
8458         by start-callback property
8460         * lily/include/grace-music.hh: remove file. 
8462         * lily/stem.cc (height): robustness fix.
8464         * lily/time-scaled-music.cc: remove file.
8466         * lily/include/music.hh (class Music): include SCM init argument.
8467         (class Music): replace Music::get_length() virtual by
8468         length-callback property everywhere.
8470         * scripts/convert-ly.py (conv): add  # to \property scalar value.
8472         * mf/GNUmakefile: don't install *list.ly
8474 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8476         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
8478 2005-01-12  Werner Lemberg  <wl@gnu.org>
8480         This patch addresses the following problems in the feta sources
8481         files which contribute to the fetaXX fonts.
8483         . Many fixes for rasterization at low resolutions (consistent use of
8484           `vround' and `hround', integer shift values for paths, applying
8485           `eps' for mirrored paths, use of `define_whole_pixels' and
8486           friends, etc.) -- while this probably looks like a waste of time
8487           it has revealed deficiencies in some glyph shapes.  See comment at
8488           the end of feta-params.mf how vertical symmetry is achieved.
8490         . The `---' operator has been replaced everywhere with `--'; this
8491           both improves and considerably reduces the font size after
8492           conversion with mf2pt1.
8494         These change aren't explicitly mentioned below since virtually all
8495         glyphs are affected.
8497         Other notable differences:
8499         . Glyphs from feta-accordion.mf now have charboxes around the
8500           outline.
8502         . Fixed incorrect charbox for `accDot'.
8504         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
8506         . Fixed position of the bow in the `upprall' glyph and its siblings.
8508         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
8509           dependent on the staff line thickness to avoid touching the middle
8510           staff line at smaller sizes.
8512         . Largely extended output for feta-testXX: Where useful, glyphs
8513         are shown both between and on staff lines.
8516         * mf/feta-params.mf (staff_space_rounded,
8517         stafflinethickness_rounded, linethickness_rounded,
8518         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
8519         Update all code which uses them where appropriate.
8520         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
8521         New variables used to control rasterization at low resolutions.  Set
8522         to zero if feta code is processed with metapost.
8524         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
8525         (draw_rounded_block, draw_square_block): Updated to use `--' only.
8526         (flare_path): Updated.
8527         Make it work with `filldraw' (but only circular pens).
8528         (hfloor, vfloor, hceiling, vceiling): New macros.
8530         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
8531         Use `draw' again in mf mode to have good pixel dropout control.
8532         Fix intersection points of horizontal lines with circle.
8533         ("accDot"): Fix parameters for set_char_box.
8534         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
8535         control.
8537         * mf/feta-banier.mf: Updated.
8539         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
8540         testing.
8541         (undraw_inside_ellipse): Remove `center' argument.  Update all
8542         callers.
8543         (draw_brevis): New macro, called by "Brevis notehead".
8544         (draw_whole_triangle_head): New macro, called by "Whole
8545         trianglehead".
8546         (draw_small_triangle_head): Use `filldraw'.
8548         * mf/feta-eindelijk.mf: Remove useless global group.
8549         Updated.
8551         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
8552         `filldraw'.
8554         * mf/feta-pendaal.mf: Updated.
8556         * mf/feta-puntje.mf: Updated.
8558         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
8559         less points.
8560         ("Flageolet"): Use `draw' again in mf mode to have good pixel
8561         dropout control.
8562         ("Varied Coda"): Use `draw_block'.
8563         (draw_comma): Fix typo.
8564         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
8565         pixel dropout control.
8567         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
8568         position of bow.
8570         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
8571         sizes.
8573         * mf/feta-toevallig.mf (remember_pic): New variable, used for
8574         testing.
8575         (draw_meta_sharp): Much simplified.
8576         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
8578         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
8580 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8582         * Documentation/user/notation.itely (Ancient rests): Fix typo
8583         (thanks Anthony)
8585 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8587         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
8589         * lily/main.cc (setup_paths): Add cff.
8591         * mf/GNUmakefile (foe): Include actual target %.cff.
8592         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
8594 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8596         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
8597         suffix for main_input_b_.
8599         * scm/music-functions.scm (toplevel-music-functions):
8600         precompute music lengths for music expressions.  
8602 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8604         * lily/include/input.hh (class Input): new `end_' slot for end of
8605         input. Renamed defined_str0_ to start_.
8607         * lily/input.cc (Input): Add Input::Input (Input const &) and
8608         remove Input::Input (Source_file*, char const *). Use the new
8609         slots.
8610         (set_location): method used by bison to propagate input
8611         locations (YYLLOC_DEFAULT).
8612         (end_line_number, end_column_number, step_forward): new methods
8613         
8614         * lily/input-scheme.cc (ly:input-both-locations): new function,
8615         similar to ly:input-location, but also return the end line and
8616         column.
8618         * lily/include/includable-lexer.hh: 
8619         * lily/includable-lexer.cc: 
8620         * lily/include/lily-lexer.hh (class Lily_lexer): 
8621         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
8622         Includable_lexer to Lily_lexer, in order to update lexloc (the
8623         yylloc), a new slot of Lily_lexer.
8624         (here_input, LexerError): simplify by using the lexloc slot (aka
8625         yylloc)
8627         * lily/lexer.ll: #define yylloc to use input locations (it may
8628         be useless here?). Fixed the #embedded_scm rule (step the location
8629         forward in order to skip the sharp sign before parsing the scheme
8630         expression)
8632         * lily/include/lily-parser.hh (class Lily_parser): 
8633         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
8634         here_input()
8635         (parser_error): overload for more precise locations of errors.
8637         * lily/parser.yy (YYLTYPE): set location type to Input
8638         (YYLLOC_DEFAULT): use Input::set_location()
8639         (yylex): add the YYLTYPE* location parameter.
8640         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
8641         Give an Input parameter to THIS->parser-error() for more accurate
8642         messages.
8644 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8646         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
8648         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
8649         on BEAMQUANTING for non-NDEBUG builds.
8651         * lily/stem.cc (head_count): performance: avoid String::String()
8652         inside oft called function.
8654 2005-01-09  Graham Percival  <gperlist@shaw.ca>
8656         * Documentation/user/examles.itely: attempted fix for broken
8657         string quartet template.
8659         * Documentation/user/notation.itely: remove unnecessary broken
8660         link.
8662 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8664         * VERSION (PACKAGE_NAME): release 2.5.7
8666 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8668         * config.make.in (METAFONT): Append -progname=mf, fixes use with
8669         mf-nowin for teTeX-3.0.  Backportme.
8671         * scm/output-svg.scm (utf8-string): New function.
8673         * scm/output-gnome.scm (utf8-string): New function.
8674         (otf-name-mangling): Remove.
8676         * lily/pango-font.cc (Pango_font): Use font string iso font
8677         filename for utf8-text.
8679         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
8680         name.
8682 2005-01-08  Graham Percival  <gperlist@shaw.ca>
8684         * Documentation/user/notation.itely: add info about
8685         Staff.extraNatural = ##f in Pitches section.  Also
8686         fixed some minor issues in the Vocal music section.
8688 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8690         * scm/output-ps.scm (white-text): comment out Helvetica font,
8691         which is broken for my GS install.
8693         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
8694         which provides a tighter bbox.
8696         * scm/define-grobs.scm (all-grob-descriptions): remove all
8697         extra-offsets from definitions.
8699 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
8701         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
8702         add tuning for 4-string bass and some common 4/5-string banjo
8703         tunings.  New function (four-string-banjo) turns a 5-string tuning
8704         into a 4-string tuning.  New function
8705         (fret-number-tablature-format-banjo) computes correct fret numbers
8706         on 5-string banjos.
8708         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
8709         Add beam correction to TabVoice.
8711         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
8712         using bold font; makes tabs more readable.
8714 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8716         * lily/font-select.cc (get_font_by_design_size): don't make
8717         Modified_font_metric; this causes trouble, since we don't know the
8718         font magnification from inside Pango_font::text_stencil()
8720         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
8722         * Documentation/user/notation.itely (The Lyrics context): comment out
8723         broken {Small ensembles} link.
8725         * scm/framework-svg.scm (output-framework): change calling convention.
8727         * lily/object-key-dumper-scheme.cc: new file.
8729         * lily/object-key-undumper-scheme.cc: new file.
8731         * lily/tweak-registration-scheme.cc: new file.
8733         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
8735         * Documentation/user/examples.itely (String quartet): uncomment
8736         broken example.
8738         * lily/font-config.cc: new file.
8740 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8742         * scm/output-svg.scm: 
8743         * scm/output-gnome.scm: s/bigcheese/emmentaler.
8745         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
8747 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8749         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
8750         Add headers.
8752         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
8754 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8756         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
8758         * lily/include/main.hh: lose _b hungarian suffixes for global
8759         variables.
8761         * lily/include/lily-guile-macros.hh: new file.
8763         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
8765         * lily/general-scheme.cc: new file. 
8767         * lily/font-select.cc (get_font_by_design_size): retrieve
8768         PangoFont for (designsize . "pango-descr") entries.
8770         * lily/lily-parser-scheme.cc: new file.
8772         * lily/output-def-scheme.cc: new file.
8774         * lily/paper-book-scheme.cc: new file.
8776         * lily/duration-scheme.cc (LY_DEFINE): new file.
8778         * lily/pitch-scheme.cc:  new file.
8780         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
8782 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8784         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
8786 2005-01-06  Graham Percival  <gperlist@shaw.ca>
8788         * Documentation/user/notation.itely: minor editing.
8790         * Documentation/user/changing-defaults: minor editing.
8792         * Documentation/user/examples.itely: add template for
8793         string quartet part extraction; demonstrates tag.
8795 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
8797         * Documentation/user/notation.itely: documents
8798         format-mark-box-letters and format-mark-box-numbers
8800         * scm/define-context-properties.scm: change comment.
8802 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8804         * scm/framework-ps.scm (output-classic-framework): new function:
8805         dump systems as separate .eps files (without fonts) and write a
8806         single collecting .tex file.
8808 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8810         * Documentation/user/notation.itely (Setting simple songs):
8811         Correct several errors in the equivalent formulation of
8812         \addlyrics. 
8813         (The Lyrics context): Corrected link to the SATB example.
8815 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8817         * scm/lily.scm (completize-formats): new function
8818         (postprocess-output): new function
8820         * lily/paper-book.cc (classic_output): change calling
8821         convention. Give basename as first argument. 
8822         remove Paper_book::post_processing().
8824         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
8826 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8828         * lily/paper-outputter.cc (LY_DEFINE): new function
8829         ly:outputter-close.
8831         * lily/main.cc: change --format,-f to --backend,-b
8833         * lily/include/main.hh: rename format to backend.
8835         * scm/translation-functions.scm (format-mark-box-numbers): add.
8836         patch by Erlend Aasland
8838 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8840         * lily/pango-font.cc (text_stencil): dump string as
8841         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
8843 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8845         * configure.in (gui_b): Remove handy developer-only
8846         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
8847         CVS source installations (but break other non-default but correct
8848         PKG_CONFIG_PATH setups), as this is no longer developer-only.
8850         * SConstruct: 
8851         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
8852         compatibility (backportme).
8854         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
8856 2005-01-03  Werner Lemberg  <wl@gnu.org>
8858         Prepare glyph shapes for mf2pt1 conversion.
8860         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
8861         (accDiscant, accFreebase, accStdbase): Replace `draw' with
8862         `penstroke'.
8863         (accDot): Use `drawdot'.
8864         (accBayanbase): Replace `draw' with `draw_gridline'.
8865         (print_penpos): Moved to feta-macros.mf.
8866         (accOldEE): Replace `filldraw' with `penstroke'.
8867         Replace `draw' with `penstroke' and `drawdot'.
8869         * mf/feta-banier.mf: Code clean-up.
8870         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
8871         `fill'.
8873         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
8875         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
8876         paremeter to control drawing of labels.  Update all callers.
8878         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
8879         (new_bulb): Return a bulb as a single path.  To do that, it now
8880         takes some more parameters.  Updated all callers.
8881         (draw_gclef): Major clean-up.  `draw' has been replaced with
8882         `penstroke', unnecessary outlines have been removed.
8883         Remove (unused) gnome-canvas code.
8885         * mf/feta-macros.mf (print_penpos): New macro (from
8886         feta-accordion.mf).
8887         Other minor fixes.
8889         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
8890         ("Pedal dot"): Use `drawdot'.
8891         (draw_pedal_P): Add parameter to control drawing of labels.  Update
8892         all callers.
8893         Fix shape at top.
8894         (draw_pedal_e): Add parameter to control drawing of labels.  Update
8895         all callers.
8896         (draw_pedal_d): Add parameter to control drawing of labels.  Update
8897         all callers.
8898         Revert drawing direction.
8900         * mf/feta-schrift.mf (draw_fermata): Use single path.
8901         (draw_short_fermata): Replace `filldraw' with `fill'.
8902         (draw_long_fermata, draw_very_long_fermata): Replace calls to
8903         `draw_rounded_block' with a single path.
8904         ("Thumb"): Draw full circle instead of mirroring segments.
8905         (draw_accent): New macro.
8906         ("> accent", "espr"): Use it.
8907         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
8908         ("open (unstopped)"): Draw full circle instead of mirroring
8909         segments.
8910         (draw_vee): Removed.
8911         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
8912         ("Downbow"): Replace calls to `draw_rounded_block' with a single
8913         path.
8914         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
8915         partial pieces drawn with `fill' -- these do still overlap with the
8916         stem of the `t' but just once, not multiple times so that fontforge
8917         can handle it gracefully.
8918         Change other parts of the glyph so that fontforge's overlapping
8919         algorithm reliably works.
8920         (draw_heel): Replace `draw' with `fill'.
8921         (draw_toe): Use `draw_accent' instead of `draw_vee'.
8922         ("Flageolet"): Replace `draw' with `penstroke'.
8923         ("Segno"): Replace `filldraw' with `penstroke'.
8924         Replace `draw' with `drawdot'.
8925         ("Coda"): Replace `fill' with `penstroke', using a single path.
8926         ("Varied Coda"): Use less overlapping paths.
8927         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
8928         single path.
8930         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
8931         group to better control the `labels' command.
8932         Rename argument to `offset' and use it actually.  Update all
8933         callers.
8934         Replace `filldraw' with `fill'.
8935         ("mordent", "prallmordent", "upmordent", "downmordent",
8936         "lineprall"): Replace `draw' with `draw_gridline'.
8937         ("upprall", "downprall"): Replace `draw' with `fill'.
8939         * mf/feta-timesig.mf: Formatting.
8941         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
8942         to...
8943         ("Flat"): Here.
8944         (draw_paren): Move code to draw labels to...
8945         ("Right Parenthesis"): Here.
8947 2005-01-02  Graham Percival <gperlist@shaw.ca>
8949         * Documentation/user/notation.itely: add example of \setTextDecresc
8950         and \setTextDim.
8952 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
8954         * scm/define-markup-commands.scm :  fix glyph-strings of
8955         accidentals and \note-by-number
8957 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8959         * VERSION: 2.5.6 released.
8960         
8961         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
8963         * input/regression/new-markup-scheme.ly: oops. font-family=music
8964         -> font-encoding fetaMusic.  
8966         * lily/main.cc: put default to PS.
8968         * lily/tfm.cc: idem.
8970         * lily/afm.cc: idem.
8972         * lily/include/modified-font-metric.hh (struct
8973         Modified_font_metric): remove coding_scheme() method.
8975         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
8977         * scripts/convert-ly.py (conv): crash on encountering \encoding.
8979         * input/les-nereides.ly: convert to utf8
8981         * lily/modified-font-metric.cc (text_dimension): idem.
8983         * lily/parser.yy (TODO): idem.
8985         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
8987         * lily/lexer.ll: remove encoding
8989         * scm/framework-ps.scm (output-variables): separately scale the
8990         page to mm 
8992         * lily/pango-font.cc (Pango_font): fix scaling.
8994         * lily/font-metric.cc (design_size): design_size returns a
8995         dimension now as well.
8997 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8999         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
9000         brace generation. 
9002         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
9004 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9006         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
9007         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
9009 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9011         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
9012         in first run as well.
9014         * scm/paper.scm (layout-set-staff-size): use text-font-size in
9015         dimension less points (ie. 12 = 12 point)
9017         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
9019         * lily/all-font-metrics.cc (find_pango_font): set description_
9021         * lily/pango-font.cc (text_stencil): export size as well.
9022         (text_stencil): fix scaling and extents box.
9024 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9026         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
9028         * Documentation/user/invoking.itely (Invoking lilypond): document
9029         texstr
9031         * scripts/convert-ly.py (conv): add ancient rules.
9033         * scm/clef.scm (c0-pitch-alist): replace - with .
9035         * scripts/lilypond-book.py (process_snippets): add texstr support.
9037         * scm/framework-texstr.scm (header): change extension to .textmetrics
9039         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
9040         -f tex.
9042         * lily/text-metrics.cc: new file.
9043         (try_load_text_metrics): new function
9045         * lily/include/text-metrics.hh: new file.
9047 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9049         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
9050         ly_scheme_function to ly_lily_module_constant.
9052         * lily/modified-font-metric.cc (text_dimension): try
9053         lookup_tex_text_dimension() first.
9055         * lily/tfm.cc: new function ly:load-text-dimensions
9057 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9059         * scm/output-texstr.scm (text): use \lilygetmetrics
9061         * scm/framework-texstr.scm (header): dump in new format.
9063         * tex/lilypond-tex-metrics: new file.
9064         
9065 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9067         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
9068         mapping.
9069         (index_to_charcode): New method.
9071         * scm/output-ps.scm (glyph-string): 
9072         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
9074 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9076         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
9077         implement fully, need FONT to get to charcode.
9079         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
9081         * scm: Cleanups.
9083         * Documentation/user/changing-defaults.itely: Fix internalsrefs
9084         {Tunable context properties},
9085         {All layout objects},
9086         {Music definitions}.
9088 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9090         * VERSION: release 2.5.5
9091         
9092         * lily/main.cc: use TeX as default output format.
9094         * flower/file-path.cc (find): try to open directly as well, so we
9095         find absolute path files. 
9097         * lily/pango-select.cc: new file.
9099         * scm/framework-ps.scm: remove all encoding code. 
9100         load pfb/pfa for PangoFont too.
9101         
9102         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
9104 2004-12-22  Werner Lemberg  <wl@gnu.org>
9106         Prepare glyph shapes for mf2pt1 conversion.
9108         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
9110         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
9111         (define_triangle_shape): Use it to replace `draw' with `fill' and
9112         `unfill'.  Update all callers.
9113         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
9114         (draw_cross): Ditto.
9115         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
9116         Use penrazor for better conversion with mf2pt1.
9117         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
9118         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
9119         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
9120         draw_la_head, draw_ti_head): Replace `filldraw' with
9121         `fill'.  Update all callers.
9123 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9125         * lily/paper-book.cc (output): revert: only allow a single output
9126         format.
9128         * lily/include/pango-font.hh: new file.
9130         * lily/pango-font.cc: new file.
9132         * lily/font-metric.cc (text_stencil): new routine
9134         * lily/all-font-metrics.cc (find_pango_font): new routine.
9136         * lily/include/font-metric.hh (struct Font_metric): add
9137         text_stencil()
9139         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
9141 2004-12-22  Werner Lemberg  <wl@gnu.org>
9143         Prepare glyph shapes for mf2pt1 conversion.
9145         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
9147         * mf/feta-toevallig.mf: Formatting.
9148         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
9149         ("Natural"): Fix paths to allow better postprocessing.
9150         (draw_meta_flat): Use `z3l' as additional point in path to get
9151         better conversion with mf2pt1.
9152         Other minor cleanups.
9153         ("3/4 Flat"): Add auxiliary points and modify path to replace
9154         `draw' with `fill'.
9155         ("Double Sharp"): Mirror path segments instead of picture elements
9156         to get a single outline.
9157         Modify path to replace `filldraw' with `fill'.
9159 2004-12-22  Graham Percival  <gperlist@shaw.ca>
9161         * input/test/unfold-all-repeats.ly: added file back.
9163         * Documentation/user/notation.itely,
9164         Documentation/user/programming-interface.itely
9165         Documentation/user/changing-defaults.itely: fixed misc broken
9166         links to input/test/ files.
9168 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9170         * tex/texinfo.tex: Update.  We should not be distributing this,
9171         but since we do, use latest version.
9173         * Documentation/user/macros.itexi: Comment-out \fetaflat,
9174         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
9175         macros for feta glyphs.
9177 2004-12-22  Graham Percival  <gperlist@shaw.ca>
9179         * Documentation/user/changing-defaults.itely: fix index for set.
9181         * Documentation/user/converters.itely: added convert-ly bugs list
9182         from CVS.
9184 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9186         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
9187         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
9188         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
9189         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
9191         * mf/GNUmakefile (pfa_warning): Use less broken check.
9193         * python/lilylib.py (setup_environment): Remove cruft from
9194         GS_FONTPATH.
9196         * configure.in: Bump mftrace requirement to 1.1.1.
9198 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9200         * scm/output-svg.scm (beam): Use polygon.
9202         * scm/lily-library.scm: Bugfix.
9204         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
9206         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
9208 2004-12-19  Werner Lemberg  <wl@gnu.org>
9210         Prepare glyph shapes for mf2pt1 conversion.
9212         * mf/feta-eindelijk: Some formatting.
9213         (multi_rest_x, multi_beam_height): Removed.  Unused.
9214         ("Quarter rest"): Use `intersectiontimes' to create a single
9215         outline.
9216         (rest_crook): Removed.  Unused.
9217         (draw_rest_bulb): Return path (without filling).  Update callers.
9218         Simplified.
9219         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
9220         "128th rest"): Simplify `pat'.
9221         Create single outline.
9223 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9225         * mf/GNUmakefile (ALL_GEN_FILES):
9226         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
9228         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
9229         function.
9231 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9233         * scm/output-texstr.scm (placebox): add routine
9235         * VERSION (PACKAGE_NAME): release 2.5.4
9237         * scm/framework-texstr.scm (output-framework): new file.  
9239         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
9240         processing.
9242         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
9244         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
9245         rule.
9247         * configure.in (gui_b): bump mftrace requirement to 1.1.0
9249         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
9251         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
9253 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9255         * scm/framework-svg.scm (dump-page): Implement landscape.
9257 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9259         * lily/main.cc (setup_paths): Add svg to search path.
9261         * scm/output-svg.scm:
9262         * scm/framework-svg.scm: Add pageSet.  Update.
9263         (dump-fonts): New function.
9264         (output-framework): Use it.
9266         * mf/GNUmakefile: 
9267         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
9269 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9271         * tex/lilyponddefs.tex: comment out new ifpdf code.
9273 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9275         * GNUmakefile.in: 
9276         * SConstruct (symlink): Replace afm by otf.
9278         * scm/framework-gnome.scm (gnome-main): Remove invocation of
9279         ly:pango-add-afm-decoder.
9281         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
9283 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9285         * scm/output-ps.scm (new-text): don't access t glyph for getting
9286         space dimension.
9288         * ly/init.ly: warn about \version
9290         * lily/lexer.ll: set version-seen?
9292 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9294         * scm/output-svg.scm (string->entities): Update.
9296 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9298         * lily/main.cc (setup_paths): replace afm by otf for path. 
9300         * lily/pangofc-afm-decoder.cc: remove.
9302         * lily/include/pangofc-afm-decoder.hh: remove.
9304         * scm/framework-scm.scm (output-framework): new file.
9306         * mf/GNUmakefile: remove SAUTER_FONTS.
9307         remove SVG/sodipodi hacks.
9309         * scm/lily-library.scm (stderr): move stderr.
9311         * mf/GNUmakefile: remove AFM support.
9313         * buildscripts/mf-to-table.py (base): remove AFM support.
9315         * lily/open-type-font.cc (design_size): use design_size
9317 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
9319         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
9321 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9323         * mf/GNUmakefile: Generate combined aybabtu info.
9324         * mf/aybabtu.pe.in (i): Load it.
9326         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
9327         are not symbols.
9329         * lily/include/open-type-font.hh (count): New method.
9331         * mf/aybabtu.pe.in: Typo.
9333         * Documentation/user/out/lilypond-internals.nexi (Scheme
9334         functions): Typo.
9336         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
9338 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9340         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
9341         subfonts.
9343         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
9345         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
9346         (tex-font-command-raw): new function.
9348         * lily/include/virtual-font-metric.hh (Module): remove file
9350         * lily/virtual-font-metric.cc (Module): remove file.
9351         
9353         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
9354         (get_indexed_char): read bbox from lily table if present.
9356 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9358         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
9359         aybabtu.subfonts
9361         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
9362         global glyphname. Enables more than 64 glyphs in the OTF.
9364 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9366         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
9367         braces.
9369         * lily/open-type-font.cc (design_size): Use 12 as default for
9370         design size.
9372         * mf/aybabtu.pe.in: New file.  Merge all our braces.
9374         * mf/GNUmakefile: Generate aybabtu.
9376         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
9378 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9380         * scm/lily-library.scm (char->unicode-index): Remove.
9382         * scm/output-gnome.scm (text): Bugfix for plain string input.
9383         Updates.
9385         * scm/output-svg.scm (svg-font): Add weight to font selection.
9387 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9389         * Documentation/topdocs/INSTALL.texi (Top): Point to
9390         buildscripts/out/clean-fonts instead of
9391         buildscripts/clean-fonts.sh. 
9393 2004-12-13  Graham Percival  <gperlist@shaw.ca>
9395         * input/regression/figured-bass.ly: attempt to clarify text.
9397         * Documentation/user/notation.tely: add cindex for tag, attempt to
9398         add figured bass example.
9400         * Documentation/user/changing-defaults: basic editing.
9402 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9404         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
9406         * lily/open-type-font.cc (LY_DEFINE): new function
9407         ly:font-sub-fonts
9409         * lily/include/font-metric.hh (struct Font_metric): new method
9410         sub_fonts()
9412         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
9413         . with - in add.stem.
9414         
9415 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9417         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
9418         and fetaDynamic.
9420         * lily/rest.cc (glyph_name): Change - to . .
9422         * scm/output-gnome.scm (text): Hello world, again.
9424         * scm/output-svg.scm (named-glyph): New function.  Hello world!
9426         * lily/modified-font-metric.cc (index_to_charcode): New method.
9428         * lily/include/font-metric.hh (index_to_charcode): New function.
9430         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
9431         new function.
9432         (ly:font-glyph-to-index): Remove.
9434 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9436         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
9438         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
9440         * lily/open-type-font.cc (load_scheme_table): new function
9442         * lily/dots.cc (print): replace - 
9444         * lily/open-type-font.cc (attachment_point): new function.
9445         (load_table): read LILC table
9447         * buildscripts/gen-bigcheese-scripts.py (Module): new
9448         file. Generate FF scripts.
9450         * mf/feta-din10.mf: idem.
9452         * mf/feta-nummer10.mf: remove mf files.
9454         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
9456 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9458         * lily/lily-guile.cc: Use scm_from_locale_stringn.
9460         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
9461         compatibility.
9463 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9465         * lily/open-type-font.cc (get_indexed_char): scale metrics by
9466         design-size and units_per_EM.
9468         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
9470 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9472         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
9473         does not crash fontforge.
9475         * scm/lily-library.scm (char->unicode-index): Hack to map onto
9476         PUA.
9478 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9480         * scm/framework-ps.scm (ps-embed-cff): new function.
9482         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
9484 2004-12-12  Werner Lemberg  <wl@gnu.org>
9486         * mf/bigcheese.pe.in: Add PUA mapping.
9487         Don't create Type 42 but bare CFF font.
9489 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9491         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
9492         within canvas boundaries.
9494         * mf/merge.pe.in: Set font names, version, license GPL.
9496         * make/substitute.make: Add FONTFORGE.
9498         * config.make.in (FONTFORGE): Add.
9500         * configure.in (gui_b): Use PATH_PROG for fontforge.
9502 2004-12-11  Graham Percival  <gperlist@shaw.ca>
9504         * scm/define-markup-commands.scm: add baseline-skip to info
9505         about \column.
9507 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9509         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
9511         * scm/output-gnome.scm (named-glyph): Use it.
9513         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
9515         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
9516         (upper_string, lower_string, reverse_string): Remove.
9518         * configure.in (fontforge): Reinstate version check.
9520         * ly/engraver-init.ly: Fix clef glyph names.
9522         * lily/time-signature.cc (special_time_signature): Fix fraction
9523         glyph names.
9525 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9527         * mf/merge.pe: new file.
9529         * lily/freetype.cc: new file.
9531         * lily/include/open-type-font.hh (class Open_type_font): new file.
9533         * lily/include/freetype.hh: new file.
9535         * lily/open-type-font.cc: new file.
9537         * lily/all-font-metrics.cc (find_otf): new function.
9539 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9541         * lily/time-signature.cc (special_time_signature): Fix.
9543         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
9544         GTK2 before checking for pango.  Fixes -fgnome.
9546         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
9547         Scheme name.
9549         * scm/define-markup-commands.scm:
9550         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
9552         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
9554         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
9555         date versions.  Fixes configure.
9556         (STEPMAKE_CHECK_VERSION): Support optional actual program version
9557         argument.
9559 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9561         * buildscripts/mf-to-table.py (write_ps_encoding): write real
9562         names in .enc
9564         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
9566 2004-12-09  Graham Percival  <gperlist@shaw.ca>
9568         * Documentation/user/changing-defaults.itely: add info about
9569         make-dynamic-script
9571         * Documentation/user/notation.itely: add link in dynamics to
9572         section about make-dynamic-script.
9574 2004-12-09  Christian hitz  <chhitz@gmx.net>
9576         * lily/lily-guile.cc: change MACOS_X to __APPLE__
9578 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9580         * buildscripts/mf-to-table.py (parse_logfile): use . for
9581         concatting name and group.
9582         (parse_logfile): use M for Minus (negative.)
9584         * lily/include/type-swallow-translator.hh
9585         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
9587         * lily/*.cc: cosmetics around = sign.
9589         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
9590         lyric spacing on the penultimate column.
9592 2004-12-05  Christian Hitz  <chhitz@gmx.net>
9594         * configure.in:
9595         * lily/accidental-placement.cc:
9596         * lily/bar-line.cc:
9597         * lily/beam-concave.cc:
9598         * lily/beam-quanting.cc:
9599         * lily/beam.cc:
9600         * lily/bezier-bow.cc:
9601         * lily/bezier.cc:
9602         * lily/break-align-interface.cc:
9603         * lily/custos.cc:
9604         * lily/dimension-cache.cc:
9605         * lily/dot-column.cc:
9606         * lily/font-metric.cc:
9607         * lily/font-select.cc:
9608         * lily/gourlay-breaking.cc:
9609         * lily/grob-property.cc:
9610         * lily/grob.cc:
9611         * lily/lily-guile.cc:
9612         * lily/line-spanner.cc:
9613         * lily/lookup.cc:
9614         * lily/lyric-extender.cc:
9615         * lily/lyric-hyphen.cc:
9616         * lily/mensural-ligature.cc:
9617         * lily/midi-def.cc:
9618         * lily/misc.cc:
9619         * lily/note-collision.cc:
9620         * lily/note-column.cc:
9621         * lily/note-head.cc:
9622         * lily/paper-outputter.cc:
9623         * lily/percent-repeat-item.cc:
9624         * lily/rest-collision.cc:
9625         * lily/side-position-interface.cc:
9626         * lily/simple-spacer.cc:
9627         * lily/slur-configuration.cc:
9628         * lily/slur-scoring.cc:
9629         * lily/slur.cc:
9630         * lily/spaceable-grob.cc:
9631         * lily/spacing-spanner.cc:
9632         * lily/spanner.cc:
9633         * lily/staff-symbol-referencer.cc:
9634         * lily/stem.cc:
9635         * lily/stencil.cc:
9636         * lily/system-start-delimiter.cc:
9637         * lily/system.cc:
9638         * lily/text-item.cc:
9639         * lily/tie.cc:
9640         * lily/tuplet-bracket.cc:
9641         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
9642         <cmath> beacause isinf/isnan is undefined in <cmath>
9644 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9646         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
9648 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9650         * VERSION: release 2.5.3
9651         
9652 2004-11-29  Arno Waschk <arno@arnowaschk.de>
9654         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
9656 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9658         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
9660         * lily/note-head.cc (internal_print): always try the "s" head if
9661         u/d not found.
9663         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
9665 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9667         * mf/parmesan-heads.mf (overdone_heads): typos.
9669 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9671         * lily/parser.yy (markup): in markups, { .. } without command
9672         before are also flattened, ie \line must be explicitely used.
9674         * Documentation/user/changing-defaults.itely:
9675         * Documentation/user/notation.itely: 
9676         * input/wilhelmus.ly: 
9677         * input/regression/instrument-name-markup.ly: 
9678         * input/regression/markup-score.ly: 
9679         * input/regression/new-markup-scheme.ly: 
9680         * input/regression/new-markup-syntax.ly: 
9681         * input/test/coriolan-margin.ly: use \line in markups where
9682         appropriate
9683         
9684 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9686         * scm/new-markup.scm (map-markup-command-list): helper function
9687         used in parser.yy to map markup commands on a markup list.
9689         * lily/parser.yy: get rid off < > in markups by treating { } as
9690         real lists.
9692         * lily/lexer.ll: remove < > from markup lexer mode.
9694         * scripts/convert-ly.py (conv): add rule for converting 
9695         \markup < > to \markup { }
9697         * ly/titling-init.ly: 
9698         * input/test/coriolan-margin.ly: 
9699         * input/regression/new-markup-syntax.ly: 
9700         * input/regression/new-markup-scheme.ly: 
9701         * input/regression/multi-measure-rest-text.ly: 
9702         * input/regression/markup-stack.ly: 
9703         * input/regression/markup-score.ly: 
9704         * input/regression/instrument-name-markup.ly: 
9705         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
9706         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
9707         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
9708         * input/wilhelmus.ly: 
9709         * Documentation/user/notation.itely: 
9710         * Documentation/user/music-glossary.tely: 
9711         * Documentation/user/changing-defaults.itely: change < > to { } in
9712         markups
9714 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9716         * lily/accidental-placement.cc (position_accidentals): shortcut if
9717         no accidentals to place.
9719 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9721         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
9722         typo s/ly:dimension ?/ly:dimension?/
9724         * input/regression/lily-in-scheme.ly: 
9725         * input/regression/music-function.ly: 
9726         * ly/spanners-init.ly (assertBeamSlope): 
9727         * scm/music-functions.scm (def-grace-function): add the paper
9728         argument to music function definitions.
9730 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9732         * lily/moment.cc (LY_DEFINE):
9733         ly:moment-main-{denominator,numberator}, new function.
9735         * lily/score-engraver.cc (typeset_all): assign to column on basis
9736         of axis-group-parent-X setting.
9738         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
9739         add_element() on basis of axis-group-parent-Y setting.
9741         * lily/grob.cc: add axis-group-parent-{XY} properties.
9743         * input/regression/spacing-stick-out.ly: new file.
9745         * lily/simple-spacer.cc (add_columns): use binary search for
9746         setting column rods. Changes O(n^2) to O(n log(n)) for
9747         constructing spacing problem from columns.
9748         (add_columns): read allow-outside-line to make sure no texts stick
9749         out.
9750         (solve): Simple_spacer::is_active() only determines
9751         satisfies_constraints_ for non-ragged typesetting.
9753         * lily/simultaneous-music.cc (to_relative_octave): only set
9754         old_relative_used if return pitch actually changed.
9756         * scm/define-context-properties.scm
9757         (all-user-translation-properties): change to match implementation.
9759         * python/lilylib.py: Replace re.match by re.search and adds "-c
9760         showpage" to the gs command line (Johannes Schindelin)
9762         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
9763         before processing. Prevents crash when inf is in the extent.
9765         * scm/define-markup-commands.scm (note-by-number): add "s" to
9766         "noteheads-" glyphname.
9768         * lily/parser.yy (Generic_prefix_music): supply parser argument to
9769         music function as well.
9770         
9771 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9773         * VERSION: release 2.5.2
9775         * Documentation/user/changing-defaults.itely (Creating titles):
9776         add breakbefore variable.
9778         * lily/paper-book.cc (set_system_penalty): new function. Set
9779         penalty_ based on breakBefore setting
9781         * lily/context-specced-music-iterator.cc (construct_children):
9782         interpret special context id $uniqueContextId 
9784         * lily/context.cc (create_unique_context): new method. Move
9785         creation of unique (\new) contexts into interpreting phase. This
9786         makes
9788           foo= \new Staff ..
9789           << \foo \foo >>
9791         produce 2 staves.
9792         
9794         * scm/define-music-properties.scm (all-music-properties): add
9795         quoted-voice-direction
9797         * ly/music-functions-init.ly: killCues function.
9799         * scm/music-functions.scm (cue-substitute): move creation of voice
9800         contexts further to the back. 
9802 2004-11-25  Werner Lemberg  <wl@gnu.org>
9804         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
9805         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
9807 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
9809         * buildscripts/guile-gnome.sh: Fixed typo.
9811 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9813         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
9815         * scripts/abc2ly.py (dump_slyrics): add ord(). 
9817         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
9818         to regular engraver. 
9820 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9822         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
9824 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9826         * scm/define-markup-commands.scm (fill-line): Typo.
9828         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
9829         and newer.
9831 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
9833         * ly/dynamic-scripts-init.ly: Fixed typo.
9835 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9837         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
9838         note-head, to have different attachment points for up and down.
9840         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
9842         * mf/feta-generic.mf (else): remove solfa.
9844         * mf/feta-bolletjes.mf (tishape): remove unicode test.
9846         * scm/define-context-properties.scm
9847         (all-user-translation-properties): add shapeNoteStyles property.
9849         * lily/shape-note-heads-engraver.cc (process_music): new file.
9851         * lily/event.cc (transpose): call Event::transpose() for
9852         transposing the tonic.
9854 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9856         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
9857         Unicode/OpenType and AFM.
9859         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
9861 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9863         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
9865         * lily/context.cc (Context): unprotect key from ctor.
9867         * scm/stencil.scm (stack-lines): return empty-stencil if argument
9868         is '()
9869         (stack-stencils): idem.
9871         * Documentation/user/changing-defaults.itely (Creating titles):
9872         document new title layout options.
9874         * lily/parser.yy (lilypond_header_body): copy previous
9875         $globalheader if present.
9877         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
9878         ly:module-copy
9879         
9880         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
9882         * scm/titling.scm: remove old titling functions
9884         * lily/stencil.cc (translate): remove absolute dimension.
9886         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
9887         via markup.
9889         * scm/page-layout.scm (marked-up-headfoot): create header/footer
9890         field from user-supplied markup
9892         * scm/define-markup-commands.scm (on-the-fly): new markup
9893         command. Enter SCM markup procedure directly in Scheme.
9894         (fromproperty): new markup command. Read markup from props argument.
9896         * scm/titling.scm (marked-up-title): create title via
9897         user-specified markup. 
9899         * scm/define-markup-commands.scm (column): remove empty stencils
9900         from column.
9902         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
9903         not have side-effect of creating variable stub.
9905         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
9907 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9909         * scm/encoding.scm (coding-alist): 
9910         * scm/font.scm (add-ec-fonts):
9911         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
9912         Extended-TeX-Font-Encoding---Latin.
9914         * lily/side-position-interface.cc (general_side_position): Add
9915         actual offset to error message (avoid constant error messages).
9917         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
9918         block.
9920         * lily/font-select.cc (select_encoded_font)
9921         (get_font_by_mag_step, get_font_by_design_size): 
9922         * lily/modified-font-metric.cc (Modified_font_metric): 
9923         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
9925         * scm/encoding.scm (coding-alist): Add fetaDynamic.
9926         (read-encoding-file): Bugfix: do not require space after bracket.
9928         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
9929         these do not exist.
9931 2004-11-20  Graham Percival  <gperlist@shaw.ca>
9933         * Documentation/user/notation.itely: added info about typesetting
9934         boxed bar numbers.
9936 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9938         * flower/interval.cc (T_to_string): gcc4 fixes.
9940         * scm/define-markup-commands.scm (fill-line): use
9941         stack-stencils. This fixes problems with putting already centered
9942         stencils in a line.
9944         * VERSION: release 2.5.1
9946         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
9948 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9950         * input/example-[1-3].ly: simplify.
9952         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
9954         * scm/output-ps.scm (new-text): new function. Use glyphshow to
9955         show glyphs.
9957         * scm/encoding.scm (decode-byte-string): new function.
9959         * scripts/convert-ly.py (conv): add warning about
9960         set-global-staff-size.
9962         * Doxyfile: add. 
9964         * scripts/convert-ly.py (conv): add raggedlastbottom rule
9965         (conv): warn for TextSpanner split.
9966         (conv): warn for textheight.
9968 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9970         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
9971         building the documentation, info with images are installed.
9972         (final-install): Fix description.  Mention sourcing of login
9973         scripts (instead of running).
9975 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9977         * Debian lmodern support.  Note that LilyPond will issue warnings
9978         
9979             no such encoding: "FontSpecific"
9981           The font selection mechanism wants to get the encoding from the
9982           font itself, but the idea of lmodern is that it is usable with
9983           different encodings, ie, Lily should get the encoding from the
9984           font tree, rather than the font itself.  This would require some
9985           more work.
9986         
9987         * configure.in: Test for and accept lmodern if EC fonts not found.
9989         * scm/framework-tex.scm (font-load-command): TeX font name
9990         mangling for latin1 encoded cork-lm fonts.
9991         (convert-to-ps): Load lm.map if available.
9993         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
9994         available.
9996         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
9998         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
9999         available.
10001         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
10002         path for absolute file name, that is silly.
10004         * lily/score-engraver.cc (initialize): 
10006         * Documentation/user/GNUmakefile (local-install-info): Invoke
10007         install-info --remove first.
10009         * #include cleanup (Andreas Scherer).
10011 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
10013         * input/test/script-abbreviations.ly: fix typos.
10015 2004-11-17  Werner Lemberg  <wl@gnu.org>
10017         * python/lilylib.py (options_help_str): Support pretty-printing of
10018         newlines in fourth element of option description.
10020         * scripts/lilypond-book.py (option_definitions): Use new lilylib
10021         feature.
10022         Sort options.
10024         * Documentation/user/lilypond-book.itely: Finish update.
10026 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10028         * Documentation/user/macros.itexi: Add comment about \command.
10030         * Documentation/user/lilypond.tely:
10031         * Documentation/user/lilypond-book.itely: Fix names of lilypond
10032         and lilypond-book nodes, so that `info lilypond' visits the manual
10033         at top level, and `info lilypond-book' visits the lilypond-book
10034         section.
10036         * Documentation/user/GNUmakefile (local-install-info): Fix rules
10037         and packager messages.
10039         * lily/pangofc-afm-decoder.cc: Update test.
10041 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10043         * scm/lily-library.scm (char->unicode-index): New function.
10045         * scm/output-gnome.scm: 
10046         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
10048         * Proper naming of file name throughout; s/filename/file[-_]name/.
10050         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
10052         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
10054 2004-11-16  Werner Lemberg  <wl@gnu.org>
10056         * scripts/lilypond-book.py: The Lord has commanded me to use only
10057         tabs for indentation.  Your humble servant obeys.
10059 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10061         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
10062         including font, if LilyPond-feta font is only feta font in path.
10064         * scm/output-gnome.scm (text): Revert to file name of font if font
10065         has no name.  Fixes ec font selection.
10066         (char): Bugfix: do not utf8 twice.  Fixes clefs.
10068         * scm/framework-svg.scm:
10069         * scm/output-svg.scm: New file.  TODO: figure out how to
10070         do character by index in font.
10072         * scm/output-sodipodi.scm: Remove.
10074         * scm/output-ps.scm (stem): Remove.
10076 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10078         * scm/output-gnome.scm (beam): New function.
10079         (slur): Round corners.
10080         (round-filled-box): Round corners.
10082 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10084         * scm/output-gnome.scm (beam): add function.
10085         (draw-line): new routine.
10086         (dashed-line): stub; call draw-line
10087         (polygon): new routine.
10089 2004-11-15  Werner Lemberg  <wl@gnu.org>
10091         * Documentation/user/lilypond-book.itely: Revise section on
10092         lilypond-book options.
10093         Other minor fixes.
10095         * scripts/lilypond-book.py: Change indentation to 4.
10096         Minor formatting.
10098 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10100         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
10101         grobs that have tweaks specced.
10102         
10103 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
10105         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
10107 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10109         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
10110         actual char #, not 0 based index.
10112         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
10114         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
10115         Warning: do make -C mf clean.
10117         * lily/context-property.cc: Compile fix.
10119         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
10120         Grok ec-fonts, braces and dynamics.
10122         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
10124 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10126         * lily/include/tweak-registration.hh: new file.
10128         * lily/tweak-registration.cc: new file.
10130         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
10131         saving tweaks.
10133         * scm/output-gnome.scm (text): comment dribble.
10135 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10137         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
10139         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
10140         path-def before using.  Fixes muchtomany slurs in wrong places
10141         bug.
10143 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10145         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
10147         * lily/include/object-key-undumper.hh (Module): new file.
10149         * lily/object-key-undumper.cc (Module): New file. Deserialize
10150         keys. SCM bindings
10152         * lily/object-key-dumper.cc (Object_key_dumper): idem.
10153         Provide SCM bindings.
10155         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
10156         new file. Serialize object keys.
10157         
10158         * lily/object-key.cc (dump): new function.
10159         (as_scheme): new virtual function
10160         (undump): new function
10161         (undumpers): new table.
10163         * lily/include/global-context.hh (Context): take \score key upon init.
10165         * lily/object-key-dumper.cc (serialize_key): new file.
10167         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
10169         * lily/lily-lexer.cc: remove \quote.
10171         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
10173         * lily/context.cc (Context): take key argument in ctor.
10174         (create_context): new function
10176         * lily/grob.cc (Grob): take key argument in ctor.  
10178         * lily/lilypond-key.cc (do_compare): new file.
10180         * lily/object-key.cc (Object_key): new file.
10182         * lily/include/object-key.hh (class Object_key): new file.
10184         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
10186 2004-11-13  Graham Percival  <gperlist@shaw.ca>
10188         * Documentation/user/lilypond-book.itely: add small warning about
10189         noindent default in lilypond-book.
10191         * Documentation/user/converters.itely: add examples for convert-ly.
10193         * Documentation/user/examples.itely: change version string in templates
10194         to 2.4.0.
10196 2004-11-12  Karl Hammar  <karl@aspodata.se>
10198         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
10199         cmdline, use xargs instead (backportme)
10201 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
10202         
10203         * Documentation/user/: Numerous fixes in the user manual.
10205 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10207         * lily/parser.yy (re_rhythmed_music): search music expression for
10208         context-id, surround by \new Voice if not found. Fixes:
10209         addlyrics-second-staff.ly
10211         * VERSION: 2.5.0 released.
10212         
10213 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10215         * Documentation/index.html.in: Fix url to one big page.  (backportme)
10217         * Documentation/user/GNUmakefile: Separate rules for split and
10218         unsplit html documents.  Remove perl massaging.  (backportme)
10220 2004-11-11  Graham Percival  <gperlist@shaw.ca>
10222         * Documentation/user/lilypond-book.itely: add short warning about
10223         \lilypond{} in LaTeX docs.
10225 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10227         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
10228         found.  (backportme)
10230         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
10231         version requirement.  (backportme)
10233         * configure.in: Be explicit about old versions of
10234         ec-fonts-mtraced.  (backportme)
10236         * lily/context-selector.cc (set_tweaks): New function.
10237         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
10238         web with -DTWEAK.
10240         * Documentation/user/introduction.itely (Automated engraving):
10241         Remove fragment option.  Fixes web.
10243         * lily/context-property.cc (make_item_from_properties):
10244         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
10245         #ifdef.
10247         * scm/define-context-properties.scm
10248         (all-internal-translation-properties): Add tweakRank and tweakCount.
10250         * lily/grob.cc: 
10251         * scm/define-grob-properties.scm (all-internal-grob-properties):
10252         Add tweak-rank and tweak-count.
10254 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10256         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
10257         New function.
10258         (text): Use them.
10260         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
10261         animated/opaque grob dragging tweaks.
10263         * buildscripts/guile-gnome.sh: Update.
10265 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10267         * scm/define-grobs.scm (all-grob-descriptions): Added
10268         line-interface to the LigatureBracket object.
10270 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10272         * scm/framework-gnome.scm (item-event): Support non-animated mouse
10273         dragging tweaks.
10275         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
10277         * lily/context-selector.cc (store_context): New function.
10279         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
10280         (store_grob): New function.
10281         (identify_grob): Add Moment parameter.
10283         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
10284         exists.
10286         * scm/framework-gnome.scm (save-tweaks): Write as alist.
10288 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10290         * scm/framework-gnome.scm (item-event): Print grob id.
10291         (save-tweaks): New function.
10292         (tweak): New funtion.
10293         (item-event): Use it, bound to arrow keys.
10295         * lily/context-property.cc (make_item_from_properties): Register grob.
10296         * lily/context.cc (add_context): Register context.
10298         * lily/include/context-selector.hh:
10299         * lily/include/grob-selector.hh:
10300         * lily/context-selector.cc:
10301         * lily/grob-selector.cc: New file.
10303 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10305         * lily/slur.cc: add 'positions to interface
10307         * lily/main.cc: reinstate PS as standard output format. 
10309         * scm/framework-tex.scm (output-preview-framework): print systems
10310         up to first non title system.
10312         * lily/grace-engraver.cc (start_translation_timestep): split
10313         scm_cadddr
10314         
10315 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10317         * lily/quote-iterator.cc (Module): remove old quote-iterator
10319         * scm/define-music-types.scm (music-descriptions): move
10320         NewQuoteMusic over QuoteMusic
10322         * Documentation/user/notation.itely (Formatting cue notes): use
10323         \cueDuring.
10325         * lily/new-quote-iterator.cc (quote_ok): new function.
10327         * input/regression/quote-cue-during.ly: new file.
10329         * input/regression/quote-grace.ly: new file.
10331         * scm/define-context-properties.scm (Module): change definition of
10332         graceSettings
10334         * lily/context-property.cc (Module): rename from
10335         translator-property.cc
10337         * lily/context.cc (context_name_symbol): new function
10339         * lily/grace-engraver.cc: new file. Set properties for grobs based
10340         on the grace-ness of now_moment().
10342         * scm/music-functions.scm (add-grace-property): use list
10343         iso. vector for graceSettings
10344         remove set-{start,stop}-grace-properties. 
10346         * lily/new-quote-iterator.cc (construct_children): set
10347         quote_outlet_ if no quoted-context-{id,type} specified.
10349         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
10351         * lily/parser.yy (command_element): remove \quote.
10353         * ly/music-functions-init.ly (location): add quoteDuring music
10354         function. 
10356         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
10357         optional semicolon. (backportme)
10359 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10361         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
10362         need to link to GUILE et al.
10364 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10366         * scm/define-music-properties.scm (all-music-properties): add
10367         quoted-context-type, quoted-context-id.
10369         * scm/lily.scm (type-check-list): new function.
10370         
10371         * scm/lily-library.scm: new file. Generic library routines.
10373         * lily/parser.yy (Generic_prefix_music): move typechecking out of
10374         parser.
10376         * ly/music-functions-init.ly: add quoteDuring function.
10378         * lily/include/music-iterator.hh (class Music_iterator): rename
10379         set_translator -> set_context
10381         * lily/parser.yy (Generic_prefix_music_scm): add
10382         MUSIC_FUNCTION_SCM_SCM_MUSIC
10384         * scm/lily.scm (sanitize-command-option): new function. (backportme)
10386         * scm/framework-tex.scm (header): sanitize TeX paper size.
10387         (backportme)
10389 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10391         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
10393         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
10395         * scm/framework-tex.scm (font-load-command): Use T1 if no
10396         font-encoding set.  (backportme)
10398         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
10399         exists before converting.  (backportme)
10401         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
10402         exists before converting.  (backportme)
10403         (convert-to-ps): Remove .ps file if it exists before
10404         converting.  (backportme)
10406         * lily/lexer.ll: Remove extra progress newline, use present tense.
10408         * scm/paper.scm (paper-alist): public.
10409         * scm/framework-tex.scm (convert-to-ps):
10410         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
10411         command line.
10413 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10415         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
10417         * lily/recording-group-engraver.cc (derived_mark): mark
10418         now_events_. (backportme)
10420 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10422         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
10424         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
10425         invoking latex. (backportme.)
10427         * lily/stem.cc (off_callback): center stems for all rest stems.
10429 2004-11-05  Werner Lemberg  <wl@gnu.org>
10431         * Documentation/user/lilypond.tely: Add more guidelines for writing
10432         lilypond texinfo documents.
10434 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
10436         * Documentation/index.html.in: remove <hr>.
10438         * THANKS: change 2.3 to 2.4.
10440 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
10442         * scm/output-gnome.scm: More fontconfig comment.
10444 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
10446         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
10447         <package> directory in $(builddir)/share according with
10448         PACKAGE_NAME defined in the VERSION file.
10450 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10452         * lily/beam.cc (rest_collision_callback): use local beam
10453         multiplicity.
10455         * input/regression/stem-stemlet.ly: new file.
10457         * lily/stem.cc (add_head): store rests as well.
10459         * scm/define-grob-properties.scm (all-user-grob-properties): add
10460         stemlet-length
10462         * lily/stem.cc: store rests as well.
10463         
10464         * input/regression/new-slur.ly: mention forcing.
10466 2004-11-04  Werner Lemberg  <wl@gnu.org>
10468         * Documentation/user/*: A new round of layout fixes and document
10469         structure cleanup.
10471 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
10473         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
10475 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
10477         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
10479 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10481         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
10483         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
10485         * lily/main.cc (main): Invoke identify.
10487         * scm/lily.scm (postscript->pdf): Remove progress newline.
10488         Write progress to stderr.
10490         * lily/paper-book.cc (output): Remove progress newline.
10492         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
10493         gettext on user messages, and remove whitespace.
10495         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
10497         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
10498         argv[0] (Thomas Scharkowski).
10500         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
10501         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
10502         for ec-fonts-mtraced.
10504         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
10505         --srcdir build (Bertalan).
10507         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
10508         headers and library too (Laura Conrad).
10510         * Documentation/topdocs/INSTALL.texi (Top): Mention development
10511         package for guile too (Laura Conrad).
10513         * lily/main.cc (usage): Typo.
10515 2004-11-02  Werner Lemberg  <wl@gnu.org>
10517         * Documentation/user/notation.ly: More fixes to improve appearance.
10519         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
10520         better output for multicolumn tables.
10522 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10524         * lily/main.cc (dir_info): Fixed typo in the printouts.
10526 2004-11-01  Werner Lemberg  <wl@gnu.org>
10528         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
10529         of output.
10530         Set `per_line' to 2; replace hard-coded value with it.
10532         * Documentation/user/*: Many fixes to improve appearance of
10533         printed manual.
10535 2004-11-01  Werner Lemberg  <wl@gnu.org>
10537         * Documentation/user/changing-defaults.itely,
10538         Documentation/user/notation.ly,
10539         Documentation/user/programming-interface.itely: Use @/.
10540         Fix formatting of some lilypond snippets and tables.
10542         * scripts/lilypond-book.py (compose_ly): Provide useful default
10543         for LINEWIDTH in `override'.
10545 2004-10-31  Graham Percival  <gperlist@shaw.ca>
10547         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
10549 2004-10-31  Werner Lemberg  <wl@gnu.org>
10551         Resetting @exampleindent to `5' gives ugly results with texinfo's
10552         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
10553         (if not quoting) to change @exampleindent only locally.
10555         * scripts/lilypond-book.py (NOQUOTE): New variable.
10556         (output) [LATEX]: Remove AFTER and BEFORE.
10557         [TEXINFO]: Remove AFTER and BEFORE.
10558         Fix QUOTE and VERBATIM pattern.
10559         Add NOQUOTE pattern.
10560         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
10561         and BEFORE.
10562         [output_texinfo]: Use NOQUOTE.
10564 2004-10-31  Graham Percival  <gperlist@shaw.ca>
10566         * Documentation/user/changing-defaults.itely: clarify paper
10567         size commands with correct info.
10569         * Documentation/user/lilypond-book.itely: add more docs for
10570         filename extensions.
10572 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10574         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
10575         (PATCH_LEVEL): start 2.5.0.
10577 #Local variables:
10578 #coding: utf-8
10579 #End: