* flower/file-path.cc (find): Bugfix: Return name of file found.
[lilypond/patrick.git] / ChangeLog
blobccacdb8c0ae79b77bdc67ad452622d5f86595f44
1 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * flower/file-path.cc (find): Bugfix: Return name of file found.
5         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6         (setup_paths)[__CYGWIN__ || __MINGW32__ || ]: Normalize argv0.
7         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
9 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
13         * VERSION (PATCH_LEVEL): release 2.7.15
15         * lily/*:  cs.uu.nl -> xs4all.nl
17         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
18         spec files.
20         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
22 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
24         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
26         * lily/staff-performer.cc (process_music): add audio
27         elements. This makes MIDI instrument changes work once again.
29         * lily/main.cc (LY_DEFINE): add gmane address.
31         * lily/beam.cc: remove calc_positions()
33         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
34         original_ in private scope.
35         (class Grob): drop pscore_ pointer, change to output_def pointer.
36         (class Grob): cleanup class definition.
38         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
40 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
42         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
43         absolute.  Better diagnostics.
45         * GNUmakefile.in: Add bin/ to tree and populate with some links.
46         This makes lilypond run from the build directory using argv0
47         relocation (without any --prefix or LILYPONDPREFIX setting).
49 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
51         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
53         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
54         with simple-closure.
56         * lily/self-aligment-interface.cc (set_align_self): new function
57         (set_center_parent): new function.
59         * lily/side-position-interface.cc (set_axis): new function.
61         * lily/new-fingering-engraver.cc (position_scripts): use drul for
62         generic code. 
64         * scm/define-grob-properties.scm (all-user-grob-properties):
65         remove [XY]-offset-callbacks add [YX]-offset
66         
67 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
69         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
70         entry for time signatures after breathing signs. Bug report by
71         Scott Russell.
73 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
75         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
76         not absolute, make it absolute using PATH.
78 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
80         * python/midi.c (initmidi): Fix type for mingw.
82 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
84         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
86         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
87         cross compiling.
89         * stepmake/aclocal.m4: Support python cross compiling.
91         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
92         Add mingw section.
94 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
96         * scm/output-lib.scm (chain-grob-member-functions): replace
97         chained-callback.cc
99         * lily/chained-callback.cc (Module): remove file.
101         * lily/rest-collision.cc (force_shift_callback_rest): change to
102         chained callback.
104         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
106         * lily/grob.cc (y_parent_positioning): remove axis argument from
107         parent_positioning callbacks.
108         (Grob): junk init code
109         (get_offset): use generic property callbacks for
110         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
111         (axis_parent_positioning): new function
112         (axis_offset_symbol): new function
113         (chain_offset_callback): new function
114         (add_offset_callback): new function
116         * lily/beam.cc (rest_collision_callback): change signature; this
117         is now a chained callback.
119         * lily/include/dimension-cache.hh (class Dimension_cache): remove
120         callback administration.
122         * lily/simple-closure.cc: new file. Smob type that allows "grob
123         member functions",
125             (ly:make-simple-closure FUNC A B)
127         is evaluated as (FUNC grob A B). This allows chaining of callbacks
128         in various ways.
130         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
131         callbacks.
133         * lily/slur.cc (outside_slur_callback): take 2 arguments.
135         * lily/rest.cc (polyphonic_offset_callback): remove.
137         * lily/script-engraver.cc (try_music): remove bool* argument.
139         * scm/script.scm (default-script-alist): set quantize-position
140         appropriately.
142         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
144         * lily/side-position-interface.cc (aligned_side): move staff
145         position quantization from
146         Side_position_interface::quantised_position().
147         (quantised_position): remove
148         
149 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
151         * input/regression/beam-quant-standard.ly: reindent, set
152         debug-beam-quanting to #t.
154         * lily/beam-concave.cc (calc_concaveness): set concaveness to
155         10000 if this is a "hard" concave beam.
157         * lily/beam.cc (calc_least_squares_positions): change from
158         calc_least_squares_dy
159         (set_stem_lengths): this is now a chained callback.
161         * lily/context-property.cc (execute_general_pushpop_property):
162         bugfix override with procedure should have effect.
164         * scm/define-grob-properties.scm (all-internal-grob-properties):
165         remove position-callbacks.
167         * scm/define-grobs.scm (all-grob-descriptions): use
168         ly:make-callback-chain for positions property.
170         * scm/layout-beam.scm (check-quant-callbacks): return list of
171         chained callbacks.
173         * scm/lily.scm (type-p-name-alist): add callback-chain
175         * lily/lily-guile.cc (type_check_assignment): type check failure
176         is warning not message.
178         * lily/grob-property.cc (try_callback): walk callback chain if
179         appropriate.
181         * lily/chained-callback.cc: new file. new smob type.
183         * lily/lily-guile.cc (procedure_arity): new function.
185 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
187         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
189 2005-10-25  John Mandereau  <john.mandereau@free.fr>
191         * Documentation/user/instrument-notation.itely (Figured bass):
192         describe new features
194 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
196         * lily/beam.cc (calc_least_squares_dy): use property callback.
198         * lily/beam-concave.cc (calc_concaveness): use property callback.
200         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
202 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
204         * HACKING: Update.
206 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
208         * scm/layout-page-layout.scm (page-headfoot): annotate
209         pagetopspace too.
211         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
213         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
214         doesn't take y-space.
216         * scm/paper.scm (paper-alist): fix A7 dimensions. 
218 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
220         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
221         src-wildcard, remove $(wildcard).
223         * po/GNUmakefile (PO_FILES): 
224         * ps/GNUmakefile (PS_FILES): 
225         * tex/GNUmakefile (TEX_FILES): 
226         * cygwin/GNUmakefile (POSTINSTALLS):
227         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
228         some wildcard calls.
230 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
232         * THANKS: add Thomas Bushnell.
234 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
236         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
237         (lilypond-main): Redirect to gui-main if 'gui is set.
238         Backportme.
240         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
241         for alternative installations kludging s/share/lib/g
242         LILYPONDPREFIX. Backportme.
244         * SConstruct (libdir_package_version): Define.
246         * python/SConscript: 
247         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
248         module in libdir.  Backportme.
250 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
252         * lily/main.cc: clarify --safe.
254 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
256         * VERSION: release 2.7.14
257         
258         * Documentation/user/*.itely: remove minimumVerticalExtent.
260         * scm/define-grobs.scm (all-grob-descriptions): remove
261         RemoveEmptyVerticalGroup
263         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
265         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
266         compile on MOSX
268         * python/convertrules.py (conv): add rules.
270         * lily/grob.cc: remove is_empty()
272         * lily/grob-property.cc: remove add_to_list_property().
274         * scripts/convert-ly.py (datadir): add prefix switching hack to
275         .py too.
277         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
278         space-function tweak.
280         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
282         * scm/define-grob-properties.scm (all-user-grob-properties):
283         remove callback property.
285         * lily/include/grob.hh (class Grob): remove property_callbacks_
286         member. Properties of procedure type are assumed to be callbacks.
288         * lily/ligature-engraver.cc (override_stencil_callback):
289         rewrite. Use noteHeadLigaturePrimitive as source.
291         * scm/define-grob-properties.scm (all-internal-grob-properties):
292         remove ligature-primitive-callback
294         * lily/include/dimension-cache.hh (class Dimension_cache): make
295         class, with Grob as friend.
297         * lily/grob.cc: remove set_extent_callback(), set_extent() and
298         has_extent_callback()
300         * scm/translation-functions.scm (format-new-bass-figure): read
301         figuredBassPlusDirection
303         * scm/define-context-properties.scm
304         (all-user-translation-properties): add figuredBassPlusDirection.
306         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
308         * lily/align-interface.cc (set_ordered): new function.
310         * lily/grob.cc (flush_extent_cache): rewrite.
312         * lily/dimension-cache.cc (Dimension_cache): cache extent as
313         Interval pointer directly.
315         * lily/main.cc (setup_paths): insert extra / .
316         (setup_paths): junk cff entry.
318         * lily/font-config.cc (init_fontconfig): only add type1 / otf
319         directories.
321         * lily/axis-group-engraver.cc (finalize): remove
322         extraVerticalExtent, minimumVerticalExtent verticalExtent.
324         * lily/grob.cc (Grob): don't set extent from ctor.
325         (extent): use property callbacks. 
327         * lily/axis-group-interface.cc: remove set_axes() function.
329         * lily/grob-property.cc (del_property): new function.
331 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
333         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
334         
335 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
337         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
339 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
341         * mf/SConscript: Updates.
343         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
345         * stepmake/stepmake/*:
346         * */GNUmakefile:
347         * config.make.in:
348         * GNUmakefile.in:
349         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
350         from any directory in build-dir.  Cleanups.
352         * make/srcdir.make.in: Remove.
354         * lily/main.cc (setup_paths): Fix and document build-dir hack.
356         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
357         main).
359         * lily/SConscript: Remove ttftools.
361         * SConstruct: Resurrect.
363 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
365         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
366         Y coordinate. 
368         * lily/paper-book.cc (add_score_title): put Paper_score title into
369         systems_ list.
371         * scm/translation-functions.scm (format-new-bass-figure): also
372         allow plus in combination with _
374 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
376         * VERSION: 2.7.13 released.
378         * lily/note-collision.cc (check_meshing_chords): don't wipe
379         stencil, merely set transparent.
381         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
382         (Top): document #'callbacks.
383         (Top): document nested \override.
385         * input/regression/figured-bass.ly: update for slash and pluses.
387         * input/regression/figured-bass-continuation-forbid.ly (Module):
388         new file.
390         * scm/translation-functions.scm (format-new-bass-figure): use
391         slashed-digit if diminished is set.
392         (format-new-bass-figure): add + if 'augmented is set.
394         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
396         * input/test/piano-staff-distance.ly: remove file.
398         * Documentation/user/advanced-notation.itely (Formatting cue
399         notes): use length-fraction for making stems/beams smaller.
401         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
402         modifications.
404         * lily/new-figured-bass-engraver.cc: new property
405         centerFiguredBassContinuations
407         * Documentation/user/changing-defaults.itely (Difficult tweaks):
408         use callbacks.
410         * lily/context-property.cc (execute_general_pushpop_property):
411         robustness checks.
413         * input/regression/override-nest.ly: new file.
415         * python/convertrules.py (FatalConversionError.subber): conversion
416         rule for #'callbacks
418         * input/regression/override-nest.ly: new function.
420         * lily/parser.yy (music_property_def): allow \override #'a #'b =
421         #c too. 
423         * lily/context-property.cc (lookup_nested_property): new function.
424         (evict_from_alist): new function.
425         (general_pushpop_property): new function.
426         (execute_general_pushpop_property): rewrite. Support nested
427         properties too.
429 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
431         * lily/beam.cc: use length-fraction too.
433         * scm/define-grob-properties.scm (all-user-grob-properties):
434         remove property flag-width-function
435         (all-user-grob-properties): remove space-function.
437         * scm/layout-beam.scm: remove flag-width-function.
439         * lily/beam.cc: remove flag-width-function
441         * scm/layout-beam.scm: remove beam dir functions.
443         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
445         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
446         for easier grace tweaks.
448         * lily/beam.cc: remove dir-function.
450         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
452         * lily/grob.cc: remove spacing-procedure.
454         * lily/note-head.cc (calc_stem_attachment): new function.
455         (internal_print): use callback to get glyph-name.
457         * lily/grob-property.cc (get_interfaces): new function.
459         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
461         * lily/stem.cc (calc_stem_end_position): new function.
462         (calc_length): new function.
463         document details for stem.
464         remove Stem::get_direction()
466         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
468         * lily/grob-property.cc (set_callback): new function.
470         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
472         * lily/item-scheme.cc: new file.
474         * lily/bar-line.cc (before_line_breaking): remove function.
475         remove bar-size-procedure, break-glyph-function
477         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
479         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
481         * lily/system-start-delimiter.cc (print): suicide from
482         here. Remove after_line_breaking_callback.
484         * lily/script-interface.cc (calc_direction): use callback for direction.
486         * lily/side-position-interface.cc (aligned_side): don't use
487         Side_position_interface::get_direction directly. Use callback. 
489         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
490         calculate stencil.
491         (get_print_stencil): rename from get_stencil: create stencil with
492         transparency, color and cause. 
494         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
496         * python/convertrules.py (conv): insert temporary warning rule.
498         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
500         * lily/grob-property.cc (try_callback): remove marker if applicable.
502         * lily/grob.cc: elucidate doc about after/before-line-breaking
504         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
506         * lily/stem.cc (height): idem.
508         * lily/stem-tremolo.cc: idem.
510         * lily/slur.cc (height): don't use get_uncached_stencil()
512         * lily/rest.cc (y_offset_callback): use offset callback
513         iso. after-line-breaking callback.
515         * lily/grob.cc: change after/before-line-breaking-callback to
516         after/before-line-breaking dummy properties.
518         * lily/include/grob.hh: remove Grob_status.
520         * scm/define-context-properties.scm
521         (all-user-translation-properties): remove verticalAlignmentChildCallback
523         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
524         (calc_direction): use callback
525         (calc_positions): use callback.
527         * lily/tie.cc (calc_direction): use callback. Only call parent
528         positioning for more than one tie.
530         * lily/tie-column.cc (calc_positioning_done): use callback
532         * lily/slur-scoring.cc (calc_control_points): use callback
534         * lily/slur.cc (calc_direction): use callback.
536         * lily/note-collision.cc (force_shift_callback): remove.
538         * lily/dot-column.cc (force_shift_callback): remove. Use
539         other_axis_parent_positioning.
541         * lily/grob.cc (other_axis_parent_positioning): new function.
542         (same_axis_parent_positioning): new function
544         * lily/align-interface.cc (alignment_callback): remove function.
546         * lily/note-collision.cc (calc_positioning_done): use callback.
548         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
549         (calc_direction): idem.
550         remove print function.
552         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
554         * lily/dot-column.cc (calc_positioning_done): use callback.
556         * lily/break-align-interface.cc (calc_positioning_done): use callback.
558         * lily/beam.cc (calc_direction): use pseudo-property for beam
559         direction callback.
560         (calc_positions): use callback 
562         * lily/align-interface.cc (calc_positioning_done): use
563         callback. Fold fixed  distance and normal alignment in one function.
565         * lily/stem.cc (calc_stem_end_position): use callback.
566         (calc_positioning_done): idem.
567         (calc_direction): idem.
568         (calc_stem_end_position): idem
569         (calc_stem_info): idem.
571         * lily/grob-property.cc (get_property_data): new function: 
572         (try_callback): new function.
574         * scm/define-grob-properties.scm (all-user-grob-properties): doc
575         callbacks property.
577         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
579 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
581         * lily/tie.cc (get_position): robustness fix. Don't crash if a
582         tie
583         has no heads.
584         
585         * lily/include/*.hh (Module): compile fixes.
587 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
589         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
590         as an argument for char-syntax: use (char-syntax (or nil 0)) 
591         instead of (char-syntax nil), thanks to Milan Zamazal.
593 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
595         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
596         dist.
598         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
599         themselves.
601 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
603         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
604         add class_name() method.
606         * lily/music-scheme.cc: remove ly:music-name.
608 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
610         * cygwin/postinstall-lilypond.sh: Remove cruft.
612         * cygwin/postremove-lilypond.sh: Remove.
614         * cygwin/GNUmakefile (default): Remove postremove rules.
616 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
618         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
619         even header too.
620         
621         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
622         MacOS 9 users.
624         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
625         consider break index for broken spanner.
627         * scm/define-markup-commands.scm (wordwrap-string): remove \r
628         characters from string before splitting.
630 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
632         * scm/framework-ps.scm (output-preview-framework): use
633         is-book-title to determine whether to chop off the booktitle.
635         * lily/paper-book.cc (systems): init from book-title-properties
636         (add_score_title): init score-title-properties.
638         * ly/paper-defaults.ly: add {score,book}-title-properties.
640         * scm/document-backend.scm (lookup-interface): error message if
641         using unknown interface.
643         * lily/volta-bracket.cc (after_line_breaking): new function. Set
644         edge-height.
646         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
647         make_bracket.
648         (make_bracket): new function.
650         * scm/lily.scm (define-scheme-options): add paper-size option.
652         * ly/declarations-init.ly (laissezVibrer): get paper size from
653         -dpaper-size
655         * scm/translation-functions.scm: use \fontsize for changing the
656         fontsize.
658         * scm/define-grobs.scm (all-grob-descriptions): set
659         between-length-limit to 1.0
661         * lily/tie-helper.cc: add between_length_limit_ detail property.
663         * mf/feta-bolletjes.mf: typos.
665         * lily/note-head.cc (internal_print): don't shadow idx
666         parameter. This fixes wrong attachment for do shape heads.
668 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
670         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
672         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
674         * scm/layout-slur.scm: rename from slur.scm
676         * scm/layout-page-layout.scm: rename from page-layout.scm
678         * scm/layout-beam.scm: rename from beam.scm
680         * scm/define-grob-interfaces.scm (bass-figure-interface): add
681         bass-figure-interface
683         * lily/new-figured-bass-engraver.cc (process_music): add
684         implicitBassFigures property.
685         
686         * scm/define-markup-commands.scm (pad-x): new markup.
688         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
689         minimumVerticalExtent on FiguredBass context.
691         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
692         case the continuation crosses a line break.
694 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
696         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
697         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
698         absolute file name bug.  Backportme.
700 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
702         * VERSION (PACKAGE_NAME): release 2.7.12
704         * input/regression/figured-bass-continuation-center.ly: new file.
706         * input/regression/beam-outside-beamlets.ly: new file.
708         * lily/beam.cc (set_beaming): don't clip edges.
709         (connect_beams): don't clip edges.
711         * lily/beaming-info.cc (clip_edges): new function.
713         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
715         * Documentation/user/instrument-notation.itely (Figured bass):
716         demonstrate extenders, update seealso links.
718         * scm/titling.scm (marked-up-headfoot): change tagline
719         handling. tagline = ##f will blank the tagline as well.
721 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
723         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
725         * lily/new-figured-bass-engraver.cc (struct
726         New_figured_bass_engraver): add new_music_found_ member.
728         * lily/lilypond-version.cc (Lilypond_version): deal with
729         incorrectly formatted version strings. 
731         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
732         New_figured_bass_engraver by default.
734         * lily/ttf.cc (print_trailer): only define glyph names when
735         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
737 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
739         * lily/horizontal-bracket.cc (make_bracket): new function.
741         * scm/define-grobs.scm (all-grob-descriptions): new grobs
742         NewBassFigure, BassFigureBracket, BassFigureContinuation,
743         BassFigureLine, BassFigureAlignment
745         * lily/new-figured-bass-engraver.cc (process_music): new file.
747         * lily/figured-bass-continuation.cc: new file.
749         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
750         new file.
752 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
754         * scripts/lilypond-book.py: Bug fix, put the quote around the
755         actual score for LaTeX documents.
757         * scm/define-grobs.scm (all-grob-descriptions): Change
758         collapse-height of the SystemStartBracket grob to 5.0, 
759         so the bracket disappears for single stave score lines (similarly
760         to SystemStartBraces). 
762         * Documentation/user/advanced-notation.itely (Polymetric
763         notation): Clarify the use of compressMusic.
765         * Documentation/user/basic-notation.itely (Grace notes): Clarify
766         that the grace spacer note in other staves need the same duration
767         and document the stroke-style property.
769 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
771         * Documentation/user/global.itely (Vertical spacing): document
772         alignment-extra-space and fixed-alignment-extra-space.
774         * Documentation/topdocs/NEWS.tely (Top): add entry.
776         * input/regression/alignment-vertical-spacing.ly: new file.
778         * python/convertrules.py (conv): add rule.
780         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
782         * lily/align-interface.cc (stretch_after_break): new
783         function. Read fixed-alignment-extra-space property.
784         (align_elements_to_extents): read alignment-extra-space property.
786         * lily/lily-guile.cc (robust_scm2dir): new function.
788         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
789         (annotate-space-left): new function. Annotate space left on page. 
790         (annotate-y-interval): new function.
791         (paper-system-annotate-last): new function. Annotate bottom-space.
793         * mf/feta-beugel.mf (y): 
795 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
797         * VERSION (PACKAGE_NAME):  release 2.7.11
799         * scm/lily-library.scm (interval-translate): new function
800         (interval-center): new function. 
802         * scm/page-layout.scm (paper-system-annotate): new function. Add
803         arrows for dimensions.
805         * scm/stencil.scm (dimension-arrows): new function.
807         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
809         * input/regression/page-spacing.ly: add annotatespacing
811         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
812         (LY_DEFINE): new function ly:paper-system-set-property!
814         * Documentation/user/global.itely (Paper size): explain how to add
815         sizes.
817         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
818         correspond to GS's definition.
820         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
821         tuplet bracket.
822         (print): only connect to next bracket if the next one is alive.
823         (print): set padding to 0.0 if the bound is a breakable
824         column. This makes tupletFullLength brackets reach up to the staff
825         line if it doesn't connect to the next line.
827 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
829         * lily/bar-number-engraver.cc: correct docs.
831         * scm/output-lib.scm (first-bar-number-invisible): rename from
832         default-bar-number-visibility
834 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
836         * scm/define-music-properties.scm (all-music-properties): remove
837         predicate property.
839 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
841         * po/fi.po: refresh.
843 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
845         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
846         superfluous s1.
847         (disappear): bugfix.
849         * lily/stem-tremolo.cc (raw_stencil): read slope property.
851         * lily/include/paper-system.hh (class Paper_system): remove
852         staff_extents_ member.
854         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
856         * lily/include/paper-system.hh (class Paper_system): remove
857         number_ variable. Remove is_title_. Remove break_before_penalty_
859         * lily/paper-book.cc (systems): use 'number property iso. number_
860         member.
862         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
863         remove ly:paper-system-number.
865         * scm/lily-library.scm (paper-system-title?): new function.
867         * lily/book.cc (process): bugfix: flip ?: cases. 
869         * Documentation/user/changing-defaults.itely (Difficult tweaks):
870         add outputProperty.
872         * ly/music-functions-init.ly: add outputProperty music function.
874         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
876         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
877         and next-padding.
878         (optimal-page-breaks): rename from ly:optimal-page-breaks.
880         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
882         * lily/paper-system.cc (internal_get_property): new function.
884         * Documentation/user/global.itely (Vertical spacing): refer to
885         page-spacing.ly
887         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
888         pagetopspace
890         * input/regression/page-spacing.ly: new file.
892         * input/regression/page-top-space.ly: new file.
894         * lily/spacing-spanner.cc: cmath -> math.h
896         * lily/paper-system.cc (read_left_bound): new function. Read
897         line-break-system-details from left bound to determine extents.
899         * Documentation/user/programming-interface.itely (Using LilyPond
900         syntax inside Scheme): change applyxxx -> applyXxx.
902         * ly/music-functions-init.ly: add outputProperty music function.
904         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
906         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
908         * python/convertrules.py (conv): rule
910         * ly/music-functions-init.ly: applyxxx -> applyXxx
912         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
913         TabVoice to Voice.
915 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
917         * flower/include/real.hh: include <math.h> iso. <cmath>
919         * flower/include/offset.hh: include real.hh
921 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
923         * Documentation/user/changing-defaults.itely (Difficult tweaks):
924         fix example, now that 'interfaces is no longer directly available.
926         * lily/book.cc (process): don't crash if paper == NULL.
928         * po/fr.po: update.
930 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
932         * scm/define-music-types.scm (music-descriptions): set length and
933         start-callback for QuoteMusic
935 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
937         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
938         arguments. Fixes compilation error with gcc 3.3.
940 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
942         * VERSION: release 2.7.10
944         * stepmake/stepmake/python-module-rules.make
945         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
947         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
948         real.hh
950 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
952         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
953         -Werror. Otherwise GCC barfs over various optimizations.
955         * scm/define-grob-properties.scm (all-internal-grob-properties):
956         add note-head property
958         * Documentation/user/instrument-notation.itely (Laissez vibrer
959         ties): new node.
961         * input/regression/laissez-vibrer-ties.ly: new file.
963         * lily/laissez-vibrer-engraver.cc: new file.    
965         * lily/include/tie-column-format.hh: new file.
967         * lily/tie-column-format.cc: new file. 
969         * lily/tie-column.cc (set_manual_tie_configuration): new function.
971         * lily/laissez-vibrer-tie.cc: new file.
973         * lily/include/laissez-vibrer-tie.hh: new file.
975         * ly/engraver-init.ly: add Laissez_vibrer_engraver
977         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
979         * scm/define-grobs.scm (all-grob-descriptions): add
980         LaissezVibrerTie, LaissezVibrerTieColumn
982         * lily/tie-column.cc (set_tie_config_directions): new function
983         (final_shape_adjustment): new function.
984         (shift_small_ties): new function.
986         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
988         * lily/include/tie.hh (struct Tie_details): add x_gap_
989         (struct Tie_configuration): add head_position_
991         * lily/tie-column.cc (set_chord_outline): new function.
993         * mf/cmr.enc.in:  remove file.
995 2005-09-11  Graham Percival  <gpermus@gmail.com>
997         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
999 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1001         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
1002         reduce aliasing effects.
1004         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
1005         box in skyline.
1007 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1009         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
1011         * flower/include/real.hh: std::fabs too.
1013 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1015         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
1017         * lily, flower: Include C++ iso C headers.  Import namespace std
1018         throughout.
1020         * lily/side-position-interface.cc: 
1021         * lily/scm-hash.cc: 
1022         * lily/note-head.cc: 
1023         * lily/include/includable-lexer.hh: 
1024         * flower/include/string-data.icc: Remove using std::*.
1026         * lily, flower: Include C++ iso C headers.  Import namespace std
1027         throughout.
1029         * lily/side-position-interface.cc: 
1030         * lily/scm-hash.cc: 
1031         * lily/note-head.cc: 
1032         * lily/include/includable-lexer.hh: 
1033         * flower/include/string-data.icc: Remove using std::*.
1035         * Documentation/user/instrument-notation.itely (Entering lyrics):
1036         Multiple latin-1->utf-8 conversion fix.
1038         * Documentation/user/*tely: Update Emacs cookie to utf-8.
1040 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1042         * lily/tie.cc (get_configuration): also avoid dots for non-space
1043         situations.
1045 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1047         * Documentation/user/instrument-notation.itely: Bugfix.
1049 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1051         * tex/GNUmakefile: don't install texinfo.tex
1053         * tex/ : cleanup: remove unused files.
1055         * lily/general-scheme.cc: remove my_{isinf,isnan}.
1057         * flower/include/real.hh: using std::{isnan,isinf}
1058         
1059         * VERSION (PATCH_LEVEL): release 2.7.9
1061 2005-09-05  Graham Percival  <gpermus@gmail.com>
1063         * Documentation/user/ instrument-notation.itely,
1064         advanced-notation.itely: minor tweaks.
1066         * input/test/script-chart.ly: add item padding.
1068 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1070         * flower/offset.cc: use math.h iso. <cmath>
1072         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
1073         of IE users.
1075         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
1076         (widen-left-stencil-edges): new function. Fix alignment problems
1077         with LaTeX includegraphics.
1079         * lily/text-interface.cc (interpret_markup): use abort().
1081 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1083         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
1085         * lily/tie.cc (get_configuration): update bezier shape as we
1086         change Y positions.
1087         (get_configuration): don't move large ties if we're outside of the
1088         staff.
1090 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1092         * scm/define-markup-commands.scm (strut): swap X and Y dims.
1093         
1094 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1096         * .cvsignore: Add auto-generated configure files and then some.
1098 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1100         * scm/define-grobs.scm (DynamicLineSpanner): Add
1101         X-extent-callback.  Fixes hairpin-slur collision.
1103 2005-08-31  Graham Percival  <gpermus@gmail.com>
1105         * Documentation/user/advanced-notation.itely,
1106         basic-notation.itely: minor changes.
1108 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1110         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
1111         \linebreak between each .eps file if \betweenLilyPondSystem is
1112         undefined. 
1114         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
1115         music): Document the \linebreak
1117         * Documentation/user/lilypond-book.itely,
1118         input/tutorial/lbook-latex-test.tex,
1119         Documentation/user/examples.itely: Remove \usepackage{graphics}
1121 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1123         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
1125         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
1126         compat bugfix.
1128         * scripts/lilypond-book.py (PREAMBLE_LY): define
1129         inside-lilypond-book
1130         (modify_preamble): new function. Insert \RequirePackage{graphics}
1131         when no {graphics found in preamble.  
1133 2005-08030  Graham Percival  <gpermus@gmail.com>
1135         * Documentation/user/basic-notation.itely, global.itely,
1136         tutorial.itely: misc small changes.
1138 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1140         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
1141         VERSION.
1143 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1145         * lily/tie-column.cc (new_directions): put Tie down on center
1146         staff line. 
1148         * lily/script-interface.cc (before_line_breaking): use
1149         Grob::programming_error
1151         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
1153         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
1154         of splitext.
1156 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1158         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
1160 2005-08-29  Werner Lemberg  <wl@gnu.org>
1162         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
1163         the `*.scale.pfa' files to avoid warnings.
1165 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1167         * lily/tempo-performer.cc (process_music): idem.
1169         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
1171 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1173         * Documentation/user/advanced-notation.itely (Text markup): not a
1174         fragment.
1176         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
1178         * lily/staff-performer.cc (initialize): add tempo/name to
1179         audio_staff_
1182 2005-08-26  Graham Percival  <gpermus@gmail.com>
1184         * Documentation/user/advanced.itely: add text-only example.
1186         * Documentation/user/invoking.itely: add index entries for
1187         convert-ly.
1189         * Documentation/user/ tutorial.itely, basic-notation.itely:
1190         small fixes suggested by Steve D.  Thanks!
1192 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1194         * input/regression/markup-bidi-pango.ly: new file.
1196         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
1197         standard. Remove #ifdef. Remove memleak.
1198         (text_stencil): use text_dir to decide how to composite items.
1199         (text_stencil): determine uniform text direction for the entire
1200         string.
1202         * scripts/lilypond-book.py (output_name): remove
1203         latex_filter_cmd. Non-portable to non-Unix systems. 
1204         (get_latex_textwidth): use File.write and os.unlink() instead.
1206         * THANKS: add Vicente & Trevor.
1208         * lily/grob.cc (discretionary_processing): look up origin for
1209         programming_error too. 
1211         * input/regression/tie-broken.ly: new file.
1213         * lily/tie-column.cc (set_chord_outlines): set outline for line
1214         break case too.
1215         
1216 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1218         * lily/pango-font.cc (text_stencil): don't translate glyphs in
1219         unscaled transform, just translate stencils.
1221         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
1222         MIDI.
1224         * scm/define-markup-commands.scm (wordwrap-string): use
1225         text-direction
1226         (wordwrap-stencils): idem.
1227         (line): idem.
1228         (fill-line): idem.
1229         (wordwrap-stencils): translate last line to right for
1230         text-direction = LEFT.
1232         * scm/define-grob-properties.scm (all-user-grob-properties): add
1233         text-direction.
1235 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1237         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
1238         when copying a Lily_parser object.
1240 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1242         * scm/define-markup-commands.scm (null): add null markup.
1244 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1246         * lily/item.cc: Add documentation of center-invisible
1248 2005-08-24  Graham Percival  <gpermus@gmail.com>
1250         * Documentation/user/advanced-notation.itely: add info about
1251         raising text.
1253         * Documentation/user/programming-interface.itely: fix example
1254         involving raised text.
1256 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1258         * lily/beam.cc (print): fix X start/end points of isolated
1259         beamlets.
1261         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
1263         * lily/multi-measure-rest.cc (set_text_rods): new function.
1265         * lily/vertical-align-engraver.cc (process_music): call
1266         Align_interface::set_axis(). This forces #'elements to be ordered,
1267         preventing random vertical reordering of staves.
1269         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
1270         add avoid-slur property. 
1272         * Documentation/user/basic-notation.itely (Measure repeats): add
1273         countPercentRepeats example.
1275         * Documentation/user/advanced-notation.itely (Other text markup
1276         issues): remove remark about normal-font.  We have \normal-text
1278         * input/regression/tie-chord.ly: add note about remaining bugs.
1280         * lily/tie.cc (print): try Tie_column::set_directions () if
1281         control-points not yet defined.
1283 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1285         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
1286         extent. This fixes braces falling out of the EPS bbox.
1288         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
1289         exactly to bbox.
1291 2005-08-23  Graham Percival  <gpermus@gmail.com>
1293         * {various} : change #up->#UP and #down->#DOWN.
1295         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
1297         * Documentation/user/advanced-notation.itely: clarify
1298         what objects handles text on a multimeasure rest.
1300 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1302         * VERSION (PATCH_LEVEL): release 2.7.7
1304 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1306         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
1308         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
1310         * input/regression/*.ly: formatting clean-up. Default layout
1311         before music expression.
1313         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
1314         romanze28-2 example.
1316         * scm/ps-to-png.scm: remove dir-re function.
1317         (make-ps-images): generate page names, instead of globbing them.
1318         This brings down LilyPond memory usage for make web by a factor
1319         10. (backportme?) 
1321         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
1322         don't use glob. With 3000 files, globbing
1323         Documentation/user/out-www/ can take too much time. (backportme?)
1324         
1325         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
1327         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
1329         * input/regression/tie-manual.ly: new file
1331         * input/regression/tie-chord.ly: update.
1333         * flower/include/interval.hh (struct Interval_t): 
1335         * lily/tie.cc (distance): new function 
1336         (height): new function.
1337         (init): new function
1338         (Tie_details): new struct.
1340         * lily/skyline.cc (skyline_height): new function.
1342         * lily/tie-column.cc (set_chord_outlines): new function.
1343         (new_directions): read tie-configuration
1345         * lily/skyline.cc: fix ASCII art.
1346         
1347 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1349         * python/convertrules.py (string_or_scheme): Fix spelling error
1351 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1352         
1353         * lily/tie-column.cc (set_directions): set directions only once.
1354         (add_configuration): new function.
1356         * lily/tie.cc (set_control_points): new function
1358         * lily/tie-column.cc (new_directions): new function.
1360         * ly/music-functions-init.ly: set 'pitch property
1361         iso. trill-pitch. This makes \relative work with \pitchedTrill
1363         * lily/tie.cc (get_configuration): new function. Don't generate
1364         control points, rather, generate configuration.
1365         remove head-pair property.
1367         * lily/include/tie.hh (struct Tie_configuration): new struct.
1369 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
1371         * Documentation/topdocs/NEWS.tely: clarify.
1373 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1375         * lily/tie.cc: remove minimum-length
1377         * scm/define-grob-properties.scm (all-user-grob-properties):
1378         remove staffline-clearance, y-offset 
1380         * input/regression/tie-dots.ly (Module): remove.
1382         * lily/tie.cc (get_control_points): rewrite. Put short ties in
1383         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
1385         * input/regression/tie-single.ly: new file.
1387 2005-08-21  Graham Percival  <gpermus@gmail.com>
1389         * ly/bagpipe.ly: fix compile problem.
1391 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1393         * lily/midi-item.cc (name): new method.
1395         * lily/staff-performer.cc (acknowledge_audio_element): use
1396         signature of baseclass.
1398         * lily/engraver-group.cc (do_announces): move recursion call out
1399         of while loop. 
1401         * lily/drum-note-performer.cc (class Drum_note_performer): use
1402         process_music everywhere.
1404         * ly/performer-init.ly: add default children everywhere.
1406         * lily/paper-book.cc (output): call paper-book-write-midis
1407         directly: always write MIDI, even if no \layout {} block. 
1409 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1411         * VERSION (PACKAGE_NAME): release 2.7.6
1413         * lily/percent-repeat-engraver.cc (try_music): don't print warning
1414         about not being able to handle repeat.
1416 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1418         * Documentation/user/examples.itely (Piano templates):
1419         * lily/include/performer-group.hh: Remove last traces of
1420         Performer_group_performer.  Fixes make web.
1422 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1424         * Documentation/user/examples.itely (Piano templates): change
1425         Engraver_group_engraver -> Engraver_group
1427         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
1428         scm_stand_in_procs is not weak_any.
1430         * lily/volta-bracket.cc (print): don't use strcmp().
1432         * lily/volta-engraver.cc (process_music): use
1433         Text_interface::is_markup() for setting the 'text property of the
1434         volta bracket.
1436         * input/mutopia/claop.py (accents): update syntax to 2.6
1438         * scm/define-context-properties.scm
1439         (all-user-translation-properties): add countPercentRepeats.
1441         * Documentation/user/basic-notation.itely (Measure repeats): add
1442         isolated percent example.
1444 2005-08-18  Graham Percival  <gpermus@gmail.com>
1446         * input/ {various}: change direction #1, #-1 to
1447         #up/#down or \fooUp, \fooDown.
1449         * Documentation/user/music-glossary.tely: #-1 to #down.
1451         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
1452         to #up, #-1 to #down.
1454 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1456         * lily/include/engraver-group.hh: rename.
1458         * lily/include/performer-group.hh: rename.
1460 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1462         * input/test/script-abbreviations.ly: Removed some old LaTeX
1463         left overs.
1465 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1467         * python/convertrules.py (conv): inside-slur -> avoid-slur.
1468         Remove functions.  Remove if 1: constructs, reindent.
1470         * scripts/convert-ly.py (add_version): Add functions from
1471         convertrules.py
1473         * scm/script.scm (default-script-alist):
1474         s/priority/script-priority.  Fixes script stacking.  Backportme.
1475         (Fermata): Very low priority.
1477 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1479         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
1481         * input/regression/slur-script.ly: remove padding tweaks. Add
1482         comment strings.
1484         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
1485         time sigs and related stuff.
1487         * scm/define-grob-properties.scm (all-user-grob-properties): add
1488         @code{} tags to property description.
1490         * lily/include/line-group-group-engraver.hh (Module): remove file.
1492         * python/convertrules.py (conv): add rule for
1493         Engraver_group_engraver -> Engraver_group.
1495         * lily/include/performer-group-performer.hh: analogous.
1497         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
1499         * lily/context-def.cc (instantiate): check for
1500         Engraver_group_engraver and Performer_group_performer not
1501         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
1503 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1505         * input/les-nereides.ly: Remove three fingering tweaks, update
1506         remaining one.
1508         * input/regression/slur-script-inside.ly: Update, fix doc.
1510         * scm/script.scm: Update to avoid-slur.
1512         * scm/define-grob-properties.scm (avoid-slur): New property.
1514         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
1515         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
1516         outside_slur_callback if avoid-slur != #'inside.
1518         * scm/define-grobs.scm (Fingering, Textscript): No
1519         inside-slur/outside-slur preference.
1520         (DynamicLineSpanner): Always outside slur.
1522         * input/regression/slur-script.ly: More tests.
1524 2005-08-17  Graham Percival  <gpermus@gmail.com>
1526         * Documentation/user/lilypond-book: fix notime entry.
1528         * Documentation/user/advanced-notation.itely: add info on
1529         getting an I rehearsal mark.
1531         * Documentation/user/putting.itely: reinstate "I", re-enforce
1532         the fact that \override numbers are the result of
1533         experimentation and personal taste.
1535         * Documentation/user/invoking.itely: update convert-ly bugs.
1537 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1539         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
1540         to #t.
1542         * lily/timing-translator.cc (initialize): don't initialize timing.
1544         * input/regression/stem-spacing.ly (Module): remove file.
1546         * input/regression/spacing-stick-out.ly: specify Score context for
1547         \override
1549         * input/regression/clefs.ly: remove spurious {}s 
1551 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
1553         * Documentation/topdocs/NEWS.tely,
1554         input/regression/repeat-percent-count.ly: clarify a bit.
1556 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1558         * input/no-notation/display-lily-tests.ly: delete
1559         display-lily-init call.
1561         * ly/music-functions-init.ly (displayLilyMusic): move
1562         display-lily-init call at top level, so that the user should not
1563         have to call it.
1565         * scm/define-music-display-methods.scm (note-name->lily-string):
1566         retrieve note names directly from pitchnames using new function `rassoc'.
1567         (display-lily-init): note names list construction removed.
1569 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1571         * THANKS: spello.
1573         * lily/lily-parser.cc (get_header): copy module, instead of
1574         returning it.
1576         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
1577         counters.
1579         * Documentation/user/basic-notation.itely (Measure repeats): add
1580         links to Counter grobs.
1582         * scm/define-grobs.scm (all-grob-descriptions): add
1583         DoublePercentRepeatCounter
1584         (all-grob-descriptions): add PercentRepeatCounter
1586         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
1587         also create counter grobs.
1589         * lily/separation-item.cc (extremal_break_aligned_grob): don't
1590         return grob without space-alist.
1592         * input/proportional.ly: tune staff-padding.
1594         * input/regression/repeat-percent-count.ly: new file. 
1596 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1598         * input/no-notation/display-lily-tests.ly: moved from
1599         input/regression/ to input/no-notation. Be sure to call
1600         `display-lily-init' before trying to use the display function.
1602 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1604         * scripts/lilypond-book.py (option_definitions): Don't localize
1605         the empty string. Fixes bug when --psfonts was used with
1606         non-English locale.
1608 2005-08-15  Graham Percival  <gpermus@gmail.com>
1610         * lily/tuplet-bracket.cc: simple build fix.
1612         * Documentation/user/putting.itely: use "we" instead of "I".
1614         * Documentation/user/basic-notation.itely: cautionary accidentals
1615         work with naturals, too.
1617 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1619         * lily/tuplet-bracket.cc (calc_position_and_height): add
1620         staff-padding support.
1622         * input/proportional.ly: set staff-padding.
1623         
1624         * VERSION (PATCH_LEVEL): release 2.7.5
1626         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
1627         fixes. Remove tweaks.
1629         * input/regression/tuplet-slope.ly: add a test case.
1631         * lily/tuplet-bracket.cc (calc_position_and_height): revert
1632         erroneous fix. Add spanner bounds to offset array with relative X
1633         positions.
1635         * ly/engraver-init.ly: add Rest_engraver only once.
1637         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
1638         (*parser*) lookup if (*parser*) != #f.
1640 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1642         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
1643         Cut-and paste update.
1645         * input/regression/slur-script.ly: Add example of reverting
1646         inside-slur for fingering.
1648         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
1649         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
1651         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
1652         outside_slur_callback if inside-slur == #f (as opposed to unset).
1654 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1656         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
1657         encoding files are already removed.
1659 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1661         * Documentation/user/advanced-notation.itely (Instrument names):
1662         Document a workaround for instrument names that collide with
1663         system start braces/brackets.
1665 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1667         * lily/rest-collision.cc (do_shift): spello.
1669         * input/proportional.ly: use #'used property. Set break-overshoot
1670         property.
1672         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
1674         * lily/paper-column.cc: add #'used property
1676         * lily/mark-engraver.cc (stop_translation_timestep): set grob
1677         array for staves found.
1679         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
1680         array for stavesFound.
1682         * lily/staff-spacing.cc (next_note_correction): add fixed and
1683         space to calling convention. This fixes spacing of accidentals
1684         after barlines.
1686         * input/regression/spacing-accidental-stretch.ly: add barline -
1687         accidental case.
1689         * scm/framework-ps.scm (page-header): add version number to
1690         creator
1691         (eps-header): idem.
1693         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
1694         
1695 2005-08-13  Graham Percival  <gpermus@gmail.com>
1697         * Documentation/user/global.itely: add "fit as much as
1698         possible onto this page" example (Vertical spacing).
1700 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1702         * *: Nitpick run.
1704         * buildscripts/fixcc.py: Fixes.
1706 2005-08-12  Graham Percival  <gpermus@gmail.com>
1708         * Documentation/user/advanced-notation.itely: add markup
1709         example to Text spanners.
1711 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1713         * Documentation/user/basic-notation.itely (Ties): Add example of
1714         tying a tremolo to a chord. Thanks to Steve Doonan. 
1716         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
1717         properties and move tieMelismaBusy to the list of written
1718         properties. 
1720 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
1722         * po/TODO: suggest to use a dedicated tool like kbabel.
1724         * po/fi.po: update using kbabel.
1726 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1728         * *: Remove obsolete files.  Nitpick run.
1730         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
1732 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1734         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
1735         too.
1737         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
1739         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
1740         whitespace as symbol separator.
1742         * lily/side-position-interface.cc: Add slur-padding.
1744         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
1745         quite a large fix, and it never worked in a stable release; so not
1746         really a regression.
1748         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
1749         Update cut and paste code from Slur_engraver.
1751         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
1752         Add.
1754         * scm/define-grobs.scm (DynamicLineSpanner): Add
1755         dynamic-line-spanner-interface.
1756         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
1758 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1760         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
1761         to_boolean () so that non-set 'inside-slur means false.
1763         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
1764         slur has control-points.  Skip script without direction.  Always
1765         do_shift if script inside slur, even if slur not contained in
1766         script y-extent.  Increment k in loop.
1768 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1770         * scm/define-markup-commands.scm: Improved regexp to search for
1771         EPS bounding boxes and corrected call to ly:warning.
1773 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1775         * Documentation/user/programming-interface.itely (Displaying music
1776         expressions): doc for \displayLilyMusic. Also some precisions in
1777         "Markup construction in Scheme"
1779 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1781         * scm/define-markup-commands.scm (normal-text): Added 2 new
1782         markup commands, \normal-text and \medium (the latter thanks to
1783         Bruce Fairchild). 
1785 2005-08-08  Graham Percival  <gpermus@gmail.com>
1787         * Documentation/user/programming-interface.itely: fix @{ @}.
1789         * scm/define-markup-commands.scm: add linewidth info to
1790         \justify and \wordwrap, add "upright is the opposite of italic".
1792         * Documentation/user/advanced-notation.itely: shaped->shape,
1793         add (cons (markup "foo")) type of example to text markup,
1794         reword multi-measure rests section.
1796         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
1797         comment.  No actual code was touched.
1799         * Documentation/user/invoking.itely: add more info about
1800         \include.  Thanks, Bruce!
1802         * THANKS: add Bruce Fairchild, alphabetise.
1804         * Documentation/user/global.itely: document \score{\header{}}
1805         behavior.
1807         * Documentation/user/basic-notation.itely: reword multi-measure
1808         rest discussion in Rests.
1810 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1812         * Documentation/user/programming-interface.itely (Markup
1813         construction in Scheme): Corrected example and tried to clarify
1814         the implicit \line in the table.
1816 2005-08-07  Graham Percival  <gpermus@gmail.com>
1818         * Documentation/user/instrument-notation.itely: moved
1819         some bagpipe info back into the bagpipe section.  Somehow
1820         it ended up in the "other vocal issues" section?!  :o_O
1822 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1824         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
1825         directories, not paths).
1827 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1829         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
1830         plain emmentaler/aybabtu.  Backportme.
1832         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
1833         missing dir correction.
1835 2005-08-05  Graham Percival  <gperlist@shaw.ca>
1837         * scm/define-markup-commands: fix reversed justify/wordwrap
1838         doc strings.
1840 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
1842         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
1843         lily/gregorian-ligature-engaver.cc,
1844         lily/include/ligature-engraver.hh,
1845         lily/include/coherent-ligature-engraver.hh,
1846         lily/include/gregorian-ligature-engraver.hh: make these classes
1847         truely abstract.  This should fix some internal oddities such as
1848         duplicate as well as dead translator/property declarations, and
1849         also some dead code.
1851         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
1852         bugfix: avoid message "junking empty ligature" on ligature
1853         brackets by collecting dummy grobs.
1855 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1857         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
1859         * input/proportional.ly (staffKind): bugfix.
1860         (staffKind): updates by Trevor Baca.
1862         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
1863         default layout. 
1865         * lily/tuplet-bracket.cc (print): check whether edge-text is a
1866         pair.
1868         * lily/beam.cc (rest_collision_callback): call position_beam() if
1869         necessary.
1871         * VERSION: release 2.7.4
1873         * input/regression/spacing-uniform-stretching.ly: new file.
1875         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
1877         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
1878         contributor.
1880         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
1882         * input/proportional.ly: new file.
1884         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
1885         columns is empty
1887         * lily/tuplet-engraver.cc (finalize): new function. Reset right
1888         bounds to currentCommandColumn for the last step.
1889         (start_translation_timestep): if tupletFullLength is set, set
1890         bound to Paper Column
1892         * input/regression/tuplet-full-length.ly (indent): new file.
1894         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
1895         clique of loose columns, eg. a set of grace notes in strict
1896         notespacing.
1898         * input/regression/spacing-strict-spacing-grace.ly: new file.
1900         * lily/key-signature-interface.cc: change property name to
1901         alteration-alist
1903         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
1904         keyAccidentalOrder
1906         * python/convertrules.py (conv): keyAccidentalOrder ->
1907         keyAlterationOrder
1909         * lily/key-engraver.cc (create_key): always print a cancellation
1910         for going to C-major/A-minor, regardless of printKeyCancellation.
1911         (create_key): remove typecheck for visibility. This fixes key
1912         signature not being printed.
1914         * lily/spacing-determine-loose-columns.cc: new file.
1916         * input/regression/spacing-strict-notespacing.ly: new file.
1918         * lily/spacing-spanner.cc (generate_springs): rename from
1919         do_measure. 
1920         (generate_pair_spacing): new function.
1921         (init, generate_pair_spacing): set between-cols for floating
1922         nonmusical columns.
1924         * lily/spaceable-grob.cc (get_spring): new function. 
1926         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
1927         relative to the right edge of the prefatory matter.
1929         * lily/beam.cc (print): read break-overshoot to determine where to
1930         stop/start broken beams.
1932         * input/regression/spanner-break-overshoot.ly: new file.
1934 2005-08-04  Graham Percival  <gperlist@shaw.ca>
1936         * ly/bagpipe.ly: updated.
1938         * Documentat/user/instrument.itely: un-comment out bagpipe example.
1940 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1942         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
1943         support: now (de)crescs avoid slurs as well.
1945         * Documentation/user/instrument-notation.itely (Bagpipe example):
1946         comment out non-functioning bagpipe example.
1947         (Bagpipe definitions): idem.
1949         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
1950         (Top): add proportionalNotationDuration example.
1952         * input/regression/spacing-proportional.ly: new file.
1954         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
1955         synched to a beam.
1957         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
1958         fixes beams with a single stem (eg. beams across linebreaks.)
1960         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
1962         * flower/rational.cc (operator +): prevent overflow. This fixes
1963         heavily nested tuplets.
1965         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
1966         have to protect even those unlikely to be corrupted data members.  
1968 2005-08-04  Graham Percival  <gperlist@shaw.ca>
1970         * ly/bagpipe.ly: new file.
1972         * THANKS: added Sven Axelsson.
1974 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1976         * lily/spacing-engraver.cc (stop_translation_timestep): directly
1977         copy proportionalNotationDuration into currentMusicalColumn if
1978         set.
1980         * lily/spacing-spanner.cc (musical_column_spacing): if
1981         uniform-stretching set, fixed space is 0.0
1983         * input/regression/spacing-multi-tuplet.ly: show
1984         uniform-stretching property.
1986         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
1988         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
1989         (struct Spacing_options): new struct.
1991         * lily/spacing-basic.cc: new file.
1993         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
1994         delta_t doesn't have to be smaller than shortest_playing_len
1996 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1998         * input/regression/markup-arrows.ly:  new file.
2000         * lily/tuplet-bracket.cc: document new behavior.
2002         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
2003         with line breaks.
2005         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
2007         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
2008         default 
2010         * lily/tuplet-bracket.cc: add edge-text property.
2011         add break-overshoot.
2012         (print): read break-overshoot.
2013         (print): read edge-text, add stencils.
2015         * mf/feta-arrow.mf: new file.
2017         * mf/feta-generic.mf: add feta-arrow.
2019 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2021         * Documentation/user/lilypond-book.itely (An example of a
2022         musicological document): Added flag -o to dvips for people who use
2023         the default setting in teTeX where output is sent to the printer. 
2025         * Documentation/user/global.itely (Vertical spacing): Added
2026         reference to the Axis_group_engraver which documents the *Extent
2027         properties.
2029 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2031         * Documentation/user/basic-notation.itely (Tuplets): add note
2032         about nested tuplets. Remove BUG. 
2034         * input/regression/tuplet-nest.ly: update: remove manual hack. 
2036         * lily/tuplet-bracket.cc (print): use robust_scm2drul
2037         (print): manually call print() for subtuplets.
2038         (calc_position_and_height): add subtuplets to the
2039         support. Vertically shift outer tuplet 
2041         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
2042         remove-first for Lyrics, ChordNames and FiguredBass
2044         * scm/define-grob-properties.scm (all-internal-grob-properties):
2045         use ly:grob-array? iso. grob-list?
2046         (all-internal-grob-properties): add tuplets grob-array.
2048         * lily/tuplet-bracket.cc (add_tuplet_bracket):
2049         new function
2051 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2053         * input/test/time-signature-staff.ly: new file.
2055         * ly/declarations-init.ly (center): escape to Scheme. Fixes
2056         spurious #<Music FingerEvent> errors. Backportme.
2058 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2060         * Documentation/user/programming-interface.itely (Markup
2061         construction in Scheme): Corrected markup syntax in the
2062         translation table.
2064 2005-08-03  Graham Percival  <gperlist@shaw.ca>
2066         * Documentation/user/instrument-notation.itely: small update
2067         to bagpipe notation docs; thanks Sven!
2069         * Documentation/user/basic-notation.itely: add link about trills.
2071 2005-08-02  Graham Percival  <gperlist@shaw.ca>
2073         * Documentation/user/music-glossary: remove accidentally committed
2074         fink patch.
2076 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
2078         * lily/lily-parser.cc (get_header): new function. Enable multiple
2079         \header definitions.
2081         * lily/parser.yy (lilypond_header_body): use get_header.
2083         * ly/init.ly:
2084         * scm/lily-library.scm (print-score-with-defaults): renamed
2085         $globalheader to $defaultheader
2086         
2087         * Documentation/user/global.itely (Creating titles): added short
2088         explanation that multiple headers are useable.
2091 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2093         * lily/module-scheme.cc (LY_DEFINE): new file. 
2095         * Documentation/user/advanced-notation.itely (Font selection): add
2096         doco for make-pango-font-tree.
2098 2005-07-31  Graham Percival  <gperlist@shaw.ca>
2100         * Documentation/user/music-glossary: more languages
2101         for tenuto.
2103         * Docuemntation/user/instrument-notation.itely: minor
2104         update for bagpipe example.
2106 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2108         * input/regression/+.ly (TODO): add some text.
2110 2005-07-28  Graham Percival  <gperlist@shaw.ca>
2112         * Documentation/user/invoking.itely: \score begins with music.
2114         * Documentation/user/ basic-notation.itely,
2115         instrument-notation.itely: minor changes.
2117         * Documentation/user/music-glossary.itely: began tenuto entry.
2119 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2121         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
2123         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
2125 2005-07-27  Graham Percival  <gperlist@shaw.ca>
2127         * Documentation/user/examples.itely: remove bagpipe template.
2129         * Documentation/user/instrument-notation.itely: add bagpipe
2130         section, maybe fix quotes in lyrics.  I hate text encoding.
2131         Clarify chord durations, more bagpipe stuff.
2133 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2135         * lily/accidental-engraver.cc: formatting fixes.
2137         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
2138         grob-array.
2140         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
2142         * lily/note-column.cc (arpeggio): new function.
2144         * lily/note-spacing.cc (get_spacing): also take arpeggio into
2145         account for spacing.
2147 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2149         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
2150         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
2151         mingw build.
2152         
2153 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2155         * scm/lily.scm (lilypond-all): clear anonymous modules after
2156         processing files.
2158 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2160         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
2161         SCM_I_CONSP
2163         * VERSION: 2.7.3 released
2165         * Documentation/user/invoking.itely (Invoking lilypond): add
2166         LILYPOND_GC_YIELD documentation.
2168         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
2169         scm_from_real / scm_make_real.
2171         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
2172         higher. This increases memory footprint, but provides overall
2173         speedup of 15 to 20%. 
2175         * lily/include/translator.hh (class Translator): remove
2176         PRECOMPUTED_VIRTUAL everywhere.
2178         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
2180         * lily/context.cc (now_mom): non-recursive now_mom() 
2182         * lily/include/profile.hh: new file.
2184         * lily/profile.cc: new file.
2186         * lily/grob.cc (Grob::Grob): look properties up directly.
2188         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
2189         lookups.
2191         * lily/include/box.hh (class Box): smob Box type.
2193         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
2195         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
2196         protect() and unprotect(). Use throughout.
2198 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2200         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
2202         * scm/define-music-display-methods.scm (markup->lily-string):
2203         markup elements can also be strings (without simple-markup
2204         appended)
2206 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2208         * lily/context.cc (where_defined): also assign value in
2209         where_defined().
2211         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
2212         (curve_coordinate): new function
2214         * lily/simple-spacer.cc (add_columns): only add rods between
2215         column i and begin/end if keep-inside-line is set (this repleces
2216         allow-outside-line as default)
2218 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2220         * lily/tuplet-engraver.cc (start_translation_timestep): only read
2221         tupletSpannerDuration if applicable.
2223         * lily/font-size-engraver.cc (process_music): read fontSize only
2224         once per timestep.
2226         * lily/engraver*cc: use throughout.
2227         
2228         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
2230         * lily/translator.cc (add_acknowledger): new file. Directly jump
2231         into an Engraver::acknowledge_xxx () method based on a grobs
2232         interface-list.
2234         * lily/include/translator-dispatch-list.hh (class
2235         Engraver_dispatch_list): new struct, new file.
2237         * scm/define-context-properties.scm
2238         (all-internal-translation-properties): remove acceptHashTable,
2239         acknowledgeHashTable
2241         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
2243         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
2244         change acknowledgeHashTable to C++ member. 
2246         * lily/rest-collision.cc (do_shift): use extract_grob_set().
2248 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2250         * scm/display-lily.scm: new file. Define a `display-lily-music'
2251         function, that displays the music expression given as an argument,
2252         using LilyPond notation.
2254         * scm/define-music-display-methods.scm: new file. Implementation
2255         of display methods for each music type.
2257         * ly/music-functions-init.ly (displayLilyMusic): new function for
2258         displaying music with LilyPond notation.
2260         * input/regression/display-lily-tests.ly: new regression test file
2261         for `display-lily-music'.
2263         * scm/markup.scm: remove obsolete debugging code (for printing
2264         markups with LilyPond notation).
2266         * scm/define-music-types.scm (music-name-to-property-table):
2267         * scm/clef.scm (supported-clefs): export, in order to be accessible
2268         from the (scm display-lily) module.
2270 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2272         * Documentation/topdocs/NEWS.tely (Top): Typo.
2274 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
2276         * Documentation/index.html.in, Documentation/texinfo.css,
2277           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
2278           Documentation/bibliography/index.html.in,
2279           Documentation/bibliography/html-long.bst: revert css-width patch,
2280           it does not work with IE6.
2282 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2284         * Documentation/texinfo.css: revert 760px hack. 
2286         * VERSION: release 2.7.2
2288         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
2290         * Documentation/user/basic-notation.itely (Barnumber check): add
2291         section.
2293         * scm/music-functions.scm (skip-to-last): new function. Show only
2294         last showLastLength part of the \score.
2296         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
2298         * python/convertrules.py (conv): add ly:x-moment rule
2300         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
2302         * Documentation/topdocs/NEWS.tely (Top): add new feature.
2304         * Documentation/user/instrument-notation.itely (Flexibility in
2305         alignment): options in subsections.
2307         * lily/lyric-engraver.cc (process_music): don't typeset text for _
2308         syllable text. Instead, assume that the previous lyric text is a
2309         melismated text.
2311         * Documentation/index.html.in: revert 800x600 change.
2313 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2315         * lily/main.cc (main): Remove invalid handle kludge.
2317         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
2318         (lambda): add gui define.
2320 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2322         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
2324         * Documentation/user/instrument-notation.itely (Musica ficta
2325         accidentals): add section Musica ficta accidentals
2327         * lily/accidental-engraver.cc (make_suggested_accidental): new
2328         function.
2329         (make_standard_accidental): move into new function.
2330         (create_accidental): new function.
2332         * scm/define-grobs.scm (all-grob-descriptions): new Grob
2333         AccidentalSuggestion
2335         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
2337         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
2338         undefined.
2340         * Documentation/user/global.itely (Page formatting): document
2341         horizontalshift.
2343         * scm/page-layout.scm (default-page-music-height):
2344         horizontalshift: new variable, shift all systems by
2345         horizontalshift to the right, to make space for instrument names.
2347         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
2349         * lily/input-scheme.cc (LY_DEFINE): take format commands.
2351 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2353         * lily/note-column.cc (dir): idem.
2355         * lily/spacing-spanner.cc (Module): idem.
2357         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
2359         * lily/include/paper-column.hh (class Paper_column): add
2360         non-static get_rank() member.
2362         * VERSION: release 2.7.1
2363         
2364         * scm/framework-null.scm: new file, used for benchmarking.
2366 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
2368         * Documentation/topdocs/INSTALL.texi, configure.in: fix
2369         version dependencies for fontforge and gs.
2371         * Documentation/index.html.in, Documentation/texinfo.css,
2372         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
2373         Documentation/bibliography/index.html.in, 
2374         Documentation/bibliography/html-long.bst: optimize width of
2375         html for a 800x600 screen (width:760), increases printability
2376         when 'fit to page' is not set and readability in wide screens.
2378         * stepmake/bin/add-html-footer.py: add missing </p>.
2380 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2382         * scm/define-markup-commands.scm (beam): use polygon in beam
2383         command.
2385         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
2386         all acknowledged grobs, and do potentially expensive merge and
2387         write in one go.
2389         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
2391         * configure.in (reloc_b): add --enable-static-gxx to statically
2392         link to libstdc++
2394         * lily/GNUmakefile (static-gxx-libs): new target
2395         static-gxx-libs. Create symlink to libstdc++.a
2397         * lily/new-lyric-combine-music-iterator.cc: rename to
2398         Lyric_combine_music_iterator
2400         * lily/lyric-combine-music-iterator.cc
2401         (Old_lyric_combine_music_iterator): rename to
2402         Old_lyric_combine_music_iterator
2404         * lily/*-engraver.cc (various): remove double use of
2405         PRECOMPUTED_VIRTUAL function: only use
2406         start_translation_timestep() and stop_translation_timestep(), not
2407         both.
2409         * lily/break-substitution.cc (fast_substitute_grob_array): do
2410         fast_substitute_grob_array for all unordered grob_arrays.
2411         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
2412         (substitute_grob_array): optimize.
2414         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
2416         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
2418         * lily/parser.yy: revert $globalheader patch.
2419         
2420         * lily/include/translator.icc
2421         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
2422         Translator methods, without _static helper.
2424         * lily/grob-smob.cc (derived_mark): rename from
2425         do_derived_mark(). Return void.
2427         * scm/define-context-properties.scm
2428         (all-internal-translation-properties): remove tweakCount/tweakRank.
2430         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
2431         predefined break-visibilities.
2433         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
2434         booleans for break-visibility.
2436         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
2438         * python/convertrules.py (conv): rule for Timing_translator. 
2440         * lily/include/translator.icc: new file. 
2442         * lily/paper-column-engraver.cc (process_music): new
2443         file. Separate Paper_column factory from Score_engraver.
2445         * lily/vertically-spaced-context-engraver.cc: administer
2446         spaceable-staves property of System.
2448         * lily/translator-group-ctors.cc: new file.
2450         * lily/context-property.cc (make_grob_from_properties): construct
2451         the right Grob class programmatically, looking at the class entry
2452         for the meta property.
2454         * lily/break-align-engraver.cc (stop_translation_timestep): call
2455         Break_align_interface::add_element() directly.
2457         * lily/context.cc (measure_position): measure_position() is now a
2458         normal function.
2460         * lily/include/translator.hh (class Translator): rename
2461         process_acknowledged_grobs() to process_acknowledged() and move to
2462         Translator.
2464         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
2465         field for each grob description.
2467         * lily/include/translator-group.hh (class Translator_group):
2468         change to base class. Separate class from Translator. This gets
2469         rid of virtual inheritance for Engravers/Performers.
2471         * lily/staff-performer.cc (class Staff_performer): derive
2472         Staff_performer from Performer, not Performer_group_performer 
2474         * Lily/translator-group.cc (precomputed_recurse_over_translators):
2475         new function.
2476         (precompute_method_bindings): new function. Precompute lists of
2477         Translators, so we only call methods (process_music,
2478         start_translation_timestep, etc.) for Translators needing
2479         it. Also: dispose of pointer-to-member-function calls.
2481         * lily/engraver-group-engraver.cc: remove engraver_each,
2482         recurse_down_engravers ()
2484         * lily/note-head.cc (internal_print): only call
2485         glyph-name-procedure if style != default. 
2487 2005-07-16  Graham Percival  <gperlist@shaw.ca>
2489         * ly/titling-init.ly: add printallheaders option.
2491         * Documentation/user/global.itely: document printallheaders.
2493 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2495         * lily/system.cc (do_derived_mark): don't mark from object_alist_
2496         anymore, but do it centrally.  
2498         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2499         hammer hack.
2501         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
2503         * scm/output-lib.scm: remove hammer-print-function.
2505         * lily/include/pointer-group-interface.hh (extract_grob_set): new
2506         macro. Declare a Link_array<Grob> and fill it from a grob.
2507         (extract_item_set): idem for item.
2509         * lily/break-substitution.cc: add header.
2510         (fast_substitute_grob_array): rewrite for Grob_arrays.
2511         (substitute_grob_array): idem.
2513         * lily/group-interface.cc (add_thing): remove file.
2515         * flower/include/parray.hh (class Link_array): slice() is const.
2517         * lily/include/grob-array.hh: new file.
2519         * lily/grob-array.cc (spanner): new file.
2521         * lily/beam-quanting.cc (fill): read details property from beam.
2523         * lily/beam.cc: support details property.
2525         * total speedups below: approx 10%.
2527         * lily/include/beam.hh: new struct, softcode beam quanting parameters
2529         * lily/include/grob.hh (class Grob): add interfaces_ member.
2531         * lily/bezier.cc (init_polynomial_cache): new function: cache
2532         binom(3,j) t^j (1-t)^{3-j}
2533         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
2535         * lily/*.cc: substitution throughout.
2537         * lily/grob-property.cc (internal_get_object): new routine.
2538         (internal_set_object): idem. Store grob refrences in separate
2539         alist. This saves processing time, since properties aren't
2540         break-substituted, and the per grob namespace is smaller, both for
2541         grobs and non-grob properties.
2543         * scm/define-grob-properties.scm (all-internal-grob-properties):
2544         remove center-element.
2546         * lily/grob.cc: remove tweak-count, tweak-rank.
2548 2005-07-15  Graham Percival  <gperlist@shaw.ca>
2550         * Documentation/user/lilypond-book.itely: fixes example.
2552 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2554         * Documentation/user/global.itely (Creating titles):    
2555         * Documentation/user/examples.itely (All headers): change the
2556         place of \header in \score blocks (after music block) to make
2557         examples compile (cf. changes on parser.yy on 2005-07-10)
2559 2005-07-13  Graham Percival  <gperlist@shaw.ca>
2561         * python/convertrules.py: add exc -> ecc rule.
2563         * scripts/convert-ly.py: add location of convertrules.py
2564         in a comment.
2566         * Documentation/user/changing-defaults.itely: fix language.
2568 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2570         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
2572 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2574         * scm/output-socket.scm (grob-bbox): don't use inf? 
2576         * flower/include/rational.hh: add operator bool() 
2578         * scm/define-music-types.scm (music-descriptions): remove
2579         internal-class-name properties.
2581         * lily/include/event.hh: remove file.
2583         * lily/include/music-constructor.hh: remove file.
2585         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
2586         in 'types property.
2588         * lily/music.cc (duration_length_callback): new function.
2590         * lily/event.cc: remove file.
2592         * lily/music-constructor.cc: remove file.
2594         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
2596         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
2597         (get_context_key): idem.
2599         * scm/lily.scm (lambda): new option object-keys (default to #f)
2601         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
2603         * scm/output-gnome.scm: remove beam routine.
2605         * scm/output-ps.scm (scm): idem.
2607         * scm/output-svg.scm: remove beam.
2609         * ps/music-drawing-routines.ps: remove draw_beam.
2611         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
2613         * flower/include/guile-compatibility.hh (scm_from_locale_string):
2614         add scm_from_locale_string compatibility glue. 
2616 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
2618         * scripts/lilypond-book.py: Prevent occuring error when
2619         'lilypond-book --output=foo/ somefile.ly' is executed multiple
2620         times and target file shoud be overwritten.  (Error message said
2621         'input file and output file is same'.)
2623 2005-07-13  Graham Percival  <gperlist@shaw.ca>
2625         * input/regression/slur-extreme.ly,
2626         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
2627         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
2628         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
2629         "excentricity" to "eccentricity".
2631         * Documentation/user/converters.itely: fix URL for Noteedit and
2632         Rosegarden.
2634         * THANKS: added Yoshinobu Ishizaki.
2636 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2638         * scm/define-markup-commands.scm (justify-field): add. 
2640         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
2642 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2644         * lily/lookup.cc (filled_box): express filled_box with
2645         round_filled_box
2647         * scm/midi.scm (paper-book-write-midis): new function. Write all
2648         performances in numbered MIDI files.
2650         * lily/performance-scheme.cc (LY_DEFINE): new file.
2651         (LY_DEFINE): new function ly:performance-write.
2653         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
2654         new function.
2655         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
2657         * scm/framework-*.scm: use port arguments throughout.
2659         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
2661         * lily/paper-outputter.cc (Paper_outputter): take port argument.
2663         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
2665         * scm/framework-texstr.scm (output-framework): 
2667         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
2669         * scm/output-lib.scm (tablature-stem-attachment-function):
2670         tablature stem attachment fix. 
2672 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2674         * lily/bezier.cc: hardcode binomial coefficients of order 3.
2676         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
2678         * scm/define-music-types.scm (music-descriptions): don't use
2679         Music_wrapper type.
2681         * lily/paper-column.cc (print): print moment too.
2683         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
2684         remove compatibility cruft.
2686         * lily/parser.yy (score_body): \score can only begin with Music. 
2688         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
2689         make-score. Take music argument only. Move parser interaction to
2690         Scheme.
2692         * scm/lily-library.scm (scorify-music): new function.
2694         * python/lilylib.py (datadir): remove 2.1 compat kludge.
2695         (datadir): remove resource import.
2696         (print_environment): remove get_bbox()
2697         (cp_to_dir): remove pre 1.5.2 compat glue.
2699 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2701         * lily/include/simple-spacer.hh (Module): idem.
2703         * lily/include/spring.hh (struct Spring): store inverse
2704         strength. This prevents division by zero.
2706         * VERSION: release 2.7.0
2707         
2708         * lily/include/music.hh (class Music): remove Music::duration_log()
2710         * lily/stem-engraver.cc (make_stem): take duration log from event.
2712         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
2714 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2716         * scm/lily.scm (ly:load): load autochange.scm
2718         * Documentation/user/tutorial.itely (Running LilyPond for the
2719         first time): remove reference to DVI/TeX
2721         * scm/define-markup-commands.scm (text): add \text markup command.
2723         * configure.in (reloc_b): bump requirement to Python 2.2.
2725         * lily/include/dots.hh (class Dots): make has_interface() static.
2727         * python/convertrules.py (conv): add rule for ly:grob-default-font
2729         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
2730         alphabetical order.
2732         * input/regression/trill-spanner-pitched.ly: new file.
2734         * lily/font-interface-scheme.cc (LY_DEFINE): function
2735         ly:grob-default-font (changed from get-default-font).
2737         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
2739         * lily/note-head.cc (internal_print): if style is not a symbol,
2740         set style to 'default. 
2741         (internal_print): no style suffix if glyph-name-procedure not
2742         set. Default to quarter head.
2744         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
2746         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
2748         * ly/music-functions-init.ly: \pitchedTrill
2750         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
2752         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
2754         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
2756         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
2758         * po/fr.po: update
2760         * po/de.po: update.
2762 2005-07-06  Graham Percival  <gperlist@shaw.ca>
2764         * Documentation/user/changing-defaults.itely: add link
2765         to grob-iterface.
2767         * Documentation/user/advanced-notation.itely: add material
2768         to Setting automatic beam behaviour.  Thanks, Joe!
2770         * Documentation/user/lilypond.itely: change encoding to utf-8.
2772 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2774         * Documentation/user/advanced-notation.itely (Setting automatic
2775         beam behavior): Correct the documentation of
2776         revert-auto-beam-setting (backportme)
2778 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2780         * lily/ly-module.cc (ly_make_anonymous_module): define
2781         %module-public-interface of module. 
2783         * lily/lily-parser.cc (print_smob): allow printing of parser smob
2784         without lexer.
2786 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2788         * input/regression/fret-diagrams.ly: stretch example.
2790 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2792         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
2793         Fodor).
2795 2005-06-30  Graham Percival  <gperlist@shaw.ca>
2797         * Documentation/topdocs/AUTHORS.texi: update personal web address.
2799         * Documentation/user/examples.itely, lilypond-book.itely:
2800         change \RequirePackage to \usepackage.
2802         * Documentation/user/global.itely: document copyright and tagline.
2804 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2806         * Documentation/user/basic-notation.itely (Transpose): remove link
2807         to nonexistent UntransposableMusic.
2809         * scm/output-svg.scm: remove old definitions.
2811         * scripts/lilypond-book.py (do_file): search for kpsewhich before
2812         invoking.
2814         * python/lilylib.py (search_exe_path): new function.
2816 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2818         * python/lilylib.py (mkdir_p): remove setup_environment()
2819         (backportme)
2821         * buildscripts/mutopia-index.py (headertext): trim text.
2823         * Documentation/topdocs/NEWS.tely (Top): refresh.
2825         * scm/define-markup-commands.scm (wordwrap-string): new function:
2826         split string in paras and words.
2827         (wordwrap-markups): new function.
2828         (wordwrap-stencils): new function. 
2829         (justify): use it.
2830         (wordwrap): use it.
2831         (wordwrap-string): use it
2832         (justify-string): use it.
2834         * scm/lily-library.scm (regexp-split): new function.
2836         * scm/define-markup-commands.scm: remove encoded-simple. 
2837         remove font-markup.
2838         (fontsize): remove old version  of fontsize.
2839         (wordwrap): new markup function. Wrap into paragraphs.
2841         * VERSION: Branch lilypond_2_6
2842         (MINOR_VERSION): go to 2.7.0
2844 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2846         * po/zh_TW.po: update from translation project.
2848 2005-06-28  Graham Percival  <gperlist@shaw.ca>
2850         * scm/midi.scm: compile fix.
2852 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2854         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
2855         patch. Now, the tempfile module is loaded too, not only used.
2857 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
2859         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
2860         0.05 - 1.00 to 0.25 - 1.00
2862         * scm/midi.scm: moved the default-instrument-equalizer procedure
2863         to just under the insturment-equalizer-alist it takes as an
2864         argument.
2866 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2868         * Documentation/user/advanced-notation.itely (Font selection):
2869         remove CMR note.
2871         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
2873 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2875         * THANKS: Add UTF-8 marker.
2877         * Documentation/user/point-and-click.itely (http): Update: use
2878         lilypond-invoke-editor.  Fix: instruct to use user.js.
2880 2005-06-27  Graham Percival  <gperlist@shaw.ca>
2882         * ly/titling-init.ly: implements printpagenumber, increases
2883         space between dedication and title (to avoid collisions with
2884         "g" and "q" in dedication), and nicer logic about copyright
2885         and instrument fields being printed on the first page.
2886         Thanks Vincent!
2888         * Documentation/user/global.itely: document printpagenumber.
2890 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2892         * Documentation/topdocs/NEWS.tely: Update to 2.6.
2894 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2896         * THANKS: update to 2.6
2898         * VERSION: 2.6.0 released.
2900 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2902         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
2903         rule, errorneously removed probably because of misleading comment.
2905 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2907         * python/lilylib.py (datadir): py2exe comments.
2909         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
2911         * configure.in (reloc_b): make fontconfig REQUIRED.
2913 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
2915         * po/fi.po: add latest translations.
2917 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2919         * ChangeLog: recode utf-8
2921         * Documentation/pictures/lilypond.xpm (Module): edited photo as
2922         logo.
2924         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
2926         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
2928         * python/convertrules.py (do_conversion): don't print program_name
2929         from within a module
2931         * configure.in (reloc_b): bump fontforge requirement to 20050624.
2933         * python/convertrules.py (conv): add 2.6.0 dummy rule.
2935 2005-06-23  Graham Percival  <gperlist@shaw.ca>
2937         * Documentation/user/lilypond-book.itely,
2938         Documentation/user/examples.itely: add \RequirePackage{graphics}.
2940         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
2941         fixes baseline-skip.  Thanks Vincent!
2943         * Documentation/user/advanced-notation.itely, global.itely:
2944         moved "Selecting font sizes" to global, since it deals with
2945         notation font size, not text fonts.
2947 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2949         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
2950         to fonts.
2952 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2954         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
2955         workaround since /dev/stdin doesn't work on Cygwin. Using a
2956         temporary file in the current directory since latex doesn't
2957         understand the path name to the default TMP in Cygwin (at least on
2958         win XP).
2959         
2960         * Documentation/user/global.itely (Creating titles): Correct
2961         misprint in example. Thanks to Rob Vlasaty.
2963 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2965         * VERSION (PATCH_LEVEL): release 2.5.32
2967         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
2968         variable in lily module
2970         * scm/framework-ps.scm (output-classic-framework): error message
2971         regarding the classic framework.
2973         * Documentation/user/henle-flat-gray.png (Module): new file.
2975         * Documentation/user/baer-flat-gray.png (Module): new file.
2977         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
2978         whiteout for markups.
2980         * buildscripts/substitute-encoding.py (note_glyph): include _ in
2981         regex too. This fixes change clef appearance in PDF. 
2983         * ttftool/include/*: remove.
2985         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
2987         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
2989         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
2991         * ttftool/*: remove ttftool subdirectory.
2993         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
2995         * lily/ttf.cc (print_header): new file. Convert to type42, using
2996         FreeType to parse the TTF. 
2998         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
2999         and post table may differ. Pass around post_nglyphs as well.
3001 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3003         * ly/music-functions-init.ly (musicMap): new music function
3004         musicMap. 
3005         
3006 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3008         * make/mutopia-rules.make: anti-alias-factor = 2
3010         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
3011         page switch.
3013         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
3014         anti-alias-factor for lilypond-book runs.
3016         * scm/ps-to-png.scm (scale-down-image): new function.
3017         (my-system): new function.
3018         (make-ps-images): blow up GS resolution by anti-alias-factor,
3019         scale down image by anti-alias-factor.  This improves appearance
3020         of bitmaps
3021         (make-ps-images): remove showpage. Fixes spurious empty png at
3022         end.
3024         * scm/framework-ps.scm (write-preamble): downcase filename before
3025         string-matching. Should fix .TTF files (as opposed to ttf files)  
3027         * Documentation/user/tutorial.itely (Running LilyPond for the
3028         first time): separate subsections for windows, macos and unix.  
3030         * Documentation/user/invoking.itely (Updating files with
3031         convert-ly): add MacOS X note.
3033 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3035         * Documentation/user/introduction.itely (Engraving): don't include
3036         file optical-spacing, add directly.
3038         * lily/paper-outputter.cc (file): open file in binary mode. This
3039         fixes OTF embedding on windows.
3041 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3043         * scm/framework-ps.scm (write-preamble): remove debugging output.
3045         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
3047         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
3048         outdir.
3049         (install-fc-cache): install font cache in installation directories.
3051 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3053         * scm/editor.scm (editor-command-template-alist): Use char iso
3054         column, except for Emacs.
3055         (get-editor-command): Substitute char too (Bertalan Fodor).
3057 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3059         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
3060         quoted ~s.  This should fix PNG output on Windows; single quotes
3061         are regular characters on Windows.
3063 2005-06-16  Graham Percival  <gperlist@shaw.ca>
3065         * Documentation/user/basic-notation.itely: include ChoirStaff
3066         in System start delimiters.
3068         * Documentation/user/putting.itely: new doc section on
3069         fixing overlapping notation.
3071 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3073         * Documentation/user/global.itely (Paper size): \paper is in
3074         \book, not \score.
3076         * make/mutopia-rules.make: -ddelete-intermediate-files
3078         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
3080 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3082         * ChangeLog: Recode utf-8.
3084         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
3085         datadir with .py modules.
3087 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
3089         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
3091 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3093         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
3094         
3095         * scm/framework-ps.scm (write-preamble): remove status check.
3097         * Documentation/user/invoking.itely (Updating files with
3098         convert-ly): remove -o option.
3100         * VERSION (PACKAGE_NAME): release 2.5.31
3102         * scm/framework-ps.scm (write-preamble): use ly:system.
3103         (write-preamble): verbosity.
3105         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
3107         * python/convertrules.py: new file. Store conversion rules
3108         separately.
3110 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3112         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
3114 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3116         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
3117         \musicDisplay 
3119         * Documentation/user/instrument-notation.itely (More stanzas): Add
3120         reference to StanzaNumber.
3122 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3124         * THANKS: separate section for website translators.
3126 2005-06-14  Graham Percival  <gperlist@shaw.ca>
3128         * Documentation/topdocs/INSTALL.texi: update vim info;
3129         thanks Simon Bailey!
3131         * Documentation/user/advanced-notation.itely: included
3132         color names.
3134         * Documentation/user/advanced-notation.itely,
3135         Documentation/usr/notation-appendices.itely: moved
3136         color names into an appendix.
3138 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3139         
3140         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
3142         * scm/lily.scm (lambda): initialize program options from here.
3144         * scm/framework-*.scm: add header info.
3146         * lily/main.cc (parse_argv): only set output format to pdf if no
3147         other format specified.
3149         * scm/backend-library.scm (postprocess-output): process
3150         'delete-intermediate-files after running convert-to-*. This fixes
3151         PNG generation when 'delete-intermediate-files is set.
3152         
3153 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3155         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
3156         links on website. 
3158 2005-06-13  Graham Percival  <gperlist@shaw.ca>
3160         * Documentation/topdocs/INSTALL.texi,
3161         Documentation/user/lilypond-book.itely: typos.
3163 2005-06-12  Pal Benko  <benkop@freestart.hu>
3165         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
3166         added between program name and switch; -b changed to -f not
3167         to generate pdf
3169 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3171         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
3172         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
3174         * input/sakura-sakura.ly: add \midi.
3176         * buildscripts/mutopia-index.py (find): use /usr/bin/find
3177         iso. python find. 
3179         * ttftool/test.c (main): cosmetics.
3181         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
3183         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
3184         create a ttf2ps binary.
3186         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
3188         * scm/backend-library.scm (postscript->png): set rename-page-1 to
3189         true.
3191 2005-06-11  Graham Percival <gperlist@shaw.ca>
3193         * Documentation/user/lilypond-book.itely: add warning about
3194         the font warnings in dvips.
3196 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3198         * THANKS: typo
3200         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
3202         * GNUmakefile.in: remove links for .map, .enc
3203         don't fail if out/ doesn't exist yet.
3205 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3207         * ttftool/util.c (surely_read): return nbytes
3209         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
3211         * VERSION (PACKAGE_NAME): release 2.5.30
3213         * flower/string-convert.cc (precision_string): >? fix.
3215         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
3216         (make-ps-images): add verbose -q too.
3218         * lily/default-actions.cc (Module): new file. default
3219         {book,score}-print functions.
3221         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
3222         pass results via parseStringResult, lookup via ly:parser-lookup.  
3224         * lily/lily-parser.cc (Lily_parser): only clone lexer in
3225         constructors.
3226         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
3227         (parse_string): idem.
3229         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
3231         * lily/main.cc (main_with_guile): copy be_verbose_global into
3232         ly_set_option()
3234 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
3236         * scm/backend-library.scm (postscript->pdf):
3237         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
3238         verbose mode.  Search for several names of gs executable.
3240 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3242         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
3243         directly. This fixes a massive memory leak, provided you use CVS
3244         GUILE.
3246 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
3248         * ly/property-init.ly: Added tieDashed.
3250         * THANKS: Added some bughunters for 2.5.
3252 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3254         * lily/program-option.cc: add debug-gc option.
3256         * lily/include/lily-guile-macros.hh: don't protect exported module
3257         objects.
3259         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
3261         * scm/backend-library.scm (postscript->pdf): use
3262         delete-intermediate-files iso. running-from-gui? 
3264         * ttftool/util.c (surely_read): robustness. Allow read() to return
3265         less bytes than requested, as per posix standards.
3267         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
3268         program option.
3270         * ttftool/include/ttftool.h ("C"): rename verbosity to
3271         ttf_verbosity. Add to public interface.
3273         * scm/music-functions.scm (unfold-repeats): remove debugging display.
3275         * lily/program-option.cc: rename from scm-option.cc
3277         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
3278         (get_help_string): Print pretty help string.
3280         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
3281         to snippet preamble.
3283         * lily/scm-option.cc: remove command-line-settings option. Fold
3284         all command-line options plus default settings in a generic
3285         interface. 
3287         * flower/getopt-long.cc (table_string): indent 2nd lines of help
3288         texts too.
3290 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3292         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
3293         or EXT_ components non-empty.
3295 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3297         * scm/lily.scm (running-from-gui?): Export.
3299         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
3300         output in .ly source directory.
3302 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3304         * ttftool/util.c (surely_lseek): more verbosity.
3306         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
3307         compile.
3309         * lily/parser.yy (Repeated_music): remove >? 
3311         * scm/backend-library.scm (postscript->pdf): Support for
3312         -dgs-font-load=1
3314         * scm/framework-ps.scm (write-preamble): make font loading
3315         switchable to GS via --define-default gs-font-load=1
3317 2005-06-09  Graham Percival  <gperlist@shaw.ca>
3319         * Documentation/user/global.itely: added \layout docs.
3321 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3323         * lily/lily-parser-scheme.cc: add unistd.h
3325 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3327         * scm/editor.scm: add char argument.
3329         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
3331         * ttftool/util.c (syserror): use errno for better error reporting.
3333         * lily/source-file.cc (get_counts): new function. Calc column,
3334         line and char count in one go.
3336         * lily/binary-source-file.cc (quote_input): rename to quote_input
3338         * lily/input.cc (set): new function.
3340 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3342         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
3343         directory part of file name to search directory.
3345         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
3346         search path and chdir to DIR if --outname=DIR used.
3348         * lily/main.cc (prepend_env_path): Bugfix: Check directory
3349         existence before appending original path.
3351 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3353         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
3354         file" massage.
3356         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
3357         texinfo.tex is always used.
3358         
3359 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3361         * flower/include/axis.hh: rename from axes.hh
3363         * lily/include/text-interface.hh (Module): rename from text-item.hh
3365         * VERSION (PATCH_LEVEL): release 2.5.29
3367         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
3369         * scm/framework-ps.scm (font-file-as-ps-string): new function.
3370         (handle-macfont): new function. Call fondu for Native mac fonts.
3372         * scm/define-markup-commands.scm (fill-line): handle text-widths =
3373         '() case.
3375 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3377         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
3378         multi-page.  Fix .eps regular expression.
3380 2005-06-07  Graham Percival  <gperlist@shaw.ca>
3382         * Documentation/user/putting.itely: add info on modifying templates.
3384         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
3385         misc small changes.
3387 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3389         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
3391         * scripts/lilypond-ps2png.scm
3393         * VERSION (PACKAGE_NAME): release 2.5.28
3395 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3397         * lily/main.cc (prepend_env_path): Do not append /, that does not
3398         work.  Localedir lives in datadir, not in prefix.
3400         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
3401         hack for windows.
3403         * flower/include/file-cookie.hh: Compile fix.
3405 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3407         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
3409         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
3410         system primitives.
3411         (gulp-port): using read-string!/partial. We don't want to read an
3412         entire PS file  (GUILE 1.6 limits strings to 16M) 
3414         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
3415         properties. Add font-interface. 
3417         * scm/define-grob-properties.scm (all-user-grob-properties):
3418         remove old bracket properties.
3420         * scm/x11-color.scm: reformat. 
3422         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
3423         LedgerLineSpanner if new StaffSymbol is found. 
3425         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
3426         staff-symbol for finishing staff. 
3428         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
3430         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
3431         change black to currentColor everywhere. This fixes color support
3432         in SVG.
3434 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
3436         * input/regression/fret-diagrams.ly: new file to test fret diagram
3437         capability
3439         * scm/output-tex.scm: remove white-dot and white-text
3441         * scm/output-ps.scm: remove white-dot and white-text
3443         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
3444         using ly:stencil-in-color instead
3445         (draw-dots) : remove call to white-dot
3447 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3449         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
3450         support.
3452         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
3454         * flower/include/file-cookie.hh: new file. lily_cookie extension 
3456         * flower/file-cookie.cc: new file. lily_cookie extension.
3457         
3458 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3460         * scm/editor.scm (editor-command-template-alist): Add syn
3461         editor (Jaap [de Vos]).
3463 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
3465         * scripts/lilypond-ps2png.scm:
3466         * scm/ps-to-png.scm: New file.
3468         * scm/backend-library.scm (postscript->png): Use it.
3470         * scripts/lilypond-ps-to-png.py: Remove file.
3472         * python/lilylib.py (get_bbox, make_ps_images): Remove.
3474 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3476         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
3478         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
3479         start on grace moment. Fixes autobeam-grace.ly.
3481         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
3482         process anything unless we're at the end of a pending beam. Fixes
3483         syncopated 8ths beamed across a beat.
3485 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3487         * scm/editor.scm (editor-command-template-alist): Start emacs if
3488         emacslient fails.
3490         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
3492         * flower/file-path.cc (is_file, is_dir): Export.
3494         * lily/main.cc (prepend_env_path, set_env_file): Use them.
3496 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3498         * lily/easy-notation.cc: Added include cctype to correct
3499         compilation error.
3501 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3503         * scm/backend-library.scm (postscript->pdf): set resolution to
3504         1200, so bitmap fonts aren't that ugly. 
3506         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
3508         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
3509         parent if we have a notehead. Fixes incorrect offsets when
3510         Paper_column is very wide in the X direction.
3512         * input/regression/font-family-override.ly (Module): new file.
3514         * scm/font.scm (make-pango-font-tree): new function.
3516         * lily/beam.cc (before_line_breaking): remove warning about less
3517         than 2 visible stems. We still get a warning when there is only
3518         one stem.
3520 2005-06-01  Werner Lemberg  <wl@gnu.org>
3522         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
3523         correctly.
3525 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3527         * lily/slur-scoring.cc (generate_avoid_offsets): new
3528         function. Generate avoid offsets once per slur.
3530         * lily/slur.cc (add_extra_encompass): add dependency to
3531         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
3533         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
3534         too. Fixes inf error with added bass notes.
3536         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
3537         argument anymore.
3539         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
3541         * input/tutorial/lbook-latex-test.tex: add line length test.
3543         * scripts/lilypond-book.py (set_default_options): new
3544         function. Call this before dissecting snippets, so linewidth
3545         settings reach the snippets.
3547 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3549         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
3551 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3553         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
3555 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3557         * stepmake/aclocal.m4: More autopackage friendliness.
3559 2005-05-31  Graham Percival  <gperlist@shaw.ca>
3561         * Documentation/index.html.in: remove link to LSR.
3563         * Documentation/user/global.itely: remove duplicate
3564         "dedication" \header{} section.
3566 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3568         * VERSION (PACKAGE_NAME): release 2.5.27.
3570         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
3571         too. Plugs memory leak.
3573         * make/lilypond.fedora.spec.in (Group): remove
3574         lilypond-pdfpc-helper.
3576         * scripts/GNUmakefile (SEXECUTABLES): remove
3577         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
3579         * scm/font.scm (make-century-schoolbook-tree): add Mono as
3580         'typewriter family.
3582         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
3583         memory leak.
3585         * lily/parser.yy (score_body): don't clone Score, that's done in
3586         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
3588         * lily/score-engraver.cc (derived_mark): new function.
3589         (initialize): unprotect Paper_score. This fixes a memory leak.
3591         * lily/score-performer.cc (derived_mark): new function.
3593         * lily/score-translator.cc (get_output): use SCM for get_output() call.
3595         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
3596         spurious warning.
3598         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
3599         serif.
3601 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3603         * configure.in (reloc_b): Add --enable-relocation.
3605 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3607         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
3609         * input/regression/alignment-order.ly: add Staff example.
3611 2005-05-31  John Mandereau   <john.mandereau@free.fr>
3613         * po/fr.po: update.
3615 2005-05-31  Graham Percival  <gperlist@shaw.ca>
3617         * Documentation/index.html.in: add link to LSR.
3619 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3621         * scm/define-stencil-commands.scm (Module): new file. Register all
3622         allowed stencil expression heads in a central place.
3624         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
3625         ly:make-stencil
3627         * lily/stencil-expression.cc (all_stencil_heads): registering
3628         stencil expressions.
3630         * lily/stencil-interpret.cc: new file. Stencil expression
3631         interpreting.
3633         * input/xiao-haizi-guai-guai.ly: move file back.
3635 2005-05-30  Graham Percival  <gperlist@shaw.ca>
3637         * Documentation/user/advanced.itely, converters.itely,
3638         instrument-notation.itely, lilypond-book.itely: misc small
3639         changes.
3641 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3643         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
3645         * make/lilypond.fedora.spec.in: Fix source url.
3647         * cygwin: Update from mingw patches.
3649         * scm/editor.scm (editor-command-template-alist): Use jedit
3650         -reuseview (Bertalan), add uedit (Patrick Huberts).
3652         * input/xiao-hai-zi-guai-guai.ly: Rename from
3653         xiao-haizi-guai-guai.ly.
3655         * input/*: Reindent, do not use TAB.
3657         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
3658         white background.
3660 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
3662         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
3663         numerical overflow error.
3665 2005-05-29 Laura Conrad <lconrad@laymusic.org>
3666         
3667         * abc2ly.py: fix to syntax error in multi-part output.
3669 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3671         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
3672         with disappearing span bars when alignAboveContext is active
3674         * lily/property-iterator.cc (check_grob): use is-grob?
3675         object-property. Fixes crash-key-sig-font-size.ly. 
3677 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3679         * lily/bar-line.cc (print): don't round barlines; this produces
3680         odd aliasing effects in Acroread.
3682         * lily/timing-engraver.cc (process_music): robustness fix.
3684         * lily/context-def.cc (filter_engravers): bugfix.
3686 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3688         * lily/lilypond.rc.in: Add ly-icon.
3690         * lily/GNUmakefile: 
3691         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
3692         rules.
3694 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3696         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
3698         * ps/music-drawing-routines.ps: 
3700         * scm/output-ps.scm: remove draw ez_ball.
3702         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
3703         EasyNotation context definition.
3705         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
3706         Text_interface and color for making easy note heads.
3708         * lily/stencil.cc (with_color): new function.
3710         * ps/music-drawing-routines.ps: remove draw_zigzag_line
3712         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
3713         output routine. Zigzag now works in SVG too.
3715         * scm/output-tex.scm (filledbox): idem.
3717         * scm/output-svg.scm (filledbox): idem.
3719         * scm/output-ps.scm (lily-def): remove horizontal-line. 
3721         * lily/lookup.cc (horizontal_line): use draw-line. 
3723         * lily/system-start-delimiter.cc: remove old staff bracket code.
3725         * mf/feta-haak.mf: further tweaks.
3727         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
3729         * mf/feta-generic.mf: include feta-haak.
3731         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
3733         * scm/framework-ps.scm (write-preamble): only load fonts if their
3734         filename is a string. 
3736 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3738         * scm/output-svg.scm (circle): support circle.
3739         (bracket): stub for bracket.
3741         * scripts/lilypond-book.py (main): make sure --psfonts warning is
3742         correct.
3744 2005-05-26  Graham Percival  <gperlist@shaw.ca>
3746         * Documentation/user/lilypond.tely, advanced-notation.itely,
3747         basic-notation.itely, instrument-notation.itely, global.itely,
3748         introduction.itely, tutorial.itely: rearranging, editing,
3749         clean-up.
3751         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
3752         for compiling on FreeBSD.
3754 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3756         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
3757         otf files.
3759         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
3760         bugfixes.
3762         * VERSION: 2.5.26 released.
3764         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
3766 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
3768         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
3769         if printpagenumber is false.
3771 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3773         * lily/font-config.cc (init_fontconfig): comment out FontConfig
3774         cache warning.
3776         * lily/tie.cc (print): support dotted ties.
3777         
3778 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3780         * scm/define-grobs.scm (all-grob-descriptions): switch off
3781         debugging
3782         (all-grob-descriptions): Arpeggio has Y-extent.
3784         * scm/define-music-properties.scm (all-music-properties): document
3785         length-callback and start-callback as "read-only".
3787         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
3788         length-callback after creation. 
3790         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
3791         compressmusic -> compressMusic.
3793         * ly/music-functions-init.ly (oldaddlyrics): idem.
3795         * lily/parser.yy: NewLyricCombineMusic ->
3796         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
3798 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
3800         * ly/Welcome_to_LilyPond.ly: typo.
3802 2005-05-24  Graham Percival  <gperlist@shaw.ca>
3804         * Documentation/user/lilypond.tely: move changing-defaults to be
3805         before global issues.
3807         * Documentation/user/basic-notation.itely: move Transpose section
3808         here from advanced/Other.
3810         * Documentation/user/changing-defaults.itely,
3811         advanced-notation.itely: move Fonts to advanced, edit.
3813 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3815         * lily/parser.yy (bare_int): remove rule.  From now on, we require
3816         # before negative integers.
3818 2005-05-23  Graham Percival  <gperlist@shaw.ca>
3820         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
3822         * Documentation/user/lilypond.tely: change Unified index to
3823         LilyPond index.
3825         * Documentation/user/advanced-notation.itely,
3826         instrument-notation.itely: editing.
3828 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3830         * scm/lily.scm (lilypond-all): Bugfix: return failed.
3832         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
3834 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3836         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
3837         ly:port-move.  Needs to be stderr-specific on mingw.
3838         Run fixcc.
3840 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3842         * lily/general-scheme.cc (ly:port-move): Remove.
3844         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
3845         windows.
3847         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
3848         variables.  This eliminates the need for a gs.bat wrapper, which
3849         opens a console.
3851         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
3852         * scm/lily.scm (running-from-gui?): 
3853         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
3854         artifact of not compiling with -mwindows.
3856         * scm/editor.scm: Define PLATFORM.
3858 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3860         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
3861         can start to cut & paste lilypond-book fragments.  
3863         * scm/define-music-types.scm (music-descriptions): remove
3864         UntransposableMusic
3866 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3868         * scm/output-ps.scm (glyph-string): remove / before CIDs.
3870 2005-05-20  Graham Percival  <gperlist@shaw.ca>
3872         * Documentation/user/instrument-notation.itely: remove *Engraver.
3874         * Documentation/user/advanced-notation.itely: edit, rearrange.
3876 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3878         * scm/output-ps.scm (glyph-string): take cid? argument. Use
3879         findresource iso. findfont for CID CFF fonts.
3881         * VERSION (PACKAGE_NAME): release 2.5.25
3883         * ly/Welcome_to_LilyPond.ly: add  \version
3885 2005-05-20  Graham Percival  <gperlist@shaw.ca>
3887         * Documentation/user/programming-interface.itely: move
3888         \displayMusic into its own section.
3890         * Documentation/user/basic-notation.itely: finish editing.
3892 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3894         * flower/file-path.cc (find): don't throw away file_name.dir, but
3895         append to it. Fixes \include with directories.
3897         * flower/include/file-path.hh (class File_path): don't derive from
3898         Array<String>.
3900         * flower/include/file-name.hh (class File_name): remove to_str0()
3902         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
3903         Hara_kiri_engraver in separate file.
3905         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
3906         translation went wrong. Fixes vertically translated slurs.
3908 2005-05-19  Graham Percival  <gperlist@shaw.ca>
3910         * Documentation/user/basic-notaton.itely: editing.
3912 2005-05-18  Graham Percival  <gperlist@shaw.ca>
3914         * Documentation/user/macros.itexi, basic-notation.itely:
3915         add @commonprop (commonly used properties) macro.
3917 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3919         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
3921         * scripts/lilypond-book.py (invokes_lilypond): new function
3922         (main): only run fontextract if invokes_lilypond() is true.
3924         * lily/function-documentation.cc (ly_add_function_documentation):
3925         duh, use !=
3927         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
3929         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
3931         * scm/lily.scm (running-from-gui?): lowercase Darwin.
3933         * lily/function-documentation.cc (ly_add_function_documentation):
3934         use scm_hash_table_p() for checking.
3936 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3938         * Documentation/user/advanced-notation.itely (Text scripts):
3939         Change nonexisting @internalsref{Text markup} to @ref{Text
3940         markup}.  Change @internalsref{Text script} to
3941         @internalsref{TextScript}.
3943         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
3945 2005-05-17  Graham Percival  <gperlist@shaw.ca>
3947         * Documentation/user/tutorial.itely, basic-notation.itely,
3948         changing-defaults.itely: remove duplicate cindex entries
3949         that appear on the same page.
3951         * scm/define-grobs.scm: change default padding for TextSpanner.
3953         * Documentation/topdocs/AUTHORS.texi: update email address.
3955         * Documentation/user/global.itely: add info about \include.
3957 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3959         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
3960         when running-from-gui.
3962         * scm/editor.scm (get-editor): Add platform defaults.
3964         * scm/backend-library.scm (postscript->pdf): Typo.
3966 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3968         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
3970         * lily/font-config.cc (init_fontconfig): add warning about cache.
3972 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3974         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
3976 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3978         * lily/horizontal-bracket.cc (print): Take care of the direction
3979         property so brackets above the stave point downwards. 
3981         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
3982         for HorizontalBracket so it doesn't end up within the stave.
3984 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3986         * lily/GNUmakefile (default): Typo.
3988         * scm/lily.scm (PLATFORM): Export.
3990         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
3991         load-font-via-GS, ttftool or fopencookie is broken on windows.
3992         
3993         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
3994         -dSAFER, that is broken on windows.
3996 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3998         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
3999         for FlexLexer.h
4001         * scripts/lilypond-invoke-editor.scm: remove stray -
4003 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4005         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
4006         Fixes deprecation warning.
4008         * flower/include/string.icc (to_string): Only inline if
4009         -DSTRING_UTILS_INLINED.
4011         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
4012         name.  Remove windows comment.
4014         * scm/editor.scm (slashify): New function.
4015         (get-editor-command): Use it.
4016         (get-command-template): Do not alter editor command if
4017         environment value includes `%(file)s' magic.
4019         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
4020         (dissect-uri): Use it.
4021         (unquote-uri): Bugfix.
4023 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4025         * scm/framework-ps.scm (write-preamble): add TTF rule.
4027         * Documentation/topdocs/README.texi (Top): remove note about
4028         xdelta.
4030         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
4031         requirement.
4033         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
4034         function. Figure out where FlexLexer.h lives
4036         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
4037         
4038 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4040         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
4041         with Windows root in file name.
4043         * scm/backend-library.scm (ly:system): Only redirect output (using
4044         system and shell, ugh) if /dev/null is writable.
4046         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
4047         windows icon.
4049         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
4050         on Mingw.
4052         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
4053         click.
4055         * flower/file-path.cc (is_dir, is_file): New function.  Actually
4056         use result of stat when available.
4058         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
4059         absolute file name and root.
4061         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
4063         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
4065         * flower/file-name.cc (slashify): Bugfix, do substitute if no
4066         slashes in file name.
4068 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4070         * Documentation/user/preface.itely (Preface): Run
4071         texinfo-all-menus-update.
4073         * scm/editor.scm (get-editor-command): Bugfix: allow full
4074         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
4076         * Documentation/pictures/lilypond-48.xpm: New file.
4078         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
4080         * ly/Welcome_to_LilyPond.ly: New file.
4082         * lily/main.cc (main): Only identify if we have a terminal.
4084         * scm/backend-library.scm (postscript->png)
4085         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
4086         non-/bin/sh).
4088 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
4090         * Documentation/topdocs/AUTHORS.texi: polish, update.
4092 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4094         * Documentation/user/preface.itely (Notes for version 2.6): new
4095         notes for 2.6
4097         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
4098         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
4099         is not fully contained" warnings.
4101         * lily/slur-scoring.cc (get_bound_info): remove warning.
4103         * lily/staff-symbol-engraver.cc (process_music): start initial
4104         spanner in process_music(). This fixes overrides of StaffSymbol
4105         properties.
4107         * scm/framework-pdf.scm (Module): remove.
4109         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
4111         * lily/ambitus-engraver.cc: formatting cleanups.
4113         * mf/feta-solfa.mf (Module): remove.
4115         * ChangeLog: more details about contributions.
4117 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4119         * lily/align-interface.cc (align_elements_to_extents): warn if
4120         called too early. Fixes: disappearing-staff-lines.ly
4122         * VERSION (PACKAGE_NAME): release 2.5.24
4124 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4126         * stepmake/aclocal.m4: Typo.
4128         * flower/string.cc (substitute): Take two strings or two
4129         characters.  Update callers.
4131 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4133         * flower/file-name.cc (File_name): Slashify.
4135         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
4137         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
4139         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
4141         * configure.in (gui_b): Use it.
4143         * lily/lilypond.rc.in: New file.
4145         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
4147 2005-05-12  Graham Percival  <gperlist@shaw.ca>
4149         * Documentation/user/advanced-notation.itely: edit of Text
4150         section; clarify text scripts vs. text markup.
4152 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4154         * lily/multi-measure-rest-engraver.cc
4155         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
4156         separation items on start. Fixes mm rests in start of score.
4158         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
4159         don't access StaffSymbol if not there.
4160         Fixes: crash-staff-symbol-engraver.ly.
4162         * lily/instrument-name-engraver.cc (class
4163         Instrument_name_engraver): data member first_. Create
4164         InstrumentName on start. 
4166 2005-05-12  Graham Percival  <gperlist@shaw.ca>
4168         * Documentation/user/instrument-notation.itely: add guitar
4169         position.
4171         * Documentation/user/introduction.itely,
4172         Documentation/user/lilypond.tely,
4173         Documentation/user/tutorial.itely: begin pruning
4174         unused (duplicated) cindex entries and misc cleanup.
4176 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4178         * input/test/volta-chord-names.ly: Bring the explanation up to
4179         date.
4181 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
4183         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
4184         Specify `@documentencoding utf-8' for html, ignore warnings.
4186 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
4188         * THANKS: Added bughunters.
4190 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
4192         * lily/main.cc: update help string for `lilypond -H'.
4194         * po/fi.po: update.
4195         
4196 2005-05-10  Graham Percival  <gperlist@shaw.ca>
4198         * Documentation/user/advanced-notation.itely: minor fixes.
4200 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4202         * scm/editor.scm: New module.
4204         * scm/lily.scm (gui-main): Use it.
4206         * scm/framework-gnome.scm (spawn-editor): Use it.
4208         * scripts/lilypond-invoke-editor.scm: Use it in new script.
4210 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4212         * scm/framework-ps.scm (load-font-via-GS):  new function.
4214         * lily/pango-font.cc (pango_item_string_stencil): add support for
4215         CID keyed font.
4217         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
4219 2005-05-10  Graham Percival  <gperlist@shaw.ca>
4221         * Documentation/user/basic-notation.itely: add @ref.
4223         * Documentation/user/advanced-notation.itely: add example
4224         of 5/8 beaming.
4226 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4228         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
4230         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
4231         going through ps2pdf wrappers.
4233 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
4235         * Documentation/user/instrument-notation.itely: petrucci note
4236         heads: updated docu
4238         * input/regression/note-head-style.ly: updated regression test;
4239         indentation fixes
4241         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
4242         heads as default
4244         * mf/parmesan-heads.mf: minor editing; use musicological names
4245         (rather than optical description) as note head names
4247         * scm/output-lib.scm: complete petrucci heads
4249 2005-05-09  Pal Benko  <benkop@freestart.hu>
4251         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
4252         heads, but bigger)
4254 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4256         * lily/main.cc (main_with_guile): Remove no files check.
4258         * lily/main.cc (ly:usage): Export to Scheme.
4260         * scm/lily.scm (no-files-handler): New function.
4262         * scm/lily.scm (lilypond-main): Use it.
4264         * configure.in (gui_b): Add mbrtowc checking.
4265         Resurrect [utf8/]wchar.h checking.
4267 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4269         * Documentation/user/advanced-notation.itely (Metronome marks):
4270         Add link to the program reference for MetronomeMark
4272         * Documentation/user/lilypond-book.itely (An example of a
4273         musicological document): Correct the example using psfonts 
4275 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
4277         * po/fi.po: update after a lesson how to update entries against
4278         source.
4279         
4280         * po/TODO: document the lesson.
4282 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4284         * configure.in (gui_b): remove wcrtomb checking.
4286         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
4287         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
4289 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4291         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
4292         keep Scheme expressions and strings unmodified when doing the
4293         conversion to postfix notation for slurs and beams. Should
4294         hopefully solve most related conversion problems. 
4296         * Documentation/user/lilypond-book.itely : Clarify and correct how
4297         to call dvips with -h psfonts.
4299 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4301         * Documentation/user/instrument-notation.itely (Entering lyrics):
4302         Typo.  Fixes build.
4304 2005-05-09  Graham Percival  <gperlist@shaw.ca>
4306         * Documentation/user/lilypond-book.itely: document PSFONTS file.
4308         * Documentation/user/lilypond.tely, lilypond-book.itely,
4309         tutorial.itely: change references to 2.5.x to 2.6.x.
4311         * Documentation/user/instrument-notation.itely: clarified \addlyrics
4312         vs \lyricmode.
4314         * Documentation/user/invoking.itely: remove old info about
4315         lilypond-profile.
4317         * Documentation/topdocs/INSTALL.texi: remove old info about
4318         lilypond-profile, add warning about needing international fonts
4319         to build docs.
4321 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4323         * lily/include/grob-info.hh (class Grob_info): make data member
4324         private. Changes throughout.
4326         * input/regression/alignment-order.ly: new file. 
4328         * lily/vertical-align-engraver.cc (acknowledge_grob): read
4329         alignAboveContext and alignBelowContext
4331 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4333         * lily/pfb.cc (LY_DEFINE): add cast.
4335         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
4336         matches .otf
4337         (write-preamble): warn about unknown fonts.
4339         * lily/pfb.cc (Module): new function ly:otf->cff
4341         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
4342         (get_otf_table): new function.
4344 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4346         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
4347         iso. ps2png.
4349 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
4351         * po/fi.po: apply second round of update.
4353 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4355         * scm/x11-color.scm (make-x11-color-handler): don't use
4356         #\sp. Apparently doesn't work on all platforms. 
4358 2005-05-06  Graham Percival  <gperlist@shaw.ca>
4360         * Documentation/user/advanced-notation.itely, putting.itely,
4361         tutorial.itely, global.itely, introduction.itely: really minor fixes.
4363 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4365         * VERSION (PACKAGE_NAME): release 2.5.23
4367 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4369         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
4370         convert to utf-8.
4372         * THANKS: Add translators for this release, convert to utf-8.
4374         * mf/GNUmakefile (MFTRACE_FLAGS):
4375         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
4376         outdir as option (WAS: hardcoded).
4378 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4380         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
4381         finished_span_
4383         * THANKS: add Hans Forbrich.
4385         * Documentation/topdocs/NEWS.tely (Top): document new feature.
4387         * Documentation/user/basic-notation.itely (Staff symbol): document
4388         start/stop staff. Reference to ossia.ly
4390         * input/test/ossia.ly: new example using stop and startStaff.
4392         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
4393         in other words, don't create "|" barline at start of the score.
4394         (start_translation_timestep): don't set whichBar for start of score.
4396         * input/regression/staff-halfway.ly: use new functionality.
4398         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
4399         start and stop staff based on events.
4401         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
4403         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
4405 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4407         * Documentation/user/programming-interface.itely (How markups work
4408         internally ): remove \encoding reference.
4410 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4412         * scripts/convert-ly.py: Attempt to do a smarter update of 
4413         text markups from versions < 1.9.0 with arbitrary nesting.
4415 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
4417         * po/fi.po: convert to utf-8, and update.
4419 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4421         * make/lilypond.suse.spec.in: update from suse 2.4 package.
4423         * lily/*.cc: more <? >? to min/max changes
4425         * lily/include/interpretation-context-handle.hh: rename
4426         Interpretation_context_handle to Context_handle.
4428 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
4430         * input/regression/GNUmakefile (local_delete): use `find` together 
4431         with `xargs` to avoid too long argument-lists in cmd line.
4433 2005-05-04  Graham Percival  <gperlist@shaw.ca>
4435         * Documentation/user/introduction.itely: updates "About this manual".
4437         * Documentation/user/advanced-notation.itely,
4438         invoking.itely: minor fixes.
4440 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4442         * COPYING: add font exception. Update FSF address. 
4444         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
4445         should be taken without child context.
4447         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
4449         * scm/define-markup-commands.scm (triangle): new command, as
4450         robust replacement for unicode Delta/Triangle.
4452 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4454         * ps/music-drawing-routines.ps: add fillp argument.
4456         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
4458         * lily/font-config.cc (init_fontconfig): don't add cff/
4460         * VERSION (PACKAGE_NAME): release 2.5.22
4462         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
4464         * lily/grace-engraver.cc (consider_change_grace_settings): use
4465         is_alias(). Fixes problem with CueVoice grace notes. 
4467         * lily/simultaneous-music-iterator.cc (construct_children): call
4468         Music_iterator::quit() for iterators that start out invalid. This
4469         fixes indefinitely continuing contexts.
4471         * buildscripts/substitute-encoding.py: new file
4473         * Documentation/user/basic-notation.itely (Basic polyphony): fix
4474         missing @end 
4476         * scripts/lilypond-book.py (write_if_updated): print file name.
4478         * Documentation/user/basic-notation.itely (Explicitly
4479         instantiating voices): idem.
4481         * Documentation/user/advanced-notation.itely (Text spanners):
4482         remove stray { } 
4484         * lily/context.cc (default_child_context_name): the default child
4485         is now first in accepts_list_.
4487         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
4488         \defaultchild to all relevant contexts.  This fixes:
4489         drums-pitch.ly.
4491         (Probably also fixes similar problems with ancient
4492         transcriptions getting CueVoices instead of the desired voices.)
4494         * lily/context-def.cc (get_default_child): new function.
4495         (get_accepted): place default child in front of list.
4497         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
4499         * lily/include/context-def.hh (struct Context_def): add
4500         default_accept_
4502 2005-05-03  Graham Percival  <gperlist@shaw.ca>
4504         * scm/define-grobs.scm: remove "remove-first" line, since
4505         the absent property is set to #f anyway.
4507         * Documentation/user/basic-notation.itely,
4508         advanced-notation.itely, instrument-notation.itely: minor
4509         fixes.
4511         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
4513         * Documentation/user/advanced-notation.itely,
4514         changing-defaults.itely: consolidate Text stuff in
4515         advanced notation.
4517         * Documentation/user/global.itely: better docs for \header.
4519         * Documentation/user/putting.itely: new chapter; placeholder
4520         for future expansion.
4522         * Documentation/user/examples.itely: moved "suggestions for
4523         writing LP files" section into putting.itely.
4525         * Documentation/user/lilypond.itely: added new chapter,
4526         fixed the short table of contents.
4528 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4530         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
4531         infinity for unfeasible beams.
4533         * make/lilypond.fedora.spec.in (Group): idem.
4535         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
4537         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
4539         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
4540         fonts directly.
4542         * buildscripts/gen-emmentaler-scripts.py (i): idem.
4544         * mf/GNUmakefile: remove all CFF rules.
4546         * scm/framework-ps.scm (ps-embed-cff): reinstate.
4548         * lily/open-type-font-scheme.cc (LY_DEFINE):
4549         new function ly:otf-font-table-data.
4550         (LY_DEFINE): new function otf-font?
4552 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4554         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
4555         ($(outdir)/Fontmap.lily): idem.
4557         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
4558         for PFAEmmentaler-XXX.pfa. 
4560         * Documentation/user/music-glossary.tely (accidental): NL
4561         translation of accidental.
4563 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4565         * flower/include/international.hh: Bugfix: include "string.hh".
4567         * lily/include/mingw-compatibility.hh: New file.
4569         * flower/include/libc-extension.hh (memrev): Rename from strrev.
4571         * configure.in: Search for mingw wcrtomb library.
4573 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4575         * scripts/convert-ly.py: Bug fix
4577         * Documentation/user/changing-defaults.itely (Common tweaks):
4578         Added example where the context has to be specified explicitly
4579         (MetronomeMark). 
4581 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4583         * scripts/lilypond-book.py (ly_options): set timing to #f for
4584         notime option.
4586         * scripts/convert-ly.py (conv): typo.
4588         * flower/*.cc: remove <? and >?
4589         
4590         * lily/*.cc: remove <? and >?
4592         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
4593         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
4594         editor.
4596 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4598         * lily/part-combine-engraver.cc: add space to variable list.
4600 2005-04-30  Graham Percival  <gperlist@shaw.ca>
4602         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
4603         remove-first to false (matches docs)
4605         * Documentation/user/advanced-notation.itely: corrected docs
4606         concerning remove-first.
4608 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4610         * lily/part-combine-engraver.cc: make sure that the relevant
4611         properties are included in the documentation.
4613 2005-04-28  Graham Percival  <gperlist@shaw.ca>
4615         * Documentation/user/lilypond-book.itely: Bernard's docs
4616         for \betweenLilyPondSystem.
4618 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4620         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
4621         remarks.
4623 2005-04-28  Pal Benko  <benkop@freestart.hu>
4625         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
4626         only on vertical lines of flexa shape, and use a constant
4627         thickness value for horizontal lines (patch slightly modified by
4628         Jürgen Reuter)
4630         * lily/include/mensural-ligature.hh: make 2 comments clearer
4632 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
4634         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
4635         to need_extra_horizontal_space; bugfix: use class scope to avoid
4636         global namespace pollution
4638         * Documentation/user/instrument-notation.itely (ligatures): added
4639         comment on possible future syntax change and how to work around
4641         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
4642         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
4643         intervals (fixes agnus dei example)
4645         * Documentation/user/instrument-notation.itely (white mensural
4646         ligatures): selected a more illustrative example
4648 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
4650         * Documentation/index.html.in: specify utf-8 charset in meta content.
4652 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4654         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
4655         empty 2nd page for single page.
4657         * scm/lily.scm: remove p&c definitions.
4659         * po/zh_TW.po (Module): new translation.
4661         * lily/lily-guile.cc (ly_chain_assoc): remove.
4663         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
4664         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
4666 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4668         * lily/beaming-info.cc: remove infinity_i
4670         * scripts/abc2ly.py (out_filename): fix thinko with \version.
4672 2005-04-26  Graham Percival  <gperlist@shaw.ca>
4674         * Documentation/user/basic-notation.itely,
4675         instrument-notation.itely, advanced-notation.itely,
4676         changing-defaults.itely: minor fixes.  Added docs
4677         for colors to advanced-notation.itely.
4679         * Documentation/user/advanced-notation.itely: fixed compile
4680         problem and added Bernard's x11-color doc patch.
4682 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4684         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
4685         alright this time round.
4687 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4689         * Documentation/topdocs/INSTALL.texi (Top): idem.
4691         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
4693         * VERSION (MAJOR_VERSION): release 2.5.21
4695         * scm/output-ps.scm (grob-cause): bugfix.
4697 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4699         * cygwin/*: Update.
4701         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
4702         stuff.
4704         * scm/output-ps.scm (grob-cause): Bugfix.
4706         * scm/lily.scm (ly:load): Remove x11-color.
4708         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
4709         quote executable, fixes getting version from program --with
4710         --options.
4711         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
4712         $ac_exeect.
4714         * Documentation/user/GNUmakefile: Only build music-glossary with
4715         rendered lilypond snippets during web.
4717 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4719         * po/de.po: update.
4721         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
4723 2005-04-22  Laura Conrad <lconrad@laymusic.org>
4725         * scripts/abc2ly:
4726         second title line append with punctuation dash character;
4727         encode abc2ly python strings in utf-8
4728        
4729 2005-04-21  Laura Conrad <lconrad@laymusic.org>
4731         * scripts/abc2ly fix chords (again)
4733 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
4735         * scm/x11-color.scm: new file
4736         All x11 color names can be accessed with:
4737         #(x11-color 'ColorName),
4738         #(x11-color "ColorName") or:
4739         #(x11-color "color name")
4740         If the x11 color name is not recognised then it defaults
4741         to black
4743         * scm/lily.scm: amended to call scm/x11-color.scm
4745 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4747         * Documentation/user/invoking.itely (Reporting bugs): comment out
4748         reference to online PNG bug repository.
4750 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4752         * lily/translator-scheme.cc (ly:translator-property): Remove.
4753         Update callers.
4755         * lily/context-scheme.cc (ly:context-now): Move from translator.
4756         Update callers.
4758 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4760         * input/regression/grid-lines.ly (skips): refine example.
4762         * scm/define-context-properties.scm
4763         (all-user-translation-properties): doc autoBeamCheck
4765         * input/regression/grid-lines.ly (Module): new file.
4767         * lily/grid-point-engraver.cc (Module): new file.
4769         * lily/grid-line.cc (Module): new file.
4771         * lily/grid-line-span-engraver.cc (Module): new file.
4773         * lily/grid-line-interface.cc (Module): new file.
4775 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4777         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
4778         missing parameter, actualy cdr through list.  Actually return a
4779         list with ENTRY removed (was '()).
4781         * scripts/convert-ly.py: Update.  Print warning if file cannot be
4782         opened.
4783         (do_conversion): Fix printing of continuation comma.
4785         * Documentation/user/advanced-notation.itely (Beam formatting):
4786         Remove refbugs about compound time and mixed duration.
4788         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
4789         modulo moments explicitely.
4791         * lily/moment.cc (operator %): New function.
4793         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
4795         * lily/translator-scheme.cc (ly:translator-now,
4796         ly:translator-property): New function.
4798         * scm/auto-beam.scm (default-auto-beam-check): New function.
4800         * lily/auto-beam-engraver.cc (test_moment): Use it.
4802         * flower/rational.cc (operator %): Bugfix.
4804 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
4806         * scripts/abc2ly: Bugfix
4808 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4810         * python/fontextract.py (write_extracted_fonts): bugfix, too many
4811         %'s on EndFont comment.
4813         * lily/ledger-line-spanner.cc: some more words of explanation.
4815 2005-04-20  John Williams <williams@tni.com>  
4816         
4817         * scripts/lilypond-book.py: htmlquote bugfix.
4818         Allow snippets to be given distinct filenames.
4819         Allow the default alt text to be overridden.
4821 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
4823         * ly/performer-init.ly: Bugfix
4825         * THANKS: Added bughunters.
4827 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4829         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
4831         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
4832         position (was: use modulo measure length).
4834         * configure.in (no gui_b): Remove optional gtk+ requirement.
4836 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4838         * Documentation/user/basic-notation.itely (Pitches): add
4839         LedgerLineSpanner.
4841         * lily/dynamic-engraver.cc (process_music): set right bound to
4842         script if present. Else, do not set.
4843         (acknowledge_grob): only set right bound of finished spanner to
4844         note column if no other bound is set.
4846         * python/lilylib.py (make_ps_images): switch back to png16m.
4847         
4848 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4850         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
4851         writing up to date file.  Add dvips usage suggestion.
4853         * scripts/convert-ly.py: Fix error message.
4854         Print usage if no files on command line.
4855         (usage): Add example usage.
4857         * input/test/compound-time.ly: New file.
4859         * input/test/circle.ly: New file.
4861         * Documentation/topdocs/NEWS.tely: Use them.
4863         * input/test/boxed-stencil.ly: Remove \score.
4865         * buildscripts/mf-to-table.py (base): Add .log dependency.
4867         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
4868         pfa's.  Add .log dependency
4870         * scm/define-markup-commands.scm (lower): New command.
4872         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
4873         make it default.
4875 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4877         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
4878         also to finished cresc as right bound. This fixes:
4879         skip-string-decresc.ly
4881         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
4882         relative_coordinate if extent is empty.
4884         * lily/stem.cc (width_callback): determine correct extent if flag
4885         is not there. This fixes slur-no-flag.ly
4887         * lily/grace-engraver.cc (consider_change_grace_settings): new
4888         function.
4889         (initialize): also consider_change_grace_settings() on
4890         initialization. Fixes large grace notes at start of score.
4892         * lily/break-align-interface.cc (do_alignment): don't translate if
4893         total_extent is empty.
4895         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
4897 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4899         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
4900         with slash.
4902 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4904         * stepmake/aclocal.m4: Remove tfm_path.
4906 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4908         * scm/music-functions.scm (markup-expression->make-markup): fix
4909         bug with cons arguments of markup commands.
4910         (music->make-music): fix music expression property list building
4912 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4914         * aclocal.m4: Massage package names.
4916         * SCons updates.
4918 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4920         * VERSION (PACKAGE_NAME): release 2.5.20
4922         * lily/stem.cc (calc_stem_info): add minimum Y extent of
4923         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
4925         * lily/percent-repeat-engraver.cc (try_music): add measure before
4926         next_moment to future processing moment. Fixes:
4927         percent-repeat-mm-rest.ly
4928         (process_music): don't add moment for 2nd time.
4930         * input/regression/repeat-percent.ly: add mmrests as extra test.
4932         * lily/axis-group-engraver.cc (acknowledge_grob): read
4933         keepAliveInterfaces to decide what to kill.
4935         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
4936         percent-repeat-interface to keepAliveInterfaces. This fixes
4937         percent-repeat-harakiri.
4939 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4941         * SCons updates.
4943 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4945         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
4947         * aclocal.m4: remove --enable-tfm-path configure option
4949         * input/test/ancient-font.ly (lowerStaff): clef name errors.
4951         * scm/backend-library.scm (postscript->png): newline after
4952         finishing command.
4954         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
4955         (LY_DEFINE): ly:paper-score-paper-systems: new function 
4957         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
4959         * lily/score.cc (default_rendering): use Music_output too.
4961         * input/test/chord-names-languages.ly (Module): rename file.
4963         * lily/text-spanner.cc: add bound-padding.
4965         * lily/paper-book.cc (systems): accept Paper_score
4966         iso. Paper_system vector. 
4968         * input/regression/line-arrows.ly: new file.
4970         * lily/paper-score.cc (process): run get_paper_systems() only once.
4972         * lily/line-spanner.cc (line_stencil): add arrows.
4974 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
4976         * lily/line-interface.cc (make_arrow): new function. 
4977         (arrows): idem.
4979 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
4981         * input/test/chord-names-german.ly: update for italian/french
4982         chords.
4983         
4984         * Documentation/user/instrument-notation.itely (Printing chord
4985         names): update.
4987 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4989         * lily/include/paper-score.hh (class Paper_score): remove unused
4990         prototypes.
4992         * lily/book.cc (process): add -COUNT to midi output.
4994         * lily/score.cc (book_rendering): remove outname argument
4995         (book_rendering): return list of Music_outputs. 
4997         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
4999         * lily/book.cc (process): loop over Music_outputs returned from
5000         Score::book_rendering().
5002         * lily/*.cc (width_callback): remove spurious "unused" warnings
5003         for assert (axis==[XY]_AXIS); 
5005         * lily/include/music-output.hh (class Music_output): smobify class.
5007         * lily/include/paper-score.hh (class Paper_score): make members
5008         private.
5010         * lily/performance.cc (process): return #f iso. #<undefined>. This
5011         prevents #<undefined> leaking into GUILE-userspace.
5013 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5015         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
5017 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
5019         * scm/chord-name.scm : support for italian and french
5020         chords names.
5022         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
5023         a space defined by chordPrefixSpacer when the root name is
5024         direclty followed by a prefix.
5026         * ly/engraver-init.ly : chordPrefixSpacer       
5027         * scm/define-context-properties.scm : chordPrefixSpacer
5028         * ly/property-init.ly : italianChords, frenchChords 
5030 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5032         * mf/feta-din.mf: Remove.
5034         * mf/GNUmakefile (fontdir): Bugfix.
5036         * mf/SConstruct: Some updates.
5038         * SConstruct: Require pkg-config.
5039         (test_program): Bugfix for double digit version compares, use
5040         integer (not string-) compare.
5041         Optionally require gs 8.14.
5043         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
5045         * lily/*: s/ifdef HAVE_*/if have/.
5047         * SConstruct (test_lib): New function.  Update pkg-config and some
5048         other requirements.
5050         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
5051         freetype, pangof2t.
5053 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5055         * po/lilypond.pot, ...: Update using bison-CVS.
5057         * python/lilylib.py (make_ps_images): Fixo.
5059 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5061         * python/lilylib.py (make_ps_images): typo.
5063         * configure.in (gui_b): make bison optional.
5065         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
5067 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
5069         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
5070         with one parameter can be defined in a LaTeX file when processed
5071         by lilypond-book this will be evaluated between the systems of
5072         a multi-system score. The parameter is the number of systems processed.
5074 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5076         * python/lilylib.py (make_ps_images): Escape newline.
5078         * Documentation/user/music-glossary.tely: Run
5079         texinfo-all-menus-update.
5081 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5083         * scm/lily-library.scm (old-relative-not-used-message)
5084         (version-not-seen-message): Add input-file-name-location to message.
5086         * lily/parser.yy (lilypond): Add token aliases.
5088         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
5089         not confuse with alteration.
5090         (alteration): Add.
5092 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5094         * python/lilylib.py (make_ps_images): use -dEPSCrop
5096         * VERSION (PACKAGE_NAME): release 2.5.19 
5098         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
5099         only put xrefs in info documentation.
5101         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
5102         .pdf rule to tex-rules.make.
5104         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
5105         from -systems.* output.
5107         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
5108         directly, remove -$(PAGESIZE) target.
5110         * input/test/embedded-postscript.ly: update.
5112 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5114         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
5116         * Documentation/user/changing-defaults.itely (Font selection):
5117         document font-name.
5119         * input/regression/font-name.ly: show Pango fonts for
5120         font-name. Update example. 
5122         * lily/pango-select.cc (properties_to_pango_description): don't
5123         convert symbol font-size to number, but use to lookup.
5125         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
5127         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
5128         (NAME . FILE-NAME) tuples for font descriptions. 
5129         (write-preamble): display BeginFont DSC comments.
5131         * python/fontextract.py (write_extracted_fonts): new file. Extract
5132         font resources from a PS file.
5134         * scripts/lilypond-book.py (option_definitions): --psfonts option.
5135         (Compile_error.process_include): do_file returns chunks.
5137         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
5139         * make/lysdoc-targets.make: .texi is .PRECIOUS
5141         * scripts/lilypond-book.py (write_if_updated): new function.
5143 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5145         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
5147 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5149         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
5151         * input/regression/markup-syntax.ly: remove \score.
5153         * scm/define-markup-commands.scm (draw-circle): add fill argument
5155         * scm/stencil.scm (make-circle-stencil): add fill argument
5157         * ps/music-drawing-routines.ps: add fill argument.
5159         * ly/performer-init.ly: add CueVoice to MIDI too.
5161         * ps/music-drawing-routines.ps: new routine BeginEPSF /
5162         EndEPSF.
5164         * input/regression/markup-eps.ly: new file.
5166         * scm/framework-ps.scm (write-preamble): change order: vars should
5167         be inited before procedures.
5169         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
5170         for EPS files.
5172         * scm/define-markup-commands.scm (epsfile): add epsfile command.
5174 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5176         * configure.in (gui_b): add check for ghostscript 8.15
5178 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5180         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
5181         start of line. Fixes cresc-after-newline.ly
5183         * lily/source-file.cc (file_line_column_string): use get_column().
5185 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5187         * lily/source-file.cc (get_column): utf-8 support for column numbers.
5189 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5191         * lily/*: use message () iso progress_indication () for messages.
5192         Revise/uniformise user messages.
5194         * flower/warn.cc (progress_indication): New function.
5195         (message): Use it.  Fixes newline problems.
5197         * config.make.in (webdir): Sort out install dirs.
5199         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
5201         * python/lilylib.py (command_name): Bugfix.
5202         (make_ps_images):
5204 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
5206         * lily/main.cc: --help says what types of backends are availabe
5208 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5210         Fix ./VERSION dependency, and without need to reconfigure.
5212         * lily/main.cc (setup_paths): Update.
5214         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
5216         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
5218         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
5219         Add \line for some simplistic cases.
5221         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
5223 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5225         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
5226         to compile LY files (useful for adding eg. "-I" args)
5227         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
5228         2Gnome command for gnome backend.
5229         (LilyPond-command-formatgnome): call the 2Gnome command. key
5230         binding: C-c C-g
5232 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5234         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
5235         depend on all PNG images.
5237 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5239         * GNUmakefile.in: Bugfix: also link .map files.
5241 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5243         * scm/music-functions.scm (music->make-music): generate 
5244         a (make-music ...) sexpr from a music expression.
5245         (display-scheme-music): use guile pretty printer to display the
5246         make-music sexpr.
5248 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5250         * ly/engraver-init.ly: reindent.
5251         Add CueVoice.
5253         * scm/music-functions.scm (music-pretty-string): handle moments
5254         too.
5255         (music-pretty-string): only print non-empty lists.
5256         (cue-substitute): create CueVoice context, which has smaller type.
5258         * lily/moment-scheme.cc (LY_DEFINE): new methods
5259         ly:moment-grace-{numerator,denominator}
5261         * lily/context-handle.cc: remove quit() method. 
5263         * lily/font-config.cc (init_fontconfig): be verbose about font path.
5264         (init_fontconfig): success is 0, not !0
5266 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5268         * mf/feta-nummer-code.mf (code): add plus glyph.
5270         * lily/tie.cc (print): idem.
5272         * lily/slur.cc (print): don't use thickness property for
5273         slur shape-thickness.
5275         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
5276         while adding stencils.
5278         * scm/define-markup-commands.scm (with-color): with-color markup
5279         command.
5280         (whiteout): new markup command 
5281         (filled-box): new markup command
5283 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5285         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
5286         test for PDF docs.
5288         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
5289         PFAAybabtu-Regular.  Fixes feta font in PDFs.
5290         
5291         Notes for tetex-3.0 make web:
5292            psclean.map: s/uhv8a/uhvr8a/
5293            config.ps add:
5294                 p +psfonts_t1.map
5295                 p +psclean.map
5296                 p +typeface.map
5298 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5300         * scm/music-functions.scm (music-pretty-string): fix bug with
5301         string argument.
5303 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
5305         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
5307 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5309         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
5310         only process options if they're there.
5311         (write_file_map): add version-seen? to snippet-map.ly
5313 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
5315         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
5316         formatting cleanups.
5318         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
5319         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
5321 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5323         * scm/framework-ps.scm (ps-font-command): don't hash, just use
5324         name directly.
5326         * lily/main.cc (setup_paths): either add mf/out to search path or 
5327         fonts/{otf,type1,etc}
5328         
5329         * lily/font-config.cc (init_fontconfig): either add mf/out to
5330         FontConfig or fonts/{otf,type1,etc}
5332         * GNUmakefile.in: don't put mf/ link in share/ dir.
5334         * lily/staff-spacing.cc: move same-direction-correction to
5335         note-spacing-interface
5337         * scm/lily.scm (lilypond-main): use variable argument count for
5338         exception handler.
5340         * lily/font-config.cc (init_fontconfig): add operator pacification
5341         message.
5343         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
5345         * buildscripts/gen-emmentaler-scripts.py (i): generate
5346         PFAEmmentaler as well.
5348         * scm/framework-ps.scm (munge-lily-font-name): new function
5349         (write-preamble): hack: insert PFA equivalent of CFF into
5350         .PS. This makes LilyPond output printable on normal PS printers
5351         again.
5353         * buildscripts/gen-emmentaler-scripts.py (i): generate
5354         PFAEmmentaler.pfa aswell.
5356 2005-04-06  John Williams <williams@tni.com>  
5357         
5358         * scripts/lilypond-book.py: refactor the compose_ly procedure.
5359         
5360 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5362         * scm/page-layout.scm (default-page-make-stencil): always combine
5363         the header stencil, even if empty. This prevents the body text to
5364         reach up to the margins.
5366         * po/rw.po (Module): new file, for Kinyarwanda.
5368         * input/test/spacing-optical.ly (Module): new file.
5370         * lily/staff-spacing.cc: add same-direction-correction
5372 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5374         * Documentation/user/introduction.itely (Engraving): Comment-out
5375         non-existent file.
5377 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5379         * scm/define-grob-properties.scm (all-user-grob-properties): add
5380         same-direction-correction
5382         * VERSION: release 2.5.18
5384 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5386         * lily/grob.cc (mark_smob): Check pscore->layout_ before
5387         dereferencing.  Fixes make web.
5389         * lily/midi-stream.cc: Handle unwritable midi file.  Include
5390         errno.h.
5392         * Documentation/user/: Fix links.
5394 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5396         * lily/text-interface.cc (Module): rename from text-item.cc
5398         * input/regression/apply-output.ly (texidoc): function naming fix.
5400         * lily/time-signature-performer.cc (derived_mark): new function.
5402         * lily/lily-parser-scheme.cc:  print mapped file name for progress
5404         * scripts/lilypond-book.py (find_linestarts): new function.
5405         (find_toplevel_snippets): keep track of line numbers.
5407         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
5408         all key changes.
5410         * ly/declarations-init.ly (partCombineListener): use
5411         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
5413         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
5415 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5417         * lily/text-item.cc: Fix link.
5419         * Documentation/user/changing-defaults.itely (Changing defaults):
5420         Fix programs reference links.
5422         * Documentation/user/music-glossary.tely: Convert to utf-8.
5424 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5426         * make/lilypond-vars.make: remove TEXMF from variables.
5427         remove DEB_BUILD pk font variables.
5428         remove GUILE_LOAD_PATH
5429         remove TeX memory vars.
5431 2005-04-04  Werner Lemberg  <wl@gnu.org>
5433         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
5435 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5437         * ps/lilyponddefs.ps: remove reencode-font
5439         * lily/simple-spacer.cc (add_columns): also compare
5440         directly. Column rank doesn't distinguish between broken and
5441         unbroken columns. This fixes large spaces before time sig changes.
5443         * Documentation/user/point-and-click.itely: document ly:set-option.
5445         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
5446         point_and_click_global is set.
5448         * lily/scm-option.cc (LY_DEFINE): add point-and-click
5449         ly:set-option argument.
5451 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5453         * GNUmakefile.in: Include symlinks in webball.
5455         * Documentation/user/GNUmakefile (source-links): Add symlinks to
5456         source dir for split and non-split manuals.
5458         * Documentation/user/*y: Fix @uref/@inputfile links for
5459         split/non-split HTML documents.
5461         * Documentation/user/GNUmakefile (local-WWW): Do not generate
5462         .ps.gz.
5463         
5464 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5466         * GNUmakefile.in: Add newline.
5468 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
5470         * tex/lilyponddefs.tex: use color instead of xcolor
5471         * scm/output-tex.scm: minor editing
5473 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5475         * scm/music-functions.scm (display-scheme-music): pretty printer
5476         for music expressions.
5478 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5480         * buildscripts/install-info-html.sh (index_file): Fix link.
5482 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5484         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
5486         * Documentation/index.html.in: Add size estimates with some big pages.
5488         * Documentation/user/tutorial.itely (Running LilyPond for the
5489         first time): Add/replace some @rglos links.  TODO: add more
5490         @rglos links in tutorial, test non-intrusiveness (.css).
5492         * stepmake/bin/add-html-footer.py (do_file): Remove info's
5493         annoying's indication of referencing external document.
5495         * Documentation/user/GNUmakefile: Split version of glossary too.
5496         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
5497         links, not only for html.
5499         * Documentation/user/introduction.itely: Fix some links for other
5500         than html, do not use `here' as link name.
5502 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5504         * scm/documentation-generate.scm (string-append): Fix @usermanref,
5505         @glossaryref.
5507 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5509         * scm/page-layout.scm (default-page-make-stencil): only add header
5510         if existing and not empty. Fixes spurious programming error.
5512         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
5514 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
5516         * scm/output-tex.scm: implement {re,}setcolor
5517         * tex/lilyponddefs.tex: use color package
5519 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5521         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
5522         additions to website.
5524         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
5526         * Documentation/user/macros.itexi: Fix @usermanref html links in
5527         split documents: use @inforef.
5529 2005-03-30  Graham Percival  <gperlist@shaw.ca>
5531         * Documentation/user/programming-interface.itely: minor fix.
5533         * Documentation/user/advanced-notation.itely: added info to
5534         Metronome markings.
5536 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5538         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
5539         use box-stencil.  Remove y-padding argument.
5540         (make-stencil-circler): New function.
5542         * buildscripts/lilypond-words.py (F): 
5543         * elisp/SConscript (a): 
5544         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
5545         * vim/SConscript (a): 
5546         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
5548         * lily/general-scheme.cc: Build fix.
5550         * scm/markup.scm:
5551         * input/regression/markup-scheme.ly: 
5552         * input/regression/markup-syntax.ly: Drop 'new-' from name.
5554         * scm/stencil.scm (make-circle-stencil): New function.
5556         * scm/define-markup-commands.scm (draw-circle): Use it.  New
5557         name (was cicle).  Update callers.
5558         (circle): New markup command, similar to box.
5560         * scm/stencil.scm (circle-stencil): New function.
5562 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
5564         * configure.in: Detect libutf8/wchar.h variant.
5566         * stepmake/aclocal.m4: Modify shared size test.
5568 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5570         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
5572 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5574         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
5575         
5576         * VERSION (PACKAGE_NAME):  release 2.5.17
5578 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5580         * scm/backend-library.scm (postscript->png): Fix comment and png
5581         message.
5583         * GNUmakefile.in (link-tree): Fix locales.
5585 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5587         * lily/stencil-scheme.cc (LY_DEFINE): change to
5588         ly:stencil-aligned-to, non mutating.
5590         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
5592         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
5594         * lily/quote-iterator.cc (derived_mark): call
5595         Music_wrapper_iterator::derived_mark() too.
5597         * lily/grace-engraver.cc (derived_mark): change signature, add
5598         const.
5600 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5602         * SConstruct (symlink): 
5603         * GNUmakefile.in (link-tree): Add scripts to prefix.
5605         * lily/general-scheme.cc (ly:effective-prefix): New function.
5607         * scm/backend-library.scm (postscript->png): Use it.
5609 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5611         * lily/paper-score.cc (process): don't delete grobs after
5612         producing stencils. 
5614         * scm/part-combiner.scm (determine-split-list): switch off
5615         debugging info.
5617         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
5618         if available.
5620         * scm/define-context-properties.scm
5621         (all-user-translation-properties): add stringNumberOrientations.
5623         * lily/new-fingering-engraver.cc (position_scripts): make generic,
5624         so fingering and string-numbers are separately controlled.
5626 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5628         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
5629         not use debugging.
5631 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5633         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
5635         * config.hh.in: add HAVE_FONTCONFIG.
5637         * Documentation/user/instrument-notation.itely (String number
5638         indications): new node.
5640         * input/regression/new-markup-syntax.ly (texidoc): add circle.
5642         * lily/new-fingering-engraver.cc (add_string): new function. 
5643         (acknowledge_grob): accept string-number-event as well.
5645         * scm/define-markup-commands.scm (circle): new markup command.
5647         * scm/output-lib.scm (print-circled-text-callback): new function.
5649         * lily/GNUmakefile: move ifeq after include stepmake.make.
5651 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5653         * config.make.in (HAVE_LIBKPATHSEA_SO):
5654         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
5656         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
5657         add KPATHSEA_LIBS.
5659         * debian/watch: 
5660         * debian/control: Update.
5662 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5664         * input/test/title-markup.ly (spaceTest): remove.
5666         * input/test/embedded-tex.ly (Module): remove.
5668         * input/test/music-box.ly: use 'name property, not ly:music-name.
5670         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
5672         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
5674 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5676         * Documentation/topdocs/INSTALL.texi (Top): Remove information
5677         about xdeltas.  Add information about CVS.
5679         * scm/lily.scm (lilypond-main): Fix invocation of handler,
5680         gracefully handle failed files.
5682         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
5684         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
5685         small fixes.
5687         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
5688         No unnecessarily specific i18n messages.  Remove stray `1'.
5690 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5692         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
5693         documentencoding
5695         * scm/documentation-lib.scm (texi-file-head): set utf-8
5696         documentencoding.
5698         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
5699         Delta, not the Symbol one. 
5701         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
5702         for the .map file.
5704         * Documentation/topdocs/INSTALL.texi (Top): add running
5705         requirement as compilation requirement.
5707 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5709         * buildscripts/mutopia-index.py (headertext): add h1 header and
5710         utf-8 charset meta field.
5712         * input/GNUmakefile: prune example list.
5714         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
5715         options.
5717         * lily/slur-scoring.cc (get_base_attachments): only look at stem
5718         extent for visible stems.
5720         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
5722 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5724         * Documentation/topdocs/INSTALL.texi (Top): Updates.
5726         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
5728 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5730         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
5731         pass inf/nan into slur scoring.
5733         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
5734         page.
5736         * scripts/abc2ly.py (dump_voices): use alphabet().
5738 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
5739         
5740         * mf/GNUmakefile (depth): use $(FONTFORGE). 
5742 2005-03-27 Matthias Neeracher <neeracher@mac.com>
5743         
5744         * flower/include/virtual-methods.hh: simplify. Patch by
5746 2005-03-25  John Williams <williams@tni.com>  
5748         * scripts/lilypond-book.py (main): add png for HTML too, guess
5749         only if necessary. 
5751 2005-03-25  Graham Percival  <gperlist@shaw.ca>
5753         * Documentation/topdocs/INSTALL.texi: now recommends
5754         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
5756         * Documentation/user/basic-notation.itely,
5757         Documentation/user/tutoria.itely: warn about
5758         only one (phrasing) slur at once.
5760 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
5762         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
5764 2005-03-23  Graham Percival  <gperlist@shaw.ca>
5766         * Documentation/user/basic-notation.itely: fixed info about
5767         ending a (de)cresc.
5769         * Documentation/user/lilypond-book.itely: fixed
5770         lilypond-book filter example and warned about not doing
5771         --filter and --process at the same time.
5773 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5775         * lily/parser.yy (bass_number),
5776         Documentation/user/instrument-notation.itely (Figured bass): 
5777         Add the possibility to use text markup in figured bass. 
5779 2005-03-19  Graham Percival  <gperlist@shaw.ca>
5781         * Documentation/user/global.itely: added info about naming
5782         identifiers and breakbefore.
5784         * Documentation/user/invoking.itely: added info about batch
5785         processing files with convert-ly, removed references to TeX
5786         in the jail section.
5788         * Documentation/user/examples.itely: possibly fixed piano
5789         dynamics.
5791         * Documentation/user/advanced-notation.itely: added info
5792         about removing other types of Staff.
5794         * Documentation/user/instrument-notation.itely: possibly
5795         fixed piano staff line switch.
5797         * Documentation/user/changing-defaults.itely: added info
5798         about using normal font in titles.
5800 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5802         * VERSION (PATCH_LEVEL): release 2.5.16
5804         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
5805         explicitly.
5807 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5809         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
5810         whitespace.
5812         * python/lilylib.py (make_ps_images):
5813         * scm/backend-library.scm (postscript->pdf, postscript->png):
5814         Quote file name.  Use format rather than string-append juggling.
5816 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5818         * python/lilylib.py (make_ps_images): add x to -g argument. 
5820         * lily/key-performer.cc (create_audio_elements): don't use
5821         scm_eval_string. Check for minor 3rd directly.
5822   
5823         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
5824         (sarabandeCelloGlobal): key is D minor, not F major.
5826 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5828         Fix truncated --png output (Peter Danenberg).
5829         
5830         * python/lilylib.py (make_ps_images):
5831         * scripts/ps2png.py (copyright): Grok --papersize option.
5833         * scm/backend-library.scm (postscript->png): Add parameter
5834         PAPERSIZE.  Update callers.
5836         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
5837         Fixes symbol placement.
5839         * lily/spanner.cc: 
5840         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
5841         <libc-extension.hh>).
5843 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5845         * Nitpick run.
5847         * buildscripts/fixcc.py: Update.
5849         Builddir run fixes.
5851         * HACKING (datadir): Add VERSION.
5853         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
5854         higher up.
5856 2005-03-15  Werner Lemberg  <wl@gnu.org>
5858         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
5859         diagonal stem doesn't become thinner.
5861 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5863         * buildscripts/fixcc.py: Fixes (Werner).
5865 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5867         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
5868         Emmentaler/Aybabtu.
5870         * GNUmakefile.in: fix lilypond-words path.
5872         * po/tr.po: update to 2.3.21
5874         * lily/new-fingering-engraver.cc (position_scripts): take priority
5875         from head position.
5877         * input/regression/finger-chords-order.ly (texidoc): new file.
5879 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5881         * make/ly-rules.make: 
5882         * stepmake/aclocal.m4: 
5883         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
5885         * buildscripts/fixcc.py (rules): Leave space after operator.
5887 2005-03-14  Werner Lemberg  <wl@gnu.org>
5889         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
5890         top of the glyph with smooth curve.
5892 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5894         * Documentation/user/global.itely (Page layout): remove
5895         printpagenumber.
5897 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
5899         * input/regression/mensural-ligatures.ly: new file (with examples
5900         compiled by Pal Benko).
5902         * Documentation/user/instrument-notation.itely: Bugfix: yet some
5903         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
5904         musicglyph access.  Many small beautifications in ancient
5905         examples.
5907         * input/test/divisiones.ly: fixed indentation; small
5908         beautifications
5910         * ly/engraver-init.ly: added FIXME comment
5912         * scripts/lilypond-book.py,
5913         Documentation/user/lilypond-book.itely: added music fragment
5914         option "packed" to lilypond-book
5916         * Documentation/user/instrument-notation.itely: Bugfix: added
5917         missing LedgerLineSpanner color setting in several places.  Added
5918         music fragment option "packed" to VaticanaContext example.
5920 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5922         * scm/define-grobs.scm (all-grob-descriptions): switch off
5923         Hyphen_spanner::set_spacing_rods 
5925         * lily/lyric-hyphen.cc (print): add padding between syllable and
5926         hyphen.
5927         (print): shorten hyphen in tight situations (determine using
5928         minimum-length)
5930         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
5931         0.4pt.
5933 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5935         * ly/titling-init.ly (bookTitleMarkup): Refinements.
5937         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
5938         header/footer markings for regression-test.
5940         * scm/backend-library.scm (output-scopes, header-to-file): Move
5941         from framework-tex.scm.
5943         * scm/framework-ps.scm (output-framework)
5944         (output-preview-framework):
5945         * scm/framework-eps.scm (output-classic-framework)
5946         (output-framework): Use it.  Fixes collated files.
5948 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5950         * input/sakura-sakura.ly: 
5951         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
5953         * buildscripts/guile-gnome.sh: Update.
5955         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
5957         * mf/aybabtu.pe.in: Capitalize Aybabtu.
5959 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5961         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
5962         culprit: always exit the loop if we find a rod, even if it has
5963         distance < 0. 
5965         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
5966         algorithm.
5968         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
5969         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
5971         * scm/output-svg.scm (dashed-line): new  function body.
5972         
5973         * GNUmakefile.in: create .htaccess.
5975 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5977         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
5979 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5981         * VERSION (PACKAGE_NAME): release 2.5.15
5983         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
5985         * scm/framework-svg.scm (output-framework): put scaling in
5986         document header. Apply scaling only once.
5987         (output-framework): dump page size in px, not mm. 
5989         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
5990         from font-size.
5992         * lily/paper-outputter-scheme.cc (LY_DEFINE):
5993         ly:outputter-output-scheme, new function.
5995         * scm/output-svg.scm (pango-description-to-svg-font): new function
5997 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5999         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
6000         target.
6002         * input/typography-demo.ly: new file.
6004 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6006         * Documentation/user/global.itely (File structure): Add markup blocks
6007         to toplevel expressions.
6008         (Multiple movements, Creating titles): Add markup blocks.
6010         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
6011         <libc-extension.hh>).
6013         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
6015         * flower
6016         * lily
6017         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
6019 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6021         * lily/accidental.cc: special bboxes for natural. 
6023         * mf/feta-toevallig.mf: make stems heavier.
6025         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
6026         texts as well.
6028         * mf/feta-klef.mf: revise. 
6030         * mf/feta-schrift.mf: make thinning of accent less pronounced.
6032         * mf/feta-klef.mf: add rounded curve at top. 
6033         make thinnib a little heavier.
6035 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6037         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
6039         * buildscripts/fixcc.py: New file.
6041         * input/regression/utf8.ly: Update Debian font description.
6043 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6045         * stepmake/aclocal.m4: Fix test.
6047 2005-03-09  Graham Percival  <gperlist@shaw.ca>
6049         * Documentation/user/invoking.itely: added Sebastino Vigna's
6050         docs for the --jail option.
6052 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6054         * lily/stem.cc (print): only produce stemlets if there are no
6055         noteheads on this stem.
6057         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
6058         don't crash on stemlet (visible stem without heads).
6060         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
6061         unbroken situations. 
6063         * scm/output-lib.scm (center-invisible): new function.
6065         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
6066         wishes to determine loose column space.
6068         * lily/font-config.cc (init_fontconfig): add
6069         fonts/{otf,type1,cff}  to path.
6071         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
6073         * mf/GNUmakefile (Module): install all fonts under otf/
6075         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
6076         replace /fonts/otf/ by /ps/ 
6078         
6079 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6081         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
6083         * lily/book.cc (process): Oops, add score_.header_.
6085         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
6087         * lily/parser.yy: Handle toplevel and book texts as score.
6089         * scm/page-layout.scm (default-page-make-stencil):
6090         Bugfix: (page-properties rename.
6092         * scm/backend-library.scm (ly:system): Typo.
6094 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6096         * stepmake/stepmake/executable-targets.make (installexe): don't
6097         strip installed executables
6099         * lily/font-select.cc (get_font_by_design_size): revert
6100         pango_description_string as well.
6102         * lily/system.cc (set_loose_columns): put loose column just left
6103         of next column.
6105         * lily/include/group-interface.hh (extract_grob_array): rename
6106         from Pointer_group_interface__extract_grobs
6108         * input/regression/ledger-line-minimum.ly (texidoc): new file.
6110         * lily/ledger-line-spanner.cc (set_spacing_rods): new
6111         function. Keep ledgered note heads at a minimum distance.
6112         Introduce minimum-length-fraction
6113         (print): introduce length-fraction property.
6115 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6117         * tex/GNUmakefile: remove latin1.enc rules.
6119 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6121         * scm/titling.scm: Typo.
6123         * input/regression/score-text.ly: Really add.
6125         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
6127 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6129         * lily/open-type-font-scheme.cc:  new file.
6131 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6133         * scm/titling.scm (layout-extract-page-properties): Rename from
6134         page-properties.  Update callers.
6136         * lily/lexer.ll (Lily_lexer):
6137         * lily/parser.yy: Junk lyric_markup state.
6139         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
6141         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
6142         Add texts parameter.
6144 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6146         * lily/lexer.ll (lyric_markup): New mode.
6147         (Lily_lexer::push_lyric_markup_state): New method.
6148         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
6150         * lily/parser.yy (book_body):
6151         (toplevel_expression): Grok \markup texts.
6153         * lily/score-scheme.cc (ly:music-scorify): 
6154         * scm/lily-library.scm (collect-music-for-book): Take texts
6155         parameter.
6157         * lily/score.cc (texts_): New member.
6159         * lily/paper-book.cc (systems): Format score texts.
6161         * score-text.ly: New file.
6163         * ttftool/SConscript:
6164         * kpath-guile/SConscript: New file.
6166         * lily/SConscript:
6167         * SConstruct: Update.
6169 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6171         * VERSION (PACKAGE_NAME): release 2.5.14
6173 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6175         * lily/main.cc: Add dummy xgettext markers.
6177 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6179         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
6180         requirements
6182         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
6183         executable is < 40k
6185         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
6186         hack.
6188 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6190         * flower/libc-extension.cc:
6191         * flower/include/libc-extension.hh: [Open]BSD simply cast
6192         cookie/funopen declarations.
6194         * stepmake/aclocal.m4: Check for libkpathsea.so.
6196         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
6197         dl_kpse_find_file.
6199 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6201         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
6202         (open_library): alternative for static library.
6204 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6206         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
6208         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
6210         Drop run-time dependency on teTeX.
6212         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
6214         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
6215         KPATHSEA_LIBS in LIBS.
6216         (STEPMAKE_DLOPEN): New function.
6218         * lily/font-config.cc (init_fontconfig): Use dir for directory,
6219         not path.
6221         * flower/file-path.cc (directories): Rename from paths, as this
6222         return an array of directories (a single path).
6224 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6226         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
6228         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
6229         new ly:kpathsea-find-file
6231         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
6233         * kpath-guile/GNUmakefile: new file
6235         * buildscripts/gen-emmentaler-scripts.py (i): generate
6236         emmentaler-X.fontname as well.
6238         * buildscripts/ps-embed-cff.py: new script
6240         * scm/lily-library.scm: remove ps-embed-cff.
6242         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
6243         font loading. 
6245         * scm/font.scm (add-music-fonts): load dynamics/numbers through
6246         fontconfig as well.
6248         * lily/font-config.cc (init_fontconfig): add cff/ too.
6250         * ly/generate-embedded-cff.ly: capitalize.
6252         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
6253         so as to register the pango font.
6255         * lily/font-config.cc (init_fontconfig): add
6256         prefix/{otf,type1,mf/out} to fontconfig path.
6258         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
6259         overrides all. 
6261         * configure.in (gui_b): remove ec mftrace check
6263         * config.hh.in: use lilypond-Major.Minor as data directory.
6265         * scm/framework-ps.scm (dump-page): use output-units for landscape.
6267         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
6268         name.
6270 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6272         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
6273         error messages.
6275         * flower/libc-extension.cc:
6276         * flower/include/libc-extension.hh: [Open]BSD fixes for
6277         cookie/funopen declarations.
6279 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6281         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
6282         emmentaler.
6284         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
6285         lcrm10.
6287         * scm/define-markup-commands.scm (fontsize): new markup
6288         command. Also set baseline-skip
6290 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
6291         
6292         * lily/main.cc (do_chroot_jail): paranoia security for webserver
6293         use.
6295 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6297         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
6299         * lily/pdf.cc: remove PDF related files
6301 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6303         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
6304         <hamamatsu@gmx.de>
6306 2005-03-05  Graham Percival  <gperlist@shaw.ca>
6308         * Documentation/user/advanced-notation.itely: first draft
6309         of reorg done.
6311         * Documentation/user/global.itely: fixed (sub)section
6312         bits of MIDI.
6314 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6316         * cygwin/mknetrel (extras): Bufix (Bertalan).
6318         * Documentation/user/basic-notation.itely (Chords): @ref fix.
6319         * Documentation/user/instrument-notation.itely (Introducing chord
6320         names): Compile fix: must have unique name.
6322 2005-03-02  Graham Percival  <gperlist@shaw.ca>
6324         * Documentation/user/instrument-notation.itely: reorg.
6326 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6328         * scm/output-gnome.scm:
6329         * scm/output-svg.scm: Fix font scaling.
6331 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6333         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
6334         what link to use best.
6336         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
6337         * Documentation/user/tutorial.itely (Automatic and manual beams):
6338         Fix @ref.
6340         * lily/tweak-registration.cc (replace_grob_tweak): New function.
6341         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
6342         * scm/framework-gnome.scm (tweak): Use it.
6344 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6346         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
6348         * scm/output-ps.scm (white-text): reinstate white-text
6350 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6352         * scm/output-ps.scm (offset-add): Remove.
6354         * scm/lily-library.scm (offset-flip-y): New function.
6355         * scm/framework-gnome.scm (tweak): Use it.
6357         * scm/output-gnome.scm (grob-cause): Add parameter.
6359         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
6360         * scm/output-ps.scm (url-link): Move.
6361         (white-text): Warn user about brokenness.
6363         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
6364         wrt ghostscript.
6366 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6368         * lily/slash-repeat-engraver.cc (try_music): always make slashes
6369         if body length smaller than measure length.
6371         * scm/define-markup-commands.scm (with-url): oops. use Y extent
6372         for Y.
6374         * ly/titling-init.ly (tagline): put default tagline in \paper
6376 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6378         * lily/kpath.cc: 
6379         * lily/pdf.cc (Pdf_file): Use more generic error messages.
6381         * scm/lily-library.scm (version-not-seen-message): New function.
6382         * ly/init.ly: Use it.
6384         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
6385         breaks as progess.
6387         * scripts/lilypond-book.py (do_process_cmd): Do not lump
6388         whitespace with l10n message.
6390         * scm/framework-tex.scm (convert-to-ps):
6391         (convert-to-dvi): Do not use overly specific l10n messages.
6393         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
6395         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
6396         merge stderr with stdout.  
6398 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6400         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
6401         Neeracher).
6403 2005-02-29  Graham Percival  <gperlist@shaw.ca>
6405         * Documentation/user/instrument-notation.teily: moved
6406         \arpeggio to Basic.
6408         * Documentation/user/advanced-notation.itely: Articulation to
6409         Basic, a bunch of stuff from Basic moved to Advanced.
6411         * Documentation/user/basic.itely: swapped various sections,
6412         reorganized Basic.
6414 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6416         * flower/memory-stream.cc: 
6417         * flower/libc-extension.cc: Remove obsolete #undefs.
6419         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
6420         more carefully.
6422 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6424         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
6425         dependency.
6427         * VERSION (PACKAGE_NAME): release 2.5.13
6429         * GNUmakefile.in (web-ext): don't ship ps.gz
6431         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
6432         stdout
6434 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6436         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
6437         without libintl.  Now it compiles too.
6439 2005-02-28  Graham Percival  <gperlist@shaw.ca>
6441         * Documentation/user/basic-notation.itely,
6442         instument-notation.itely, advanced-notation.itely:
6443         split up contents of notation.itely.
6445         * Documentation/user/notation.itely: file removed.
6447         * Documentation/user/invoking.itely, converters.itely:
6448         moved convert-ly info to invoking.itely.
6450         * Documentation/user/global.itely, changing-defaults.itely,
6451         sound-output.itexi: moved global settings, file layout, and
6452         sound into global.itely.
6454         * Documentation/user/sound-output.itexi: file removed.
6456         * Documentation/user/lilypond.tely: removed links to
6457         notation.itely and sound.itely.
6459 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6461         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
6463         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
6465         * THANKS: add sponsor.
6467         * scm/define-markup-commands.scm (with-url): new markup command.
6469         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
6470         tagline.
6471         
6472         * scm/output-tex.scm (url-link): stub.
6474         * scm/output-ps.scm (url-link): new function.
6476         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
6477         ly:set-point-and-click
6479 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6481         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
6482         based on pdf-viewer setting.
6484         * scm/framework-ps.scm (write-preamble): Find and set preferred
6485         pdf-viewer.
6487 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6489         * Documentation/user/point-and-click.itely: update for PDF point &
6490         click.
6492         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
6493         editors based on EDITOR setting.
6495 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6497         * scm/*: Oops, more grand 2005 replace bits.
6499 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6501         * ps/music-drawing-routines.ps: new routine: insert PDF mark
6503         * scm/output-ps.scm (grob-cause): point & click support for
6504         PostScript
6506 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6508         * lily/input-scheme.cc (LY_DEFINE): rename to
6509         ly:input-file-line-column
6511 2005-02-26  Graham Percival  <gperlist@shaw.ca>
6513         * Documentation/user/examples.itely: small fix from Steve Doonan.
6515         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
6517         * THANKS: added Yuval Harel.
6519         * Documentation/user/{various}: inserted two spaces after a period.
6521         * Documentation/user/lilypond.tely: added framework for reorg.
6523         * Documentation/user/basic-notation.itely, instrument-notation.itely,
6524         advanced-notation.itely, global.itely: new files, placeholder for
6525         future reorg.
6527 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
6529         * Documentation/user/notation.itely: revamped Polyphony section
6530         
6531 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6533         * Documentation/user/lilypond-book.itely (Music fragment options):
6534         doc fontload.
6536         * Documentation/user/changing-defaults.itely (Text encoding): add
6537         fontload option to utf8 include
6539         * scripts/lilypond-book.py (compose_ly): add fontload option
6541         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
6542         force-eps-font-include option.
6544         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
6545         black triangle
6547         * Documentation/user/invoking.itely (Editor support): remove
6548         lilypond-latex section.
6550         * scripts/lilypond-latex.py (Module): remove script.
6552         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
6553         overwrite .log. 
6555         * lily/main.cc: remove -m, --no-layout
6557         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
6558         to define. We don't want to override fprintf everywhere.
6560 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
6562         * cygwin/lilypond.hint: 
6563         * cygwin/README.in: Update dependencies.
6565         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
6566         Bugfix: do not pollute CPPFLAGS, LIBS.
6568         * cygwin/mknetrel (extras): Cross compile fixes.
6570         * ttftool/util.c: 
6571         * ttftool/ttfps.c: 
6572         * ttftool/ps.c: #include libc-extension.hh
6574         * flower/include/libc-extension.hh:
6575         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
6576         wrapper using funopen.
6577         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
6578         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
6580         * config.hh.in:
6581         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
6582         (AC_CHECK_HEADERS): Add libio.h
6584         * scripts/convert-ly.py: Uniformize, internationalize.
6585         (2.5.2): Remove fatal encoding rule.
6586         (2.5.13): Handle latin1 encoding gracefully.
6588 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6590         * HACKING: Fix line breaks.
6592 2005-02-23  Werner Lemberg  <wl@gnu.org>
6594         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
6595         contains those two files.
6597 2005-02-21  Werner Lemberg  <wl@gnu.org>
6599         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
6600         to improve overlap removal process.
6602         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
6603         left and right ending.  This ensures better overlapping.
6604         Update all callers.
6605         ("lineprall"): Don't use draw_gridline to get better overlapping.
6607 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6609         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
6611         * Documentation/topdocs/NEWS.tely (Top): oops.
6613 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
6615         * HACKING: new file.
6617         * input/regression/utf8.ly (portuguese): added a portuguese example
6618         to show latin1 accents.
6620 2005-02-21  Pal Benko  <benkop@freestart.hu>
6622         * lily/mensural-ligature-engraver.cc:
6623         * lily/mensural-ligature.cc:
6624         * lily/include/mensural-ligature.hh: new algorithm implemented
6626         * scm/define-grob-properties.scm: join-left killed (add-join may
6627         be used); join-left-amount changed to join-right-amount
6629 2005-02-21  Graham Percival  <gperlist@shaw.ca>
6631         * Documentation/user/notation.itely: small but urgent fix.
6633 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
6635         * lily/duration-scheme.cc: bugfix: correct parameters to
6636         SCM_ASSERT_TYPE.
6638         * THANKS: added Pal.
6640         * Documentation/user/notation.itely: bugfix: unTeXified
6641         $\\backslash$.  Bugfix: yet another glyph renaming victim:
6642         "timesig.*x/y" -> "timesig.*xy".
6644 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6645         
6646         * VERSION (PACKAGE_NAME): release 2.5.12
6648 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6650         * ly/engraver-init.ly: set tieWaitForNote to #t by default
6652         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
6654         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
6656         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
6658 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6660         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
6661         latin1..utf-8.
6663         * input/regression/stanza-number.ly:
6664         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
6666         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
6668 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6670         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
6671         NEWS. Refer to website for older news.  
6673         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
6674         .HTML. This should be done for specific servers only.
6676         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
6677         .ly image examples.
6679         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
6680         in layer 0 too.
6682         * scm/define-context-properties.scm
6683         (all-user-translation-properties): add tieWaitForNote
6685         * scm/define-grobs.scm (all-grob-descriptions): add
6686         Tie_column::before_line_breaking
6688         * lily/tie.cc (get_column_rank): new function
6690         * lily/tie-column.cc (before_line_breaking): new function.
6691         (werner_directions): take into account ties that start on
6692         different columns.  
6694         * lily/score-engraver.cc (set_columns): move add_column() so we
6695         have column rank available.
6697         * lily/tie.cc (get_column_rank): new function.
6699         * input/regression/utf8.ly (japanese): add japanese lyrics.
6701         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
6703         * THANKS: add Steve D
6705         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
6706         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
6708 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
6710         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
6711         to show harmonic notes
6712         * scm/define-markup-commands.scm: in \markup-by-number
6713         "dots-dot" -> "dots.dot" to show dotted notes
6715 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6717         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
6719         * flower/memory-stream.cc (writer): new file.
6721         * configure.in: add endian test.
6723 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
6725         * Documentation/user/examples.itely: small
6726         simplification/beautification
6728         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
6729         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
6730         notation manual.
6732         * lily/mensural-ligature.cc: bugfix: another few victims of the
6733         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
6735         * ly/gregorian-init.ly: commit some experimental code for hi-level
6736         ligature input language lying around here for several months.
6738         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
6739         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
6741         * lily/vaticana-ligature-engraver.cc: bugfix: another few
6742         "x-y-z"->"x.y.s-z" fixes.
6744 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6746         * scm/framework-pdf.scm (scm): new file
6748         * lily/include/pdf.hh (class Pdf_file): new file.
6750         * lily/pdf.cc (write_trailer): new file.
6752 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
6754         * input/regression/color.ly: new file
6756         * lily/stencil.cc (interpret_stencil_expression):
6757         when a color expression is encountered: save current color,
6758         process the rest of the expression, and restore previous color.
6760         * lily/system.cc (get_line): check all grobs for color property and
6761         prepare the stencil scheme expressions for further processing.
6762         Fix layer-loop.
6764         * scm/define-grob-properties.scm: introduce the color property.
6766         * scm/output-lib.scm: color helper functions.
6768         * scm/output-ps.scm: introduce setcolor/resetcolor.
6770 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
6772         * ly/*.ly, input/regression/*.ly: Added missing \version
6773         statements in some files.
6775 2005-02-15  Graham Percival  <gperlist@shaw.ca>
6777         * Documentation/user/notation.itely: minor editing.
6779         * Documentation/user/converters.itely: updated convert-ly bugs.
6781         * Documentation/user/lilypond-book.itely: add info about using
6782         feta characters in latex.
6784 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6786         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
6788 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6790         * scm/define-grob-properties.scm (all-user-grob-properties):
6791         removed 'dashed property.
6793 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6795         * scm/lily.scm (define-safe-public): new macro for defining
6796         variables that can be used in --safe mode. Use it in *.scm
6797         instead of manually setting safe-objects in safe-lily.scm.
6799 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6800         
6801         * lily/slur.cc: Slur-dash patch by Bertalan.
6803         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
6805         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
6807 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6809         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
6811 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6813         * mf/GNUmakefile: teTeX-3.0 install fix.
6815         * Cygwin patch from Bertalan.
6817         * stepmake/stepmake/metafont-rules.make: Remove bashism.
6819 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6821         * GNUmakefile.in: 
6822         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
6824         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
6825         2.0.x compatibility.
6827 2005-02-08  Werner Lemberg  <wl@gnu.org>
6829         * mf/feta-din-code.mf: Format; clean up code.
6830         Replace `---' with `--' plus explicit path directions.
6831         (linethickness#, stafflinethickness#): Remove.
6832         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
6833         ("dynamic s"): Improve shape.
6834         ("dynamic p"): Improve shape.
6835         Replace `draw' with better outline approximation.
6836         ("dynamic r"): Improve shape.
6837         Don't call `fill' and `draw' at the same time.
6839 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6841         * SConstruct (symlink):
6842         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
6843         build fix: add enc symlink.
6845         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
6847         Support for DESTDIR besides prefix=/foo
6849         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
6851         * stepmake/stepmake/*.make:
6852         * */GNUmakefile:
6853         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
6855         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
6857         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
6858         mawk in fontforge (date) test.
6860 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6862         * scm/font.scm (make-century-schoolbook-tree): add NCS as
6863         font-family=roman. Add Luxi Sans as sans
6865 2005-02-07  Graham Percival  <gperlist@shaw.ca>
6867         * Documentation/user/notation.itely: add warning about
6868         percent repeats and Voice contexts.
6870         * Documentation/user/lilypond-book.itely: clarified the
6871         necessity of dvips -u arguments.
6873 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
6875         * THANKS: Added a bunch of bug hunters.
6877 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6879         * scm/framework-ps.scm (output-preview-framework): bugfix.
6881         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
6882         o/ for chord modifier..
6884         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
6886         * lily/drum-note-performer.cc:  remove unused (thanks Michael
6887         Welsh Duggan). 
6889 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6891         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
6893         * ly/titling-init.ly: Do not also print intstrument in header on
6894         first page.  Do not print page number on first and only page.
6896 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6898         * input/regression/*.ly: remove old-relative everywhere
6900         * lily/music-sequence.cc (simultaneous_relative_callback): do
6901         what-if analysis on copy, not on original. Fixes old-relative
6902         compatibility.
6904         * scm/backend-library.scm (postscript->png): space before
6905         --verbose.
6906         
6907 2005-02-05  Werner Lemberg  <wl@gnu.org>
6909         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
6910         is defined.
6912         * mf/feta-alphabet.mf: Define `staffsize#'.
6913         Include `feta-params.mf'.
6914         s/staffheight/design_size/.
6916         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
6918         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
6920         * mf/feta-nummer-code.mf: Reformatted.
6921         (draw_six): Use outline intersection to avoid a self-intersecting
6922         path.
6923         ("Numeral comma"): Fix serious outline glitches.  This slightly
6924         changes the glyph shape.
6925         ("Numeral dash"): Use `draw_rounded_block'.
6926         ("Numeral dot"): Use `drawdot'.
6927         ("Numeral 1"): Assure identical tangent directions for the
6928         intersection points of paths.  The glyph shape improvement is only
6929         visible at very high magnifications.
6930         ("Numeral 2"): Use `solve' macro to make the lower right part of
6931         the glyph outline touch the x axis exactly.  This changes the
6932         glyph shape.
6933         Minor fixes for better overlap removal support.
6934         ("Numeral 4"): Make lefter corner `rounder'.
6935         ("Numeral 5"): Assure identical tangent directions for the
6936         intersection points of paths.  This improves the glyph shape at
6937         high magnifications.
6938         ("Numeral 7"): Use `solve' macro to make the upper right part of
6939         the glyph outline touch the metrics box exactly.  This changes the
6940         glyph shape.
6941         Avoid corner in the upper left part of the glyph (causing a minor
6942         shape change).
6944         * mf/feta-ital-*.mf: Removed.  Unused.
6946 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6948         * VERSION (PATCH_LEVEL): release 2.5.11
6950         * input/regression/fill-line-test.ly: new file.
6952         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
6953         emmentaler name, eg. emmentaler-23. 
6955 2005-02-04  Christian Hitz  <chhitz@gmx.net>
6957         * scm/scm/define-markup-commands.scm (fill-line): rework for better
6958         alignment with centered texts
6960         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
6961         list of paddings
6963 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6965         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
6967         * lily/note-column.cc (translate_rests): call flush_extent_cache()
6968         of parents when translating rests. Fixes: c-chord-rest.ly 
6970         * lily/include/dimension-cache.hh (struct Dimension_cache): add
6971         dimension_callback_ member.
6973         * lily/grob.cc (flush_extent_cache): new function. Force recompute
6974         of extents.
6976 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6978         * all but lily/*: The grand 2004/2005 replace.
6980 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6982         * lily/*: add space after ,  
6984         * scm/music-functions.scm (has-request-chord): don't use
6985         ly:music-name anywhere. Fixes <<\\>> notation. 
6987         * scm/define-markup-commands.scm (box): use font-size for
6988         padding. Fixes boxed-rehearsal-marks.ly
6990         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
6991         identifier definition too, so foo = \lyrics { ...   } bar = #1
6992         doesn't complain about "bar" being LYRICS_STRING.
6994         * lily/paper-def.cc (find_pango_font): new routine; Store
6995         pango_fonts in hash tab too. This is necessary for retrieving
6996         Pango_fonts::physical_font_tab() later on.
6998         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
6999         crash if psname is null.
7001         * lily/lily-guile.cc (ly_hash2alist): new function
7003         * Documentation/user/changing-defaults.itely (Text encoding):
7004         rewrite. 
7006         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
7007         -> font_filename mapping.
7009         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
7010         ly_pango_font_physical_fonts
7012         * scm/framework-ps.scm (supplies-or-needs): extract names from
7013         physical Pango_fonts.
7015         * utf8.ly: new file.
7017 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7019         * Documentation/user/changing-defaults.itely (Page layout): add
7020         doco about systemSeparatorMarkup.
7022         * scm/page-layout.scm (default-page-make-stencil): add-to-page
7023         function.
7024         (default-page-make-stencil): insert system separators.
7026         * scm/define-markup-commands.scm (hcenter): add
7027         (beam): add.
7029 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7031         * scm/output-ps.scm (ez-ball): reinstate ez notation.
7033 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7035         * lily/main.cc: Spell backend consistently.  Sort options.
7037 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7039         * scripts/lilypond-book.py (Module): revert @include.
7040         
7041 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7043         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
7044         Bugfix: @include .tex (not .texi).  Small cleanups.
7046         * stepmake/bin/add-html-footer.py (i18n): New function.
7048 2005-01-31  Werner Lemberg  <wl@gnu.org>
7050         * mf/feta-nummer.mf: Removed.  Unused.
7052 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7054         * lily/ : 2004 -> 2005 s&r
7056         * scm/file-cache.scm (cached-file-contents): add file. Read each
7057         file only once.
7059         * scm/font.scm (add-pango-fonts): change order. Medium weight is
7060         now default.
7062         * VERSION: release 2.5.10
7063         
7064         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
7066         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
7068         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
7069         that both X and Y extents of bbox are non-nil.
7071 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7073         * scm/chord-name.scm (alteration->text-accidental-markup): change
7074         - to . 
7076         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
7078         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
7080         * Documentation/user/invoking.itely (Invoking lilypond): add note
7081         about EPS backend.
7083         * scm/framework-eps.scm: new file: create per-system/per-page EPS
7084         files for inclusion in lilypond-book document.
7086         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
7088         * input/tutorial/lbook-texi-test.texi: new file.
7090         * scm/safe-lily.scm (safe-objects): add
7091         {begin,end}-of-line-(in)?visible as safe.
7093 2005-01-30  Graham Percival  <gperlist@shaw.ca>
7095         * Documentation/user/changing-defaults.itely: fixed example
7096         of (dynamics).
7098 2005-01-29  Graham Percival  <gperlist@shaw.ca>
7100         * lily/main.cc: fix info about -o=FILE.
7102 2005-01-29  Werner Lemberg  <wl@gnu.org>
7104         * mf/feta-toevallig.mf ("Natural"): Completely changed the
7105         construction to assure smooth transition from straight to curved
7106         lines.
7108 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7110         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
7111         stencils.
7113         * ps/lilyponddefs.ps: add start-page, start-system doesn't
7114         translate to top of page. Fixes alignment problems of
7115         lilypond-generated EPS files.
7117 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7119         * scm/part-combiner.scm (analyse-spanner-states): trigger on
7120         crescendo-end as well, since Decrescendo maybe ended with Stop
7121         Crescendo.). Fixes: partcombine-diminuendo.ly
7123         * scm/script.scm (default-script-alist): swap portato symbols.
7125         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
7127         * lily/paper-outputter-scheme.cc (LY_DEFINE):
7128         ly:outputter-port. New function.
7130         * scm/framework-ps.scm (output-classic-framework): dump a
7131         -systems.texi too
7132         (output-classic-framework): dump multiple systems on an "infinite"
7133         page EPS including fonts. 
7135         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
7136         .eps files for both texi and tex formats. Use PNG coming from
7137         lilypond.
7138         
7139 2005-01-28  Graham Percival  <gperlist@shaw.ca>
7141         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
7143         * scripts/lilypond-latex.py: fix info about -o=FILE.
7145 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7147         * ly/generate-embedded-cff.ly: write .cff.ps files.
7149         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
7151         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
7152         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
7154 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7156         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
7158 2005-01-28  Werner Lemberg  <wl@gnu.org>
7160         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
7161         macros.
7162         (draw_bulb): Improved.
7164         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
7165         metapost bug.
7166         (draw_pedal_P): Use soft_end_penstroke.
7167         (draw_pedal_d): Use soft_start_penstroke.
7169         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
7170         path.
7171         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
7172         doesn't change the glyph shape.
7174         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
7175         changing the shape) to avoid fontforge warnings.
7177         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
7178         soft_end_penstroke and fix glyph shape.
7180 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7182         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
7184 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7186         * scm/define-markup-commands.scm (line): filter out empty stencils
7187         from line command.
7189         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
7190         amount.
7192 2005-01-27  Graham Percival  <gperlist@shaw.ca>
7194         * Documentation/user/notation.itely: added info about what
7195         \voiceFoo does.  Also rewrote warning about marks at
7196         a line break.
7198         * Documentation/user/changing-defaults.itely: added info
7199         about putting dynamics in parenthesis and brackets.
7201 2005-01-27  Werner Lemberg  <wl@gnu.org>
7203         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
7205 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7207         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
7208         portato-direction.ly
7210         * lily/beam.cc (consider_auto_knees): add beam height to
7211         threshold. Fixes: knee-multiple-beam.ly
7213         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
7214         pedal line spanners. Fixes: instrument-center-pedal.ly
7216         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
7217         if encountering barline. Fixes: auto-beam-repeat.ly
7219 2005-01-26  Werner Lemberg  <wl@gnu.org>
7221         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
7222         overlapping.
7224         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
7225         with inflections for the 1/2 sharp glyph.
7227         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
7228         connection between `t' and `r'.
7229         Unify bulb with the rest of `r' to avoid grazing outlines which
7230         confuses the overlap removal algorithm of fontforge.
7232         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
7233         inflections.
7234         (draw_cross): Fix shape to have uniform thickness in corners.
7236         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
7237         to avoid an uneven number of self-intersections; this confuses
7238         fontforge.
7239         Fix a slight bug in the shape at left bottom (which is visible only
7240         at high magnifications).
7241         `Center' the stem horizontally to avoid overlapping.
7243 2005-01-24  Werner Lemberg  <wl@gnu.org>
7245         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
7246         to `asis'.
7247         (fet_begingroup): Save group name in string `feta_group'.
7248         (fet_endgroup): Updated.
7249         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
7251         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
7253         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
7254         in metapost.
7256 2005-01-24  Graham Percival  <gperlist@shaw.ca>
7258         * Documentation/user/notation.itely: really minor editing.
7260 2005-01-22  Graham Percival  <gperlist@shaw.ca>
7262         * Documentation/user/examples.itely: minor editing.
7264         * Documentation/user/changing-defaults.itely: minor editing.
7266         * Documentation/user/notation.itely: clarified info on polyphony
7267         and \addlyrics.
7269 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
7271         * scm/output-gnome.scm: 
7272         * scm/output-svg.scm:
7273         * scm/lily-library.scm (font-name-style): Update font name
7274         kludging for fontconfig use.
7276 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
7278         * scm/define-markup-commands.scm: Document right-align and
7279         larger markup commands. Remove "TODO" from the topmost comment
7280         "each markup function should have a doc string." More consistent
7281         use of new-lines.
7283 2005-01-22  Graham Percival  <gperlist@shaw.ca>
7285         * Documentation/user/changing-defaults: removed info about
7286         copyright symbol, since it's likely to change soon.
7287         Added info about betweensystemspace.
7289         * Documentation/user/notation.itely: minor fixes.
7291         * Documentation/user/lilypond.tely,
7292         Documentation/user/music-glossary.tely: changed copyright
7293         date to 2005 instead of 2004.
7295         * input/test/volta-chord-names.ly: added old example back.
7297 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7299         * mf/feta-beugel.mf: use design size 20 (not 15).
7301         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
7302         change name to aybabtu completely
7304 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7306         * buildscripts/gen-emmentaler-scripts.py (outdir): add
7307         design_size to fontname
7309 2005-01-19  Werner Lemberg  <wl@gnu.org>
7311         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
7312         mf/feta-schrift.mf: s/p/pat/ if a path variable.
7314         * mf/feta-autometric.mf (set_char_box): Add code which emits
7315         specials for mf2pt1 if run with metapost.
7316         (to_bp): New macro for mf2pt1.
7318 2005-01-18  Graham Percival  <gperlist@shaw.ca>
7320         * Documentation/user/changing-defaults: added info on
7321         creating a copyright symbol.
7323 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7325         * VERSION: release 2.5.9
7326         
7327 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
7329         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
7331         * Documentation/user/notation.itely: Document
7332         score-override-auto-beam-setting Fix documentation for
7333         revert-auto-beam-setting.
7335 2005-01-18  Werner Lemberg  <wl@gnu.org>
7337         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
7338         (procset): New function to define a procset resource.
7339         (ps-embed-pfa): New function to define a font resource.
7340         (setup): New function to define a `Setup' environment.
7341         (preamble): Use new functions.
7343         * ps/lilypond.defs (init-lilypond-parameters): New function to
7344         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
7346 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7348         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
7350 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
7352         * scm/define-markup-commands.scm: Change number->markletter-string
7353         to take two arguments (vector number). Add number->mark-alphabet-vector
7354         and markalphabet markup command.
7356         * scm/translation-functions.scm: Add format-mark-box-alphabet,
7357         format-mark-alphabet, format-mark-box-barnumbers and
7358         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
7360 2005-01-17  Graham Percival  <gperlist@shaw.ca>
7362         * Documentation/user/examples.itely: add SATB automatic piano
7363         reduction template.
7365         * Documentation/user/notation.itely: added info about changing
7366         partcombine texts.  Also adds examples of alternate lyrics.
7368         * Documentation/user/changing-defaults.itely: added warning
7369         about \RemoveEmptyStaffContext overriding previous changes.
7371 2005-01-17  Werner Lemberg  <wl@gnu.org>
7373         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
7374         feta-alphabet*.
7376 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7378         * python/lilylib.py (make_ps_images): don't do final showpage for
7379         multi-page documents.
7380         
7381         * VERSION (MY_PATCH_LEVEL): release 2.5.8
7383 2005-01-16  Graham Percival  <gperlist@shaw.ca>
7385         * Documentation/user/lilypond.tely: changed order of appendices;
7386         unified index should be last.
7388         * Documentation/user/notation.itely: add example of key signatures
7389         and info about Staff.printKeyCancellation.
7391 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7393         * lily/include/repeated-music.hh (class Repeated_music): change
7394         into "namespace" class.
7396         * lily/event.cc: remove Key_change_event.
7398         * lily/include/transposed-music.hh (class Transposed_music): remove.
7400         * lily/transposed-music.cc: remove
7402         * lily/include/relative-music.hh: remove.
7404         * lily/include/music-sequence.hh (struct Music_sequence): change
7405         into "namespace" class.
7407         * lily/untransposable-music.cc (Module): remove
7409         * lily/include/un-relativable-music.hh (Module): remove
7411         * lily/include/untransposable-music.hh (Module): remove
7413         * lily/include/music-list.hh (Module): remove file
7415         * lily/un-relativable-music.cc: remove file.
7417 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7419         * lily/parser.yy: Compile fix.
7421 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7423         * lily/include/music.hh (class Music): unvirtualize transpose().
7425         * lily/sequential-music.cc: remove file.
7427         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
7429         * lily/slur-scoring.cc (get_best_curve): only switch on
7430         DEBUG_SLUR_SCORING for non NDEBUG builds.
7432         * lily/include/music.hh (class Music): replace Music::start_mom()
7433         by start-callback property
7435         * lily/include/grace-music.hh: remove file. 
7437         * lily/stem.cc (height): robustness fix.
7439         * lily/time-scaled-music.cc: remove file.
7441         * lily/include/music.hh (class Music): include SCM init argument.
7442         (class Music): replace Music::get_length() virtual by
7443         length-callback property everywhere.
7445         * scripts/convert-ly.py (conv): add  # to \property scalar value.
7447         * mf/GNUmakefile: don't install *list.ly
7449 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7451         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
7453 2005-01-12  Werner Lemberg  <wl@gnu.org>
7455         This patch addresses the following problems in the feta sources
7456         files which contribute to the fetaXX fonts.
7458         . Many fixes for rasterization at low resolutions (consistent use of
7459           `vround' and `hround', integer shift values for paths, applying
7460           `eps' for mirrored paths, use of `define_whole_pixels' and
7461           friends, etc.) -- while this probably looks like a waste of time
7462           it has revealed deficiencies in some glyph shapes.  See comment at
7463           the end of feta-params.mf how vertical symmetry is achieved.
7465         . The `---' operator has been replaced everywhere with `--'; this
7466           both improves and considerably reduces the font size after
7467           conversion with mf2pt1.
7469         These change aren't explicitly mentioned below since virtually all
7470         glyphs are affected.
7472         Other notable differences:
7474         . Glyphs from feta-accordion.mf now have charboxes around the
7475           outline.
7477         . Fixed incorrect charbox for `accDot'.
7479         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
7481         . Fixed position of the bow in the `upprall' glyph and its siblings.
7483         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
7484           dependent on the staff line thickness to avoid touching the middle
7485           staff line at smaller sizes.
7487         . Largely extended output for feta-testXX: Where useful, glyphs
7488         are shown both between and on staff lines.
7491         * mf/feta-params.mf (staff_space_rounded,
7492         stafflinethickness_rounded, linethickness_rounded,
7493         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
7494         Update all code which uses them where appropriate.
7495         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
7496         New variables used to control rasterization at low resolutions.  Set
7497         to zert if feta code is processed with metapost.
7499         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
7500         (draw_rounded_block, draw_square_block): Updated to use `--' only.
7501         (flare_path): Updated.
7502         Make it work with `filldraw' (but only circular pens).
7503         (hfloor, vfloor, hceiling, vceiling): New macros.
7505         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
7506         Use `draw' again in mf mode to have good pixel dropout control.
7507         Fix intersection points of horizontal lines with circle.
7508         ("accDot"): Fix parameters for set_char_box.
7509         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
7510         control.
7512         * mf/feta-banier.mf: Updated.
7514         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
7515         testing.
7516         (undraw_inside_ellipse): Remove `center' argument.  Update all
7517         callers.
7518         (draw_brevis): New macro, called by "Brevis notehead".
7519         (draw_whole_triangle_head): New macro, called by "Whole
7520         trianglehead".
7521         (draw_small_triangle_head): Use `filldraw'.
7523         * mf/feta-eindelijk.mf: Remove useless global group.
7524         Updated.
7526         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
7527         `filldraw'.
7529         * mf/feta-pendaal.mf: Updated.
7531         * mf/feta-puntje.mf: Updated.
7533         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
7534         less points.
7535         ("Flageolet"): Use `draw' again in mf mode to have good pixel
7536         dropout control.
7537         ("Varied Coda"): Use `draw_block'.
7538         (draw_comma): Fix typo.
7539         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
7540         pixel dropout control.
7542         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
7543         position of bow.
7545         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
7546         sizes.
7548         * mf/feta-toevallig.mf (remember_pic): New variable, used for
7549         testing.
7550         (draw_meta_sharp): Much simplified.
7551         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
7553         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
7555 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7557         * Documentation/user/notation.itely (Ancient rests): Fix typo
7558         (thanks Anthony)
7560 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7562         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
7564         * lily/main.cc (setup_paths): Add cff.
7566         * mf/GNUmakefile (foe): Include actual target %.cff.
7567         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
7569 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7571         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
7572         suffix for main_input_b_.
7574         * scm/music-functions.scm (toplevel-music-functions):
7575         precompute music lengths for music expressions.  
7577 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7579         * lily/include/input.hh (class Input): new `end_' slot for end of
7580         input. Renamed defined_str0_ to start_.
7582         * lily/input.cc (Input): Add Input::Input (Input const &) and
7583         remove Input::Input (Source_file*, char const *). Use the new
7584         slots.
7585         (set_location): method used by bison to propagate input
7586         locations (YYLLOC_DEFAULT).
7587         (end_line_number, end_column_number, step_forward): new methods
7588         
7589         * lily/input-scheme.cc (ly:input-both-locations): new function,
7590         similar to ly:input-location, but also return the end line and
7591         column.
7593         * lily/include/includable-lexer.hh: 
7594         * lily/includable-lexer.cc: 
7595         * lily/include/lily-lexer.hh (class Lily_lexer): 
7596         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
7597         Includable_lexer to Lily_lexer, in order to update lexloc (the
7598         yylloc), a new slot of Lily_lexer.
7599         (here_input, LexerError): simplify by using the lexloc slot (aka
7600         yylloc)
7602         * lily/lexer.ll: #define yylloc to use input locations (it may
7603         be useless here?). Fixed the #embedded_scm rule (step the location
7604         forward in order to skip the sharp sign before parsing the scheme
7605         expression)
7607         * lily/include/lily-parser.hh (class Lily_parser): 
7608         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
7609         here_input()
7610         (parser_error): overload for more precise locations of errors.
7612         * lily/parser.yy (YYLTYPE): set location type to Input
7613         (YYLLOC_DEFAULT): use Input::set_location()
7614         (yylex): add the YYLTYPE* location parameter.
7615         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
7616         Give an Input parameter to THIS->parser-error() for more accurate
7617         messages.
7619 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7621         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
7623         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
7624         on BEAMQUANTING for non-NDEBUG builds.
7626         * lily/stem.cc (head_count): performance: avoid String::String()
7627         inside oft called function.
7629 2005-01-09  Graham Percival  <gperlist@shaw.ca>
7631         * Documentation/user/examles.itely: attempted fix for broken
7632         string quartet template.
7634         * Documentation/user/notation.itely: remove unnecessary broken
7635         link.
7637 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7639         * VERSION (PACKAGE_NAME): release 2.5.7
7641 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7643         * config.make.in (METAFONT): Append -progname=mf, fixes use with
7644         mf-nowin for teTeX-3.0.  Backportme.
7646         * scm/output-svg.scm (utf8-string): New function.
7648         * scm/output-gnome.scm (utf8-string): New function.
7649         (otf-name-mangling): Remove.
7651         * lily/pango-font.cc (Pango_font): Use font string iso font
7652         filename for utf8-text.
7654         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
7655         name.
7657 2005-01-08  Graham Percival  <gperlist@shaw.ca>
7659         * Documentation/user/notation.itely: add info about
7660         Staff.extraNatural = ##f in Pitches section.  Also
7661         fixed some minor issues in the Vocal music section.
7663 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7665         * scm/output-ps.scm (white-text): comment out Helvetica font,
7666         which is broken for my GS install.
7668         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
7669         which provides a tighter bbox.
7671         * scm/define-grobs.scm (all-grob-descriptions): remove all
7672         extra-offsets from definitions.
7674 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
7676         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
7677         add tuning for 4-string bass and some common 4/5-string banjo
7678         tunings.  New function (four-string-banjo) turns a 5-string tuning
7679         into a 4-string tuning.  New function
7680         (fret-number-tablature-format-banjo) computes correct fret numbers
7681         on 5-string banjos.
7683         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
7684         Add beam correction to TabVoice.
7686         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
7687         using bold font; makes tabs more readable.
7689 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7691         * lily/font-select.cc (get_font_by_design_size): don't make
7692         Modified_font_metric; this causes trouble, since we don't know the
7693         font magnification from inside Pango_font::text_stencil()
7695         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
7697         * Documentation/user/notation.itely (The Lyrics context): comment out
7698         broken {Small ensembles} link.
7700         * scm/framework-svg.scm (output-framework): change calling convention.
7702         * lily/object-key-dumper-scheme.cc: new file.
7704         * lily/object-key-undumper-scheme.cc: new file.
7706         * lily/tweak-registration-scheme.cc: new file.
7708         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
7710         * Documentation/user/examples.itely (String quartet): uncomment
7711         broken example.
7713         * lily/font-config.cc: new file.
7715 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7717         * scm/output-svg.scm: 
7718         * scm/output-gnome.scm: s/bigcheese/emmentaler.
7720         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
7722 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7724         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
7725         Add headers.
7727         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
7729 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7731         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
7733         * lily/include/main.hh: lose _b hungarian suffixes for global
7734         variables.
7736         * lily/include/lily-guile-macros.hh: new file.
7738         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
7740         * lily/general-scheme.cc: new file. 
7742         * lily/font-select.cc (get_font_by_design_size): retrieve
7743         PangoFont for (designsize . "pango-descr") entries.
7745         * lily/lily-parser-scheme.cc: new file.
7747         * lily/output-def-scheme.cc: new file.
7749         * lily/paper-book-scheme.cc: new file.
7751         * lily/duration-scheme.cc (LY_DEFINE): new file.
7753         * lily/pitch-scheme.cc:  new file.
7755         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
7757 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7759         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
7761 2005-01-06  Graham Percival  <gperlist@shaw.ca>
7763         * Documentation/user/notation.itely: minor editing.
7765         * Documentation/user/changing-defaults: minor editing.
7767         * Documentation/user/examples.itely: add template for
7768         string quartet part extraction; demonstrates tag.
7770 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
7772         * Documentation/user/notation.itely: documents
7773         format-mark-box-letters and format-mark-box-numbers
7775         * scm/define-context-properties.scm: change comment.
7777 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7779         * scm/framework-ps.scm (output-classic-framework): new function:
7780         dump systems as separate .eps files (without fonts) and write a
7781         single collecting .tex file.
7783 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7785         * Documentation/user/notation.itely (Setting simple songs):
7786         Correct several errors in the equivalent formulation of
7787         \addlyrics. 
7788         (The Lyrics context): Corrected link to the SATB example.
7790 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7792         * scm/lily.scm (completize-formats): new function
7793         (postprocess-output): new function
7795         * lily/paper-book.cc (classic_output): change calling
7796         convention. Give basename as first argument. 
7797         remove Paper_book::post_processing().
7799         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
7801 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7803         * lily/paper-outputter.cc (LY_DEFINE): new function
7804         ly:outputter-close.
7806         * lily/main.cc: change --format,-f to --backend,-b
7808         * lily/include/main.hh: rename format to backend.
7810         * scm/translation-functions.scm (format-mark-box-numbers): add.
7811         patch by Erlend Aasland
7813 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7815         * lily/pango-font.cc (text_stencil): dump string as
7816         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
7818 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7820         * configure.in (gui_b): Remove handy developer-only
7821         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
7822         CVS source installations (but break other non-default but correct
7823         PKG_CONFIG_PATH setups), as this is no longer developer-only.
7825         * SConstruct: 
7826         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
7827         compatibility (backportme).
7829         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
7831 2005-01-03  Werner Lemberg  <wl@gnu.org>
7833         Prepare glyph shapes for mf2pt1 conversion.
7835         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
7836         (accDiscant, accFreebase, accStdbase): Replace `draw' with
7837         `penstroke'.
7838         (accDot): Use `drawdot'.
7839         (accBayanbase): Replace `draw' with `draw_gridline'.
7840         (print_penpos): Moved to feta-macros.mf.
7841         (accOldEE): Replace `filldraw' with `penstroke'.
7842         Replace `draw' with `penstroke' and `drawdot'.
7844         * mf/feta-banier.mf: Code clean-up.
7845         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
7846         `fill'.
7848         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
7850         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
7851         paremeter to control drawing of labels.  Update all callers.
7853         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
7854         (new_bulb): Return a bulb as a single path.  To do that, it now
7855         takes some more parameters.  Updated all callers.
7856         (draw_gclef): Major clean-up.  `draw' has been replaced with
7857         `penstroke', unnecessary outlines have been removed.
7858         Remove (unused) gnome-canvas code.
7860         * mf/feta-macros.mf (print_penpos): New macro (from
7861         feta-accordion.mf).
7862         Other minor fixes.
7864         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
7865         ("Pedal dot"): Use `drawdot'.
7866         (draw_pedal_P): Add parameter to control drawing of labels.  Update
7867         all callers.
7868         Fix shape at top.
7869         (draw_pedal_e): Add parameter to control drawing of labels.  Update
7870         all callers.
7871         (draw_pedal_d): Add parameter to control drawing of labels.  Update
7872         all callers.
7873         Revert drawing direction.
7875         * mf/feta-schrift.mf (draw_fermata): Use single path.
7876         (draw_short_fermata): Replace `filldraw' with `fill'.
7877         (draw_long_fermata, draw_very_long_fermata): Replace calls to
7878         `draw_rounded_block' with a single path.
7879         ("Thumb"): Draw full circle instead of mirroring segments.
7880         (draw_accent): New macro.
7881         ("> accent", "espr"): Use it.
7882         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
7883         ("open (unstopped)"): Draw full circle instead of mirroring
7884         segments.
7885         (draw_vee): Removed.
7886         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
7887         ("Downbow"): Replace calls to `draw_rounded_block' with a single
7888         path.
7889         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
7890         partial pieces drawn with `fill' -- these do still overlap with the
7891         stem of the `t' but just once, not multiple times so that fontforge
7892         can handle it gracefully.
7893         Change other parts of the glyph so that fontforge's overlapping
7894         algorithm reliably works.
7895         (draw_heel): Replace `draw' with `fill'.
7896         (draw_toe): Use `draw_accent' instead of `draw_vee'.
7897         ("Flageolet"): Replace `draw' with `penstroke'.
7898         ("Segno"): Replace `filldraw' with `penstroke'.
7899         Replace `draw' with `drawdot'.
7900         ("Coda"): Replace `fill' with `penstroke', using a single path.
7901         ("Varied Coda"): Use less overlapping paths.
7902         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
7903         single path.
7905         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
7906         group to better control the `labels' command.
7907         Rename argument to `offset' and use it actually.  Update all
7908         callers.
7909         Replace `filldraw' with `fill'.
7910         ("mordent", "prallmordent", "upmordent", "downmordent",
7911         "lineprall"): Replace `draw' with `draw_gridline'.
7912         ("upprall", "downprall"): Replace `draw' with `fill'.
7914         * mf/feta-timesig.mf: Formatting.
7916         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
7917         to...
7918         ("Flat"): Here.
7919         (draw_paren): Move code to draw labels to...
7920         ("Right Parenthesis"): Here.
7922 2005-01-02  Graham Percival <gperlist@shaw.ca>
7924         * Documentation/user/notation.itely: add example of \setTextDecresc
7925         and \setTextDim.
7927 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
7929         * scm/define-markup-commands.scm :  fix glyph-strings of
7930         accidentals and \note-by-number
7932 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7934         * VERSION: 2.5.6 released.
7935         
7936         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
7938         * input/regression/new-markup-scheme.ly: oops. font-family=music
7939         -> font-encoding fetaMusic.  
7941         * lily/main.cc: put default to PS.
7943         * lily/tfm.cc: idem.
7945         * lily/afm.cc: idem.
7947         * lily/include/modified-font-metric.hh (struct
7948         Modified_font_metric): remove coding_scheme() method.
7950         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
7952         * scripts/convert-ly.py (conv): crash on encountering \encoding.
7954         * input/les-nereides.ly: convert to utf8
7956         * lily/modified-font-metric.cc (text_dimension): idem.
7958         * lily/parser.yy (TODO): idem.
7960         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
7962         * lily/lexer.ll: remove encoding
7964         * scm/framework-ps.scm (output-variables): separately scale the
7965         page to mm 
7967         * lily/pango-font.cc (Pango_font): fix scaling.
7969         * lily/font-metric.cc (design_size): design_size returns a
7970         dimension now as well.
7972 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7974         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
7975         brace generation. 
7977         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
7979 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7981         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
7982         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
7984 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7986         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
7987         in first run as well.
7989         * scm/paper.scm (layout-set-staff-size): use text-font-size in
7990         dimension less points (ie. 12 = 12 point)
7992         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
7994         * lily/all-font-metrics.cc (find_pango_font): set description_
7996         * lily/pango-font.cc (text_stencil): export size as well.
7997         (text_stencil): fix scaling and extents box.
7999 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8001         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
8003         * Documentation/user/invoking.itely (Invoking lilypond): document
8004         texstr
8006         * scripts/convert-ly.py (conv): add ancient rules.
8008         * scm/clef.scm (c0-pitch-alist): replace - with .
8010         * scripts/lilypond-book.py (process_snippets): add texstr support.
8012         * scm/framework-texstr.scm (header): change extension to .textmetrics
8014         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
8015         -f tex.
8017         * lily/text-metrics.cc: new file.
8018         (try_load_text_metrics): new function
8020         * lily/include/text-metrics.hh: new file.
8022 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8024         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
8025         ly_scheme_function to ly_lily_module_constant.
8027         * lily/modified-font-metric.cc (text_dimension): try
8028         lookup_tex_text_dimension() first.
8030         * lily/tfm.cc: new function ly:load-text-dimensions
8032 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8034         * scm/output-texstr.scm (text): use \lilygetmetrics
8036         * scm/framework-texstr.scm (header): dump in new format.
8038         * tex/lilypond-tex-metrics: new file.
8039         
8040 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8042         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
8043         mapping.
8044         (index_to_charcode): New method.
8046         * scm/output-ps.scm (glyph-string): 
8047         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
8049 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
8051         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
8052         implement fully, need FONT to get to charcode.
8054         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
8056         * scm: Cleanups.
8058         * Documentation/user/changing-defaults.itely: Fix internalsrefs
8059         {Tunable context properties},
8060         {All layout objects},
8061         {Music definitions}.
8063 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8065         * VERSION: release 2.5.5
8066         
8067         * lily/main.cc: use TeX as default output format.
8069         * flower/file-path.cc (find): try to open directly as well, so we
8070         find absolute path files. 
8072         * lily/pango-select.cc: new file.
8074         * scm/framework-ps.scm: remove all encoding code. 
8075         load pfb/pfa for PangoFont too.
8076         
8077         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
8079 2004-12-22  Werner Lemberg  <wl@gnu.org>
8081         Prepare glyph shapes for mf2pt1 conversion.
8083         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
8085         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
8086         (define_triangle_shape): Use it to replace `draw' with `fill' and
8087         `unfill'.  Update all callers.
8088         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
8089         (draw_cross): Ditto.
8090         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
8091         Use penrazor for better conversion with mf2pt1.
8092         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
8093         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
8094         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
8095         draw_la_head, draw_ti_head): Replace `filldraw' with
8096         `fill'.  Update all callers.
8098 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8100         * lily/paper-book.cc (output): revert: only allow a single output
8101         format.
8103         * lily/include/pango-font.hh: new file.
8105         * lily/pango-font.cc: new file.
8107         * lily/font-metric.cc (text_stencil): new routine
8109         * lily/all-font-metrics.cc (find_pango_font): new routine.
8111         * lily/include/font-metric.hh (struct Font_metric): add
8112         text_stencil()
8114         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
8116 2004-12-22  Werner Lemberg  <wl@gnu.org>
8118         Prepare glyph shapes for mf2pt1 conversion.
8120         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
8122         * mf/feta-toevallig.mf: Formatting.
8123         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
8124         ("Natural"): Fix paths to allow better postprocessing.
8125         (draw_meta_flat): Use `z3l' as additional point in path to get
8126         better conversion with mf2pt1.
8127         Other minor cleanups.
8128         ("3/4 Flat"): Add auxiliary points and modify path to replace
8129         `draw' with `fill'.
8130         ("Double Sharp"): Mirror path segments instead of picture elements
8131         to get a single outline.
8132         Modify path to replace `filldraw' with `fill'.
8134 2004-12-22  Graham Percival  <gperlist@shaw.ca>
8136         * input/test/unfold-all-repeats.ly: added file back.
8138         * Documentation/user/notation.itely,
8139         Documentation/user/programming-interface.itely
8140         Documentation/user/changing-defaults.itely: fixed misc broken
8141         links to input/test/ files.
8143 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8145         * tex/texinfo.tex: Update.  We should not be distributing this,
8146         but since we do, use latest version.
8148         * Documentation/user/macros.itexi: Comment-out \fetaflat,
8149         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
8150         macros for feta glyphs.
8152 2004-12-22  Graham Percival  <gperlist@shaw.ca>
8154         * Documentation/user/changing-defaults.itely: fix index for set.
8156         * Documentation/user/converters.itely: added convert-ly bugs list
8157         from CVS.
8159 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8161         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
8162         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
8163         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
8164         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
8166         * mf/GNUmakefile (pfa_warning): Use less broken check.
8168         * python/lilylib.py (setup_environment): Remove cruft from
8169         GS_FONTPATH.
8171         * configure.in: Bump mftrace requirement to 1.1.1.
8173 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8175         * scm/output-svg.scm (beam): Use polygon.
8177         * scm/lily-library.scm: Bugfix.
8179         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
8181         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
8183 2004-12-19  Werner Lemberg  <wl@gnu.org>
8185         Prepare glyph shapes for mf2pt1 conversion.
8187         * mf/feta-eindelijk: Some formatting.
8188         (multi_rest_x, multi_beam_height): Removed.  Unused.
8189         ("Quarter rest"): Use `intersectiontimes' to create a single
8190         outline.
8191         (rest_crook): Removed.  Unused.
8192         (draw_rest_bulb): Return path (wihtout filling).  Update callers.
8193         Simplified.
8194         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
8195         "128th rest"): Simplify `pat'.
8196         Create single outline.
8198 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8200         * mf/GNUmakefile (ALL_GEN_FILES):
8201         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
8203         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
8204         function.
8206 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8208         * scm/output-texstr.scm (placebox): add routine
8210         * VERSION (PACKAGE_NAME): release 2.5.4
8212         * scm/framework-texstr.scm (output-framework): new file.  
8214         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
8215         processing.
8217         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
8219         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
8220         rule.
8222         * configure.in (gui_b): bump mftrace requirement to 1.1.0
8224         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
8226         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
8228 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8230         * scm/framework-svg.scm (dump-page): Implement landscape.
8232 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8234         * lily/main.cc (setup_paths): Add svg to search path.
8236         * scm/output-svg.scm:
8237         * scm/framework-svg.scm: Add pageSet.  Update.
8238         (dump-fonts): New function.
8239         (output-framework): Use it.
8241         * mf/GNUmakefile: 
8242         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
8244 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8246         * tex/lilyponddefs.tex: comment out new ifpdf code.
8248 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8250         * GNUmakefile.in: 
8251         * SConstruct (symlink): Replace afm by otf.
8253         * scm/framework-gnome.scm (gnome-main): Remove invocation of
8254         ly:pango-add-afm-decoder.
8256         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
8258 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8260         * scm/output-ps.scm (new-text): don't access t glyph for getting
8261         space dimension.
8263         * ly/init.ly: warn about \version
8265         * lily/lexer.ll: set version-seen?
8267 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8269         * scm/output-svg.scm (string->entities): Update.
8271 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8273         * lily/main.cc (setup_paths): replace afm by otf for path. 
8275         * lily/pangofc-afm-decoder.cc: remove.
8277         * lily/include/pangofc-afm-decoder.hh: remove.
8279         * scm/framework-scm.scm (output-framework): new file.
8281         * mf/GNUmakefile: remove SAUTER_FONTS.
8282         remove SVG/sodipodi hacks.
8284         * scm/lily-library.scm (stderr): move stderr.
8286         * mf/GNUmakefile: remove AFM support.
8288         * buildscripts/mf-to-table.py (base): remove AFM support.
8290         * lily/open-type-font.cc (design_size): use design_size
8292 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
8294         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
8296 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8298         * mf/GNUmakefile: Generate combined aybabtu info.
8299         * mf/aybabtu.pe.in (i): Load it.
8301         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
8302         are not symbols.
8304         * lily/include/open-type-font.hh (count): New method.
8306         * mf/aybabtu.pe.in: Typo.
8308         * Documentation/user/out/lilypond-internals.nexi (Scheme
8309         functions): Typo.
8311         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
8313 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8315         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
8316         subfonts.
8318         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
8320         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
8321         (tex-font-command-raw): new function.
8323         * lily/include/virtual-font-metric.hh (Module): remove file
8325         * lily/virtual-font-metric.cc (Module): remove file.
8326         
8328         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
8329         (get_indexed_char): read bbox from lily table if present.
8331 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8333         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
8334         aybabtu.subfonts
8336         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
8337         global glyphname. Enables more than 64 glyphs in the OTF.
8339 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8341         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
8342         braces.
8344         * lily/open-type-font.cc (design_size): Use 12 as default for
8345         design size.
8347         * mf/aybabtu.pe.in: New file.  Merge all our braces.
8349         * mf/GNUmakefile: Generate aybabtu.
8351         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
8353 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8355         * scm/lily-library.scm (char->unicode-index): Remove.
8357         * scm/output-gnome.scm (text): Bugfix for plain string input.
8358         Updates.
8360         * scm/output-svg.scm (svg-font): Add weight to font selection.
8362 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8364         * Documentation/topdocs/INSTALL.texi (Top): Point to
8365         buildscripts/out/clean-fonts instead of
8366         buildscripts/clean-fonts.sh. 
8368 2004-12-13  Graham Percival  <gperlist@shaw.ca>
8370         * input/regression/figured-bass.ly: attempt to clarify text.
8372         * Documentation/user/notation.tely: add cindex for tag, attempt to
8373         add figured bass example.
8375         * Documentation/user/changing-defaults: basic editing.
8377 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8379         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
8381         * lily/open-type-font.cc (LY_DEFINE): new function
8382         ly:font-sub-fonts
8384         * lily/include/font-metric.hh (struct Font_metric): new method
8385         sub_fonts()
8387         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
8388         . with - in add.stem.
8389         
8390 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8392         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
8393         and fetaDynamic.
8395         * lily/rest.cc (glyph_name): Change - to . .
8397         * scm/output-gnome.scm (text): Hello world, again.
8399         * scm/output-svg.scm (named-glyph): New function.  Hello world!
8401         * lily/modified-font-metric.cc (index_to_charcode): New method.
8403         * lily/include/font-metric.hh (index_to_charcode): New function.
8405         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
8406         new function.
8407         (ly:font-glyph-to-index): Remove.
8409 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8411         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
8413         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
8415         * lily/open-type-font.cc (load_scheme_table): new function
8417         * lily/dots.cc (print): replace - 
8419         * lily/open-type-font.cc (attachment_point): new function.
8420         (load_table): read LILC table
8422         * buildscripts/gen-bigcheese-scripts.py (Module): new
8423         file. Generate FF scripts.
8425         * mf/feta-din10.mf: idem.
8427         * mf/feta-nummer10.mf: remove mf files.
8429         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
8431 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8433         * lily/lily-guile.cc: Use scm_from_locale_stringn.
8435         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
8436         compatibility.
8438 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8440         * lily/open-type-font.cc (get_indexed_char): scale metrics by
8441         design-size and units_per_EM.
8443         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
8445 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8447         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
8448         does not crash fontforge.
8450         * scm/lily-library.scm (char->unicode-index): Hack to map onto
8451         PUA.
8453 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8455         * scm/framework-ps.scm (ps-embed-cff): new function.
8457         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
8459 2004-12-12  Werner Lemberg  <wl@gnu.org>
8461         * mf/bigcheese.pe.in: Add PUA mapping.
8462         Don't create Type 42 but bare CFF font.
8464 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8466         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
8467         within canvas boundaries.
8469         * mf/merge.pe.in: Set font names, version, license GPL.
8471         * make/substitute.make: Add FONTFORGE.
8473         * config.make.in (FONTFORGE): Add.
8475         * configure.in (gui_b): Use PATH_PROG for fontforge.
8477 2004-12-11  Graham Percival  <gperlist@shaw.ca>
8479         * scm/define-markup-commands.scm: add baseline-skip to info
8480         about \column.
8482 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8484         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
8486         * scm/output-gnome.scm (named-glyph): Use it.
8488         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
8490         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
8491         (upper_string, lower_string, reverse_string): Remove.
8493         * configure.in (fontforge): Reinstate version check.
8495         * ly/engraver-init.ly: Fix clef glyph names.
8497         * lily/time-signature.cc (special_time_signature): Fix fraction
8498         glyph names.
8500 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8502         * mf/merge.pe: new file.
8504         * lily/freetype.cc: new file.
8506         * lily/include/open-type-font.hh (class Open_type_font): new file.
8508         * lily/include/freetype.hh: new file.
8510         * lily/open-type-font.cc: new file.
8512         * lily/all-font-metrics.cc (find_otf): new function.
8514 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8516         * lily/time-signature.cc (special_time_signature): Fix.
8518         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
8519         GTK2 before checking for pango.  Fixes -fgnome.
8521         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
8522         Scheme name.
8524         * scm/define-markup-commands.scm:
8525         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
8527         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
8529         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
8530         date versions.  Fixes configure.
8531         (STEPMAKE_CHECK_VERSION): Support optional actual program version
8532         argument.
8534 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8536         * buildscripts/mf-to-table.py (write_ps_encoding): write real
8537         names in .enc
8539         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
8541 2004-12-09  Graham Percival  <gperlist@shaw.ca>
8543         * Documentation/user/changing-defaults.itely: add info about
8544         make-dynamic-script
8546         * Documentation/user/notation.itely: add link in dynamics to
8547         section about make-dynamic-script.
8549 2004-12-09  Christian hitz  <chhitz@gmx.net>
8551         * lily/lily-guile.cc: change MACOS_X to __APPLE__
8553 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8555         * buildscripts/mf-to-table.py (parse_logfile): use . for
8556         concatting name and group.
8557         (parse_logfile): use M for Minus (negative.)
8559         * lily/include/type-swallow-translator.hh
8560         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
8562         * lily/*.cc: cosmetics around = sign.
8564         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
8565         lyric spacing on the penultimate column.
8567 2004-12-05  Christian Hitz  <chhitz@gmx.net>
8569         * configure.in:
8570         * lily/accidental-placement.cc:
8571         * lily/bar-line.cc:
8572         * lily/beam-concave.cc:
8573         * lily/beam-quanting.cc:
8574         * lily/beam.cc:
8575         * lily/bezier-bow.cc:
8576         * lily/bezier.cc:
8577         * lily/break-align-interface.cc:
8578         * lily/custos.cc:
8579         * lily/dimension-cache.cc:
8580         * lily/dot-column.cc:
8581         * lily/font-metric.cc:
8582         * lily/font-select.cc:
8583         * lily/gourlay-breaking.cc:
8584         * lily/grob-property.cc:
8585         * lily/grob.cc:
8586         * lily/lily-guile.cc:
8587         * lily/line-spanner.cc:
8588         * lily/lookup.cc:
8589         * lily/lyric-extender.cc:
8590         * lily/lyric-hyphen.cc:
8591         * lily/mensural-ligature.cc:
8592         * lily/midi-def.cc:
8593         * lily/misc.cc:
8594         * lily/note-collision.cc:
8595         * lily/note-column.cc:
8596         * lily/note-head.cc:
8597         * lily/paper-outputter.cc:
8598         * lily/percent-repeat-item.cc:
8599         * lily/rest-collision.cc:
8600         * lily/side-position-interface.cc:
8601         * lily/simple-spacer.cc:
8602         * lily/slur-configuration.cc:
8603         * lily/slur-scoring.cc:
8604         * lily/slur.cc:
8605         * lily/spaceable-grob.cc:
8606         * lily/spacing-spanner.cc:
8607         * lily/spanner.cc:
8608         * lily/staff-symbol-referencer.cc:
8609         * lily/stem.cc:
8610         * lily/stencil.cc:
8611         * lily/system-start-delimiter.cc:
8612         * lily/system.cc:
8613         * lily/text-item.cc:
8614         * lily/tie.cc:
8615         * lily/tuplet-bracket.cc:
8616         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
8617         <cmath> beacause isinf/isnan is undefined in <cmath>
8619 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8621         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
8623 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8625         * VERSION: release 2.5.3
8626         
8627 2004-11-29  Arno Waschk <arno@arnowaschk.de>
8629         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
8631 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8633         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
8635         * lily/note-head.cc (internal_print): always try the "s" head if
8636         u/d not found.
8638         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
8640 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8642         * mf/parmesan-heads.mf (overdone_heads): typos.
8644 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8646         * lily/parser.yy (markup): in markups, { .. } without command
8647         before are also flattened, ie \line must be explicitely used.
8649         * Documentation/user/changing-defaults.itely:
8650         * Documentation/user/notation.itely: 
8651         * input/wilhelmus.ly: 
8652         * input/regression/instrument-name-markup.ly: 
8653         * input/regression/markup-score.ly: 
8654         * input/regression/new-markup-scheme.ly: 
8655         * input/regression/new-markup-syntax.ly: 
8656         * input/test/coriolan-margin.ly: use \line in markups where
8657         appropriate
8658         
8659 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8661         * scm/new-markup.scm (map-markup-command-list): helper function
8662         used in parser.yy to map markup commands on a markup list.
8664         * lily/parser.yy: get rid off < > in markups by treating { } as
8665         real lists.
8667         * lily/lexer.ll: remove < > from markup lexer mode.
8669         * scripts/convert-ly.py (conv): add rule for converting 
8670         \markup < > to \markup { }
8672         * ly/titling-init.ly: 
8673         * input/test/coriolan-margin.ly: 
8674         * input/regression/new-markup-syntax.ly: 
8675         * input/regression/new-markup-scheme.ly: 
8676         * input/regression/multi-measure-rest-text.ly: 
8677         * input/regression/markup-stack.ly: 
8678         * input/regression/markup-score.ly: 
8679         * input/regression/instrument-name-markup.ly: 
8680         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
8681         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
8682         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
8683         * input/wilhelmus.ly: 
8684         * Documentation/user/notation.itely: 
8685         * Documentation/user/music-glossary.tely: 
8686         * Documentation/user/changing-defaults.itely: change < > to { } in
8687         markups
8689 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8691         * lily/accidental-placement.cc (position_accidentals): shortcut if
8692         no accidentals to place.
8694 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8696         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
8697         typo s/ly:dimension ?/ly:dimension?/
8699         * input/regression/lily-in-scheme.ly: 
8700         * input/regression/music-function.ly: 
8701         * ly/spanners-init.ly (assertBeamSlope): 
8702         * scm/music-functions.scm (def-grace-function): add the paper
8703         argument to music function definitions.
8705 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8707         * lily/moment.cc (LY_DEFINE):
8708         ly:moment-main-{denominator,numberator}, new function.
8710         * lily/score-engraver.cc (typeset_all): assign to column on basis
8711         of axis-group-parent-X setting.
8713         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
8714         add_element() on basis of axis-group-parent-Y setting.
8716         * lily/grob.cc: add axis-group-parent-{XY} properties.
8718         * input/regression/spacing-stick-out.ly: new file.
8720         * lily/simple-spacer.cc (add_columns): use binary search for
8721         setting column rods. Changes O(n^2) to O(n log(n)) for
8722         constructing spacing problem from columns.
8723         (add_columns): read allow-outside-line to make sure no texts stick
8724         out.
8725         (solve): Simple_spacer::is_active() only determines
8726         satisfies_constraints_ for non-ragged typesetting.
8728         * lily/simultaneous-music.cc (to_relative_octave): only set
8729         old_relative_used if return pitch actually changed.
8731         * scm/define-context-properties.scm
8732         (all-user-translation-properties): change to match implementation.
8734         * python/lilylib.py: Replace re.match by re.search and adds "-c
8735         showpage" to the gs command line (Johannes Schindelin)
8737         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
8738         before processing. Prevents crash when inf is in the extent.
8740         * scm/define-markup-commands.scm (note-by-number): add "s" to
8741         "noteheads-" glyphname.
8743         * lily/parser.yy (Generic_prefix_music): supply parser argument to
8744         music function as well.
8745         
8746 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8748         * VERSION: release 2.5.2
8750         * Documentation/user/changing-defaults.itely (Creating titles):
8751         add breakbefore variable.
8753         * lily/paper-book.cc (set_system_penalty): new function. Set
8754         penalty_ based on breakBefore setting
8756         * lily/context-specced-music-iterator.cc (construct_children):
8757         interpret special context id $uniqueContextId 
8759         * lily/context.cc (create_unique_context): new method. Move
8760         creation of unique (\new) contexts into interpreting phase. This
8761         makes
8763           foo= \new Staff ..
8764           << \foo \foo >>
8766         produce 2 staves.
8767         
8769         * scm/define-music-properties.scm (all-music-properties): add
8770         quoted-voice-direction
8772         * ly/music-functions-init.ly: killCues function.
8774         * scm/music-functions.scm (cue-substitute): move creation of voice
8775         contexts further to the back. 
8777 2004-11-25  Werner Lemberg  <wl@gnu.org>
8779         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
8780         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
8782 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
8784         * buildscripts/guile-gnome.sh: Fixed typo.
8786 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8788         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
8790         * scripts/abc2ly.py (dump_slyrics): add ord(). 
8792         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
8793         to regular engraver. 
8795 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8797         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
8799 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8801         * scm/define-markup-commands.scm (fill-line): Typo.
8803         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
8804         and newer.
8806 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
8808         * ly/dynamic-scripts-init.ly: Fixed typo.
8810 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8812         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
8813         note-head, to have different attachment points for up and down.
8815         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
8817         * mf/feta-generic.mf (else): remove solfa.
8819         * mf/feta-bolletjes.mf (tishape): remove unicode test.
8821         * scm/define-context-properties.scm
8822         (all-user-translation-properties): add shapeNoteStyles property.
8824         * lily/shape-note-heads-engraver.cc (process_music): new file.
8826         * lily/event.cc (transpose): call Event::transpose() for
8827         transposing the tonic.
8829 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8831         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
8832         Unicode/OpenType and AFM.
8834         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
8836 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8838         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
8840         * lily/context.cc (Context): unprotect key from ctor.
8842         * scm/stencil.scm (stack-lines): return empty-stencil if argument
8843         is '()
8844         (stack-stencils): idem.
8846         * Documentation/user/changing-defaults.itely (Creating titles):
8847         document new title layout options.
8849         * lily/parser.yy (lilypond_header_body): copy previous
8850         $globalheader if present.
8852         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
8853         ly:module-copy
8854         
8855         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
8857         * scm/titling.scm: remove old titling functions
8859         * lily/stencil.cc (translate): remove absolute dimension.
8861         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
8862         via markup.
8864         * scm/page-layout.scm (marked-up-headfoot): create header/footer
8865         field from user-supplied markup
8867         * scm/define-markup-commands.scm (on-the-fly): new markup
8868         command. Enter SCM markup procedure directly in Scheme.
8869         (fromproperty): new markup command. Read markup from props argument.
8871         * scm/titling.scm (marked-up-title): create title via
8872         user-specified markup. 
8874         * scm/define-markup-commands.scm (column): remove empty stencils
8875         from column.
8877         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
8878         not have side-effect of creating variable stub.
8880         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
8882 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8884         * scm/encoding.scm (coding-alist): 
8885         * scm/font.scm (add-ec-fonts):
8886         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
8887         Extended-TeX-Font-Encoding---Latin.
8889         * lily/side-position-interface.cc (general_side_position): Add
8890         actual offset to error message (avoid constant error messages).
8892         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
8893         block.
8895         * lily/font-select.cc (select_encoded_font)
8896         (get_font_by_mag_step, get_font_by_design_size): 
8897         * lily/modified-font-metric.cc (Modified_font_metric): 
8898         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
8900         * scm/encoding.scm (coding-alist): Add fetaDynamic.
8901         (read-encoding-file): Bugfix: do not require space after bracket.
8903         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
8904         these do not exist.
8906 2004-11-20  Graham Percival  <gperlist@shaw.ca>
8908         * Documentation/user/notation.itely: added info about typesetting
8909         boxed bar numbers.
8911 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8913         * flower/interval.cc (T_to_string): gcc4 fixes.
8915         * scm/define-markup-commands.scm (fill-line): use
8916         stack-stencils. This fixes problems with putting already centered
8917         stencils in a line.
8919         * VERSION: release 2.5.1
8921         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
8923 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8925         * input/example-[1-3].ly: simplify.
8927         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
8929         * scm/output-ps.scm (new-text): new function. Use glyphshow to
8930         show glyphs.
8932         * scm/encoding.scm (decode-byte-string): new function.
8934         * scripts/convert-ly.py (conv): add warning about
8935         set-global-staff-size.
8937         * Doxyfile: add. 
8939         * scripts/convert-ly.py (conv): add raggedlastbottom rule
8940         (conv): warn for TextSpanner split.
8941         (conv): warn for textheight.
8943 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8945         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
8946         building the documentation, info with images are installed.
8947         (final-install): Fix description.  Mention sourcing of login
8948         scripts (instead of running).
8950 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8952         * Debian lmodern support.  Note that LilyPond will issue warnings
8953         
8954             no such encoding: "FontSpecific"
8956           The font selection mechanism wants to get the encoding from the
8957           font itself, but the idea of lmodern is that it is usable with
8958           different encodings, ie, Lily should get the encoding from the
8959           font tree, rather than the font itself.  This would require some
8960           more work.
8961         
8962         * configure.in: Test for and accept lmodern if EC fonts not found.
8964         * scm/framework-tex.scm (font-load-command): TeX font name
8965         mangling for latin1 encoded cork-lm fonts.
8966         (convert-to-ps): Load lm.map if available.
8968         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
8969         available.
8971         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
8973         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
8974         available.
8976         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
8977         path for absolute file name, that is silly.
8979         * lily/score-engraver.cc (initialize): 
8981         * Documentation/user/GNUmakefile (local-install-info): Invoke
8982         install-info --remove first.
8984         * #include cleanup (Andreas Scherer).
8986 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
8988         * input/test/script-abbreviations.ly: fix typos.
8990 2004-11-17  Werner Lemberg  <wl@gnu.org>
8992         * python/lilylib.py (options_help_str): Support pretty-printing of
8993         newlines in fourth element of option description.
8995         * scripts/lilypond-book.py (option_definitions): Use new lilylib
8996         feature.
8997         Sort options.
8999         * Documentation/user/lilypond-book.itely: Finish update.
9001 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9003         * Documentation/user/macros.itexi: Add comment about \command.
9005         * Documentation/user/lilypond.tely:
9006         * Documentation/user/lilypond-book.itely: Fix names of lilypond
9007         and lilypond-book nodes, so that `info lilypond' visits the manual
9008         at top level, and `info lilypond-book' visits the lilypond-book
9009         section.
9011         * Documentation/user/GNUmakefile (local-install-info): Fix rules
9012         and packager messages.
9014         * lily/pangofc-afm-decoder.cc: Update test.
9016 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9018         * scm/lily-library.scm (char->unicode-index): New function.
9020         * scm/output-gnome.scm: 
9021         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
9023         * Proper naming of file name throughout; s/filename/file[-_]name/.
9025         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
9027         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
9029 2004-11-16  Werner Lemberg  <wl@gnu.org>
9031         * scripts/lilypond-book.py: The Lord has commanded me to use only
9032         tabs for indentation.  Your humble servant obeys.
9034 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9036         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
9037         including font, if LilyPond-feta font is only feta font in path.
9039         * scm/output-gnome.scm (text): Revert to file name of font if font
9040         has no name.  Fixes ec font selection.
9041         (char): Bugfix: do not utf8 twice.  Fixes clefs.
9043         * scm/framework-svg.scm:
9044         * scm/output-svg.scm: New file.  TODO: figure out how to
9045         do character by index in font.
9047         * scm/output-sodipodi.scm: Remove.
9049         * scm/output-ps.scm (stem): Remove.
9051 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
9053         * scm/output-gnome.scm (beam): New function.
9054         (slur): Round corners.
9055         (round-filled-box): Round corners.
9057 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9059         * scm/output-gnome.scm (beam): add function.
9060         (draw-line): new routine.
9061         (dashed-line): stub; call draw-line
9062         (polygon): new routine.
9064 2004-11-15  Werner Lemberg  <wl@gnu.org>
9066         * Documentation/user/lilypond-book.itely: Revise section on
9067         lilypond-book options.
9068         Other minor fixes.
9070         * scripts/lilypond-book.py: Change indentation to 4.
9071         Minor formatting.
9073 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9075         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
9076         grobs that have tweaks specced.
9077         
9078 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
9080         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
9082 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9084         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
9085         actual char #, not 0 based index.
9087         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
9089         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
9090         Warning: do make -C mf clean.
9092         * lily/context-property.cc: Compile fix.
9094         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
9095         Grok ec-fonts, braces and dynamics.
9097         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
9099 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9101         * lily/include/tweak-registration.hh: new file.
9103         * lily/tweak-registration.cc: new file.
9105         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
9106         saving tweaks.
9108         * scm/output-gnome.scm (text): comment dribble.
9110 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9112         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
9114         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
9115         path-def before using.  Fixes muchtomany slurs in wrong places
9116         bug.
9118 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9120         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
9122         * lily/include/object-key-undumper.hh (Module): new file.
9124         * lily/object-key-undumper.cc (Module): New file. Deserialize
9125         keys. SCM bindings
9127         * lily/object-key-dumper.cc (Object_key_dumper): idem.
9128         Provide SCM bindings.
9130         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
9131         new file. Serialize object keys.
9132         
9133         * lily/object-key.cc (dump): new function.
9134         (as_scheme): new virtual function
9135         (undump): new function
9136         (undumpers): new table.
9138         * lily/include/global-context.hh (Context): take \score key upon init.
9140         * lily/object-key-dumper.cc (serialize_key): new file.
9142         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
9144         * lily/lily-lexer.cc: remove \quote.
9146         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
9148         * lily/context.cc (Context): take key argument in ctor.
9149         (create_context): new function
9151         * lily/grob.cc (Grob): take key argument in ctor.  
9153         * lily/lilypond-key.cc (do_compare): new file.
9155         * lily/object-key.cc (Object_key): new file.
9157         * lily/include/object-key.hh (class Object_key): new file.
9159         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
9161 2004-11-13  Graham Percival  <gperlist@shaw.ca>
9163         * Documentation/user/lilypond-book.itely: add small warning about
9164         noindent default in lilypond-book.
9166         * Documentation/user/converters.itely: add examples for convert-ly.
9168         * Documentation/user/examples.itely: change version string in templates
9169         to 2.4.0.
9171 2004-11-12  Karl Hammar  <karl@aspodata.se>
9173         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
9174         cmdline, use xargs instead (backportme)
9176 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
9177         
9178         * Documentation/user/: Numerous fixes in the user manual.
9180 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9182         * lily/parser.yy (re_rhythmed_music): search music expression for
9183         context-id, surround by \new Voice if not found. Fixes:
9184         addlyrics-second-staff.ly
9186         * VERSION: 2.5.0 released.
9187         
9188 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9190         * Documentation/index.html.in: Fix url to one big page.  (backportme)
9192         * Documentation/user/GNUmakefile: Separate rules for split and
9193         unsplit html documents.  Remove perl massaging.  (backportme)
9195 2004-11-11  Graham Percival  <gperlist@shaw.ca>
9197         * Documentation/user/lilypond-book.itely: add short warning about
9198         \lilypond{} in LaTeX docs.
9200 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9202         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
9203         found.  (backportme)
9205         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
9206         version requirement.  (backportme)
9208         * configure.in: Be explicit about old versions of
9209         ec-fonts-mtraced.  (backportme)
9211         * lily/context-selector.cc (set_tweaks): New function.
9212         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
9213         web with -DTWEAK.
9215         * Documentation/user/introduction.itely (Automated engraving):
9216         Remove fragment option.  Fixes web.
9218         * lily/context-property.cc (make_item_from_properties):
9219         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
9220         #ifdef.
9222         * scm/define-context-properties.scm
9223         (all-internal-translation-properties): Add tweakRank and tweakCount.
9225         * lily/grob.cc: 
9226         * scm/define-grob-properties.scm (all-internal-grob-properties):
9227         Add tweak-rank and tweak-count.
9229 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9231         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
9232         New function.
9233         (text): Use them.
9235         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
9236         animated/opaque grob dragging tweaks.
9238         * buildscripts/guile-gnome.sh: Update.
9240 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9242         * scm/define-grobs.scm (all-grob-descriptions): Added
9243         line-interface to the LigatureBracket object.
9245 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9247         * scm/framework-gnome.scm (item-event): Support non-animated mouse
9248         dragging tweaks.
9250         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
9252         * lily/context-selector.cc (store_context): New function.
9254         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
9255         (store_grob): New function.
9256         (identify_grob): Add Moment parameter.
9258         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
9259         exists.
9261         * scm/framework-gnome.scm (save-tweaks): Write as alist.
9263 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9265         * scm/framework-gnome.scm (item-event): Print grob id.
9266         (save-tweaks): New function.
9267         (tweak): New funtion.
9268         (item-event): Use it, bound to arrow keys.
9270         * lily/context-property.cc (make_item_from_properties): Register grob.
9271         * lily/context.cc (add_context): Register context.
9273         * lily/include/context-selector.hh:
9274         * lily/include/grob-selector.hh:
9275         * lily/context-selector.cc:
9276         * lily/grob-selector.cc: New file.
9278 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9280         * lily/slur.cc: add 'positions to interface
9282         * lily/main.cc: reinstate PS as standard output format. 
9284         * scm/framework-tex.scm (output-preview-framework): print systems
9285         up to first non title system.
9287         * lily/grace-engraver.cc (start_translation_timestep): split
9288         scm_cadddr
9289         
9290 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9292         * lily/quote-iterator.cc (Module): remove old quote-iterator
9294         * scm/define-music-types.scm (music-descriptions): move
9295         NewQuoteMusic over QuoteMusic
9297         * Documentation/user/notation.itely (Formatting cue notes): use
9298         \cueDuring.
9300         * lily/new-quote-iterator.cc (quote_ok): new function.
9302         * input/regression/quote-cue-during.ly: new file.
9304         * input/regression/quote-grace.ly: new file.
9306         * scm/define-context-properties.scm (Module): change definition of
9307         graceSettings
9309         * lily/context-property.cc (Module): rename from
9310         translator-property.cc
9312         * lily/context.cc (context_name_symbol): new function
9314         * lily/grace-engraver.cc: new file. Set properties for grobs based
9315         on the grace-ness of now_moment().
9317         * scm/music-functions.scm (add-grace-property): use list
9318         iso. vector for graceSettings
9319         remove set-{start,stop}-grace-properties. 
9321         * lily/new-quote-iterator.cc (construct_children): set
9322         quote_outlet_ if no quoted-context-{id,type} specified.
9324         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
9326         * lily/parser.yy (command_element): remove \quote.
9328         * ly/music-functions-init.ly (location): add quoteDuring music
9329         function. 
9331         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
9332         optional semicolon. (backportme)
9334 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9336         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
9337         need to link to GUILE et al.
9339 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9341         * scm/define-music-properties.scm (all-music-properties): add
9342         quoted-context-type, quoted-context-id.
9344         * scm/lily.scm (type-check-list): new function.
9345         
9346         * scm/lily-library.scm: new file. Generic library routines.
9348         * lily/parser.yy (Generic_prefix_music): move typechecking out of
9349         parser.
9351         * ly/music-functions-init.ly: add quoteDuring function.
9353         * lily/include/music-iterator.hh (class Music_iterator): rename
9354         set_translator -> set_context
9356         * lily/parser.yy (Generic_prefix_music_scm): add
9357         MUSIC_FUNCTION_SCM_SCM_MUSIC
9359         * scm/lily.scm (sanitize-command-option): new function. (backportme)
9361         * scm/framework-tex.scm (header): sanitize TeX paper size.
9362         (backportme)
9364 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9366         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
9368         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
9370         * scm/framework-tex.scm (font-load-command): Use T1 if no
9371         font-encoding set.  (backportme)
9373         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
9374         exists before converting.  (backportme)
9376         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
9377         exists before converting.  (backportme)
9378         (convert-to-ps): Remove .ps file if it exists before
9379         converting.  (backportme)
9381         * lily/lexer.ll: Remove extra progress newline, use present tense.
9383         * scm/paper.scm (paper-alist): public.
9384         * scm/framework-tex.scm (convert-to-ps):
9385         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
9386         command line.
9388 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9390         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
9392         * lily/recording-group-engraver.cc (derived_mark): mark
9393         now_events_. (backportme)
9395 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9397         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
9399         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
9400         invoking latex. (backportme.)
9402         * lily/stem.cc (off_callback): center stems for all rest stems.
9404 2004-11-05  Werner Lemberg  <wl@gnu.org>
9406         * Documentation/user/lilypond.tely: Add more guidelines for writing
9407         lilypond texinfo documents.
9409 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
9411         * Documentation/index.html.in: remove <hr>.
9413         * THANKS: change 2.3 to 2.4.
9415 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
9417         * scm/output-gnome.scm: More fontconfig comment.
9419 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
9421         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
9422         <package> directory in $(builddir)/share according with
9423         PACKAGE_NAME defined in the VERSION file.
9425 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9427         * lily/beam.cc (rest_collision_callback): use local beam
9428         multiplicity.
9430         * input/regression/stem-stemlet.ly: new file.
9432         * lily/stem.cc (add_head): store rests as well.
9434         * scm/define-grob-properties.scm (all-user-grob-properties): add
9435         stemlet-length
9437         * lily/stem.cc: store rests as well.
9438         
9439         * input/regression/new-slur.ly: mention forcing.
9441 2004-11-04  Werner Lemberg  <wl@gnu.org>
9443         * Documentation/user/*: A new round of layout fixes and document
9444         structure cleanup.
9446 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
9448         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
9450 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9452         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
9454 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9456         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
9458         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
9460         * lily/main.cc (main): Invoke identify.
9462         * scm/lily.scm (postscript->pdf): Remove progress newline.
9463         Write progress to stderr.
9465         * lily/paper-book.cc (output): Remove progress newline.
9467         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
9468         gettext on user messages, and remove whitespace.
9470         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
9472         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
9473         argv[0] (Thomas Scharkowski).
9475         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
9476         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
9477         for ec-fonts-mtraced.
9479         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
9480         --srcdir build (Bertalan).
9482         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
9483         headers and library too (Laura Conrad).
9485         * Documentation/topdocs/INSTALL.texi (Top): Mention development
9486         package for guile too (Laura Conrad).
9488         * lily/main.cc (usage): Typo.
9490 2004-11-02  Werner Lemberg  <wl@gnu.org>
9492         * Documentation/user/notation.ly: More fixes to improve appearance.
9494         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
9495         better output for multicolumn tables.
9497 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9499         * lily/main.cc (dir_info): Fixed typo in the printouts.
9501 2004-11-01  Werner Lemberg  <wl@gnu.org>
9503         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
9504         of output.
9505         Set `per_line' to 2; replace hard-coded value with it.
9507         * Documentation/user/*: Many fixes to improve appearance of
9508         printed manual.
9510 2004-11-01  Werner Lemberg  <wl@gnu.org>
9512         * Documentation/user/changing-defaults.itely,
9513         Documentation/user/notation.ly,
9514         Documentation/user/programming-interface.itely: Use @/.
9515         Fix formatting of some lilypond snippets and tables.
9517         * scripts/lilypond-book.py (compose_ly): Provide useful default
9518         for LINEWIDTH in `override'.
9520 2004-10-31  Graham Percival  <gperlist@shaw.ca>
9522         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
9524 2004-10-31  Werner Lemberg  <wl@gnu.org>
9526         Resetting @exampleindent to `5' gives ugly results with texinfo's
9527         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
9528         (if not quoting) to change @exampleindent only locally.
9530         * scripts/lilypond-book.py (NOQUOTE): New variable.
9531         (output) [LATEX]: Remove AFTER and BEFORE.
9532         [TEXINFO]: Remove AFTER and BEFORE.
9533         Fix QUOTE and VERBATIM pattern.
9534         Add NOQUOTE pattern.
9535         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
9536         and BEFORE.
9537         [output_texinfo]: Use NOQUOTE.
9539 2004-10-31  Graham Percival  <gperlist@shaw.ca>
9541         * Documentation/user/changing-defaults.itely: clarify paper
9542         size commands with correct info.
9544         * Documentation/user/lilypond-book.itely: add more docs for
9545         filename extensions.
9547 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9549         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
9550         (PATCH_LEVEL): start 2.5.0.
9552 2004-10-30  Graham Percival  <gperlist@shaw.ca>
9554         * Documentation/user/notation.itely: add warning about bar numbers
9555         in multistaff music, add warning about quoting grace notes.
9557         * Documentation/user/changing-defaults.itely: clarify paper size commands,
9558         add missing subsubtitle entry to Creating titles.
9560         * Documentation/user/tutorial.itely: change 3.0 references to 2.4.
9562 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9564         * scripts/convert-ly.py (conv): fixed \context Foo = mixedCaps
9565         case.
9566         (conv): add dummy 2.4.0 conversion rule.
9568         * Documentation/user/lilypond.tely: add @finalout.
9570         * lily/slur-scoring.cc (enumerate_attachments): use stem_extent_
9571         for attaching, fixes slur/stem left attachment of
9572         downslur/downstem.
9574         * lily/quote-iterator.cc (process): use <= for comparisons. Fixes
9575         quote problem if for last note of quoted sequence. 
9577         * input/regression/part-combine-text.ly (comm): add expect strings.
9579 2004-10-30  Werner Lemberg  <wl@gnu.org>
9581         * Documentation/user/examples.itely: Improved layout.
9583         * Documentation/invoking.itely: Use `@/' to insert breakpoints.
9585         * Documentation/macros.itexi (@inputfileref) [@tex]: Use `@/'.
9587         * Documentation/notation.itely: Use `@/'.
9588         Other layout fixes.
9590 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9592         * lily/part-combine-iterator.cc (unisono): examine last_playing_
9593         (not state_), this fixes a2 printing after chord.
9595         * input/regression/no-staff.ly: fix octave, revise syntax.
9597         * input/regression/lyrics-bar.ly (texidoc): fixes.
9599         * input/regression/beam-dir-functions.ly (Module): remove from regtest
9601         * input/regression/accidentals.ly (Module): remove from regtest.
9603         * lily/parser.yy (Prefix_composite_music): 
9604         oops. Chords should be unrelativable, not bass figures untransposable.
9606         * VERSION: 2.3.26 released.
9607         
9608         * lily/completion-note-heads-engraver.cc (try_music): only return
9609         something when is_first_ is true. Fixes lyrics with completion_heads. 
9611         * make/lilypond-vars.make: add scripts/out/ to PATH, to find ps2png. 
9613         * scm/lily.scm (ly:system): new function. Catches uninstalled
9614         ps2png.
9616 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9618         * Documentation/user/notation.itely: remove
9619         @hyphenatedinternalsref.
9621 2004-10-29  Werner Lemberg  <wl@gnu.org>
9623         * scm/framework-tex.scm (dump-line): Fix dimensions for \lybox.
9625         * scripts/lilypond-book.py (no_options): New dictionary.
9626         (simple_options): New list.
9627         (ly_options): Remove NOINDENT and EXAMPLEINDENT patterns.
9628         (compose_ly): Use `no_options' and `simple_options'.
9629         Fix logic of option handling.
9630         Handle `linewidth' option without parameter.
9632 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9634         * lily/lookup.cc (triangle): use (0, interval.length()) for X
9635         extent, since the stencil is translated later on.
9637         * lily/ledger-line-spanner.cc (print): swap linear_combination
9638         arguments, effectively shortens ledger line. 
9640         * Documentation/user/GNUmakefile
9641         ($(outdir)/lilypond/lilypond.html): use find to remove files.
9643         * lily/main.cc: --no-pages option.
9645 2004-10-28  Carl Sorensen  <carldsorensen@comcast.net>
9647         * Documentation/user/notation.itely (Fret diagrams): add extra
9648         notes to example to avoid collisions between fret diagrams.
9650 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9652         * Documentation/user/notation.itely (Automatic note splitting):
9653         note about lyrics. 
9655         * Documentation/user/converters.itely (Invoking convert-ly): note
9656         about version numbers. 
9658         * scripts/abc2ly.py (dump_score): revise lyric dumping
9660         * scripts/mup2ly.py (pre_processor_commands): always open file.
9662         * scripts/etf2ly.py (Frame.calculate): always close \grace.
9663         (Etf_file.dump): add \version
9665         * VERSION: 2.3.25 released.
9667         * lily/scm-option.cc: add 'resolution to ly:get-option argument
9668         list.
9670 2004-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9672         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-origin
9674 2004-10-28  Werner Lemberg  <wl@gnu.org>
9676         * Documentation/user/music-glossary.tely: More fixes to improve
9677         appearance with DVI output.
9679         * scripts/lilypond-book.py (compose_ly): Use 0.4in for
9680         EXAMPLEINDENT.  This is the maximum value for quotation environments
9681         used in `texinfo.tex' -- many warnings in lilypond.dvi are now gone.
9683 2004-10-27  Werner Lemberg  <wl@gnu.org>
9685         * Documentation/user/music-glossary.tely: Revised.
9687 2004-10-26  Carl Sorensen  <carldsorensen@comcast.net>
9689         * input/test/fret-diagram.ly: insert breaks, remove raggedright to
9690         improve fret diagram spacing in printed output.
9692         * Documentation/user/notation.itely (Fret diagrams): Remove raggedright
9693         from options for the example so fret-diagrams won't overlap
9694         one another.
9696 2004-10-26  Werner Lemberg  <wl@gnu.org>
9698         * scripts/lilypond-book.py: Some additional formatting for
9699         orthogonality.
9700         (ly_options) [*]: Format strings.
9701         [RAGGEDRIGHT]: Don't set `indent'.  This is now properly handled
9702         by `compose_ly'.
9703         (output) [LATEX][OUTPUT]: Format string and simplify.
9704         (PREAMBLE_LY, FRAGMENT_LY): Format string.
9705         (classic_lilypond_book_compatibility): Take key/value pair as
9706         parameter.
9707         Return key/value pair.
9708         (compose_ly): Rewritten, taking the snippet type as third parameter. 
9709         The default values are now set more sensible, and a `linewidth'
9710         option is no longer overwritten under some circumstances.
9712         * Documentation/user/music-glossary.tely: Replace all accented
9713         character macros with latin-1 codes.
9715 2004-10-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9717         * lily/music-function.cc (ly_make_music_function): when an
9718         argument predicate is markup?, the signature keyword becomes
9719         "markup" iso "scm".
9721         * lily/lexer.ll (music_function_type): new MUSIC_FUNCTION_*MARKUP*
9722         tokens, for functions which signatures contain "markup".
9724         * lily/parser.yy (Generic_prefix_music_scm): add treatment for new
9725         MUSIC_FUNCTION_*MARKUP* tokens.
9727 2004-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9729         * input/regression/lyrics-bar.ly: Make StaffGroup accept the new
9730         Lyrics context.
9732 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9734         * python/lilylib.py (make_ps_images): return list of output files.
9736         * lily/simple-spacer.cc (LY_DEFINE): for ragged, we can end with
9737         all springs tight, and still satisfy the constraints.
9739 2004-10-25  Werner Lemberg  <wl@gnu.org>
9741         * scripts/lilypond-book.py: s/option-sep/option_sep/.
9742         (format_res) [LATEX, TEXINFO]: Skip whitespace before comma also.
9743         (snippet_res): Fix regexps and make them ignore whitespace properly.
9744         (compose_ly): Use `re.split' instead of `string.split' to remove
9745         surrounding whitespace.
9746         Some formatting to get more consistency.
9748 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9750         * VERSION: 2.3.24
9751         
9752         * scm/define-context-properties.scm
9753         (all-user-translation-properties): add verticallySpacedContexts.
9755         * scm/define-grob-interfaces.scm (vertically-spaceable-interface):
9756         add interface
9758         * scm/define-grob-properties.scm (all-internal-grob-properties):
9759         add spaceable-staves
9761         * scm/define-grobs.scm (all-grob-descriptions): set
9762         vertically-spaceable-interface for VerticalAxisGroup and
9763         RemoveEmptyVerticalGroup
9765         * lily/system.cc (get_line): determine staff_refpoints_
9766         using spaceable-staves.
9768         * lily/score-engraver.cc (acknowledge_grob): ack
9769         vertically-spaceable-interface and verticallySpacedContexts to
9770         set spaceable-staves.
9772         * input/regression/new-slur.ly: add slur under 16th subbeam case.
9774         * lily/slur-scoring.cc (fill): init has_same_beam_ before use.
9776 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9778         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): tune
9779         minimumVerticalExtent tweaks. 
9781         * mf/feta-schrift.mf: include size of thumb appendix in
9782         bbox. Fixes: c-thumb-notehead.ly  
9784         * THANKS: add Meisters to the Development team.
9786         * scm/framework-tex.scm (convert-to-dvi): redirect output to
9787         /dev/null for non-verbose.
9789         * Documentation/user/invoking.itely (Invoking lilypond): add note
9790         about resource usage.
9792         * tex/GNUmakefile (TEX_FILES): add texinfo.cnf
9794         * stepmake/stepmake/texinfo-vars.make (MAKEINFO): add
9795         --enable-encoding
9797         * Documentation/user/lilypond.tely: add -*- coding: latin-1 -*- everywhere. 
9799         * Documentation/user/changing-defaults.itely (Text encoding):
9800         change to latin1.
9802         * Documentation/user/lilypond.tely: add language and encoding.
9804         * scm/define-grobs.scm (all-grob-descriptions): add
9805         line-interface.
9807         * configure.in (PKG_CONFIG_PATH): bump makeinfo version to 4.7
9809         * input/test/ossia.ly: font sizes for ossia.
9811         * scripts/convert-ly.py (conv): \context Foo = NOTENAME
9812         -> \context Foo = "NOTENAME".
9814         * lily/main.cc (determine_output_options): fix ordering.
9816 2004-10-24  Erik Sandberg  <ersa9195@student.uu.se>
9818         * THANKS: Added bughunters for 2.3.
9820 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9822         * Documentation/user/macros.itexi: use findex functions/internals
9823         objects.
9825         * scm/documentation-generate.scm (string-append): add syncodeindex
9827         * Documentation/user/tutorial.itely (A lead sheet): use \chords
9828         for tutoring chord names.
9830         * Documentation/user/lilypond.tely: remove @authors.
9832 2004-10-23  Werner Lemberg  <wl@gnu.org>
9834         * scm/framework-tex.scm (dump-page): Add width to \lybox call.
9835         Remove first two parameters of \lybox.
9836         Don't emit \vbox around \lybox.
9837         (dump-line): Add width to \lybox call.
9838         Remove first two parameters of \lybox.
9840         * tex/lilyponddefs.tex (\topalign, \leftalign): Removed.
9841         (\lyitem): Updated.
9842         (\lybox): Only take three parameters.
9843         Create box which has zero depth, only height.
9844         Center box vertically along the x-height of current font.
9846 2004-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9848         * VERSION (PACKAGE_NAME): release 2.3.23
9850         * scm/framework-tex.scm (convert-to-ps): add -E if filename
9851         contains .preview.
9853 2004-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9855         * lily/lyric-extender.cc (print): only run to right-bound if
9856         broken. This fixes input/regression/lyric-extender.ly
9858         * input/regression/beamed-chord.ly: removed.
9860         * Documentation/user/macros.itexi: add \global to definitions for
9861         feta macros.
9863         * po/fr.po: updated po file.
9865         * po/de.po: updated po file.
9867 2004-10-22  Werner Lemberg  <wl@gnu.org>
9869         * tex/lilyponddefs.tex (\lilypondend): Undo change from 2004-10-20.
9871 2004-10-21  Werner Lemberg  <wl@gnu.org>
9873         * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex
9874         (\lilypondexperimentalfeatures): Removed.
9876 2004-10-20  Jürgen Reuter  <reuter@ipd.uka.de>
9878         * Documentation/user/notation.itely: fixed 2 typos
9880 2004-10-20  Werner Lemberg  <wl@gnu.org>
9882         * scm/framework-tex.scm (header-end): Don't set \outputscale.
9883         (dump-line): Produce prettier output.
9885         * tex/lilyponddefs.tex: Comment all macros extensively.
9886         (\lilypondstart): Set \outputscale.
9887         Define \lilypondpagebreak and \lilypondnopagebreak here.
9888         Don't test for positive \lilypondpaperlinewidth -- this is always
9889         positive in the normal case (LilyPond produces bad output otherwise
9890         so we can safely ignore negative or zero values).
9891         (\lilypondend): Remove useless test for \lilypondbook.
9892         (\fetasixteen, \fetafont, \fetachar): Removed, unused.  We also
9893         don't input `feta20.tex'.
9895 2004-10-19  Graham Percival  <gperlist@shaw.ca>
9897         * Documentation/user/examples.itely: added texidoc lilypond-book
9898         template.
9900 2004-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9902         * cygwin/lilypond.hint: Update.
9904 2004-10-18  Carl Sorensen  <carldsorensen@comcast.net>
9906         * Documentation/user/notation.itely (Fret diagrams): Add documentation
9907         for fret diagram markups to user manual
9909         * scm/fret-diagrams.scm (fret-diagram-terse): Fix mistake in internal
9910         documentation for fret-diagram-terse
9912         * Documentation/user/notation.itely: Added section on fret diagrams.
9914 2004-10-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9916         * scripts/convert-ly.py (usage): Fix --help description.  Apply
9917         range also for --show-rules.
9919 2004-10-18  Werner Lemberg  <wl@gnu.org>
9921         * scripts/lilypond-book.py (Snippet, Include_snippet)
9922         [replacement_text]: Use group `match'.
9924 2004-10-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9926         * Documentation/user/macros.itexi: Use @ref instead of @inforef
9927         for html.  Apparently, ``you should'' in texinfo documentation is
9928         merely a guideline that can safely be ignored.
9930         * elisp/lilypond-init.el (auto-mode-alist): Add .ily to
9931         auto-mode-alist.
9933         * input/test/engraver-example.ily: 
9934         * input/regression/allfontstyle.ily: Rename, update users.
9936 2004-10-16  Graham Percival  <gperlist@shaw.ca>
9938         * Documentation/user/lilypond-book.itely: add more details about
9939         building .lytex files.
9941         * Documentation/user/examples.itely: added piano-lyrics template
9943         * input/template/piano-4-voices.ly, piano-lyrics.ly: remove.
9945         * input/GNUmakefile: remove "templates" from build subdirs.
9947         * input/template: removed.
9949 2004-10-16  Werner Lemberg  <wl@gnu.org>
9951         * scripts/lilypond-book.py (snippet_res): Define group `match'
9952         everywhere.
9953         Accept more spaces between commands and its arguments and options.
9954         Fix some regexps.
9955         (output): Remove some newlines in string values and suppress spaces
9956         in output.
9957         (output_texinfo): Output `output_print_filename' only if not empty.
9958         (Lilypond_snippet)[find_toplevel_snippets]: Use group `match'.
9960 2004-10-16  Werner Lemberg  <wl@gnu.org>
9962         * scm/framework-tex.scm (font-load-command, define-fonts): Protect
9963         some TeX line ends with `%' to avoid additional horizontal space in
9964         output.
9966         * scripts/lilypond-book.py: Unexpand spaces to tabs.
9967         (snippet_res): Use `x' modifier to represent regular expressions
9968         in a friendlier way.
9969         Fix `lilypond_block' for LaTeX to accept `%\end{lilypond}'.
9970         (find_toplevel_snippets): Don't use indices from match group 0,
9971         which is the whole pattern space, but group 1.
9973 2004-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9975         * flower/include/direction.hh (enum Direction): add
9976         DIRECTION_LIMIT
9978 2004-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9980         * po/fr.po: new po file.
9982 2004-10-15  Jan Nieuwenhuizen  <janneke@gnu.org>
9984         * Documentation/user/macros.itexi: Do not construct external
9985         references using @uref.  That results in broken links.
9987         * lily/slur.cc (outside_slur_callback): Use int in for loop;
9988         avoids g++-3.4.1 enum beature.
9990 2004-10-13  Graham Percival  <gperlist@shaw.ca>
9992         * Documentation/user/examples.itely: added lilypond-book template.
9994         * Documentation/user/lilypond-book.itely: added filename extension
9995         page.
9997 2004-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9999         * debian/rules (binary-indep): Link images for info.
10001         * elisp/lilypond-mode.el (LilyPond-command): Set XEDITOR.  Cool
10002         feature nicked from jEdit.
10004 2004-10-12  Pedro Kroger  <kroeger@pedrokroeger.net>
10006         * Documentation/user/introduction.itely: Minor corrections.
10008         * Documentation/user/notation.itely: Minor corrections.
10010         * Documentation/user/tutorial.itely: Minor corrections.
10012 2004-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10014         * scm/framework-ps.scm (page-header): Fix Layout renaming bug.
10016         * scm/*.scm:
10017         * ly/paper-defaults.ly: Use papersizename only.
10019 2004-10-11  Werner Lemberg  <wl@gnu.org>
10021         * tex/lilyponddefs.tex (\lyitem): Don't use \topalign to make
10022         \raise work with positive values.
10024 2004-10-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10026         * Documentation/user/notation.itely (Multi measure rests): Update
10027         the docs corresponding to the implementation change from 2004-10-08.
10029 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10031         * VERSION (MY_PATCH_LEVEL): release 2.3.22
10033         * scm/part-combiner.scm (determine-split-list): reinstate
10034         playing+resting case. 
10036         * Documentation/user/invoking.itely (Reporting bugs): rename.
10038         * lily/lexer.ll (Lily_lexer): bump version req to 2.3.22.
10040         * lily/parser.yy (Prefix_composite_music): change no-transposition
10041         for mode_changing_head to figures too.
10043         * lily/phrasing-slur-engraver.cc (acknowledge_grob): do something
10044         with normal slurs too.
10045         
10046         * lily/slur-scoring.cc (move_away_from_staffline): new function.
10047         (get_base_attachments): move away attachment point for breaks
10048         similar to attachment points on slurs (staffline collision, and
10049         half a space of padding)
10051         * scm/page-layout.scm (ly:optimal-page-breaks): don't compute
10052         force twice.
10054         * lily/simple-spacer.cc (LY_DEFINE): if line too long in ragged
10055         mode, return #f.        
10057         * scm/page-layout.scm (ly:optimal-page-breaks): set force = 0.0
10058         for last page if raggedlast. 
10060         * lily/parser.yy (Prefix_composite_music): untransposable is for
10061         FiguredBass, not ChordNames
10063 2004-10-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10065         * scm/framework-tex.scm: Merge fix.
10067 2004-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10069         The grand \paper -> \layout, \bookpaper -> \paper renaming.
10071 2004-10-10  Graham Percival  <gperlist@shaw.ca>
10073         * Documentation/user/notation.itely: add raggedright to a whole
10074         bunch of places.
10076 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10078         * scm/paper.scm (set-paper-dimension-variables): new
10079         function. Define dimension-variables explicitly in \paper too.
10080         This allows overriding linewidth inside \score { \paper { } }
10081         blocks
10083         * scm/framework-tex.scm (convert-to-ps): invoke dvips with -t
10084         landscape.
10085         (header): add landscape and papersize options.
10087 2004-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10089         * lily/*.cc: use robust_scm2moment() where appropriate.
10091         * lily/moment.cc (robust_scm2moment): new function.
10093         * scm/titling.scm (default-score-title): remove caps for piece.
10095         * VERSION: 2.3.21 released.
10096         
10097         * lily/include/slur-scoring.hh (struct Slur_score_state): new file
10099         * lily/include/slur-configuration.hh (class Slur_configuration):
10100         new file.
10102         * lily/slur-configuration.cc: new file. move scoring functions
10103         into Slur_configuration.
10105         * lily/slur-scoring.cc (Slur_score_state): change static functions
10106         to methods of Slur_score_state.
10108         * lily/bezier-bow.cc (Message): 
10110         * flower/include/interval-set.hh (Message): new file.
10112         * flower/interval-set.cc (Message): new file.
10114 2004-10-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10116         * lily/multi-measure-rest-engraver.cc (process_music): always
10117         generate MultiMeasureRestNumbers.
10119         * SConstruct (txt_files): switch of make dist
10121         * lily/bezier-bow.cc (get_slur_indent_height): change recipe to
10122         make sure that (indent < len / 3). This fixes progerror-max_h.ly
10124         * lily/multi-measure-rest-engraver.cc (process_music): make
10125         MultiMeasureRestNumber too.
10127 2004-10-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10129         * Documentation/user/notation.itely (Bar lines): Added a note that
10130         defaultBarType is to be changed in the Timing context.
10132 2004-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10134         * lily/include/guile-compatibility.hh: add file.
10136         * scm/framework-tex.scm (convert-to-dvi): use max of current
10137         extra_mem_top and 1M.
10139         * lily/kpath.cc (LY_DEFINE): ly_kpathsea_expand_variable. New
10140         function.
10142 2004-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10144         * scm/framework-tex.scm (convert-to-dvi): set extra_mem_top to 1M.
10146 2004-10-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10148         * lily/slur-scoring.cc (struct Slur_score_state): add
10149         has_same_beam_, edge_has_beams_, is_broken_ bools.
10150         (get_base_attachments): simpler Y attachment determination for
10151         broken slurs.
10153 2004-10-04  Jan Nieuwenhuizen  <janneke@gnu.org>
10155         * buildscripts/texi2omf.py: Add hashbang.  Starting the script in
10156         bash without that is quite interesting.  Add xml and some omf
10157         keys.
10159 2004-10-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10161         * Documentation/user/macros.itexi: Add xml macros.
10163         * Documentation/user/GNUmakefile (extra-local-help): Add xml rules.
10165         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): Fix location.
10167 2004-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10169         * lily/break-substitution.cc (substitute_mutable_property_alist):
10170         only put property back into value if != SCM_UNDEFINED
10172         * lily/lyric-extender.cc (print): don't take common refpoint of
10173         null object if right_text isn't there.
10175         * lily/slur-scoring.cc (struct Slur_score_state): new
10176         struct. Collect scoring function arguments.
10177         (struct Slur_score_state): add musical_dy_
10178         (get_extra_encompass_infos): new function. Split off state
10179         computations.
10181         * scm/part-combiner.scm (determine-split-list): remove playing1
10182         and playing2.
10184 2004-10-02  Graham Percival  <gperlist@shaw.ca>
10186         * Documentation/index.html.in: remove link to templates.
10188         * Documentation/user/notation.itely: more small fixes.
10190 2004-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10192         * lily/timing-engraver.cc (process_music): move setting
10193         measure-length. This fixes spacing-whole-rest.ly
10195         * VERSION (PACKAGE_NAME): release 2.3.20
10196         
10197         * input/regression/quote-transposition.ly: update example
10199         * scm/define-music-properties.scm (all-music-properties): change
10200         meaning of instrumentTransposition.  It is now the pitch played
10201         that sounds as middle C. This means that instrumentTransposition
10202         can be \transposed. 
10203         Fixes: transpose-quote.ly
10205         * lily/parser.yy (command_element): reverse setting of
10206         instrumentTransposition
10208         * lily/pitch.cc (pitch_interval): rename.
10210         * lily/recording-group-engraver.cc (stop_translation_timestep):
10211         remove macrameing of accumulator and set_car/cdr.
10212         Fixes: transposition-quote.ly
10214         * lily/music.cc (transpose): fold Event::transpose() in.
10216         * lily/event.cc: remove Transpose. 
10218         * lily/recording-group-engraver.cc: cleanup.
10220         * ly/music-functions-init.ly (displayMusic): add function.
10222         * make/lilypond.fedora.spec.in: rename file.
10224         * lily/lily-lexer.cc (mark_smob): don't use ly_cdr() for getting
10225         to-be-marked objects. Use SCM_CELL_WORD_1 instead. 
10227         * Documentation/user/changing-defaults.itely (Changing context
10228         properties on the fly): typo.
10230         * lily/slur.cc (outside_slur_callback): try three sample points
10231         for determining collisions. This fixes: slur-script.ly.
10233 2004-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10235         * scripts/lilypond-book.py (ext2format): Add latex as Latex.
10237 2004-10-01  Graham Percival  <gperlist@shaw.ca>
10239         * Documentation/user/notation.itely: more small fixes.
10241         * Documentation/user/examples.itely: make new sections.
10243         * input/test/bar-lines.ly: improve output, fix bug.
10245         * Documentation/user/changing-defaults.itely: small fixes.
10247 2004-10-01  Werner Lemberg  <wl@gnu.org>
10249         * tex/lilyponddefs.tex (\lilypondECencoding): New command to handle
10250         T1 encoding in texinfo mode.
10251         (\lilypondstart): Use it.
10252         (\lilypondloop, \lilyponditerate): Removed.  Unused.
10254 2004-09-30  Werner Lemberg  <wl@gnu.org>
10256         * tex/lilyponddefs.tex (\lilypondstart): Define
10257         \lilypondfontencoding for both texinfo and latex mode.
10259         * scm/framework-tex.scm (font-load-command): Use
10260         \lilypondfontencoding.
10262 2004-09-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10264         * scm/framework-tex.scm (dump-page): take with-extents?
10265         argument. If true, output Y extents. Used for lilypond-book
10266         documents.
10268         * scripts/lilypond-book.py (PREAMBLE_LY): set dump-extents for
10269         \bookpaper.
10271         * lily/slur.cc (outside_slur_callback): epsilon-delta management
10272         for slur edges. Fixes: progerror-no-bezier-intersection.ly
10274         * scm/framework-tex.scm (dump-page): put stencil height in dumped
10275         page.
10277 2004-09-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10279         * Documentation/user/notation.itely (Multi measure rests):
10280         Improved example.
10282 2004-09-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10284         * lily/auto-beam-engraver.cc (test_moment): robustify.
10286 2004-09-28  Werner Lemberg  <wl@gnu.org>
10288         * scm/framework-tex.scm (font-load-command): Define proper font
10289         macro which sets font encoding if available.
10290         (define-fonts): Define \lilypondpaperinputencoding, to be taken
10291         from the \bookpaper block.
10293         * tex/lilyponddefs.tex (\lilypondstart): Use
10294         \lilypondpaperinputencoding for global input encoding.
10296 2004-09-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10298         * lily/score.cc (Score): oops. Copy error_found_ too.
10300 2004-09-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10302         * stepmake/stepmake/texinfo-rules.make: 
10303         * Documentation/GNUmakefile: --srcdir build fixes.
10305         * input/test/coriolan-margin.ly: Put papersize settings in \bookpaper.
10307         * Documentation/user/latex-lilypond-example.latex:
10308         * Documentation/user/latex-example.latex: Fix compile errors.
10309         Still buggy, need more love.
10311 2004-09-27  Werner Lemberg  <wl@gnu.org>
10313         * tex/lilyponddefs.tex (\lilypondstart): Use \frenchspacing.
10315 2004-09-26  Juergen Reuter  <reuter@ipd.uka.de>
10317         * Documentation/user/examples.itely: removed \midi block to
10318         simplify the example
10320         * Documentation/user/notation.itely: Removed superfluous
10321         TextSpanner tweakings (is already done by engraver-init.ly).
10322         Documented bug: vertical alignment of articulations.
10324         * Documentation/user/notation.itely, ly/engraver-init.ly
10325         (VaticanaVoice, GregorianTranscriptionVoice): Bugfix: TextSpanner
10326         padding.
10328         * Documentation/user/notation.itely, ly/engraver-init.ly: moved
10329         docu about TextSpanner padding bug from manual to engraver.ly
10330         (since it's workarounded and hence not user-visible any more)
10332 2004-09-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10334         * VERSION: release 2.3.19
10336 2004-09-26  Graham Percival  <gperlist@shaw.ca>
10338         * ly/property-init.ly: fix bug in displaying ledger lines while
10339         \hideNotes is on.
10341         * Documentation/user/notation.itely: more editing.
10343         * Documentation/user/examples.itely: add piano-dynamics template.
10345         * input/template/piano-dynamics.ly: remove.
10347         * Documentation/user/sound-output.itexi: more editing
10349 2004-09-25  Graham Percival  <gperlist@shaw.ca>
10351         * Documentation/user/notation.itely: more editing.
10353 2004-09-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10355         * scm/ly-from-scheme.scm (read-lily-expression): use ~s in format
10356         instead of ~a, to get #{ #"foo" #} actually printed to #"foo".
10358 2004-09-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10360         * lily/hairpin.cc (print): check columns of bounds, not bounds
10361         themselves.
10362         (print): robustify bound-padding lookup.
10364         * lily/*: ly_c[ad]+r -> scm_XXX , ly_c_pair_p -> scm_is_pair.
10366         * scripts/lilypond-book.py (Compile_error.process_include): catch
10367         Compile_error exception, and remove output .texi.
10369         * scm/define-music-properties.scm (all-music-properties): add
10370         error-found
10372         * lily/parser.yy (Music_list): add error-found to music with errors.
10374         * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors.
10376         * lily/book.cc (process): ignore books with errors
10378         * lily/include/score.hh (class Score): add error_found_ member.
10380         * lily/drum-note-engraver.cc (try_music): idem.
10382         * lily/note-heads-engraver.cc: remove start-playing-event.
10384         * lily/part-combine-iterator.cc (Part_combine_iterator): use
10385         BusyPlayingEvent to determine which voice was active last.
10386         (unisono): use last active to where to get unisono information
10387         from. This fixes: partcombine-rest.ly (again).
10389         * scm/part-combiner.scm (determine-split-list): cleanups
10391 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10393         * input/regression/lyric-extender.ly: simplify.
10394         complexify.
10396         * lily/lyric-extender.cc (print): use it to determine size of
10397         extender. Remove Lyric_extender::is_visible().
10399         * lily/extender-engraver.cc (acknowledge_grob): store lyric in
10400         next property.
10402         * lily/lyric-engraver.cc: remove get_current_rest().
10403         
10404 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10406         * input/regression/lyric-extender.ly: Fix and add test.
10408         * lily/extender-engraver.cc (stop_translation_timestep): Oops, typo.
10410 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10412         * lily/note-head.cc: remove Note_head::extent.
10414 2004-09-23  Graham Percival  <gperlist@shaw.ca>
10416         * Documentation/user/tutorial.itely: do manual style 2-space
10417         indents in examples
10419         * Documentation/user/notation.itely: more editing.
10421 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10423         * lily/lyric-engraver.cc (get_current_rest): New function.
10425         * lily/extender-engraver.cc (stop_translation_timestep): Use it:
10426         stop at rest.
10428         * lily/lyric-extender.cc (print): Fix crash (Russ Ross).
10430         * lily/slur-scoring.cc (get_bezier): Fix for broken beziers.
10432 2004-09-23  Juergen Reuter  <reuter@ipd.uka.de>
10434         * Documentation/user/examples.itely (Small ensembles): added
10435         example for transcription of mensural music
10437         * Documentation/user/notation.itely (The Lyrics context): fixed broken
10438         link to SATB vocal score
10440         * Documentation/user/notation.itely (System start delimiters):
10441         fixed typo: GrandStaff->StaffGroup
10443         * Documentation/user/notation.itely (Ancient articulations):
10444         removed obsolete comment on \episem bug
10446 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10448         * scm/framework-tex.scm (output-preview-framework): Fix invocation
10449         of header.
10451 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10453         * lily/dynamic-engraver.cc (acknowledge_grob): attach hairpin
10454         start to note-column.
10456         * lily/hairpin.cc (print): check text-interface, to attach to
10457         dynamic texts.  
10459         * lily/include/text-item.hh (class Text_interface): rename
10460         Text_item -> Text_interface
10462         * lily/piano-pedal-bracket.cc (print): robustify.
10464 2004-09-22  Pedro Kroger  <kroeger@pedrokroeger.net>
10466         * scm/paper.scm (set-paper-dimensions): add printfirstpagenumber.
10468         * scm/page-layout.scm (plain-header): if printfirstpagenumber is
10469         true will print the page number in the first page.
10471         * Documentation/user/changing-defaults.itely: Document
10472         printfirstpagenumber.
10474 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10476         * lily/phrasing-slur-engraver.cc (acknowledge_grob): avoid more
10477         objects.
10479         * lily/beam-concave.cc (calc_concaveness): take absolute value of
10480         dy for scaling. This fixes various downbeams.
10481         
10483         * lily/beam-quanting.cc (best_quant_score_idx): 
10485 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10487         * scm/framework-tex.scm (header-to-file): Fix.
10489 2004-09-22  Werner Lemberg  <wl@gnu.org>
10491         * lily/parser.yy <score_body>: Fix typo.
10493 2004-09-22  Graham Percival  <gperlist@shaw.ca>
10495         * Documentation/user/tutorial.itely: modified a "future planning"
10496         comment.
10498         * Documentation/user/notation.itely: more editing.
10500 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10502         * scm/define-markup-commands.scm (note-by-number): read font-size
10503         to determine stem length. Fixes: markup-note.ly
10505 2004-09-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10507         * lily/slur.cc (outside_slur_callback): read #'padding for
10508         slur-padding. Fixes: slur-script.ly
10510         * lily/parser.yy (score_body): disallow \bookpaper in \score.
10512 2004-09-21  Juergen Reuter  <reuter@ipd.uka.de>
10514         * Documentation/user/notation.itely (ancient flags): documented
10515         flags-related known bugs
10517         * lily/include/ligature-engraver.hh: added comment about why and
10518         how of (non-)use of abstract virtual methods
10520         * ly/engraver-init.ly (VaticanaVoice,
10521         GregorianTranscriptionVoice): bugfix (workaround): TextSpanner:
10522         unset dash-fraction property in order to get solid lines
10524         * ly/engraver-init.ly (MensuralStaff): fixed bad comment
10526 2004-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10528         * scripts/convert-ly.py (ly): Corrected replacement of \scriptBoth
10530 2004-09-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10532         * lily/parse-scm.cc (internal_ly_parse_scm): Eval in module, not
10533         in function.
10535         * scm/framework-tex.scm (convert-to-dvi): Use nonstopmode.  Set
10536         openout_any=p.  Throughout: progress to stderr, translate user
10537         messages.
10539         * scm/output-gnome.scm: Fix font dir description.
10541 2004-09-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10543         * input/test/mensural-ligatures.ly (voice): move linethickness
10544         settings to bookpaper.
10546         * lily/simple-spacer.cc (Module): use force to stretch to 
10547         line length as force measure for ragged spacing.
10548         
10549         * lily/lily-parser.cc (get_paper): don't set parent for \paper
10550         blocks in the parser. This eliminates ordering dependency for
10551         \bookpaper and \paper
10553         * ly/part-paper-init.ly: remove file.
10555         * lily/includable-lexer.cc (new_input): elucidate message.
10557         * VERSION: 2.3.18 released.
10558         
10559 2004-09-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10561         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: 
10562         * input/mutopia/R.Schumann/romanze-op28-2.ly:
10563         * input/mutopia/F.Schubert/standchen.ly: Remove obsolete
10564         #'Slur.attachment setting.
10566         * elisp/lilypond-mode.el (LilyPond-command-alist): Use -ftex,
10567         friendlier for point and click.
10569 2004-09-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10571         * ly/init.ly: reverse collected scores.
10573         * scm/page-layout.scm (ly:optimal-page-breaks): use non-ragged
10574         layout to determine force.
10575         
10576 2004-09-18  Werner Lemberg  <wl@gnu.org>
10578         * ly/engraver-init.ly <Score> [quotedEventTypes]: Add tuplets and
10579         ties.
10581         * ly/declarations-init.ly (escapedBiggerSymbol,
10582         escapedSmallerSymbol): Fix typos.
10584         * scripts/convert-ly.py: s/removeTag/removeWithTag/.
10586 2004-09-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10588         * input/{input,regression}/*.ly: run convert-ly
10590         * VERSION: release 2.3.17
10592         * lily/slur-scoring.cc (enumerate_attachments): make stem_extent a
10593         little wider for attachment calculation. This prevents stem and
10594         slur touching.
10596         * lily/parser.yy (direction_less_char): soft code \< \> \! \( \) (
10597         ) 
10599         * input/regression/tie.ly (texidoc): cleanup.
10601         * ly/declarations-init.ly (tildeSymbol): soft-code meaning of [ ]
10602         and ~
10604         * lily/slur-scoring.cc (score_extra_encompass): check if extra
10605         objects are on boundary column. 
10607         * lily/main.cc (parse_argv): process --tex too.
10609         * ly/music-functions-init.ly (keepWithTag): add music functions
10610         keepWithTag and removeWithTag.
10612         * lily/quote-iterator.cc (Quote_iterator): init transposed_musics_.
10614         * lily/accidental-engraver.cc (recent_enough): interpret laziness
10615         = #t. This fixes no-reset accidental-style.
10617         * input/regression/accidental-piano.ly (Module): new file.
10619         * lily/lily-guile.cc (LY_DEFINE): ly_assoc_get: new function.
10621 2004-09-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10623         * lily/slur-scoring.cc (score_extra_encompass): widen X extent of
10624         extra encompass.
10625         (score_extra_encompass): use Y coordinate of attachment if X
10626         attachment falls in extra encompass X extent.
10628         * buildscripts/guile-gnome.sh (SLIB_PATH): add SLIB_PATH to
10629         GUILE_LOAD_PATH
10631 2004-09-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10633         * scm/output-gnome.scm: Small fixes.
10635         * buildscripts/guile-gnome.sh: Getting close to 2.6.0 release.
10637 2004-09-16  Juergen Reuter  <reuter@ipd.uka.de>
10639         * Documentation/user/notation.itely (Ancient flags): Removed
10640         documentation on adjust-if-on-staffline (this property was removed
10641         by Han-Wen).
10643         * Documentation/user/notation.itely (Ancient notation): Minor
10644         cleanups and fixes.  Renamed "Vaticana style contexts" ->
10645         "Gregorian Chant contexts".  Added section "Mensural contexts".
10646         Added section "Ancient articulations".
10648         * ly/engraver-init.ly: Added "MensuralVoice" and "MensuralStaff".
10650 2004-09-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10652         * buildscripts/guile-gnome.sh: Add missing bit.
10654 2004-09-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10656         * buildscripts/guile-gnome.sh (LD_LIBRARY_PATH): new script.
10658         * lily/slur-scoring.cc (get_y_attachment_range): set end point
10659         using base_attachment.
10661         * scm/page-layout.scm (default-page-make-stencil): whoops. Add
10662         page header back.
10664         * scm/documentation-generate.scm (top-node): move version to top
10665         node.
10667         * lily/ledger-line-spanner.cc: add ledgered-interface, with
10668         property no-ledgers.
10670 2004-09-16  Heikki Junes  <hjunes@cc.hut.fi>
10672         * Documentation/user/{changing-defaults,examples,invoking,
10673         tutorial}.itely: Expand 's to is.
10675         * Documentation/user/notation.itely: Capitalize only first letter.
10677         * Documentation/user/programming-interface.itely: Capitalize Scheme.
10679         * Documentation/user/lilypond-book.itely: use @refbugs.
10681         * THANKS: sort.
10683         * input/mutopia/F.Schubert/morgenlied.ly,
10684         input/mutopia/J.S.Bach/baerenreiter-sarabande.ly,
10685         input/mutopia/R.Schumann/romanze-op28-2.ly: Add lifetime and full
10686         name.
10688 2004-09-15  Juergen Reuter  <reuter@ipd.uka.de>
10690         * mf/parmesan-heads.mf: bugfixes: (i) removed duplicate
10691         lneomensural char entry; (ii) fixed mensural/neomensural naming
10692         clash typo; (iii) lneomensural char: fixed stem attachment point.
10693         WARNING: FONT CHANGED!
10695 2004-09-15  Graham Percival  <gperlist@shaw.ca>
10697         * Documentation/user/introduction.itely: update \stemBoth to
10698         \stemNeutral.
10700         * Documentation/user/notation.itely: more editing of the manual.
10702 2004-09-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10704         * lily/slur-scoring.cc (score_edges): add exp(slope*dir*leftright)
10705         factor in edge attraction. This reflects that the left edge may
10706         have a larger gap for an ascending up-slur.
10707         (get_base_attachments): copy bound Y from right bound, if there is
10708         only one note-column after the line break.
10710 2004-09-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10712         * buildscripts/guile-gnome.sh: Update with tarball [pre]releases.
10714 2004-09-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10716         * lily/phrasing-slur-engraver.cc (process_music): Create
10717         PhrasingSlur instead of Slur.
10719         * Documentation/user/changing-defaults.itely (Defining new
10720         contexts): Fixed misprinted context name.
10722 2004-09-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10724         * ly/property-init.ly (hideStaffSwitch): remove turnOff.
10726         * scripts/convert-ly.py (conv): change Both to Neutral in property
10727         settings.
10729         * ly/engraver-init.ly: increase extent of Staff. 
10731 2004-09-13  Graham Percival  <gperlist@shaw.ca>
10733         * scm/script.scm: change behaviour of slur and accent.
10735         * Documentation/user/music-glossary.tely: de-gender a few entires.
10737         * Documentation/user/introduction.itely: de-gender a few sentences.
10739 2004-09-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10741         * input/regression/rehearsal-mark-number.ly: Reuse the existing
10742         formatting routine when adding boxed numbers. Makes it easier to
10743         extrapolate how to do for boxed letters.
10745 2004-09-12  Graham Percival  <gperlist@shaw.ca>
10747         * Documentation/user/notation.itely: fixed Time Signature numbers bug.
10749         * Documentation/user/invoking.itexi: updated the "reporting bugs"
10750         section.
10752 2004-09-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10754         * scm/define-grobs.scm (all-grob-descriptions): longer
10755         ideallengths for stems in higher order beams.
10757         * Documentation/user/changing-defaults.itely (Page layout):
10758         document them.
10760         * scm/page-layout.scm (ly:optimal-page-breaks): use new parameters
10761         to get sane spaces for titles.
10763         * ly/book-paper-defaults.ly: new parameters aftertitlespace,
10764         beforetitlespace, betweentitlespace.
10766         * input/regression/beam-quant-standard.ly (primeSixteenths): add
10767         16th notes.
10769         * lily/beam.cc (set_minimum_dy): new function. Round non-zero
10770         small slope up to smallest quant. This prevents small slopes from
10771         getting rounded to zero.
10773         * lily/beam-quanting.cc (quanting): don't allow dy_mus slopes that
10774         are smaller than the smallest quant.
10776         * input/tutorial/brahms*.ly: remove.
10778         * input/*: update all .ly files.
10779          
10780         * ly/a4-init.ly (vsize): remove papersize init files.
10782         * scripts/convert-ly.py (conv): add conversion.
10784         * lily/parser.yy: change mode changing commands to XXXmode,
10785         eg. drummode.
10786         (mode_changing_head): group mode changes.
10787         (mode_changing_head_with_context): new commands: create context as
10788         well as change mode.
10790         * input/regression/system-overstrike.ly: new file.
10792         * scm/page-layout.scm (ly:optimal-page-breaks): add
10793         betweensystempadding also to fixed distance for the spring.
10795         * scm/define-grobs.scm (all-grob-descriptions): fix order of
10796         key-cancellation.
10798         * input/regression/beam-concave-damped.ly: new file.
10800         * lily/beam-concave.cc: new file, with new routines for concave
10801         decisions. There are now two types of concaveness: 1. a sharp
10802         logic decision forcing a beam horizontal, and 2. a number that
10803         measures how concave beams are that are not caught by 1.
10805         This fixes: morgenlied.ly and input/regression/beam-concave.ly
10806         
10807         * lily/new-fingering-engraver.cc (stop_translation_timestep): new
10808         property: add-stem-support
10810 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10812         * lily/slur-scoring.cc (get_bound_info): only do
10813         broken trend at the end of the line.
10815         * VERSION (PACKAGE_NAME): release 2.3.16.
10817         * input/regression/phrasing-slur.ly (Module): remove (duplicate
10818         with phrasing-slur-slur-avoid.ly)
10820         * lily/slur-scoring.cc (struct Extra_collision_info): collect
10821         parameters for extra offset.
10822         (get_bezier): add slurs mid-points for curve determination
10823         (score_extra_encompass): add slur end points for scoring.
10825 2004-09-11  Matthias Neeracher  <neeracher@mac.com>
10827         * scm/framework-ps.scm (reencode-font): Handling font scaling
10828         and reencoding differently to work around a bug in gs 8.30 and
10829         earlier.
10830         Update callers.
10832 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10834         * lily/slur-scoring.cc (broken_trend_y): always take use vdir
10835         extent index of other system. Fixes slurs across line breaks.
10837         * lily/tuplet-engraver.cc (start_translation_timestep): use
10838         Tuplet_description::stop_ for determining when to stop producing
10839         tuplet brackets. This fixes: tuplet-overwrite.ly
10841         * lily/*-engraver.cc: remove all Protected_scm objects to fix GC
10842         errors with GUILE 1.7 CVS.
10844         * lily/translator.cc (derived_mark): new function.
10846         * lily/slur-scoring.cc (score_encompass): new penalty type:
10847         variance penalty demerits slurs where one head/stem is much
10848         closer to the slur than average.
10850         * lily/tuplet-bracket.cc (print): use robust_relative_extent
10851         iso. extent()
10852         (calc_position_and_height): use robust_relative_extent(). This
10853         fixes a couple of programming_errors
10855         * input/regression/part-combine-mmrest-after-solo.ly (Module): new
10856         file.
10858         * lily/part-combine-iterator.cc (unisono): bugfix for the case
10859         that voice-2 plays solo, and voice-1 has an mmrest that starts
10860         earlier. In that case, we switch to voice-2, so we catch the
10861         mmrest of voice-2. This fixes: partcombine-rest.ly.
10863 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10865         * scm/define-grob-properties.scm (all-internal-grob-properties):
10866         add adjacent-hairpins property.
10868         * lily/hairpin.cc: lengthen hairpin if space is available.
10870         * input/regression/dynamics-hairpin-length.ly (Module): new file.
10872 2004-09-10  Graham Percival  <gperlist@shaw.ca>
10874         * Documentation/user/notation.itely: small fixes to docs.
10876 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10877         
10878         * VERSION (PACKAGE_NAME): release 2.3.15
10880         * make/lilypond.redhat.spec.in (Requires): bump requirement for
10881         ec-fonts-mftraced
10883         * mf/GNUmakefile (SAUTER_FONTS): remove ecb10. This is provided by
10884         the latest ec-fonts-mftraced package.
10886         * scm/define-context-properties.scm
10887         (all-internal-translation-properties): add property. Remove
10888         definition of quotes property.
10890         * Documentation/user/notation.itely (Quoting other voices):
10891         document it
10893         * lily/quote-iterator.cc (moment_less): add quotedEventTypes
10894         property, to determine what events are processed in \quote.
10896 2004-09-10  Juergen Reuter  <reuter@ipd.uka.de>
10898         * (many files): removed most occurrences of underscore ("_")
10899         from font characters; made font character naming more
10900         consistent
10902         * input/test/gregorian-scripts.ly: fixed another victim of grand
10903         replacement operations
10905         * lily/vaticana-ligature-engraver.cc: caught some more "_"
10906         inconsistencies
10908         * input/puer-fragment.ly: bugfix: lyrics hyphen: syntax update
10910 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10912         * Documentation/user/changing-defaults.itely (Paper size): doc
10913         landscape
10914         
10916         * scm/framework-ps.scm (eps-header): bugfixes. 
10918         * scm/titling.scm (default-score-title): remove opus from the
10919         \score title.
10921 2004-09-08  Pedro Kroger  <kroeger@pedrokroeger.net>
10923         * scripts/convert-ly.py (program_name): changed to sys.argv[0]
10925         * scripts/abc2ly.py (program_name): changed to sys.argv[0]
10927         * scripts/etf2ly.py (program_name): changed to sys.argv[0]
10929         * scripts/lilypond-book.py (program_name): changed to sys.argv[0]
10931         * scripts/lilypond-latex.py (program_name): changed to sys.argv[0]
10933         * scripts/midi2ly.py (program_name): changed to sys.argv[0]
10935         * scripts/mup2ly.py (program_name): changed to sys.argv[0]
10937         * scripts/ps2png.py (program_name): changed to sys.argv[0]
10939 2004-09-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10941         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Increment
10942         character position.  Huh?
10944         * scm/output-gnome.scm (placebox): Shield affine-relative.
10946         * buildscripts/guile-gnome.sh: Update.  Do not use GUILE CVS,
10947         cater for system's pango 1.5.1.
10949         * input/regression/new-slur.ly: Add ugly slur from scsii-sarabande.
10951         * scm/slur.scm: Tweak.
10953 2004-09-08  Graham Percival  <gperlist@shaw.ca>
10955         * Documentation/user/{first couple of chapters}: more editing.
10957 2004-09-07  Graham Percival  <gperlist@shaw.ca>
10959         * Documentation/topdocs/AUTHORS.texi, THANKS: add/modify my name
10960         and summary.
10962         * Documentation/user/{first couple of chapters}: the big "Graham's
10963         moved to a new city, his friends haven't arrived, and he has no
10964         internet access" patch.  Numerous editorial and stylistic changes
10965         to the manual.
10967 2004-09-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10969         * scm/framework-ps.scm (output-framework): handle landscape settings.
10971         * ps/lilyponddefs.ps: cleanup.
10973 2004-09-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10975         * scm/define-grobs.scm (all-grob-descriptions): unset
10976         threshold. This fixes morgenlied. 
10978         * scm/page-layout.scm (ly:optimal-page-breaks): whoops. Thinko in
10979         rod calculation.
10981         * lily/system.cc (get_line): don't take piano-pedal & dynamic line
10982         spanners into account for staff-extents.
10984         * lily/ottava-bracket.cc (print): take common refpoint of dots
10985         into account as well.
10987 2004-09-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10989         * lily/lookup.cc (triangle): translate by interval.
10991         * VERSION (PACKAGE_NAME): release 2.3.14
10993         * Documentation/user/changing-defaults.itely (Page layout): add
10994         betweensystempadding
10996         * scm/page-layout.scm (ly:optimal-page-breaks): typo.
10998         * input/regression/quote-cyclic.ly (Module): new file.
11000         * scm/lily.scm (print): add function.
11002         * scm/music-functions.scm (quote-substitute): new
11003         function. Substitute \quote when putting music into \score.
11005         * input/regression/key-signature-cancellation.ly (Module): new file.
11007         * lily/*.cc: more ly_scm2 -> scm_to converions.
11009         * lily/key-signature-interface.cc (print): take position
11010         difference into account when spacing naturals.
11012         * lily/key-engraver.cc (create_key): create KeyCancellation grob
11013         separately, so the cancellation can be put before the staff-bar
11015         * scm/define-grobs.scm (all-grob-descriptions): add a
11016         KeyCancellation grob.
11018         * lily/tuplet-engraver.cc (struct Tuplet_description): new
11019         struct. Use to clean-up Tuplet_engraver
11021 2004-09-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11023         * lily/*: ly_scm2int -> scm_to_int
11024         ly_scm2double -> scm_to_double
11026         * lily/include/lily-guile.hh (scm_from_double): more compat glue.
11028 2004-09-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11030         * lily/simple-spacer.cc (LY_DEFINE): return something sensible for
11031         0 springs
11033         * lily/system.cc (post_processing): 
11035         * scm/page-layout.scm (ly:optimal-page-breaks): implement uniform
11036         density for vertical spacing by means of force penalty.
11037         
11038         * scm/paper.scm (paper-set-staff-size): add betweensystemspace as
11039         dimension-variables
11041         * Documentation/user/changing-defaults.itely (Page layout): add
11042         betweensystemspace variable.
11044         * ly/book-paper-defaults.ly: set betweensystemspace: 20 mm
11046         * scm/page-layout.scm (space-systems): new function. Use spring
11047         and rod approach for vertically spacing systems.
11049         * ly/engraver-init.ly: tune down minimumVerticalExtent.
11051         * scm/define-grobs.scm (all-grob-descriptions): set threshold for
11052         vertical alignment.
11054         * lily/slur-engraver.cc (process_music): add warning for slur.
11056 2004-09-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11058         * lily/include/lily-guile.hh (scm_is_number): add scm_is_number
11060         * lily/simple-spacer.cc (LY_DEFINE): ly_solve_spring_rod_problem:
11061         export spacing routine to SCM.
11063         * lily/include/simple-spacer.hh (struct Simple_spacer_wrapper):
11064         new class, separate Grobs from interface.
11066 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11068         * lily/include/lily-guile.hh: compatibility glue for 1.6
11070         * lily/*.cc (acknowledge_grob): ly_string_p -> scm_is_string.
11072         * lily/lily-guile.cc: remove ly_scm2str0.
11074 2004-09-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11076         * Documentation/user/macros.itexi: Use @inforef iso @uref for
11077         external references.  Fixes HTML cross references with makeinfo 4.7.
11079 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11081         * lily/include/simple-spacer.hh (struct Simple_spacer): remove
11082         expand_only option.
11084 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11086         * lily/system.cc (get_line): add System stencil to exprs. Fixes
11087         system-extents.ly.
11089         * ly/engraver-init.ly: decrease minimumVerticalExtent to (-5,5).
11091         * scm/define-grobs.scm (all-grob-descriptions): decrease padding
11092         for MultiMeasureRestNumber
11094         * VERSION (PACKAGE_NAME): release 2.3.13
11096 2004-08-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11098         * lily/context-scheme.cc (LY_DEFINE): ly:context-grob-definition
11099         takes two arguments.
11101 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11103         * input/regression/slur-stem-broken.ly: remove.
11105         * lily/slur.cc: add quant-score.
11107         * input/regression/slur-staccato.ly (texidoc): remove
11109         * make/lilypond.redhat.spec.in (Group): remove musedata2ly
11111 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11113         * lily/include/bezier-bow.hh: remove.
11115         * lily/slur-bezier-bow.cc (Module): remove.
11117         * lily/include/slur.hh (Module): remove.
11119         * lily/slur.cc: remove
11121         * input/test/slur-beautiful.ly (Module): remove
11123         * input/test/slur-attachment-override.ly (Module): remove
11125         * lily/slur-quanting.cc (after_line_breaking): only do scoring
11126         when less than 4 control-points.
11128         * lily/key-signature-interface.cc: add style.
11130         * Documentation/user/notation.itely (Automatic staff changes):
11131         document new behavior.
11133         * input/regression/slur-extreme.ly: new file.
11135         * ly/engraver-init.ly (Score): set bassStaffProperties to \clef
11136         bass. Obviates \clef bass in the bass staff, when using \autochange 
11138         * lily/auto-change-iterator.cc (construct_children): instantiate
11139         up/down Staff, create Voice on up staff initially. Obviates
11140         explicit instantiation of up/down contexts for \autochange. 
11142         * lily/slur-quanting.cc (get_bezier): new functionality, blow up
11143         slur depending on extents of note heads.
11144         
11145 2004-08-28  Graham Percival  <gperlist@shaw.ca>
11147         * Documentation/user/tutorial.itely: minor editing.
11149         * Documentation/user/examples.itely: tiny editing.
11151 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11153         * lily/slur-quanting.cc (init_score_param): read scoring
11154         parameters from slur-details property
11156         * scm/define-grobs.scm (all-grob-descriptions): add inside-slur to
11157         Accidental
11159         * Documentation/user/advanced.itely: removed.
11161         * Documentation/user/programming-interface.itely (How markups work
11162         internally): new subsection.
11164         * Documentation/user/converters.itely (Invoking abc2ly): remove
11165         musedata2ly.
11167 2004-08-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11169         * Documentation/user/point-and-click.texi (Point and click): new file.
11170         put point & click in appendix.
11171         
11172         * Documentation/user/changing-defaults.itely (Vertical spacing):
11173         corrections
11175 2004-08-27  Graham Percival  <gperlist@shaw.ca>
11177         * Documentation/user/introduction.itely: add note about the
11178         "example templates" section of the manual, and remove link to
11179         input/template/
11181 2004-08-27  Juergen Reuter   <reuter@ipd.uka.de>
11183         * Documentation/user/lilypond-book.itely: fix parse error: @LaTeX
11184         -> La@TeX
11186         * mf/parmesan-heads.mf: draw_diamond_head: fixed pen width; added
11187         missing lneo_mensural head; editorial cleanups
11189         * lily/mensural-ligature.cc: added more comments
11191 2004-08-26  Graham Percival  <gperlist@shaw.ca>
11193         * Documentation/user/examples.itely: second, third, fourth, and fifth
11194         sections added.
11196         * input/template/{various}: removed files included in examples.itely.
11198 2004-08-26  Juergen Reuter   <reuter@ipd.uka.de>
11200         * lily/stem.cc: bugfix: adjust-if-on-staffline: use
11201         Stem::stem_end_position instead of broken
11202         Staff_symbol_referencer::get_position
11204 2004-08-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11206         * debian/changelog: debian patch by Anthony Fok.
11208         * lily/stem.cc (flag): bugfix for mensural flags (thanks Juergen!)
11210         * lily/slur-engraver.cc (try_music): ignore slurs_. Otherwise we
11211         get spurious messages with skipTypesetting on.
11213 2004-08-25  Graham Percival   <gperlist@shaw.ca>
11215         * Documentation/user/lilypond-book.itely: slight clean-up.
11217         * Documentation/user/examples.itely: began section.
11219 2004-08-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11221         * lily/script-interface.cc: add slur property.
11223         * lily/slur-quanting.cc (score_extra_encompass): avoid other slurs
11224         too.
11226         * input/regression/phrasing-slur-slur-avoid.ly: new file.
11228         * lily/ottava-bracket.cc (print): always start from right edge of
11229         a broken bound. This fixes ottava-clef.ps 
11231 2004-08-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11233         * input/regression/slur-script-inside.ly: new file.
11235         * lily/new-slur.cc (outside_slur_callback): new function, to make
11236         scripts avoid slurs 
11238         * lily/slur-engraver.cc (finalize): 
11240         * lily/script-interface.cc: add inside-slur property.
11242         * lily/slur-engraver.cc (finalize): read inside-slur property.
11244         * scm/lily.scm (postscript->png): use ~a iso. ~s in progress
11245         message.
11247         * ly/property-init.ly (unHideNotes): hide accidentals at staff
11248         level. Fixes: hideNotes-accidental.ly
11250 2004-08-23  Pedro Kroger  <kroeger@pedrokroeger.net>
11252         * scm/page-layout.scm (plain-header): fix bug that print page
11253         number in the first page if firstpagenumber was different than 1.
11255 2004-08-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11257         * scm/framework-ps.scm (define-fonts): use UPCASE for Bluesky
11258         fonts. Fixes triangle markup for chords.
11260         * lily/slur-quanting.cc (score_extra_encompass): make score depend
11261         on distance. This fixes slur-tenuto.ly and slur-tie.ly
11263         * flower/include/interval.hh (T>): add distance() function
11265         * lily/ottava-bracket.cc (print): add dots to extent. Fixes
11266         octaviation-dot.ly 
11268         * lily/context-scheme.cc: ly_context_grob_definition: new function.
11270         * VERSION (MY_PATCH_LEVEL): release 2.3.12
11272         * lily/new-slur.cc (add_column): remove set_interface()
11274 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11276         * input/regression/slur-double.ly: new file. 
11278         * lily/slur-engraver.cc: add doubleSlurs property
11280         * scm/fret-diagrams.scm (label-fret): use cond instead of case for
11281         symbols.
11283         * Documentation/user/notation.itely (Easy Notation note heads):
11284         revise notation Chapter.
11286         * ly/music-functions-init.ly (makecluster): add makeClusters music
11287         function.
11289         * lily/part-combine-engraver.cc: rename soloADue ->
11290         printPartCombineTexts
11292         * scripts/convert-ly.py (conv): junk script{Up|Down|Both}.
11294         * lily/horizontal-bracket.cc (print): use
11295         Tuplet_bracket::make_bracket, so it supports bracket-flare,
11296         edge-eight and shorten-pair.
11298 2004-08-22  Pedro Kroger  <kroeger@pedrokroeger.net>
11300         * Documentation/user/changing-defaults.itely (Page layout):
11301         description of firstpagenumber. Moved @refbugs about rightmargin
11302         to the end of the section (it was looking like the documentation
11303         after the refbugs was part of the bug comment).
11305         * scm/framework-ps.scm (output-framework): set the first
11306         postscript page number to firstpagenumber
11308         * scm/page-layout.scm (ly:optimal-page-breaks): print the first
11309         page number according to firstpagenumber
11311         * scm/paper.scm (set-paper-dimensions): added firstpagenumber
11312         parameter
11314 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11316         * lily/slur-engraver.cc (class Slur_engraver): simplify: remove
11317         nested slurs. 
11319         * scripts/convert-ly.py (lilypond_version_re_str): handle
11320         \version "bar" % "foo"
11322         * lily/completion-note-heads-engraver.cc (process_music): set
11323         duration-log before announcing object.
11324         
11325         * lily/staff-symbol.cc (print): subtract thickness from staff line
11326         length
11328         * lily/parser.yy (book_body): disallow { ..music.. } inside \book
11329         
11330 2004-08-21  Carl Sorensen  <carldsorensen@comcast.net>
11332         * scm/stencil.scm: remove fontify-text and fontify-text-white
11334 2004-08-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11336         * scm/part-combiner.scm: skip name string. Fixes segfault problem.
11338         * Documentation/user/sound-output.texi (Sound): new file. Move all
11339         MIDI related information.
11341 2004-08-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11343         * lily/script-engraver.cc (acknowledge_grob): only take into
11344         account note heads with a music cause. Fixes ambitus-accent.ly
11346         * scm/define-markup-commands.scm (finger): set encoding to
11347         fetaNumber.
11349 2004-08-20  Erik Sandberg <ersa9195@student.uu.se>
11351         * scripts/convert-ly.py: typo
11353 2004-08-19  Carl Sorensen  <carldsorensen@comcast.net>
11355         * scm/fret-diagrams.scm: Eliminate use of fontify-text; make 
11356         font calls for diagrams based on paper and props
11358 2004-08-19  Graham Percival <gperlist@shaw.ca>
11360         * scripts/convert-ly.py: add \newpage -> \pageBreak rule.
11362 2004-08-19  Erik Sandberg <ersa9195@student.uu.se>
11364         * ly/spanners-init.ly: Correct meanings of setTextDecresc/Dim,
11365         added setHairpinDecresc/Dim
11367 2004-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11369         * lily/include/lily-guile.hh: Cosmetics.
11371 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11373         * input/regression/fermata-rest-position.ly: new file
11375         * ly/property-init.ly (hideNotes): remove \setMmRestFermata
11377         * scripts/convert-ly.py (conv): add rule for \setMmRestFermata
11379 2004-08-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11381         * scm/framework-tex.scm (output-preview-framework) 
11382         (output-classic-framework): 
11383         * scm/framework-ps.scm (output-preview-framework):
11384         s/ly:paper-book-lines/ly:paper-book-systems/g
11386         * scm/fret-diagrams.scm (ss-font-encoding):
11387         s/my-font-encoding/ss-font-encoding
11389 2004-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11391         * scm/music-functions.scm (direction-polyphonic-grobs): Set
11392         direction also on fingerings.
11394         * lily/clef-engraver.cc: Add forceClef to list of read properties.
11396 2004-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11398         * po/nl.po: Some updates.
11400         * scm/lily.scm (_): New function.
11401         (postscript->pdf, postscript->png, lilypond-main)
11402         (postscript->pdf): Use it.  Write messages to stderr.
11404         * stepmake/stepmake/po-targets.make (ALL_PO_SOURCES): Add SCM_FILES.
11406         * scm/GNUmakefile (XGETTEXT_FLAGS): Set language to Lisp.
11407         xgettext does not recognise scheme yet.  Patch submitted.
11409         * lily/scm-option.cc (LY_DEFINE):
11410         * lily/main.cc: The program is now called lilypond (WAS:
11411         lilypond-bin).
11413         * lily/rest-collision.cc (do_shift): Uniformise two too many rests
11414         messages.
11416         * lily/include/paper-book.hh
11417         * lily/include/paper-system.hh: Finish renaming of paper-line to
11418         system.  Fix users.
11420 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11422         * scm/documentation-generate.scm (string-append): add version.
11424         * scm/define-markup-commands.scm (box): add box-padding and
11425         thickness props for the box command.
11427         * Documentation/user/changing-defaults.itely (Text encoding):
11428         elucidate use of \encoding for \header strings.
11430         * lily/parser.yy (lyric_element): use \encoding for lyrics strings.
11432         * lily/score.cc (LY_DEFINE): check if length of music > 0. Fixes:
11433         staff-change.ly
11435         * lily/output-def.cc (assign_context_def): use set_variable().
11437         * lily/text-item.cc (interpret_string): accept string input
11438         encoding too.
11440         * scm/encoding.scm (read-encoding-file): print warning when file
11441         can't be found.
11443         * tex/latin1.enc: remove.
11445         * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS.
11447         * lily/rod.cc (columnize): robustness fix. Don't crash for
11448         nil span points. Fixes: appoggiatura-segfault.ly
11449         (add_to_cols): extra robustness fix.
11451 2004-08-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11453         * lily/text-item.cc (interpret_string): use lookup_variable() to
11454         fidn inputencoding. Now, \paper inherits inputencoding from
11455         \bookpaper.
11457         * lily/script-engraver.cc (stop_translation_timestep): remove slur
11458         collision kludge.
11460         * lily/dynamic-engraver.cc (typeset_all): remove slur collision
11461         kludge.
11463 2004-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11465         * lily/main.cc (parse_argv): Bugfix: handle 'p'.  Add warning.
11467 2004-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11469         * lily/spanner.cc (spanned_rank_iv): Bugfix.
11471         * lily.scm: Mark un-internationlised user messages (with FIXME).
11473         * lily/include/modified-font-metric.hh (struct
11474         Modified_font_metric): New file.  (WAS: incorrectly named
11475         scaled-font-metric.hh ?)
11477         * lily/include/scaled-font-metric.hh: Remove.
11479         * lily/text-item.cc (interpret_string): Identify and document
11480         input-encoding problem.
11482         * lily/paper-book.cc (pages): Do not use `paper' as variable name
11483         for a Bookpaper.
11485         * tex/latin1.enc: Replace /minus with /hyphen.
11487         * scm/encoding.scm: For latin1 (input-)encoding, use
11488         latin1.  (Cork.enc is NOT latin1 -- see man latin1).
11490         * ly/book-paper-defaults.ly: Add a comment about suspicious TeX
11491         inputencoding.
11493 2004-08-12  Heikki Junes  <hjunes@cc.hut.fi>
11495         * Documentation/topdocs/INSTALL.html: fixes.
11497 2004-08-12  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11499         * buildscripts/builder.py: Fix for scons CVS.
11501 2004-08-11  Heikki Junes  <hjunes@cc.hut.fi>
11503         * Documentation/user/notation.itely,
11504         Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly,
11505         input/test/ambitus-mixed.ly: fix plurals:
11506         english: ambit, pl. ambits; latin: ambitus, pl. ambitus.
11508 2004-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11510         * lily/dynamic-engraver.cc (typeset_all):
11511         * lily/script-engraver.cc (stop_translation_timestep): Handle
11512         collisions with new-slur.
11514 2004-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11516         * scm/define-grobs.scm (all-grob-descriptions): Add
11517         new-slur-interface.
11519 2004-08-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11521         * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now
11522         produces .PS
11524 2004-08-09  Carl Sorensen  <carldsorensen@comcast.net>
11526         * scm/define-grob-properties.scm (all-user-grob-properties): fix
11527         definition of number-type
11529 2004-08-08  Carl Sorensen  <carldsorensen@comcast.net>
11531         * scm/fret-diagrams.scm : change sans-serif font encoding from 
11532         TeX-text to ec (uses ecss fonts instead of cmss fonts)
11534         * scm/define-grob-interfaces.scm (fret-diagram-interface): add
11535         number-type and label-dir
11537         * scm/define-grob-properties.scm: add number-type and label-dir
11539         * scm/fret-diagrams.scm (label-fret): allow fret label to be on either
11540         left or right.  Allow choice of upper-case roman, lower-case roman, or
11541         arabic numerals in fret label
11543 2004-08-04  Werner Lemberg  <wl@gnu.org>
11545         * lily/slur-quanting.cc: Include libc-extension.hh.
11546         s/round/my_round/.
11547         * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice):
11548         s/autobeaming/autoBeaming/.
11550 2004-08-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11552         * VERSION: 2.3.11 released.
11554         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate
11555         renameinput.
11557 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11559         * lily/lookup.cc (round_filled_box): remove warnings about blot
11560         diameter.
11562         * scm/paper.scm (paper-set-staff-size): make linethickness more
11563         easily tunable.
11565         * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics,
11566         \newlyrics -> \addlyrics
11568         * lily/text-spanner.cc (print): use it.
11570         * lily/dynamic-text-spanner.cc (print): use it.
11572         * lily/grob.cc (robust_relative_extent): new function.
11574         * scripts/lilypond-book.py (main): add -f tex as default process.
11576         * lily/text-spanner.cc (print): only take linear_combination of
11577         nonempty interval.
11578         
11580 2004-08-02  Pedro Kroger  <kroeger@pedrokroeger.net>
11582         * scm/page-layout.scm (default-page-make-stencil): If leftmargin
11583         isn't specified by the user in \bookpaper center the music in the
11584         page.
11586 2004-08-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11588         * Fix some problems after the renaming of my-lily -> lily
11590 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11592         * lily/lily-parser.cc (parse_string): don't overwrite keytable_.
11594         * lily/slur-quanting.cc (enumerate_attachments): apply center on
11595         stem-X in more cases. 
11597         * lily/stem.cc (dim_callback): solve todo.
11599 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11601         * input/test/README: new file.
11603         * lily/lily-parser.cc: rename my-lily* files.
11605         * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect
11606         parser.
11608         * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer.
11610         * lily/include/my-lily-parser.hh: rename My_lily -> Lily
11612         * make/mutopia-targets.make (local-WWW): don't make ps.gz
11613         examples. They take a huge amount of space.
11615         * Documentation/user/GNUmakefile: fix symlinks.
11617         * VERSION: 2.3.10 released.
11618         
11619         * input/test/lyrics-skip-notes.ly: remove
11621         * input/test/stem-cross-staff.ly (noFlag): fold into manual
11623         * input/test/{spacing-2,staff-space,tablature,textscript}.ly:
11624         remove.
11626 2004-08-01  Heikki Junes  <hanwen@xs4all.nl>
11628         * Documentation/user/{changing-defaults,notation,tutorial}.itely:
11629         fixes.
11631 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11633         * input/regression/beam-dir-functions.ly: move from test/
11635         * Documentation/user/notation.itely (Feathered beams): new node.
11637         * Documentation/user/changing-defaults.itely (Difficult tweaks):
11638         new node
11640         * input/regression/lyric-hyphen-retain.ly: move to regression.
11642         * input/regression/harmonic.ly: fold into manual
11643         
11644         * input/test/{hshift,move-accidentals,crescendi,feathered-beam,
11645         stem-length,chord-names-no-inversions}.ly: remove
11646         
11647         * input/test/tie-cross-voice.ly: move to regression.
11649         * Documentation/user/notation.itely (Running trills): new node.
11651         * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner
11653         * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent
11655         * lily/trill-spanner-engraver.cc: new file.
11657         * input/regression/trill-spanner.ly: new file.
11659         * input/test/timing.ly: fold into manual.
11661         * input/test/time.ly: remove
11663         * input/test/trill.ly: remove
11664         
11665         * input/test/time-signature-double.ly: fold into manual
11667         * input/test/separate-staccato.ly: remove
11669         * input/test/spanner-after-break-tweak.ly: fold into manual.
11671         * input/test/script-priority.ly: fold into manual.
11673         * input/test/scheme-interactions.ly: remove.
11674         
11675         * input/test/unfold-all-repeats.ly (mel),
11676         input/test/repeat.ly,input/test/repeat-shorter-bracket.ly,
11677         input/test/polymetric-differing-notes.ly input/test/polymetric.ly:
11678         fold into manual.
11680         * input/regression/no-staff.ly: move from input/test/
11682         * input/regression/markup-score.ly: move from input/test/
11684         * input/test/lyrics-melisma-faster.ly: fold into manual
11685         
11686         * input/test/lyrics-melisma-variants.ly: fold into manual
11688         * Documentation/user/notation.itely (Popular music): new node. 
11690         * input/test/gourlay.ly: remove
11691         
11692         * input/test/improv.ly: fold into manual.
11694         * input/test/figured-bass-alternate.ly (fl): remove
11696         * lily/dynamic-text-spanner.cc (print): new file.
11698         * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner
11700         * lily/engraver-group-engraver.cc (do_announces): reorder logic:
11701         keep recursing into children in case a parent context inserts a
11702         grob into a child context.
11704         * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to
11705         
11706 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11708         * scm/define-markup-commands.scm (postscript): new markup command
11709         \postscript
11711         * Documentation/user/notation.itely (Formatting cue notes): new
11712         section.
11714         * input/test/clef-end-of-line.ly: fold into manual.
11716         * input/test/scales-greek.ly: remove.
11718         * input/test/chords-without-melody.ly: fold into manual.
11720         * input/test/cadenza-skip.ly: remove.
11722         * input/test/clef-8-syntax.ly: remove.
11724         * input/test/clef-manual-control.ly: move into manual.
11726         * Documentation/user/notation.itely (Aligning to cadenzas): fold
11727         in cadenza-skip.ly
11729         * mf/parmesan*.mf: change neo_mensural to neomensural.
11731         * input/test/trills.ly: remove.
11733         * input/test/transposition.ly: remove.
11735         * input/test/to-xml.ly: move to no-notation.
11737         * buildscripts/lilypond-profile.sh: change zsh bomb to warning.
11739         * lily/ledger-line-spanner.cc (print): use staff variable, not
11740         me. Fixes ledger lines on differently sized staves.
11742         * input/test/rhythm-excercise.ly: remove file.
11744         * lily/stem.cc (dim_callback): only do something if visible. Fixes
11745         spurious flag not found warning for 128th rest.
11747         * input/regression/rest-dot-position.ly: new file.
11748         
11749         * input/test/rest-dot-positions.ly: remove
11751         * lily/staff-symbol-referencer.cc (get_position): emergency
11752         fallback: use coordinate * 2.
11754         * input/no-notation/midi-scales.ly: move from test/
11756         * scm/define-markup-commands.scm (score): remove debugging code.
11758         * input/test/incipit.ly (violin): remove. 
11760         * lily/system-start-delimiter.cc (print): only draw system
11761         delimiter to staves that reach up to left bound of the delimiter.
11763         * input/no-notation/embedded-scm.ly: move from test/
11765         * input/test/follow-voice.ly: remove
11767         * input/no-notation/dynamic-absolute-volume.ly: move from test/.
11769         * input/test/drarn*: remove
11770         
11771         * input/test/count-systems.ly: remove.
11773         * lily/bar-line.cc (compound_barline): fix : for staff without
11774         lines.
11776         * lily/accidental.cc (print): use music_font_alist_chain(). This
11777         fixes smaller cautionaries.
11779         * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
11780         encoding for accidental.
11782         * Documentation/user/notation.itely (Educational use): new section
11784         * input/test/*.ly: clean up directory: move examples into manual
11785         or regtest.
11786         
11788         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add
11789         mode as well. This fixes resolution errors.
11791 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11793         * scm/lily.scm (postscript->png): show commands for --verbose.
11795         * flower/include/getopt-long.hh: opps. short option should be
11796         char, not int.
11798         * Documentation/user/GNUmakefile: use symlinks to save space.
11800         * VERSION: 2.3.9 released.
11802         * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.
11804         * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
11805         manual.
11807         * Documentation/user/tutorial.itely (Integrating text and music):
11808         remove \score and \notes from manual.
11810         * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note
11811         mode in the beginning.
11813 2004-07-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11815         * Documentation/user/changing-defaults.itely (Horizontal spacing):
11816         Correct the documentation of the spacing parameters. 
11818         * Documentation/user/tutorial.itely (Integrating text and music), 
11819         Documentation/user/lilypond-book.itely (Integrating LaTeX and
11820         music): Document that you need to add the map file ec-mftrace.map
11821         in the dvips command.   
11823 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11825         * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not
11826         found.
11828         * lily/text-item.cc (interpret_string): insert encoding setting
11829         here
11831         * scm/framework-ps.scm (ps-font-command): remove feta/parmesan
11832         encoding kludge.
11834         * Documentation/user/changing-defaults.itely (Text encoding): node
11835         on encoding.
11837         * lily/lyric-engraver.cc (try_music): remove superfluous check.
11839         * lily/book-paper-def.cc (find_scaled_font): remove default
11840         encoding, because it messes up font loading for feta and
11841         parmesan. Encoding should only be specified for running texts.
11843         * lily/modified-font-metric.cc (text_dimension): support coding
11844         scheme ""
11845         
11846 2004-07-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11848         * lily/tie-engraver.cc (stop_translation_timestep): remember tie
11849         definition, so \override works as expected.
11851         * lily/measure-grouping-engraver.cc: clarify
11853 2004-07-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11855         * lily/parser.yy (context_def_mod): remove \consistsend
11857         * lily/context-def.cc (instantiate): use Translator::must_be_last
11858         to determine engraver order.
11860         * lily/translator.cc (must_be_last): new function
11862         * scripts/convert-ly.py (conv): rule.
11864         * lily/bar-line.cc (print): return '() for height == 0.0 too.
11866 2004-07-27  Heikki Junes  <hjunes@cc.hut.fi>
11868         * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs.
11870 2004-07-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11872         * lily/include/lily-guile.hh (scm_is_int): compat glue.
11874 2004-07-25  Pedro Kroger  <kroeger@pedrokroeger.net>
11876         * input/regression/page-layout.ly: new file.
11878         * scm/paper.scm (set-paper-dimensions): Preliminary support for
11879         left and right margins.
11881         * Documentation/user/changing-defaults.itely (Page layout):
11882         Explain the leftmargin option.
11884 2004-07-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11886         * input/test/lyrics-melisma-variants.ly (texidoc): new file.
11888         * input/test/lyrics-melisma-faster.ly: new file.
11890         * lily/new-lyric-combine-music-iterator.cc (find_voice): allow
11891         change of melody by setting associatedVoice.
11893         * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode.
11895         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy
11896         file contents, rather \include them, so default linewidth is set.
11897         (ly_options): make BOOKPAPER set of options. Move linewidth
11898         settings there.
11900         * Documentation/user/examples.itely: new file. Templates are to be
11901         moved here.
11903         * Documentation/user/programming-interface.itely: move chapter.
11905         * scm/document-markup.scm (doc-markup-function): add @code
11907         * stepmake/stepmake/texinfo-rules.make: remove chmod.
11909 2004-07-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11911         * scm/page-layout.scm (plain-header): add printpagenumber boolean
11912         to bookpaper.
11914         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
11915         $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary.
11917         * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere.
11919         * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin 
11921         * scripts/lilypond-latex.py: move from lilypond.py
11923         * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting.
11924         (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book.
11926         * scm/lily.scm (postscript->png): new function
11927         (postscript->pdf): new function
11929         * lily/paper-book.cc (post_processing): call
11930         convert-to-{dvi,ps,png,pdf}
11932         * scripts/ps2png.py (option_definitions): new file.
11934         * lily/paper-book.cc (output): call output-preview-framework
11935         (post_processing): new function. Do PDF/PNG conversion.
11937         * lily/paper-outputter.cc (close): new function.
11939         * scm/framework-ps.scm (convert-to-pdf): new function. Call
11940         ps2pdf.
11941         (output-preview-framework): new function. Generate a preview .ps
11942         
11944 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11946         * VERSION: release 2.3.8
11947         
11948         * lily/note-head.cc: remove ledger line handling.
11950         * lily/ambitus.cc (print): strip away accidental / note head code,
11951         and associated properties.
11953         * lily/ambitus-engraver.cc (create_ambitus): change name to
11954         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
11955         other ambitus parts.
11956         (create_ambitus): group grobs in Ambitus grouping object. 
11958         * lily/include/pitch-interval.hh (Pitch>): new file.
11960         * lily/pitch-interval.cc (add_point): new file.
11962         * lily/ledger-line-engraver.cc: new file.
11964         * lily/ledger-line-spanner.cc (print): new file. Set limits to
11965         ledger line length to avoid clashes.
11967 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11969         * Documentation/user/invoking.itexi (Invoking lilypond): remove
11970         deprecated options
11972 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11974         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
11975         to command line option: fast=1 (default on).
11977         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
11978         This brings SCons run-time on up-to-date tree down from 48s with
11979         only checksums, to 34s without 2day checksums, to 14s (make needs
11980         4 seconds).
11981         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
11982         necessary.
11984 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11986         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
11987         (score_extra_encompass): process scripts at edges too, by checking
11988         control points directly. 
11990 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11992         * po/nl.po: Update.
11994         * lily/main.cc: Fix ly:option-usage help.
11996         * input/regression/slur-script.ly: More collision tests.
11998         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
12000 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12002         * VERSION: release 2.3.7
12004         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
12005         files.
12007         * Documentation/user/notation.itely (Slurs): document ^ and _ for
12008         slurs.
12010         * input/regression/slur-script.ly: new file.
12012         * lily/accidental-engraver.cc (process_acknowledged_grobs):
12013         make accidental appear to come from note head engraver.
12015         * lily/slur-quanting.cc: new file.
12016         (score_extra_encompass): new function. Avoid scripts and
12017         accidentals
12019 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12021         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
12022         This greatly reduces the number of files that get recompiled
12023         after touching config.hh.
12025         * config.hh.in: Remove GUILE_*_VERSION.
12027         * lily/new-slur.cc: Resolve conflicts.
12029         * lily/stem-engraver.cc (make_stem): New method.
12031         * lily/include/script-interface.hh:
12032         * lily/script-interface.cc: New file.
12034         * lily/include/script.hh:
12035         * lily/script.cc: Remove.
12037         * lily/music.cc (duration_log): New method.
12039         * lily/script.cc (struct Skript): Remove.
12041         * lily/new-slur.cc (get_base_attachments): Try at articulations.
12042         Lots of coding cleanups (Stom).
12044 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12046         * lily/new-slur.cc (avoid_staff_line): new function: avoid
12047         collisions with staff lines.
12049         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
12050         global_path
12052         * scm/define-grobs.scm (all-grob-descriptions): set ratio
12053         .25. This flattens short slurs.
12055         * lily/new-slur.cc (enumerate_attachments): move X of attachment
12056         points for tilted slurs.
12058         * input/regression/slur-tilt.ly: new file.
12060         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
12061         stems of 16th graces too.
12063         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
12064         quant penalty dependent on how much the line is in the gap.
12066         * input/regression/grace-stem-length.ly: new file.
12068         * lily/beam-quanting.cc (score_forbidden_quants): remove
12069         interquant check. The penalty of 1000 is much too harsh, and the
12070         inter case should be caught by check-staff-line-in-gap check.
12072         * lily/scm-option.cc: move debug-beam to \paper.
12074         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
12075         .txt files to appease makeinfo.
12077         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
12078         remove texttagline.
12079         
12080         * lily/new-slur.cc: cleanup, split in functions.
12082         * lily/parser.yy (chord_body_element): allow octave-check = inside
12083         chord body. 
12085         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
12087         * lily/stem.cc (height): call Beam::after_line_breaking().
12089         * lily/rest-collision.cc (force_shift_callback): only call shift
12090         for columns containing rests.
12092         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
12094         * input/regression/font-postscript.ly: invoke afm2tfm. 
12096 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12098         * mf/SConscript: Build map files.
12100         * SConstruct: Rename $out to out-www in web.
12102 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12104         * SConstruct (web_kluts): Have make web build in out-www.  Not.
12106 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12108         * Documentation/user/music-glossary.tely (Top): add fragment to
12109         pertinent @lilypond entries.
12111         * scm/define-grobs.scm: switch on new-slur by default.
12113         * lily/scm-option.cc: symbol != string.
12115         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
12116         really work yet.
12117         (set_end_points): make X coord of attachment dependent on  Y.
12118         (score_encompass): add edges too.
12120 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12122         * lily/stem.cc (get_beaming): new function.
12124         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
12125         for fragment snippets. This fixes inclusion of toplevel-music
12126         examples (such as new-slur.ly)
12128 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12130         * scripts/lilypond-book.py: Remove second import of stat.
12132         * More SCons cleanups.
12134         * Documentation/bibliography/computer-notation.bib (note): Remove
12135         extraneous closing brace.
12137 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12139         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
12140         stat calls.
12142         * Documentation/bibliography/SConscript (bibs): failed try to get
12143         bib2html find html-long.bst.
12145         * buildscripts/bib2html.py (stat): fail if bibtex fails.
12147         * make/stepmake.make: use usescons for using scons. 
12149 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12151         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
12152         for lilypondend.  Import stat (huh?).
12154 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12156         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
12157         bypass dvi. 
12159         * input/regression/font-postscript.ly: new file. 
12161         * scm/framework-ps.scm (load-fonts): load pfb files too.
12163         * lily/pfb.cc (pfb2pfa): new file.
12165 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12167         * scripts/lilypond-book.py (PREAMBLE_LY): set
12168         toplevel-music-handler too.
12170 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12172         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
12173         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
12175         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
12177         * python/SConscript:
12178         * python/vim:
12179         * input/mutopia/*SConscript: New file.
12181         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
12183         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
12184         fixes web build.
12186         * make/stepmake.make (scons): re-route to SCONS if user has been
12187         running scons in this tree.
12189         * SConstruct (config_vars): Add CPPDEFINES.
12190         (env): Set checksums type to "content".
12191         (save_config_cache): Do not exit after configuring when using
12192         checksums (the default) instead of timestamps.
12194 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12196         * SConstruct: Further development.
12198         * input/test/SConscript: 
12199         * input/template/SConscript: 
12200         * input/regression/SConscript: 
12201         * Documentation/bibliography/SConscript:
12202         * Documentation/bibliography/index.html.in: New file.
12204         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
12205         generation.
12207         * buildscripts/builder.py: Add new builders.
12209         * make/stepmake.make: 
12210         * stepmake/stepmake/*.make: 
12211         * configure.in:
12212         * lily/*:
12213         * flower*: Use config.hh (Was config.h).
12215         * scm/encoding.scm (get-coding): Print friendly error message when
12216         no encoding is found, rather than crashing.
12218 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12220         * lily/new-slur.cc (score_slopes): strong sloping score only when
12221         stems point in same dir. 
12223 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12225         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
12226         for beam start.
12228         * lily/parser.yy (context_prop_spec): check grob name for
12229         alphanumericness..
12231         * lily/lyric-engraver.cc: creates LyricText objects
12233 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12235         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
12237 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12239         * SConstruct: Configure only pristine build tree or on user
12240         request.  Cleanups.  Add Documentation/topdocs to subdirs.
12241         Use checksums instead of timestamps.
12242         (CheckYYCurrentBuffer): Return result.
12244         * Documentation/topdocs/SConscript: New file.
12246 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12248         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
12250         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
12251         scm_from_int instead.
12253 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12255         * SConstruct: Updates.  Add targets: tar, dist, release.
12257 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12259         * input/mutopia-header.ly: Generate output.
12261         * SConstruct:
12262         * buildscripts/builder.py:
12263         * Documentation/user/SConscript: SCons fixes.
12265 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12267         * lily/new-slur.cc (class New_slur): new file. Score based slur
12268         computations.
12270 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12272         * mf/SConscript: Remove Builders.
12274         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
12276         * input/SConscript: 
12277         * Documentation/user/SConscript: New file.
12279 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12281         * Documentation/topdocs/NEWS.texi (Top): add note about new
12282         emacs electric-|
12284         * scm/*.scm: adapt ly:warn calls.
12286         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
12288         * lily/repeat-acknowledge-engraver.cc (process_music): look at
12289         main timing, not grace timing. Fixes volta-repeat-grace.
12291         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
12292         remove ly:kpathsea-gulp-file.
12294         * scm/translation-functions.scm (format-metronome-markup): make
12295         note smaller, align to bottom.
12297         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
12299         * lily/metronome-engraver.cc (stop_translation_timestep): attach
12300         metronome to musical column. Don't ack time sigs or bar lines.
12302 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
12304         * THANKS: sort, add David. Kristof contributed code, he is a
12305         contributor.
12307 2004-07-09  David Svoboda      <svoboda@cmu.edu>
12309         * elisp/lilypond-mode.el,
12310         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
12311         count beats between last measure stop | and point in emacs.
12312         
12313 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12315         * tex/GNUmakefile (TEX_FILES): don't dist
12316         music-drawing-routines.ps, latin1.enc 
12318         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
12319         --no-pdf, --pdftex
12320         (copyright): add --latex option
12321         (ic_p.make_include_option): use direct PS as default.
12323         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
12325         * input/regression/beam-concave.ly (rossFourBeams): add cases from
12326         Ross
12328         * scm/script.scm (default-script-alist): marcato should follow
12329         into staff
12330         
12331 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12333         * buildscripts/builder.py:
12334         
12335         * Documentation/SConscript (outdir): New file.  Add *list.ly
12336         dependencies.  Fixes PDF doc build.
12338 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12340         * SConstruct: Add Tar target (incomplete), fix install issues, fix
12341         run from build-dir.
12343         * ly/SConscript:
12344         * scm/SConscript: New file.
12346         * lily/main.cc (dir_info): Print variables in sh format.
12348         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
12350         * mf/SConscript: Update multiple target rules.
12352         * SConstruct (assert_version): Add.
12354 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12356         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
12358 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12360         * buildscripts/mf-to-table.py: Do not try to open ''.
12362         * mf/SConscript: New file.
12364 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
12366         * scm/fret-diagrams.scm : Convert many properties to constants,
12367         reducing the pollution of the property namespace.
12369         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
12370         unnecessary properties for fret-diagram
12372         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
12373         for interface
12375 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12377         * SConstruct: Update.
12379 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12381         * input/regression/beam-quant-standard.ly (seconds): print desired
12382         quants when failing.
12384 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12386         * SConstruct:
12387         * flower/SConscript:
12388         * lily/SConscript: New file.
12390 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
12392         * scm/define-grob-properties.scm (all-user-grob-properties): Add
12393         descriptions for all fret-diagram properties.
12395         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
12396         fret-diagram interface code
12398 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12400         * ly/book-paper-defaults.ly: set default encoding to ec.
12402         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
12403         installed.
12405         * tex/latin1.enc: new file, from a2ps. 
12407 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
12409         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
12410         add a faint, green border line.
12412         * Documentation/index.html.in: drop <table>, add a faint border line.
12414 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12416         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
12418         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
12420 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
12422         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
12424         * scm/output-tex.scm (white-text): Add scale parameter to allow font
12425         scaling
12427         * scm/stencil.scm (fontify-text-white) : Adjust to better center,
12428         properly scale white text
12430         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
12431         position for numbered dots so dot will touch fret.
12432         (various routines): move to font-metric interface, rather than
12433         name, size interface.  Clean up comments.
12435         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
12436         size and offset to better center white text.
12438 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12440         * ChangeLog: Remove pre-2.1 changes.
12442         * Documentation/misc/ChangeLog-2.1: New file.
12444         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
12445         from ChangeLog.
12447 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12449         * input/test/chords-below-volta-bracket.ly,
12450         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
12452 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12454         * VERSION: release 2.3.6
12456         * input/regression/beam-quant-standard.ly: new file: test standard
12457         beam quants.
12459         * scm/beam.scm (check-quant-callbacks): new function
12460         (check-beam-quant): new function: check whether current beam
12461         quants match argument.
12463         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
12464         forbidden quant for sitting (upstem)/hanging (downstem) on outer
12465         staffline line.
12467 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12469         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
12470         functions.
12472         * lily/note-collision.cc (do_shifts): align colliding notes to
12473         their leftmost note.
12475         * input/regression/collision-alignment.ly: new file.
12477         * ly/init.ly: don't print gc stats.
12479         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
12480         extra newline
12482         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
12483         for dimensions. This fixes ottava-remove-empty-staff.ly
12485         * input/regression/lyrics-tenor-clef.ly: new file.
12487         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
12488         cyclic parents when two axis-group-engravers are
12489         present. Fixes: crash-axis-group-engraver.ly. 
12490         
12491         * input/test/volta-chord-names.ly: new file.
12493         * scm/define-context-properties.scm
12494         (all-user-translation-properties): change voltaOnThisStaff
12495         definition. 
12497         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
12498         if necessary.
12500         * lily/volta-bracket.cc (print): handle volta brackets without
12501         bars. 
12503 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12505         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
12506         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
12508 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12510         * scm/output-gnome.scm: updated instructions for running gnome
12511         backend
12513 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
12515         * scm/fret-diagrams.scm (draw-dots): default values for dot size
12516         and dot-position now depend on finger-code value; in-dot makes
12517         dots larger and centered.
12518         (draw-barre): added straight-barre indicator option
12519         (draw-dots): made fontify-text-white work.
12521         * music-drawing-routines.ps: added /draw_white_text
12523         * scm/output-tex.scm:  added white-text
12525         * scm/output-ps.scm:  added white-text
12527         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
12528         list of stencil expressions
12530         * scm/stencil.scm: Added fontify-text-white
12532 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
12534         * input/regression/+.ly: use @unnumbered section.
12536 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12538         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
12539         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
12541 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12543         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
12545 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12547         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
12548         was causing an error. (was not actually commited in 2004-06-20)
12550         * input/regression/lily-in-scheme.ly (withPaddingC): does not
12551         breaks anymore
12553 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12555         * VERSION: 2.3.5 released.
12556         
12557         * lily/my-lily-parser.cc (parse_string): switch module too.
12559 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
12561         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
12562         ec-fonts-mftraced to running requirements.
12564 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12566         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
12567         assignments don't reach the original file.
12569         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
12570         exists
12572 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
12574         * scm/output-gnome.scm: 
12575         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
12577         * debian/: Apply Debian patch (Anthony Fok).
12579 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
12581         * Documentation/user/music-glossary.tely: fix titling; @top is already
12582         an @unnumbered @chapter.
12584 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12586         * debian/GNUmakefile (EXTRA_DIST_FILES):
12587         (CONF_FILES): update file list.
12589         * lily/stencil.cc (interpret_stencil_expression): bugfix.
12591 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12593         * debian/: Remove cruft (requested Anthony Fok.)
12595         * buildscripts/guile-gnome.sh: Build without gcc libtool version
12596         juggling.
12598         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
12599         Add popup menu with grob properties.
12601         * lily/grob-scheme.cc (ly:grob-properties):
12602         (ly:grob-basic-properties): New function.
12604         * lily/stencil.cc (interpret_stencil_expression): Comment-out
12605         "no-origin" call.  Fixes -fps output.
12607         * scm/output-ps.scm (no-origin): Add dummy implementation.
12609         * scm/output-gnome.scm (define-origin): Remove
12610         (grob-cause): Add.
12612         * scm/output-ps.scm (scm):
12613         * scm/output-tex.scm (scm): Remove define-origin from exports list.
12614         (define-origin): Remove.
12616         * scm/output-gnome.scm (define-origin): 
12618         * scm/lily.scm (ly:all-output-backend-commands): Remove
12619         define-origin.  Add grob-cause.
12621 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
12623         * buildscripts/lilypond-words.py: add ly/portugues.ly.
12625 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
12627         * Documentation/user/GNUmakefile:
12628         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
12629         --include-css=.../texinfo.css; command includes css into the html.
12631         * Documentation/texinfo.css: add file.
12632         define <hr> as black and thin.
12634 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12636         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
12637         stencil expression. Junk define-origin.
12639         * lily/my-lily-parser.cc (parse_string): init parser variable when
12640         lexer_ is set, ie. in parse_string and parse_file.
12642         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
12643         ly:score-bookify.
12645         * scm/lily.scm (collect-scores-for-book): new function.
12647         * ly/init.ly: print collected scores/musics.
12649         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
12650         scope, not in lily module.
12652         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
12654         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
12655         encapsulate gtk/pango tests.
12657         * po/tr.po: Turkish translation.
12659 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12661         * input/regression/lily-in-scheme.ly: regression test for #{
12662         ... #} syntax
12664         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
12665         was causing an error.
12667         * Documentation/user/programming-interface.itely (Using LilyPond
12668         syntax inside Scheme): documentation for #{ ... #} syntax.
12670 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
12672         * Documentation/index.html.in: use black thin <hr>.
12674         * buildscripts/mutopia-index.py: use thin black <hr>.
12676 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12678         * scm/fret-diagrams.scm: Use UNIX style line endings.
12679         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
12680         typo.  Fixes compile.
12682         * scm/output-ps.scm (white-dot): Remove second incarnation.
12684         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
12686 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12688         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
12689         single file error.
12691         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
12693 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
12695         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
12696         remove size as argument to fret-diagram interface;
12697         improved white-circle dots for fret;
12698         improved top-fret thick line/
12700         * scm/output-ps.scm: added white-dot function
12702         * scm/output-tex.scm: added white-dot function
12704         * tex/music-drawing-routines.ps: added draw_white_dot function
12706         * ps/music-drawing-routines.ps: added draw_white_dot function
12708         * input/test/fret-diagram.ly: examples to show multiple
12709         functions and multiple interfaces
12711 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12713         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
12714         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
12716         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
12717         conflict.  Have I told you lately how much I love autotools?
12719 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12721         * lily/lily-guile.cc: 
12722         * lily/pangofc-afm-decoder.cc:
12723         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
12724         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
12726         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
12727         developers.
12729         * lily/paper-outputter.cc (file): New method.
12730         (dump_string): Use it.
12732         * scm/output-gnome.scm: Update with pango CVS info, lilylib
12733         musing.
12735         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
12736         of them has a comma :-).
12738         * scm/framework-gnome.scm: Add pango decoders.
12740         * lily/include/pangofc-afm-decoder.hh: 
12741         * lily/pangofc-afm-decoder.cc: New file.
12743         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
12745         * configure.in: Check for pango.
12747         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
12748         autoconf).
12749         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
12751         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
12753 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12755         * Documentation/user/tutorial.itely (Integrating text and music):
12756         fix grammar & punctuation.
12758 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12760         * lily/: Stray janitorial cleanups.
12762         * scm/lily.scm (ly:all-stencil-expressions):
12763         * scm/lily.scm (ly:all-output-backend-commands): New function.
12765         * scm/safe-lily.scm (safe-objects): Add them.
12767         * scm/framework-gnome.scm (<gnome-outputter>): New class.
12769         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
12771 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12773         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
12775 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12777         * scm/page-layout.scm (default-page-make-stencil): add
12778         raggedbottom, raggedlastbottom.
12780         * Documentation/user/changing-defaults.itely (Page layout): add doc.
12782         * scm/framework-tex.scm (define-fonts): fix export of
12783         papersize.
12785         * lily/paper-book.cc (classic_output): strip suffixes from
12786         framework functions.
12788         * lily/tuplet-bracket.cc (before_line_breaking): do not return
12789         SCM_UNDEFINED to Scheme.
12791 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12793         * lily/book.cc: remove Book::to_stencil().
12794         (process): whoops. Score::book_rendering returns vector, not list.
12796         * scripts/convert-ly.py (conv): remove \notes.
12797         apply to input examples.
12799         * lily/paper-outputter.cc (output_stencil): don't use
12800         smobify_self() but self_scm()
12802         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
12803         from smobify_self().
12805         * lily/paper-book.cc (output): load framework module
12806         scm_c_resolve_module().
12808         * python/lilylib.py (exit): exit with argument i.
12810 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12812         * scm/framework-gnome.scm (output-framework-gnome): Try loading
12813         gnome modules from non-toplevel.
12815         * lily/ly-module.cc (ly:import-module): Export to ly:.
12817         * lily/paper-score.cc (process): Do not show progress newline.
12819         * lily/paper-book.cc (output, classic_output): Show progess
12820         newline after score.
12822 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
12824         * buildscripts/lilypond-words.py: add ly/vlaams.ly
12826 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12828         * lily/score.cc (ly:run-translator): Do not crash on empty music
12829         list.
12831         * lily/book.cc (process): Do not render score when systems is empty.
12833         * input/simple-song.ly: Down one octave.
12835         * scm/output-gnome.scm: Remove script again; re-add modules fix
12836         (CVS conflict resolve?)
12838         * lily/stencil.cc (ly:interpret-stencil): Was:
12839         interpret_stencil_expression.
12841 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12843         * buildscripts/guile-gnome.sh: New file.
12845         * scm/output-gnome.scm: White background, better window size, sane
12846         canvas size.  Cleanups.
12848 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12850         * VERSION: release 2.3.4
12852         * Documentation/user/invoking.itexi (Invoking the lilypond
12853         binary): document --safe.
12855         * scm/output-gnome.scm: set PATH in script.
12857         * scm/page-layout.scm (default-page-make-stencil): don't stretch
12858         if there is too few systems on a page.
12860         * lily/parser.yy (relative_music): start at middle C without pitch
12861         argument.
12863         * Documentation/user/changing-defaults.itely (Page layout): new node.
12864         (Paper size): rename node
12865         (Page breaking): new node.
12866         (Titling): move from invoking.
12867         (File structure): new node.
12869         * lily/parser.yy (score_body): allow \header and music anywhere in
12870         \score body.
12872 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12874         * scm/lily.scm (ly:load): Remove page-breaking.scm.
12876 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12878         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
12880         * lily/include/paper-line.hh: rename to Paper_system.
12882         * lily/include/paper-book.hh: doc class.
12884         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
12886         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
12887         (plain-header): add instrument-name.
12888         (default-page-make-stencil): bugfixes.
12890         * lily/parser.yy (book_body): allow \header anywhere in \book{}
12892         * lily/paper-book.cc: remove copyright & tagline. Remove
12893         interactions with Page
12895         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
12896         here, 
12897         (default-page-make-stencil): new function
12898         (default-page-music-height): new function
12899         (page-headfoot): new function
12900         (ly:optimal-page-breaks): generate stencils directly from here
12902         * scm/titling.scm: new file, group titling functions
12904 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12906         * scm/output-gnome.scm: Handle multiple pages.
12908         * scm/framework-gnome.scm: Do not load output-gnome.
12909         (framework-gnome): Invoke output-gnome::header and
12910         output-gnome::end-output as faked stencils.  Fixes experimental
12911         gnome output.
12913 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12915         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
12916         octavation compatibility fixes. Backportme. 
12918         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
12919         pages.
12920         (ly:optimal-page-breaks): combine-penalties: no shortcut for
12921         negative. Now we handle negative penalties (ie. \pageBreak)
12922         correctly.
12924         * lily/system.cc (get_line): extract page-penalty from the left
12925         bound.
12927         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
12929 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12931         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
12933 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12935         * scm/output-gnome.scm: Update script.  Move development to
12936         lilypond_2_3_2 branch for now.
12938 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12940         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
12941         negative penalties.
12942         cleanups.
12944         * Documentation/user/changing-defaults.itely (Creating contexts):
12945         index entries
12947         * scm/page-breaking.scm (ly:optimal-page-breaks): new
12948         file. Rewrite function. 
12950         * lily/paper-book.cc (pages): new interface: page-breaking returns
12951         list of line-list.
12953         * lily/page.cc (Page): take lines argument.
12955         * scm/document-translation.scm (all-engravers-doc): link to user man
12957         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty
12958         iso. score.
12960         * Documentation/user/notation.itely (Relative octaves): typo.
12962         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
12964 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12966         * scm/output-gnome.scm: Update build script.
12968 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12970         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
12971         gnome backend.
12973         * scm/framework-gnome.scm: New file.
12975         * scm/lily.scm: Use it.
12977         * lily/paper-outputter.cc: Janitorial cleanups.
12978         (ly:outputter-dump-string): Remove unreachable statement.
12980         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
12981         (ice-9): Bugfix: Add srfi-1.
12983         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
12985 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12987         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
12988         in do_quit()
12990 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12992         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
12994 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12996         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
12997         override of Beam::position-callbacks. Why would grace beams not be
12998         quantized? Fixes: weird-stem-size-grace. 
13000         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
13001         warning only once. Backportme.
13003         * lily/accidental-engraver.cc (number_accidentals_from_sig):
13004         bugfix, 2nd try. Backportme.
13006         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
13008 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13010         * Documentation/user/notation.itely (Instrument transpositions):
13011         Correct the name of the instrumentTransposition property.
13013 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13015         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
13017 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13019         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
13020         and postLilyPondExample are called when defined.
13022 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13024         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
13025         This fixes setting notenames with `\include "nederlands.ly" '
13027         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
13028         new function.
13030 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13032         * scm/page-layout.scm: don't do piece, it should be in score-title
13033         only.
13035         * lily/lexer.ll: lex \score separately.
13037         * lily/paper-book.cc: junk stencil2line.
13039         * lily/paper-line.cc (Paper_line): construct from Stencil
13040         directly. No futzing with the dimensions.
13042         * lily/include/paper-line.hh (class Paper_line): 
13044         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
13045         takes arbitrary number of arguments.
13047         * input/test/markup-score.ly (tuning): simplify example. 
13049 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13051         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
13053         * scm/define-markup-commands.scm (score): define score-markup
13055         * lily/parser.yy (markup): use score-markup.
13057         * lily/score.cc: add ly:score? 
13059 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
13061         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
13062         fret-parse-string so it prepares for calls to fret-diagram-verbose
13063         Changed display constants to props so they are available for
13064         \override.
13066 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13068         * VERSION: release 2.3.3
13070         * stepmake/stepmake/generic-vars.make: unset LANG.
13072         * input/regression/tuplet-nest.ly: bugfix.
13074         * lily/tie-performer.cc (stop_translation_timestep): reset
13075         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
13077         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
13078         clear repeat_ directly after setting stem_tremolo_. Fixes:
13079         tremolo-repeat.ly
13081         * input/regression/span-bar-break.ly: new file.
13083         * scm/define-grobs.scm (all-grob-descriptions): remove
13084         break-visibility from SpanBar. Fixes: piano-repeat.ly
13086 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13088         * python/lilylib.py (make_ps_images): only compute bbox when needed.
13090         * scripts/lilypond-book.py (process_snippets): use lily -f ps
13091         files for generating pngs. (failed experiment)
13093         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
13094         file with PFA fonts included.
13096         * lily/score.cc (default_rendering): put header in too.
13098         * lily/paper-line.cc (LY_DEFINE): change function to
13099         ly:paper-line-extent
13101         * scm/page-layout.scm (default-book-title): only add lines for
13102         non-nil fields.
13103         (default-score-title): idem.
13105         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
13107         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
13109         * lily/include/paper-book.hh (class Paper_book): remove height_
13110         member.
13112         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
13114         * lily/ly-module.cc (LY_DEFINE): bugfix.
13116         * lily/paper-book.cc (book_title): separate function for the book
13117         title.
13119         * scm/page-layout.scm (default-book-title): only account for
13120         markup fields.
13122         * scm/framework-ps.scm: new file. Move high level interface from
13123         output-ps.scm
13125         * scm/music-functions.scm (def-grace-function): move macros from
13126         ly/music-functions-init.ly
13128         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
13129         framework-tex.scm
13131         * scm/framework-tex.scm (dump-line): new file. High level
13132         interface for output (pages, systems, header). 
13134         * lily/include/page.hh (class Page): add is_last_ field.
13136         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
13138         * lily/paper-book.cc (split_string): new function
13139         (output): output multiple formats, i.e. --format=ps,tex
13141         * scm/output-ps.scm (output-scopes): dump variables directly.
13142         (define-fonts): rewrite for new interface
13144         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
13146         * lily/paper-outputter.cc (Paper_outputter): take format argument.
13148         * lily/main.cc (parse_argv): don't set extension for output.
13150         * lily/clef-engraver.cc (create_clef): remove
13151         Staff_symbol_referencer::set_position() call. 
13153 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13155         * ly/music-functions-init.ly (addlyrics): set the 'origin property
13156         with the location argument in music function definitions.
13158 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13160         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
13161         staffsymbol dependency.
13163         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
13164         cleanups.
13166         * lily/book.cc (process): return Paper_book
13167         (to_stencil): use Book::process().
13169         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
13170         header_ field. Store in $globalheader
13172         * lily/parser.yy (book_body): book header is initted to
13173         $globalheader.
13176 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13178         * input/test/fill-a4.ly: removed.
13180         * lily/parser.yy (output_def): push scope of parent_ Output_def
13181         too.
13183 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13185         * scm/output-gnome.scm: Update info.
13187 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13189         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
13191         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
13192         than 1 module.
13194         * lily/include/ly-module.hh (ly_use_module): rename is_module to
13195         ly_c_module_p.
13197         * scm/page-layout.scm (default-book-title): move Scheme titling
13198         functions to here.
13200         * lily/parser.yy (book_paper_block): remove scope too.
13202         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
13204         * lily/rest.cc: add direction to rest properties.
13206         * lily/include/output-def.hh: new file, move from
13207         music-output-def.hh
13209 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13211         * scm/output-gnome.scm: Describe feta-cork hack.
13213 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13215         * lily/include/book-paper-def.hh: derive from Output_def 
13217         * lily/include/paper-def.hh: move all functionality out of class.
13218         Junk header.
13220         * lily/include/music-output-def.hh: rename Music_output_def to
13221         Output_def.
13223         * input/wilhelmus.ly: only set space for Paper formatting. 
13225         * lily/include/midi-def.hh: remove file, remove class.
13226         Move functions to Music-output-def.
13228         * lily/music-output-def.cc (Music_output_def): remove separate
13229         translator table. Lookup translators in scope directly. This
13230         obviates Context suffix for context identifiers, i.e.
13232         \context {
13233           \Staff
13234           .. 
13235           }
13238         will work.
13241         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
13243         * Documentation/user/changing-defaults.itely (Horizontal spacing):
13244         document spacing override hack.
13246 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13248         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
13249         installation info.  Support point-and-click.  Add +/- zoom
13250         keybindings.
13252 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13254         * VERSION: 2.3.2 released
13256         * lily/parser.yy (book_body): set default bookpaper.
13258         * scm/output-tex.scm (header): kludge: hard code linewidth. 
13260         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
13262 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13264         * lily/score.cc (default_rendering): scale outputdef before
13265         starting.
13267 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
13269         * scm/fret-diagrams.scm: Add header.
13271         * scm/output-gnome.scm: Hello world :-)
13273 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13275         * scripts/lilypond.py (run_dvips): only add papersize if present.
13277         * lily/accidental-engraver.cc (update_local_key_signature): new
13278         function, fold code from initialize() and process_music().
13279         (update_local_key_signature): use deep copy. This fixes one
13280         problem from custom-key-signatures.ly.
13281         (number_accidentals_from_sig): tighter check for
13282         accidental-too-old.
13284         * ly/engraver-init.ly: remove localKeySignature
13285         definition from ChoirStaff, StaffGroup, Score.
13287         * lily/percent-repeat-engraver.cc (try_music): add moments for
13288         barlines too. Fixes: skipbars-percent-repeat.ly.
13290 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13292         * lily/context-def.cc (filter_performers): don't go to cdrloc if
13293         skipping last pair. Fixes: crash-bar-number.
13295         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
13296         D. Sorensen)
13298         * input/test/fret-diagram.ly: new file.
13300         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
13301         (scale-paper): divide by scale.
13303 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13305         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
13306         case.
13308 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13310         * scm/stencil.scm (fontify-text): reinstate function
13312         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
13314         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
13316         * lily/parser.yy (book_paper_head): \bookpaper {} 
13318         * python/midi.c: remove config.h
13320 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13322         * scm/output-gnome.scm: Update.
13324 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13326         * scm/output-gnome.scm: New file.
13328         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
13330 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13332         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
13333         (find_scaled_font): move from Paper_def
13335 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13337         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
13338         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
13340         * po/fr.po: update po.
13342         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
13344         * lily/book-paper-def.cc (print_smob): new file.
13346 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
13348         * buildscripts/lilypond-words.py: search words also from
13349         music-functions-init.ly.
13351 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13353         * ly/music-functions-init.ly (def-music-function): new helper
13354         macro for defining music functions. \addlyrics \appoggiatura
13355         \acciaccatura \grace \partcombine \autochange \applycontext
13356         \applyoutput and \breathe are now defined here thanks to it.
13358         * lily/parser.yy: 
13359         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
13360         \grace \partcombine \autochange \applycontext \applyoutput and
13361         \breathe keywords removed from the parser.
13363         * lily/parser.yy: 
13364         * lily/music-function.cc (ly_make_music_function): 
13365         * lily/lexer.ll (music_function_type): added a case for 0-arg
13366         music functions.
13368 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13370         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
13371         refering to a music expression can be used in lily-inside-scheme:
13372         #{ $music #}
13374         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
13375         and ly:parser-define, and change ly:parser-parse-string in order
13376         to make #{ $music #} work.
13378         * scm/new-markup.scm (compile-markup-expression): when an argument
13379         is a string, use `make-simple-markup'.
13381 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13383         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
13385 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13387         * scripts/convert-ly.py (FatalConversionError.func): handle + in
13388         font-size. (backportme)
13390 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13392         * lily/paper-outputter.cc (output_stencil): dump font definitions
13393         before each stencil.
13395         * lily/include/paper-book.hh (struct Score_lines): new
13396         struct. Collect info per Paper-score.
13398         * lily/include/page.hh (class Page): to_stencil() returns Stencil
13399         everywhere.
13401         * lily/stencil.cc (find_expression_fonts): new function
13403         * lily/paper-outputter.cc (output_stencil): use
13404         interpret_stencil_expr
13406         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
13407         (interpret_stencil_expr): new function. Generic stencil
13408         interpretation.
13410         * lily/paper-def.cc (find_scaled_font): divide lookup
13411         magnification by outpuscale for non-virtual fontmetrics. This
13412         fixes ludicrously long font definitions for text
13413         fonts. (backportme)
13415         * lily/score-engraver.cc: remove
13416         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
13418 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13420         * input/test/markup-score.ly: Remove \notes.
13422         * lily/parser.yy (book_body): Grok Composite_music and \header.
13423         (markup): Push NOTES mode before score_block.
13425         * VERSION: release 2.3.1
13427         * mf/feta-klef.mf: 
13428         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
13430         * Documentation/user/programming-interface.itely: Use @emph (was:
13431         @em).
13433         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
13435 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13437         * scm/output-tex.scm (output-tex-string): tighten safe security.
13439         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
13441         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
13442         allowed ly functions.
13444         * lily/ly-module.cc (ly_module_define): only define variable if
13445         bound.
13446         (ly_make_anonymous_module): take safe option.
13448 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13450         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
13452 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13454         * input/regression/newaddlyrics.ly: Fix.
13456         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
13457         \score \notes.
13459 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
13461         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
13463 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13465         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
13467         * lily/paper-line.cc (Paper_line): don't store list of stencils,
13468         but convert to single Stencil immediately.
13470         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
13472 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13474         * scm/output-sodipodi.scm: Resurrect sodipodi output.
13476 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
13478         * elisp/lilypond-mode.el: Changed the way defaults are created for
13479         LilyPond-command-master.  LilyPond-mode will now check the
13480         timestamps of the files to see which command has to run next.
13482 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13484         * scm/bass-figure.scm (format-bass-figure): don't set
13485         number-markup for strings. This fixes string in bass
13486         figure. (backportme)
13488         * lily/parser.yy (bass_number): insert number-markup into figure
13489         definition.
13491         * scm/define-music-properties.scm (all-music-properties): make
13492         'figure a markup.
13494         * scripts/convert-ly.py (conv): \apply -> \applymusic
13496 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
13498         * elisp/lilypond-mode.el: changed the order of some commands
13499         ("Midi" after "2Midi"), use the user-defined
13500         LilyPond-command-default as default instead of "LilyPond"
13502         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
13503         to set the master file for the next command.
13505         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
13506         with font-lock-reference-face.
13508 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
13510         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
13512         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
13514 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13516         * ly/music-functions-init.ly (TODO): new file.
13518         * lily/parser.yy (Generic_prefix_music_scm): add more
13519         music_function symbols.
13520         (Prefix_composite_music): change \apply to music-function   
13522         * lily/include/music-function.hh: rename to music-function
13524 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13526         * lily/music-head.cc (LY_DEFINE): change order of args.
13528         * input/regression/music-head.ly (texidoc): new file.
13530         * lily/parser.yy (Generic_prefix_music): allow generic
13531         music-transformation functions. 
13533         * lily/include/music-head.hh (is_music_head): new file.
13535         * lily/music-head.cc (get_music_head_transform): new file.
13537 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13539         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
13540         empty extent. This fixes ottava brackets on rests. (backportme)
13542         * make/lilypond.redhat.spec.in (Group): ln png files for info.
13544         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
13546         * cygwin/lily-wins.py: update for the lily-wins.py script.
13548 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13550         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
13551         code. This will obviate typeset_grob () in the future.  The effect
13552         of this is that improperly written spanner handling will result in
13553         invalid spanner bounds.
13554         (announce_grob): add to elems_ from here
13555         (typeset_grob): comment out.  
13557         * lily/include/engraver.hh (make_spanner): new calling interface
13558         for make_{item,spanner}. This obviates most calls to
13559         announce_grob().
13561         * scm/music-functions.scm (set-accidental-style): use GrandStaff
13562         iso. PianoStaff for piano styles.
13564 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
13566         * Documentation/user/music-glossary.tely: add segno after d.s.
13568 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13570         * lily/include/audio-column.hh: remove unused variables.
13571         (patch by Michael Welsh Duggan)
13573         * flower/include/axes.hh (other_axis): inline Axes function
13574         (thanks to David Brandon).
13576 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13578         * cygwin/mknetrel: Install image links (backportme).
13580         * Documentation/user/GNUmakefile (local-install-info): Activate
13581         actual installing of image links (backportme).
13583 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13585         * Documentation/user/notation.itely (Measure repeats): Removed
13586         unnecessary (and confusing) \context Voice{.
13588 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
13590         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
13592         * lily/page.cc (Page): Do not use ly_scheme_function for
13593         volatile/configurable variables (FIXME: better name).
13595         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
13596         get_scmvar).
13598 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13600         * scripts/convert-ly.py (FatalConversionError.subst): use
13601         \transposition.
13603 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
13605         * lily/include/page.hh (class Page): Declare left_margin ().
13607         * lily/page.cc: Remove paper var caching.
13609 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13611         * Documentation/user/music-glossary.tely: Add name to @top node.
13612         Remove comment from @table definitions (workaround for makinfo
13613         bug).
13615         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
13616         ly:stencil-get-expr).  Update callers.
13617         (ly:stencil-align-to!):  Return stencil too.
13619         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
13620         stencil.  Remove looped line-based page output.
13621         (output_line): Use line stencil.  Remove looped stencil-based line
13622         output.
13624         * lily/page.cc (ly:page-paper-lines): New function.
13626         * input/test/markup-score.ly: New file.
13628         * scm/define-markup-commands.scm (stencil): New markup.
13630         * lily/book.cc (to_stencil): New method.
13632         * lily/parser.yy (markup): Use it to grok \score.
13634 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13636         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
13638         * lily/paper-book.cc (pages): Change signature.  Update callers.
13640         * lily/include/page.hh:
13641         * lily/page.cc: New file.
13643         * lily/paper-line.cc (to_stencil): New method.
13645         * lily/paper-outputter.cc (output_stencil): New method.
13647         * lily/paper-outputter.cc (output_line): Use them.
13649         * lily/warn.cc: Remove.
13651         * lily/my-lily-parser.cc (distill_inname): Remove.
13653         * flower/include/file-name.hh: 
13654         * flower/file-name.cc: New file.  Update users.
13656         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
13657         (find): New method of same name.
13659         * lily/my-lily-parser.cc (ly:parse-file): Use it.
13661         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
13662         constant error message.
13664 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
13666         * input/test/{blank-notes.ly,staff-container.ly}: typos.
13668 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13670         * Documentation/user/music-glossary.tely: @table @strong' replaced
13671         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
13672         (backportme).
13674 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13676         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
13678         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
13679         #{ lily music expression #} that returns an equivalent scheme
13680         music expression by parsing the string.
13682 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
13684         * lily/my-lily-parser.cc:
13685         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
13686         SCM string (foo.ly/toto.scm support).
13688 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
13690         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
13692 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
13694         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
13696         * scripts/lilypond-book.py: LY code that includes \header is
13697         not assumed to be a fragment.
13699 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13701         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
13702         tremolo beams up.
13704         * lily/stem.cc (chord_start_y): Return 0 if no heads.
13705         (get_default_stem_end_position): No tremolo head juggling if no
13706         heads.  Fixes tremolo crash on rests (backportme).
13708         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
13710 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
13712         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
13713         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
13715         * lily/lexer.ll: Allow \encoding in NOTES mode.
13717         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
13718         for lyrics, not for commands.
13720         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
13721         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
13723         * input/regression/newaddlyrics.ly: New file.
13725         * Documentation/topdocs/NEWS.texi: Update.
13727         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
13728         (Music_list): Allow embedded scm.
13730         * lily/score.cc (ly:score-bookify): New function.
13732         * lily/music.cc (ly:music-scorify): Idem.
13734         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
13735         (ly:parser-print-score): Idem.
13737         * scm/lily.scm (default-toplevel-book-handler): Idem.
13738         (default-toplevel-music-handler): Idem.
13739         (default-toplevel-score-handler): Idem.
13741         * ly/declarations-init.ly: Set default toplevel handlers.
13743         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
13745         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
13746         printer for score at toplevel.
13748 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13750         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
13751         Fix for simple case: input/simple-song.ly, more complex stuff
13752         does not work yet.
13754 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13756         * lily/parser.yy (Prefix_composite_music): split Composite_music
13757         in Prefix_composite_music and Grouped_music_list.
13758         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
13760 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13762         * scm/lily.scm (toplevel-expression): New define.
13764         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
13766         * lily/parser.yy (toplevel_expression): Use it.
13768         * lily/include/my-lily-parser.hh: Smobbify.
13770         * lily/my-lily-parser.cc (parse_string): New method.
13772         * lily/my-lily-parser.cc (ly:parse-string): New function.
13774         * Documentation/user/lilypond.tely: Add comment and workaround for
13775         gs-8.01 crash.  Fixes make web.
13777         Simplification of toplevel music.
13779         * lily/lexer.ll, lily/parser.yy:
13781         * In LYRICS mode, return LYRICS_STRING.  This fixes one
13782         shift/reduce problem.
13784         * Use NOTES mode at start of maininput.
13786         * Grok toplevel composite music expression, put in score and book.
13788         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
13790         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
13792         * input/simple.ly: New file.
13794         * input/simple-song.ly: Idem.
13796 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13798         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
13799         Sandberg.
13801 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13803         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
13805 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
13807         * input/regression/accidental-octave.ly: doc automatic showing
13808         of note names.
13810 2004-04-16  Heikki Junes <janneke@gnu.org>
13812         * po/fi.po: do "make po && make -C po po-update" at top-level,
13813         then "cp po/out/fi.po po/fi.po" and update fields.
13815         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
13817 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
13819         * Documentation/user/introduction.itely (About this manual): Fix
13820         templates and regression urls (backportme).
13822 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13824         * ly/engraver-init.ly (Score:graceSettings): Increase
13825         beamed-lengths, especially for 32nd notes.
13827         * Documentation/user/notation.itely (Grace notes): Correct the
13828         syntax for add-grace-property example.
13830 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
13832         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
13833         `Generated' tag.
13835         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
13836         Severely broken (the Debian package, at least).
13838 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13840         * lily/context.cc (find_create_context): assign to lvalue.
13842 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13844         * lily/include/translator.hh (class Translator): rename
13845         get_parent_context() to context () to avoid confusion.
13847         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
13849         * lily/lexer.ll: change is_string -> ly_c_string_p 
13851         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
13853         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
13855 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13857         * VERSION: release 2.3.0
13859         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
13861         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
13862         if nonempty.
13864         * lily/include/context.hh (class Context): make members protected.
13865         (children_contexts): new accessor function.
13867         * lily/include/translator.hh (class Translator): make
13868         daddy_context_ protected.
13869         (class Translator): clean up. 
13871         * lily/include/context.hh (class Context): make daddy_context_
13872         private.
13874         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
13875         higher for finding Voice. (backportme)  
13877         * lily/include/context.hh (class Context): remove
13878         find_context_below() as a method.
13880         * Documentation/user/notation.itely (The Lyrics context): add note
13881         about manual durations
13883         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
13884         encoding.
13886         * scm/output-tex.scm (text): dump \inputencoding{} for text.
13888 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13890         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
13891         \usepackage{inputenc}
13893         * lily/paper-book.cc (classic_output): don't advance Offset for
13894         TeX output.
13896         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
13897         ec-sauter.map in rules
13899         * mf/ecb.mf (font_identifier): new file, based on ecbx
13901         * mf/ecb10.mf (gensize): new file.
13903         * Documentation/topdocs/NEWS.texi (Top): document some more new
13904         features.
13906         * ly/declarations-init.ly: run convert-ly
13908         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
13909         from input-file-results. Remove input-file-results.* 
13911 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13913         * scm/output-ps.scm (font-command): Fix, again.
13915         * input/test/title-markup.ly: Add \noPagebreak test.
13917         * lily/score-engraver.cc (try_music): Bugfix.
13919 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13921         * lily/main.cc (main_with_guile): excise dependency options -M and
13922         --dep-prefix
13924         * lily/input-file-results.cc: excise Makefile dependency code
13926         * Documentation/user/invoking.itexi (Invoking the lilypond
13927         binary): remove dep doco
13929         * lily/main.cc (main_with_guile): call lilypond-main
13931         * scm/lily.scm (lilypond-main): new function: handle multiple files.
13933         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
13934         exception.
13936         * lily/my-lily-parser.cc: remove paper_description function
13938         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
13939         new function.
13941         * lily/main.cc: remove global_score_count.
13943         * lily/book.cc (process): don't take header from global_input_file.
13945         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
13947         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
13949         * lily/music-output-def.cc (LY_DEFINE): new function
13950         ly_output_description. This function does the bulk for  setting,
13951         parsing and breaking down of an input file.
13953         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
13954         anonymous modules globally. Let's hope they get GCd
13956         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
13958 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13960         * scm/output-ps.scm (header): Papersize from paper.
13962         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
13963         for classic output.
13965         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
13966         lilypondclassic is defined.
13967         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
13969         * input/regression/between-systems.ly: Remove.
13971         * python/lilylib.py (get_bbox): Fix regular expression
13972         for bounding box.
13974         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
13976         * scm/output-tex.scm (stop-page): Use it.
13978         * scm/output-ps.scm (define-fonts): Bugfix.
13980         * lily/grob.cc: Add penalty to interface.
13982         * lily/include/paper-line.hh (class Paper_line): New member
13983         var penalty_.
13985         * lily/system.cc (get_line): Initialise Paper_line with
13986         page-penalty's from original grobs.
13988         * scm/define-music-properties.scm (all-music-properties): Add
13989         page-penalty.
13991         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
13993         * lily/score-engraver.cc (try_music): Handle page-penalty.
13995         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
13997 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13999         * ly/declarations-init.ly (melismaEnd): typo
14001         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
14003         * scm/output-ps.scm (text): split string into spaces, use moveto
14004         for setting space. 
14006 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
14008         * po/nl.po: Update.
14010         * scm/font.scm (add-cmr-fonts): Typo.
14012 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14014         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
14015         font-encoding.
14017         * scm/define-grobs.scm (all-grob-descriptions): idem.
14019         * lily/time-signature.cc (numbered_time_signature): idem.
14021         * scm/font.scm (add-cmr-fonts): use real encoding names for
14022         font-encoding.
14024 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
14026         * lily/paper-book.cc (classic_output): 
14027         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
14028         Fixes classic output.
14029         (lilypondstart):
14030         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
14031         kludge.
14033         * scripts/old-lilypond-book.py: Remove.
14035         Page layout for SCOREs enclosed in a BOOK:
14037         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
14038         layout tweaking.
14040         * input/les-nereides.ly (theScore): Add \book.
14042         * input/test/title-markup.ly: Add \book.
14044         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
14045         only if 'verbose.
14047         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
14049         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
14051         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
14052         * scm/output-tex.scm (start-system): Update for page layout by
14053         LilyPond.
14055         * scm/output-ps.scm (start-system): Previously (new-start-system).
14057         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
14058         passed to define-fonts.
14060         * lily/paper-column.cc: 
14061         * lily/system.cc (get_line):
14062         * ly/property-init.ly (newpage): 
14063         * scm/define-grob-properties.scm:
14064         * scm/output-ps.scm: 
14065         * scm/output-tex.scm: Remove between-system-string kludge.
14067         * scm/output-ps.scm (define-fonts, font-command,
14068         font-load-encoding): Handle ENCODING = #f.
14070         * scm/output-tex.scm (output-scopes): Check if variable is bound.
14072         * scm/define-markup-commands.scm (fill-line): Use
14073         make-simple-markup (WAS: unexisting make-word-markup).
14075         * lily/text-item.cc (interpret_markup): Bugfix, transpose
14076         ENCODING, MARKUP parameters for interpret_string.
14078         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
14080         * lily/score.cc (book_rendering): New method.
14081         (default_rendering): Create Paper_book helper locally, dump
14082         output.
14084         * lily/my-lily-lexer.cc (the_key_tab): Add book.
14086         * lily/parser.yy: Handle \book.
14088         * lily/include/book.hh: 
14089         * lily/book.cc: New file.
14091 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14093         * lily/text-item.cc (interpret_string): new file, select font with
14094         encoding.
14096         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
14098         * scm/define-markup-commands.scm (encoded-simple): new markup command.
14100         * lily/parser.yy (markup): take encoding from lexer.
14102 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14104         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
14106         * scm/output-ps.scm: Remove some cruft.
14108 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14110         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
14112         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
14114 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14116         * scm/font.scm (add-century-schoolbook-fonts):
14117         (make-century-schoolbook-tree): New function.
14119         * input/test/title-markup.ly: Use Century Schoolbook font.
14121 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14123         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
14124         to Erik Sandberg) 
14126         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
14128         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
14130         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
14132         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
14134 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14136         * scm/part-combiner.scm (determine-split-list): bugfix: if no
14137         solo-state (at end of solo), we can set the solo status
14138         too. (backportme.)
14140         * input/regression/part-combine-solo-end.ly: new file.
14142 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14144         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
14145         flavour abc files.  Really ignore unknown keys (backportme).
14147 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14149         * lily/scaled-font-metric.cc (text_dimension): only multiply with
14150         magnification_ when looking up in orig_.
14152         * scm/output-tex.scm (text): switch off char-mapping.
14154         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
14155         because AFM's encoding field cannot have spaces.
14157 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14159         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
14161 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14163         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
14165         * mf/cmr.enc: new file, without hi-bit ascii info. 
14167         * lily/bezier-bow.cc (slur_shape): make indent dependent on
14168         width. This removes the 'hook' at the end of a long slur.
14170         * buildscripts/mf-to-table.py (parse_logfile): don't append
14171         encoding to fontname.
14173 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14175         * scm/output-ps.scm (define-fonts): Load .enc only once.
14177         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
14178         too.
14180 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14182         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
14183         encoding field.
14185         * lily/stencil-scheme.cc: remove ly:fontify-atom 
14187         * ly/portuges.ly (pitchnames): new file.
14189         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
14190         Michael Welsh Duggan
14192         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
14194         * ly/nederlands.ly: add comment about digits.
14196         * lily/scaled-font-metric.cc (derived_mark): idem.
14198         * scm/encoding.scm (make-encoding-mapping): change permutation to
14199         mapping.
14201         * lily/scaled-font-metric.cc (derived_mark): is a const method.
14202         (Modified_font_metric): make alist for coding_description_
14203         (LY_DEFINE): remove coding-name.
14205         * scm/output-tex.scm (text): remove debugging code.
14207         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
14209         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
14210         from infile.
14212         * mf/feta-generic.mf: move fet_beginfont into generic code.
14213         use fetaMusic (without space) as encoding
14215         * mf/feta-autometric.mf: take encoding argument
14217         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
14219         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
14220         use.
14222         * scm/encoding.scm (read-encoding-file): use symbol for glyph
14223         name.
14225 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14227         * input/test/title-markup.ly: Set inputencoding.
14229         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
14231         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
14233         * scm/encoding.scm (get-coding-filename, get-coding-command): New
14234         function.
14235         (coding-alist): Also hold filename, command.
14236         (read-encoding-file): Return symbols.
14238 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14240         * scm/output-tex.scm: remove fontify; text and char take a font
14241         argument.
14243         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
14245         * lily/scaled-font-metric.cc (text_dimension): init
14246         coding_{permutation,table}_ too 
14247         (LY_DEFINE): ly:font-encoding, new function return
14249         * lily/paper-def.cc (find_scaled_font): take input coding from
14250         inputcoding paper var.
14252         * lily/performance.cc (output): remap modulo 16.
14254         * lily/text-item.cc (interpret_markup): whoops, variable
14255         shadowing fixed.
14257 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
14259         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
14260         symbols, not symbols to strings.
14262         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
14263         symbols, not symbols to strings.
14265 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
14267         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
14268         (ly:kpathsea-gulp-file): New function.
14270         * scm/encoding.scm (read-encoding-file): Use it.
14272 2004-04-06  Werner Lemberg  <wl@gnu.org>
14274         * scm/encoding.scm (coding-alist): Fix typo.
14276 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14278         * lily/scaled-font-metric.cc (text_dimension): move function from
14279         Font_metric
14280         (make_scaled_font_metric): init coding_scheme_ to TeX
14281         (text_dimension): use get-coding-vector for non TeX coding_scheme_
14283         * lily/include/scaled-font-metric.hh (struct
14284         Modified_font_metric): rename from Scaled_font_metric
14286         * scm/encoding.scm (read-encoding-file): split up large function,
14287         leave caching to (delay)
14289         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
14291 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
14293         * lily/my-lily-lexer.cc (set_encoding): New method.
14295         * lily/lexer.ll: Grok \encoding.
14297         * lily/font-metric.cc (get_encoded_index): New function.
14299         * lily/include/font-metric.hh (coding_scheme): New method.
14301         * scm/encoding.scm: New file.
14303         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
14305 2004-04-05  Werner Lemberg  <wl@gnu.org>
14307         * Documentation/user/tutorial.itely: Revised (finished).
14309         * Documentation/user/macros.itexi (@separate): Removed.
14311 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14313         * scm/output-ps.scm (define-fonts): fix scaling.
14315         * lily/scaled-font-metric.cc (design_size): add function.
14317         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
14318         partial cut&paste of ly:font-magnification.
14320 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
14322         * scm/output-ps.scm (define-fonts):
14323         (fontify): Update.
14325 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14327         * po/fr.po: update. (backportme).
14329         * po/nl.po: update. (backportme). 
14331         * mf/feta-beugel.mf: document why design size is not fixed.
14333         * mf/feta-braces-a.mf: rename to stress that it's not design size.
14335 2004-04-04  Werner Lemberg  <wl@gnu.org>
14337         * Documentation/user/tutorial.itely: Revised (continued).
14339 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14341         * po/nl.po: Update (backportme).
14343 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14345         * po/de.po: update. (backportme).
14347         * scm/output-tex.scm (font-command): use ly: functions to
14348         construct name.
14349         (define-fonts): don't use alist, just dump \font definitions.
14350         (font-load-command): calculate proper scaling by taking
14351         outputscale from paper argument.
14353         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
14354         expression.
14356         * lily/paper-outputter.cc (output_header): pass paper arg to
14357         define-fonts
14359         * lily/paper-def.cc (font_descriptions): dump list of
14360         Scaled_font_metrics
14361         (find_scaled_font): take Font_metric argument, store
14362         Scaled_font_metrics in hash-table containing (size ->
14363         Scaled_font_metrics) alist.
14364         (get_dimension): rename from get_realvar
14366         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
14367         ly:font-magnification, ly:font-name: new functions
14369 2004-04-03  Werner Lemberg  <wl@gnu.org>
14371         * Documentation/user/dedication.itely,
14372         Documentation/user/preface.itely,
14373         Documentation/user/introduction.itely,
14374         Documentation/user/tutorial.itely: Revised.
14375         Removing leading spaces which distorts output if info files are read
14376         with stand-alone info.
14377         Removing superfluous inter-word spaces which also distorts output
14378         for stand-alone info.
14379         Using ` and ' instead of `` and '' everywhere to improve
14380         legilibility with stand-alone info
14381         Using @samp for single-letter input items and data which contains
14382         spaces, @code for other things.
14384         * lily/grob-interface.cc: Adding copyright.
14385         (check_interfaces_for_property): Improve format of warning message.
14387 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14389         * lily/include/font-metric.hh (struct Font_metric): add
14390         design_size () method.
14392         * buildscripts/mf-to-table.py (base): add DesignSize comment.
14394         * lily/afm.cc (read_afm_file): read design size.
14396         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
14398         * scm/music-functions.scm (unfold-repeats): handle dots too.
14400 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14402         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
14403         (backportme)
14405 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
14407         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
14408         lyric indent.  Revert melismaBusyProperties using \unset.
14410 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14412         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
14414         * lily/parser.yy (command_element): allow redefinition of |
14415         meaning.
14417         * lily/break-align-engraver.cc (acknowledge_grob): construct
14418         LeftEdge where the first cause for alignment is coming from.
14419         This makes \override Staff.LeftEdge work as expected.
14421         * lily/slur-performer.cc (Slur_performer): add inits
14423         * lily/beam-performer.cc (Beam_performer): add inits
14425 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
14427         * VERSION (PACKAGE_NAME): release 2.2.0
14429 #Local variables:
14430 #coding: utf-8
14431 #End: