2005-10-24 Han-Wen Nienhuys * scm/layout-page-layout.scm (page-headfoot): annotate pagetopspace too. * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. * scm/layout-page-layout.scm (annotate-y-interval): y-annotation doesn't take y-space. * scm/paper.scm (paper-alist): fix A7 dimensions. 2005-10-24 Jan Nieuwenhuizen * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix src-wildcard, remove $(wildcard). * po/GNUmakefile (PO_FILES): * ps/GNUmakefile (PS_FILES): * tex/GNUmakefile (TEX_FILES): * cygwin/GNUmakefile (POSTINSTALLS): * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed some wildcard calls. 2005-10-23 Han-Wen Nienhuys * THANKS: add Thomas Bushnell. 2005-10-23 Jan Nieuwenhuizen * scm/lily.scm: Remove horrendous running-from-gui? kludge. (lilypond-main): Redirect to gui-main if 'gui is set. Backportme. * scripts/midi2ly.py (datadir): Add libdir iso datadir to path, for alternative installations kludging s/share/lib/g LILYPONDPREFIX. Backportme. * SConstruct (libdir_package_version): Define. * python/SConscript: * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so module in libdir. Backportme. 2005-10-22 Han-Wen Nienhuys * lily/main.cc: clarify --safe. 2005-10-21 Han-Wen Nienhuys * VERSION: release 2.7.14 * Documentation/user/*.itely: remove minimumVerticalExtent. * scm/define-grobs.scm (all-grob-descriptions): remove RemoveEmptyVerticalGroup * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup. * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean compile on MOSX * python/convertrules.py (conv): add rules. * lily/grob.cc: remove is_empty() * lily/grob-property.cc: remove add_to_list_property(). * scripts/convert-ly.py (datadir): add prefix switching hack to .py too. * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove space-function tweak. * lily/grob.cc: remove X-extent-callback / Y-extent-callback. * scm/define-grob-properties.scm (all-user-grob-properties): remove callback property. * lily/include/grob.hh (class Grob): remove property_callbacks_ member. Properties of procedure type are assumed to be callbacks. * lily/ligature-engraver.cc (override_stencil_callback): rewrite. Use noteHeadLigaturePrimitive as source. * scm/define-grob-properties.scm (all-internal-grob-properties): remove ligature-primitive-callback * lily/include/dimension-cache.hh (class Dimension_cache): make class, with Grob as friend. * lily/grob.cc: remove set_extent_callback(), set_extent() and has_extent_callback() * scm/translation-functions.scm (format-new-bass-figure): read figuredBassPlusDirection * scm/define-context-properties.scm (all-user-translation-properties): add figuredBassPlusDirection. * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes. * lily/align-interface.cc (set_ordered): new function. * lily/grob.cc (flush_extent_cache): rewrite. * lily/dimension-cache.cc (Dimension_cache): cache extent as Interval pointer directly. * lily/main.cc (setup_paths): insert extra / . (setup_paths): junk cff entry. * lily/font-config.cc (init_fontconfig): only add type1 / otf directories. * lily/axis-group-engraver.cc (finalize): remove extraVerticalExtent, minimumVerticalExtent verticalExtent. * lily/grob.cc (Grob): don't set extent from ctor. (extent): use property callbacks. * lily/axis-group-interface.cc: remove set_axes() function. * lily/grob-property.cc (del_property): new function. 2005-10-21 Han-Wen Nienhuys * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check. 2005-10-20 Jan Nieuwenhuizen * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add. 2005-10-19 Jan Nieuwenhuizen * mf/SConscript: Updates. * lily/GNUmakefile (OUT_DIST_FILES): Bugfix. * stepmake/stepmake/*: * */GNUmakefile: * config.make.in: * GNUmakefile.in: * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make' from any directory in build-dir. Cleanups. * make/srcdir.make.in: Remove. * lily/main.cc (setup_paths): Fix and document build-dir hack. * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no main). * lily/SConscript: Remove ttftools. * SConstruct: Resurrect. 2005-10-19 Han-Wen Nienhuys * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for Y coordinate. * lily/paper-book.cc (add_score_title): put Paper_score title into systems_ list. * scm/translation-functions.scm (format-new-bass-figure): also allow plus in combination with _ 2005-10-17 Han-Wen Nienhuys * VERSION: 2.7.13 released. * lily/note-collision.cc (check_meshing_chords): don't wipe stencil, merely set transparent. * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. (Top): document #'callbacks. (Top): document nested \override. * input/regression/figured-bass.ly: update for slash and pluses. * input/regression/figured-bass-continuation-forbid.ly (Module): new file. * scm/translation-functions.scm (format-new-bass-figure): use slashed-digit if diminished is set. (format-new-bass-figure): add + if 'augmented is set. * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit. * input/test/piano-staff-distance.ly: remove file. * Documentation/user/advanced-notation.itely (Formatting cue notes): use length-fraction for making stems/beams smaller. * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass modifications. * lily/new-figured-bass-engraver.cc: new property centerFiguredBassContinuations * Documentation/user/changing-defaults.itely (Difficult tweaks): use callbacks. * lily/context-property.cc (execute_general_pushpop_property): robustness checks. * input/regression/override-nest.ly: new file. * python/convertrules.py (FatalConversionError.subber): conversion rule for #'callbacks * input/regression/override-nest.ly: new function. * lily/parser.yy (music_property_def): allow \override #'a #'b = #c too. * lily/context-property.cc (lookup_nested_property): new function. (evict_from_alist): new function. (general_pushpop_property): new function. (execute_general_pushpop_property): rewrite. Support nested properties too. 2005-10-16 Han-Wen Nienhuys * lily/beam.cc: use length-fraction too. * scm/define-grob-properties.scm (all-user-grob-properties): remove property flag-width-function (all-user-grob-properties): remove space-function. * scm/layout-beam.scm: remove flag-width-function. * lily/beam.cc: remove flag-width-function * scm/layout-beam.scm: remove beam dir functions. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction. * lily/stem.cc (calc_length): multiply with length_fraction. Makes for easier grace tweaks. * lily/beam.cc: remove dir-function. * lily/system.cc (pre_processing): use callback to trigger spacing procedures. * lily/grob.cc: remove spacing-procedure. * lily/note-head.cc (calc_stem_attachment): new function. (internal_print): use callback to get glyph-name. * lily/grob-property.cc (get_interfaces): new function. * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces * lily/stem.cc (calc_stem_end_position): new function. (calc_length): new function. document details for stem. remove Stem::get_direction() * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! * lily/grob-property.cc (set_callback): new function. * lily/script-engraver.cc (make_script_from_event): don't trigger callback. * lily/item-scheme.cc: new file. * lily/bar-line.cc (before_line_breaking): remove function. remove bar-size-procedure, break-glyph-function * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name * lily/clef.cc (before_line_breaking): change to calc_glyph_name. * lily/system-start-delimiter.cc (print): suicide from here. Remove after_line_breaking_callback. * lily/script-interface.cc (calc_direction): use callback for direction. * lily/side-position-interface.cc (aligned_side): don't use Side_position_interface::get_direction directly. Use callback. * lily/grob.cc (get_stencil): simplify: use callback mechanism to calculate stencil. (get_print_stencil): rename from get_stencil: create stencil with transparency, color and cause. * scm/define-grobs.scm: change print-function to stencil callback everywhere. * python/convertrules.py (conv): insert temporary warning rule. * lily/multi-measure-rest.cc (set_text_rods): use stencil directly. * lily/grob-property.cc (try_callback): remove marker if applicable. * lily/grob.cc: elucidate doc about after/before-line-breaking * lily/slur-scoring.cc (enumerate_attachments): robustness fix. * lily/stem.cc (height): idem. * lily/stem-tremolo.cc: idem. * lily/slur.cc (height): don't use get_uncached_stencil() * lily/rest.cc (y_offset_callback): use offset callback iso. after-line-breaking callback. * lily/grob.cc: change after/before-line-breaking-callback to after/before-line-breaking dummy properties. * lily/include/grob.hh: remove Grob_status. * scm/define-context-properties.scm (all-user-translation-properties): remove verticalAlignmentChildCallback * lily/tuplet-bracket.cc: use positions property iso. left,right-position. (calc_direction): use callback (calc_positions): use callback. * lily/tie.cc (calc_direction): use callback. Only call parent positioning for more than one tie. * lily/tie-column.cc (calc_positioning_done): use callback * lily/slur-scoring.cc (calc_control_points): use callback * lily/slur.cc (calc_direction): use callback. * lily/note-collision.cc (force_shift_callback): remove. * lily/dot-column.cc (force_shift_callback): remove. Use other_axis_parent_positioning. * lily/grob.cc (other_axis_parent_positioning): new function. (same_axis_parent_positioning): new function * lily/align-interface.cc (alignment_callback): remove function. * lily/note-collision.cc (calc_positioning_done): use callback. * lily/laissez-vibrer-tie.cc (calc_control_points): use callback. (calc_direction): idem. remove print function. * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback. * lily/dot-column.cc (calc_positioning_done): use callback. * lily/break-align-interface.cc (calc_positioning_done): use callback. * lily/beam.cc (calc_direction): use pseudo-property for beam direction callback. (calc_positions): use callback * lily/align-interface.cc (calc_positioning_done): use callback. Fold fixed distance and normal alignment in one function. * lily/stem.cc (calc_stem_end_position): use callback. (calc_positioning_done): idem. (calc_direction): idem. (calc_stem_end_position): idem (calc_stem_info): idem. * lily/grob-property.cc (get_property_data): new function: (try_callback): new function. * scm/define-grob-properties.scm (all-user-grob-properties): doc callbacks property. * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback. 2005-10-15 Han-Wen Nienhuys * lily/tie.cc (get_position): robustness fix. Don't crash if a tie has no heads. * lily/include/*.hh (Module): compile fixes. 2005-10-14 Heikki Junes * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil as an argument for char-syntax: use (char-syntax (or nil 0)) instead of (char-syntax nil), thanks to Milan Zamazal. 2005-10-14 Han-Wen Nienhuys * make/lilypond.fedora.spec.in (Group): add lilypond-internals to dist. * lily/tuplet-bracket.cc: check columns of bounds, not bounds themselves. 2005-10-12 Han-Wen Nienhuys * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR): add class_name() method. * lily/music-scheme.cc: remove ly:music-name. 2005-10-11 Jan Nieuwenhuizen * cygwin/postinstall-lilypond.sh: Remove cruft. * cygwin/postremove-lilypond.sh: Remove. * cygwin/GNUmakefile (default): Remove postremove rules. 2005-10-11 Han-Wen Nienhuys * ly/titling-init.ly (evenHeaderMarkup): use space in header on even header too. * scm/define-markup-commands.scm (wordwrap-string): bugfix for MacOS 9 users. * lily/hara-kiri-group-spanner.cc (consider_suicide): only consider break index for broken spanner. * scm/define-markup-commands.scm (wordwrap-string): remove \r characters from string before splitting. 2005-10-10 Han-Wen Nienhuys * scm/framework-ps.scm (output-preview-framework): use is-book-title to determine whether to chop off the booktitle. * lily/paper-book.cc (systems): init from book-title-properties (add_score_title): init score-title-properties. * ly/paper-defaults.ly: add {score,book}-title-properties. * scm/document-backend.scm (lookup-interface): error message if using unknown interface. * lily/volta-bracket.cc (after_line_breaking): new function. Set edge-height. * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from make_bracket. (make_bracket): new function. * scm/lily.scm (define-scheme-options): add paper-size option. * ly/declarations-init.ly (laissezVibrer): get paper size from -dpaper-size * scm/translation-functions.scm: use \fontsize for changing the fontsize. * scm/define-grobs.scm (all-grob-descriptions): set between-length-limit to 1.0 * lily/tie-helper.cc: add between_length_limit_ detail property. * mf/feta-bolletjes.mf: typos. * lily/note-head.cc (internal_print): don't shadow idx parameter. This fixes wrong attachment for do shape heads. 2005-10-09 Han-Wen Nienhuys * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm * scm/parser-clef.scm (supported-clefs): rename from clef.scm * scm/layout-slur.scm: rename from slur.scm * scm/layout-page-layout.scm: rename from page-layout.scm * scm/layout-beam.scm: rename from beam.scm * scm/define-grob-interfaces.scm (bass-figure-interface): add bass-figure-interface * lily/new-figured-bass-engraver.cc (process_music): add implicitBassFigures property. * scm/define-markup-commands.scm (pad-x): new markup. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set minimumVerticalExtent on FiguredBass context. * lily/figured-bass-continuation.cc (center_on_figures): kludge in case the continuation crosses a line break. 2005-10-09 Jan Nieuwenhuizen * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return unconverted value if cygwin_conv_to_posix_path () fails. Fixes absolute file name bug. Backportme. 2005-10-07 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.7.12 * input/regression/figured-bass-continuation-center.ly: new file. * input/regression/beam-outside-beamlets.ly: new file. * lily/beam.cc (set_beaming): don't clip edges. (connect_beams): don't clip edges. * lily/beaming-info.cc (clip_edges): new function. * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file. * Documentation/user/instrument-notation.itely (Figured bass): demonstrate extenders, update seealso links. * scm/titling.scm (marked-up-headfoot): change tagline handling. tagline = ##f will blank the tagline as well. 2005-10-06 Han-Wen Nienhuys * Documentation/topdocs/NEWS.tely: add entry for Figured bass. * lily/new-figured-bass-engraver.cc (struct New_figured_bass_engraver): add new_music_found_ member. * lily/lilypond-version.cc (Lilypond_version): deal with incorrectly formatted version strings. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on New_figured_bass_engraver by default. * lily/ttf.cc (print_trailer): only define glyph names when FT_Face has FT_FACE_FLAG_GLYPH_NAMES 2005-10-05 Han-Wen Nienhuys * lily/horizontal-bracket.cc (make_bracket): new function. * scm/define-grobs.scm (all-grob-descriptions): new grobs NewBassFigure, BassFigureBracket, BassFigureContinuation, BassFigureLine, BassFigureAlignment * lily/new-figured-bass-engraver.cc (process_music): new file. * lily/figured-bass-continuation.cc: new file. * lily/include/horizontal-bracket.hh (struct Horizontal_bracket): new file. 2005-10-04 Mats Bengtsson * scripts/lilypond-book.py: Bug fix, put the quote around the actual score for LaTeX documents. * scm/define-grobs.scm (all-grob-descriptions): Change collapse-height of the SystemStartBracket grob to 5.0, so the bracket disappears for single stave score lines (similarly to SystemStartBraces). * Documentation/user/advanced-notation.itely (Polymetric notation): Clarify the use of compressMusic. * Documentation/user/basic-notation.itely (Grace notes): Clarify that the grace spacer note in other staves need the same duration and document the stroke-style property. 2005-10-03 Han-Wen Nienhuys * Documentation/user/global.itely (Vertical spacing): document alignment-extra-space and fixed-alignment-extra-space. * Documentation/topdocs/NEWS.tely (Top): add entry. * input/regression/alignment-vertical-spacing.ly: new file. * python/convertrules.py (conv): add rule. * ly/music-functions-init.ly: rename outputProperty to overrideProperty * lily/align-interface.cc (stretch_after_break): new function. Read fixed-alignment-extra-space property. (align_elements_to_extents): read alignment-extra-space property. * lily/lily-guile.cc (robust_scm2dir): new function. * scm/page-layout.scm (page-headfoot): annotate headsep and footsep. (annotate-space-left): new function. Annotate space left on page. (annotate-y-interval): new function. (paper-system-annotate-last): new function. Annotate bottom-space. * mf/feta-beugel.mf (y): 2005-10-02 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.7.11 * scm/lily-library.scm (interval-translate): new function (interval-center): new function. * scm/page-layout.scm (paper-system-annotate): new function. Add arrows for dimensions. * scm/stencil.scm (dimension-arrows): new function. * Documentation/user/global.itely (Vertical spacing): mention annotatespacing * input/regression/page-spacing.ly: add annotatespacing * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil} (LY_DEFINE): new function ly:paper-system-set-property! * Documentation/user/global.itely (Paper size): explain how to add sizes. * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to correspond to GS's definition. * lily/tuplet-bracket.cc (after_line_breaking): suicide empty tuplet bracket. (print): only connect to next bracket if the next one is alive. (print): set padding to 0.0 if the bound is a breakable column. This makes tupletFullLength brackets reach up to the staff line if it doesn't connect to the next line. 2005-09-30 Han-Wen Nienhuys * lily/bar-number-engraver.cc: correct docs. * scm/output-lib.scm (first-bar-number-invisible): rename from default-bar-number-visibility 2005-09-28 Han-Wen Nienhuys * scm/define-music-properties.scm (all-music-properties): remove predicate property. 2005-09-28 Heikki Junes * po/fi.po: refresh. 2005-09-27 Han-Wen Nienhuys * input/regression/hara-kiri-pianostaff.ly (disappear): remove superfluous s1. (disappear): bugfix. * lily/stem-tremolo.cc (raw_stencil): read slope property. * lily/include/paper-system.hh (class Paper_system): remove staff_extents_ member. * lily/paper-system-scheme.cc (LY_DEFINE): remove. * lily/include/paper-system.hh (class Paper_system): remove number_ variable. Remove is_title_. Remove break_before_penalty_ * lily/paper-book.cc (systems): use 'number property iso. number_ member. * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty remove ly:paper-system-number. * scm/lily-library.scm (paper-system-title?): new function. * lily/book.cc (process): bugfix: flip ?: cases. * Documentation/user/changing-defaults.itely (Difficult tweaks): add outputProperty. * ly/music-functions-init.ly: add outputProperty music function. * scm/paper.scm (set-paper-dimension-variables): add pagetopspace * scm/page-layout.scm (ly:optimal-page-breaks): read next-space and next-padding. (optimal-page-breaks): rename from ly:optimal-page-breaks. * lily/paper-system-scheme.cc (LY_DEFINE): new function. * lily/paper-system.cc (internal_get_property): new function. * Documentation/user/global.itely (Vertical spacing): refer to page-spacing.ly * scm/page-layout.scm (ly:optimal-page-breaks): add support for pagetopspace * input/regression/page-spacing.ly: new file. * input/regression/page-top-space.ly: new file. * lily/spacing-spanner.cc: cmath -> math.h * lily/paper-system.cc (read_left_bound): new function. Read line-break-system-details from left bound to determine extents. * Documentation/user/programming-interface.itely (Using LilyPond syntax inside Scheme): change applyxxx -> applyXxx. * ly/music-functions-init.ly: add outputProperty music function. * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature. * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name. * python/convertrules.py (conv): rule * ly/music-functions-init.ly: applyxxx -> applyXxx * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias TabVoice to Voice. 2005-09-26 Han-Wen Nienhuys * flower/include/real.hh: include iso. * flower/include/offset.hh: include real.hh 2005-09-20 Han-Wen Nienhuys * Documentation/user/changing-defaults.itely (Difficult tweaks): fix example, now that 'interfaces is no longer directly available. * lily/book.cc (process): don't crash if paper == NULL. * po/fr.po: update. 2005-09-17 Han-Wen Nienhuys * scm/define-music-types.scm (music-descriptions): set length and start-callback for QuoteMusic 2005-09-15 Mats Bengtsson * lily/tie.cc (get_configuration): Replace fabs -> abs for integer arguments. Fixes compilation error with gcc 3.3. 2005-09-13 Han-Wen Nienhuys * VERSION: release 2.7.10 * stepmake/stepmake/python-module-rules.make ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end. * lily/*.cc: remove everywhere. is included from real.hh 2005-09-12 Han-Wen Nienhuys * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add -Werror. Otherwise GCC barfs over various optimizations. * scm/define-grob-properties.scm (all-internal-grob-properties): add note-head property * Documentation/user/instrument-notation.itely (Laissez vibrer ties): new node. * input/regression/laissez-vibrer-ties.ly: new file. * lily/laissez-vibrer-engraver.cc: new file. * lily/include/tie-column-format.hh: new file. * lily/tie-column-format.cc: new file. * lily/tie-column.cc (set_manual_tie_configuration): new function. * lily/laissez-vibrer-tie.cc: new file. * lily/include/laissez-vibrer-tie.hh: new file. * ly/engraver-init.ly: add Laissez_vibrer_engraver * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer * scm/define-grobs.scm (all-grob-descriptions): add LaissezVibrerTie, LaissezVibrerTieColumn * lily/tie-column.cc (set_tie_config_directions): new function (final_shape_adjustment): new function. (shift_small_ties): new function. * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent * lily/include/tie.hh (struct Tie_details): add x_gap_ (struct Tie_configuration): add head_position_ * lily/tie-column.cc (set_chord_outline): new function. * mf/cmr.enc.in: remove file. 2005-09-11 Graham Percival * Documentation/user/examples.itely: typo fix. Thanks, Matevž 2005-09-11 Han-Wen Nienhuys * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to reduce aliasing effects. * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete box in skyline. 2005-09-08 Han-Wen Nienhuys * lily/tie.cc (get_configuration): don't crash if left_dot is NULL. * flower/include/real.hh: std::fabs too. 2005-09-08 Jan Nieuwenhuizen * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). * lily, flower: Include C++ iso C headers. Import namespace std throughout. * lily/side-position-interface.cc: * lily/scm-hash.cc: * lily/note-head.cc: * lily/include/includable-lexer.hh: * flower/include/string-data.icc: Remove using std::*. * lily, flower: Include C++ iso C headers. Import namespace std throughout. * lily/side-position-interface.cc: * lily/scm-hash.cc: * lily/note-head.cc: * lily/include/includable-lexer.hh: * flower/include/string-data.icc: Remove using std::*. * Documentation/user/instrument-notation.itely (Entering lyrics): Multiple latin-1->utf-8 conversion fix. * Documentation/user/*tely: Update Emacs cookie to utf-8. 2005-09-08 Han-Wen Nienhuys * lily/tie.cc (get_configuration): also avoid dots for non-space situations. 2005-09-07 Jan Nieuwenhuizen * Documentation/user/instrument-notation.itely: Bugfix. 2005-09-06 Han-Wen Nienhuys * tex/GNUmakefile: don't install texinfo.tex * tex/ : cleanup: remove unused files. * lily/general-scheme.cc: remove my_{isinf,isnan}. * flower/include/real.hh: using std::{isnan,isinf} * VERSION (PATCH_LEVEL): release 2.7.9 2005-09-05 Graham Percival * Documentation/user/ instrument-notation.itely, advanced-notation.itely: minor tweaks. * input/test/script-chart.ly: add item padding. 2005-09-05 Han-Wen Nienhuys * flower/offset.cc: use math.h iso. * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake of IE users. * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup. (widen-left-stencil-edges): new function. Fix alignment problems with LaTeX includegraphics. * lily/text-interface.cc (interpret_markup): use abort(). 2005-09-04 Han-Wen Nienhuys * input/regression/tie-chord.ly (testLong): add a chord in 4ths * lily/tie.cc (get_configuration): update bezier shape as we change Y positions. (get_configuration): don't move large ties if we're outside of the staff. 2005-09-01 Han-Wen Nienhuys * scm/define-markup-commands.scm (strut): swap X and Y dims. 2005-09-03 Jan Nieuwenhuizen * .cvsignore: Add auto-generated configure files and then some. 2005-09-02 Jan Nieuwenhuizen * scm/define-grobs.scm (DynamicLineSpanner): Add X-extent-callback. Fixes hairpin-slur collision. 2005-08-31 Graham Percival * Documentation/user/advanced-notation.itely, basic-notation.itely: minor changes. 2005-08-31 Mats Bengtsson * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a \linebreak between each .eps file if \betweenLilyPondSystem is undefined. * Documentation/user/lilypond-book.itely (Integrating LaTeX and music): Document the \linebreak * Documentation/user/lilypond-book.itely, input/tutorial/lbook-latex-test.tex, Documentation/user/examples.itely: Remove \usepackage{graphics} 2005-08-31 Han-Wen Nienhuys * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu. * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier compat bugfix. * scripts/lilypond-book.py (PREAMBLE_LY): define inside-lilypond-book (modify_preamble): new function. Insert \RequirePackage{graphics} when no {graphics found in preamble. 2005-08030 Graham Percival * Documentation/user/basic-notation.itely, global.itely, tutorial.itely: misc small changes. 2005-08-30 Jan Nieuwenhuizen * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's VERSION. 2005-08-30 Han-Wen Nienhuys * lily/tie-column.cc (new_directions): put Tie down on center staff line. * lily/script-interface.cc (before_line_breaking): use Grob::programming_error * scm/ps-to-png.scm (make-ps-images): use pngalpha device. * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0] of splitext. 2005-08-29 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): VERSION release 2.7.8 2005-08-29 Werner Lemberg * mf/GNUmakefile: Add `-f' flag to `rm' command while removing the `*.scale.pfa' files to avoid warnings. 2005-08-29 Han-Wen Nienhuys * lily/tempo-performer.cc (process_music): idem. * lily/midi-def.cc (get_tempo): Rational to int conversion bug. 2005-08-27 Han-Wen Nienhuys * Documentation/user/advanced-notation.itely (Text markup): not a fragment. * lily/midi-item.cc (to_string): use to_int() iso. int cast. * lily/staff-performer.cc (initialize): add tempo/name to audio_staff_ 2005-08-26 Graham Percival * Documentation/user/advanced.itely: add text-only example. * Documentation/user/invoking.itely: add index entries for convert-ly. * Documentation/user/ tutorial.itely, basic-notation.itely: small fixes suggested by Steve D. Thanks! 2005-08-26 Han-Wen Nienhuys * input/regression/markup-bidi-pango.ly: new file. * lily/pango-font.cc (pango_item_string_stencil): make Mingw code standard. Remove #ifdef. Remove memleak. (text_stencil): use text_dir to decide how to composite items. (text_stencil): determine uniform text direction for the entire string. * scripts/lilypond-book.py (output_name): remove latex_filter_cmd. Non-portable to non-Unix systems. (get_latex_textwidth): use File.write and os.unlink() instead. * THANKS: add Vicente & Trevor. * lily/grob.cc (discretionary_processing): look up origin for programming_error too. * input/regression/tie-broken.ly: new file. * lily/tie-column.cc (set_chord_outlines): set outline for line break case too. 2005-08-25 Han-Wen Nienhuys * lily/pango-font.cc (text_stencil): don't translate glyphs in unscaled transform, just translate stencils. * ly/performer-init.ly: init timing to #t. Fixes bar checks in MIDI. * scm/define-markup-commands.scm (wordwrap-string): use text-direction (wordwrap-stencils): idem. (line): idem. (fill-line): idem. (wordwrap-stencils): translate last line to right for text-direction = LEFT. * scm/define-grob-properties.scm (all-user-grob-properties): add text-direction. 2005-08-25 Nicolas Sceaux * lily/lily-parser.cc (Lily_parser): also copy output_basename_ when copying a Lily_parser object. 2005-08-25 Han-Wen Nienhuys * scm/define-markup-commands.scm (null): add null markup. 2005-08-25 Mats Bengtsson * lily/item.cc: Add documentation of center-invisible 2005-08-24 Graham Percival * Documentation/user/advanced-notation.itely: add info about raising text. * Documentation/user/programming-interface.itely: fix example involving raised text. 2005-08-24 Han-Wen Nienhuys * lily/beam.cc (print): fix X start/end points of isolated beamlets. * scm/output-ps.scm (grob-cause): escape spaces in URLs. * lily/multi-measure-rest.cc (set_text_rods): new function. * lily/vertical-align-engraver.cc (process_music): call Align_interface::set_axis(). This forces #'elements to be ordered, preventing random vertical reordering of staves. * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface): add avoid-slur property. * Documentation/user/basic-notation.itely (Measure repeats): add countPercentRepeats example. * Documentation/user/advanced-notation.itely (Other text markup issues): remove remark about normal-font. We have \normal-text * input/regression/tie-chord.ly: add note about remaining bugs. * lily/tie.cc (print): try Tie_column::set_directions () if control-points not yet defined. 2005-08-23 Han-Wen Nienhuys * lily/system-start-delimiter.cc (staff_brace): don't remove brace extent. This fixes braces falling out of the EPS bbox. * mf/feta-beugel.mf (braces_per_font): make brace glyph align exactly to bbox. 2005-08-23 Graham Percival * {various} : change #up->#UP and #down->#DOWN. * ly/titling-init.ly: Spacing fix when using printallheaders=##t. * Documentation/user/advanced-notation.itely: clarify what objects handles text on a multimeasure rest. 2005-08-23 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): release 2.7.7 2005-08-22 Han-Wen Nienhuys * make/lilypond-vars.make: set -dgs-font-load for "make web" * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement. * input/regression/*.ly: formatting clean-up. Default layout before music expression. * input/mutopia/R.Schumann/GNUmakefile (examples): switch off romanze28-2 example. * scm/ps-to-png.scm: remove dir-re function. (make-ps-images): generate page names, instead of globbing them. This brings down LilyPond memory usage for make web by a factor 10. (backportme?) * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated): don't use glob. With 3000 files, globbing Documentation/user/out-www/ can take too much time. (backportme?) * lily/lily-guile.cc (gulp_file_to_string): take size argument. * lily/general-scheme.cc (LY_DEFINE): take optional size argument. * input/regression/tie-manual.ly: new file * input/regression/tie-chord.ly: update. * flower/include/interval.hh (struct Interval_t): * lily/tie.cc (distance): new function (height): new function. (init): new function (Tie_details): new struct. * lily/skyline.cc (skyline_height): new function. * lily/tie-column.cc (set_chord_outlines): new function. (new_directions): read tie-configuration * lily/skyline.cc: fix ASCII art. 2005-08-22 Mats Bengtsson * python/convertrules.py (string_or_scheme): Fix spelling error 2005-08-22 Han-Wen Nienhuys * lily/tie-column.cc (set_directions): set directions only once. (add_configuration): new function. * lily/tie.cc (set_control_points): new function * lily/tie-column.cc (new_directions): new function. * ly/music-functions-init.ly: set 'pitch property iso. trill-pitch. This makes \relative work with \pitchedTrill * lily/tie.cc (get_configuration): new function. Don't generate control points, rather, generate configuration. remove head-pair property. * lily/include/tie.hh (struct Tie_configuration): new struct. 2005-08-22 Heikki Junes * Documentation/topdocs/NEWS.tely: clarify. 2005-08-21 Han-Wen Nienhuys * lily/tie.cc: remove minimum-length * scm/define-grob-properties.scm (all-user-grob-properties): remove staffline-clearance, y-offset * input/regression/tie-dots.ly (Module): remove. * lily/tie.cc (get_control_points): rewrite. Put short ties in staff-spaces, make long ties cross staff lines. Avoid flags and dots. * input/regression/tie-single.ly: new file. 2005-08-21 Graham Percival * ly/bagpipe.ly: fix compile problem. 2005-08-21 Han-Wen Nienhuys * lily/midi-item.cc (name): new method. * lily/staff-performer.cc (acknowledge_audio_element): use signature of baseclass. * lily/engraver-group.cc (do_announces): move recursion call out of while loop. * lily/drum-note-performer.cc (class Drum_note_performer): use process_music everywhere. * ly/performer-init.ly: add default children everywhere. * lily/paper-book.cc (output): call paper-book-write-midis directly: always write MIDI, even if no \layout {} block. 2005-08-19 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.7.6 * lily/percent-repeat-engraver.cc (try_music): don't print warning about not being able to handle repeat. 2005-08-19 Jan Nieuwenhuizen * Documentation/user/examples.itely (Piano templates): * lily/include/performer-group.hh: Remove last traces of Performer_group_performer. Fixes make web. 2005-08-19 Han-Wen Nienhuys * Documentation/user/examples.itely (Piano templates): change Engraver_group_engraver -> Engraver_group * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if scm_stand_in_procs is not weak_any. * lily/volta-bracket.cc (print): don't use strcmp(). * lily/volta-engraver.cc (process_music): use Text_interface::is_markup() for setting the 'text property of the volta bracket. * input/mutopia/claop.py (accents): update syntax to 2.6 * scm/define-context-properties.scm (all-user-translation-properties): add countPercentRepeats. * Documentation/user/basic-notation.itely (Measure repeats): add isolated percent example. 2005-08-18 Graham Percival * input/ {various}: change direction #1, #-1 to #up/#down or \fooUp, \fooDown. * Documentation/user/music-glossary.tely: #-1 to #down. * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1 to #up, #-1 to #down. 2005-08-18 Han-Wen Nienhuys * lily/include/engraver-group.hh: rename. * lily/include/performer-group.hh: rename. 2005-08-18 Mats Bengtsson * input/test/script-abbreviations.ly: Removed some old LaTeX left overs. 2005-08-18 Jan Nieuwenhuizen * python/convertrules.py (conv): inside-slur -> avoid-slur. Remove functions. Remove if 1: constructs, reindent. * scripts/convert-ly.py (add_version): Add functions from convertrules.py * scm/script.scm (default-script-alist): s/priority/script-priority. Fixes script stacking. Backportme. (Fermata): Very low priority. 2005-08-18 Han-Wen Nienhuys * input/regression/*.ly: remove superfluous \score blocks. Reindent. * input/regression/slur-script.ly: remove padding tweaks. Add comment strings. * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide time sigs and related stuff. * scm/define-grob-properties.scm (all-user-grob-properties): add @code{} tags to property description. * lily/include/line-group-group-engraver.hh (Module): remove file. * python/convertrules.py (conv): add rule for Engraver_group_engraver -> Engraver_group. * lily/include/performer-group-performer.hh: analogous. * lily/include/engraver-group-engraver.hh: rename to Engraver_group. * lily/context-def.cc (instantiate): check for Engraver_group_engraver and Performer_group_performer not Engraver/Performer. Fixes crashes when doing \with { \consists .. } 2005-08-18 Jan Nieuwenhuizen * input/les-nereides.ly: Remove three fingering tweaks, update remaining one. * input/regression/slur-script-inside.ly: Update, fix doc. * scm/script.scm: Update to avoid-slur. * scm/define-grob-properties.scm (avoid-slur): New property. * lily/phrasing-slur-engraver.cc (acknowledge_extra_object): * lily/slur-engraver.cc (acknowledge_extra_object): Invoke outside_slur_callback if avoid-slur != #'inside. * scm/define-grobs.scm (Fingering, Textscript): No inside-slur/outside-slur preference. (DynamicLineSpanner): Always outside slur. * input/regression/slur-script.ly: More tests. 2005-08-17 Graham Percival * Documentation/user/lilypond-book: fix notime entry. * Documentation/user/advanced-notation.itely: add info on getting an I rehearsal mark. * Documentation/user/putting.itely: reinstate "I", re-enforce the fact that \override numbers are the result of experimentation and personal taste. * Documentation/user/invoking.itely: update convert-ly bugs. 2005-08-17 Han-Wen Nienhuys * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing to #t. * lily/timing-translator.cc (initialize): don't initialize timing. * input/regression/stem-spacing.ly (Module): remove file. * input/regression/spacing-stick-out.ly: specify Score context for \override * input/regression/clefs.ly: remove spurious {}s 2005-08-17 Heikki Junes * Documentation/topdocs/NEWS.tely, input/regression/repeat-percent-count.ly: clarify a bit. 2005-08-16 Nicolas Sceaux * input/no-notation/display-lily-tests.ly: delete display-lily-init call. * ly/music-functions-init.ly (displayLilyMusic): move display-lily-init call at top level, so that the user should not have to call it. * scm/define-music-display-methods.scm (note-name->lily-string): retrieve note names directly from pitchnames using new function `rassoc'. (display-lily-init): note names list construction removed. 2005-08-16 Han-Wen Nienhuys * THANKS: spello. * lily/lily-parser.cc (get_header): copy module, instead of returning it. * Documentation/topdocs/NEWS.tely (Top): add entry for percent counters. * Documentation/user/basic-notation.itely (Measure repeats): add links to Counter grobs. * scm/define-grobs.scm (all-grob-descriptions): add DoublePercentRepeatCounter (all-grob-descriptions): add PercentRepeatCounter * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver): also create counter grobs. * lily/separation-item.cc (extremal_break_aligned_grob): don't return grob without space-alist. * input/proportional.ly: tune staff-padding. * input/regression/repeat-percent-count.ly: new file. 2005-08-16 Nicolas Sceaux * input/no-notation/display-lily-tests.ly: moved from input/regression/ to input/no-notation. Be sure to call `display-lily-init' before trying to use the display function. 2005-08-16 Mats Bengtsson * scripts/lilypond-book.py (option_definitions): Don't localize the empty string. Fixes bug when --psfonts was used with non-English locale. 2005-08-15 Graham Percival * lily/tuplet-bracket.cc: simple build fix. * Documentation/user/putting.itely: use "we" instead of "I". * Documentation/user/basic-notation.itely: cautionary accidentals work with naturals, too. 2005-08-15 Han-Wen Nienhuys * lily/tuplet-bracket.cc (calc_position_and_height): add staff-padding support. * input/proportional.ly: set staff-padding. * VERSION (PATCH_LEVEL): release 2.7.5 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting fixes. Remove tweaks. * input/regression/tuplet-slope.ly: add a test case. * lily/tuplet-bracket.cc (calc_position_and_height): revert erroneous fix. Add spanner bounds to offset array with relative X positions. * ly/engraver-init.ly: add Rest_engraver only once. * scm/define-music-display-methods.scm (KeyChangeEvent): only do (*parser*) lookup if (*parser*) != #f. 2005-08-15 Jan Nieuwenhuizen * lily/phrasing-slur-engraver.cc (acknowledge_extra_object): Cut-and paste update. * input/regression/slur-script.ly: Add example of reverting inside-slur for fingering. * scm/define-grobs.scm (DynamicLineSpanner, Fingering, TextScript): Explicitly set inside-slur #f, forcing these out of slur. * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke outside_slur_callback if inside-slur == #f (as opposed to unset). 2005-08-14 Jan Nieuwenhuizen * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup, encoding files are already removed. 2005-08-15 Mats Bengtsson * Documentation/user/advanced-notation.itely (Instrument names): Document a workaround for instrument names that collide with system start braces/brackets. 2005-08-15 Han-Wen Nienhuys * lily/rest-collision.cc (do_shift): spello. * input/proportional.ly: use #'used property. Set break-overshoot property. * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge. * lily/paper-column.cc: add #'used property * lily/mark-engraver.cc (stop_translation_timestep): set grob array for staves found. * lily/metronome-engraver.cc (stop_translation_timestep): set grob array for stavesFound. * lily/staff-spacing.cc (next_note_correction): add fixed and space to calling convention. This fixes spacing of accidentals after barlines. * input/regression/spacing-accidental-stretch.ly: add barline - accidental case. * scm/framework-ps.scm (page-header): add version number to creator (eps-header): idem. * mf/feta-bolletjes.mf: swap d0 and u0 fa heads. 2005-08-13 Graham Percival * Documentation/user/global.itely: add "fit as much as possible onto this page" example (Vertical spacing). 2005-08-13 Jan Nieuwenhuizen * *: Nitpick run. * buildscripts/fixcc.py: Fixes. 2005-08-12 Graham Percival * Documentation/user/advanced-notation.itely: add markup example to Text spanners. 2005-08-12 Mats Bengtsson * Documentation/user/basic-notation.itely (Ties): Add example of tying a tremolo to a chord. Thanks to Steve Doonan. * lily/tie-engraver.cc: Add tieWaitForNote to the list of read properties and move tieMelismaBusy to the list of written properties. 2005-08-12 Heikki Junes * po/TODO: suggest to use a dedicated tool like kbabel. * po/fi.po: update using kbabel. 2005-08-12 Jan Nieuwenhuizen * *: Remove obsolete files. Nitpick run. * lily/lily-guile.cc (parse_symbol_list): Bugfix. 2005-08-11 Jan Nieuwenhuizen * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa. Copy SVG too. * Documentation/topdocs/NEWS.tely (Top): Add slur script feature. * lily/lily-guile.cc (parse_symbol_list): Rewrite. Grok multiple whitespace as symbol separator. * lily/side-position-interface.cc: Add slur-padding. * input/regression/slur-script.ly: Fixed. Backportme? This is quite a large fix, and it never worked in a stable release; so not really a regression. * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver): Update cut and paste code from Slur_engraver. * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface): Add. * scm/define-grobs.scm (DynamicLineSpanner): Add dynamic-line-spanner-interface. (DynamicLineSpanner, TextScript, Fingering): Add slur-padding. 2005-08-09 Jan Nieuwenhuizen * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use to_boolean () so that non-set 'inside-slur means false. * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that slur has control-points. Skip script without direction. Always do_shift if script inside slur, even if slur not contained in script y-extent. Increment k in loop. 2005-08-11 Mats Bengtsson * scm/define-markup-commands.scm: Improved regexp to search for EPS bounding boxes and corrected call to ly:warning. 2005-08-10 Nicolas Sceaux * Documentation/user/programming-interface.itely (Displaying music expressions): doc for \displayLilyMusic. Also some precisions in "Markup construction in Scheme" 2005-08-10 Mats Bengtsson * scm/define-markup-commands.scm (normal-text): Added 2 new markup commands, \normal-text and \medium (the latter thanks to Bruce Fairchild). 2005-08-08 Graham Percival * Documentation/user/programming-interface.itely: fix @{ @}. * scm/define-markup-commands.scm: add linewidth info to \justify and \wordwrap, add "upright is the opposite of italic". * Documentation/user/advanced-notation.itely: shaped->shape, add (cons (markup "foo")) type of example to text markup, reword multi-measure rests section. * lily/note-heads-engraver.cc: changed Shaped->Shape in a comment. No actual code was touched. * Documentation/user/invoking.itely: add more info about \include. Thanks, Bruce! * THANKS: add Bruce Fairchild, alphabetise. * Documentation/user/global.itely: document \score{\header{}} behavior. * Documentation/user/basic-notation.itely: reword multi-measure rest discussion in Rests. 2005-08-08 Mats Bengtsson * Documentation/user/programming-interface.itely (Markup construction in Scheme): Corrected example and tried to clarify the implicit \line in the table. 2005-08-07 Graham Percival * Documentation/user/instrument-notation.itely: moved some bagpipe info back into the bagpipe section. Somehow it ended up in the "other vocal issues" section?! :o_O 2005-08-07 Jan Nieuwenhuizen * scm/framework-ps.scm (dir-join): Rename from path-join (joins directories, not paths). 2005-08-06 Jan Nieuwenhuizen * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only plain emmentaler/aybabtu. Backportme. * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix: missing dir correction. 2005-08-05 Graham Percival * scm/define-markup-commands: fix reversed justify/wordwrap doc strings. 2005-08-05 Jürgen Reuter * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc, lily/gregorian-ligature-engaver.cc, lily/include/ligature-engraver.hh, lily/include/coherent-ligature-engraver.hh, lily/include/gregorian-ligature-engraver.hh: make these classes truely abstract. This should fix some internal oddities such as duplicate as well as dead translator/property declarations, and also some dead code. * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc: bugfix: avoid message "junking empty ligature" on ligature brackets by collecting dummy grobs. 2005-08-05 Han-Wen Nienhuys * lily/tuplet-bracket.cc (print): default right overshoot to 0.0 * input/proportional.ly (staffKind): bugfix. (staffKind): updates by Trevor Baca. * scm/define-grobs.scm (all-grob-descriptions): remove arrows as default layout. * lily/tuplet-bracket.cc (print): check whether edge-text is a pair. * lily/beam.cc (rest_collision_callback): call position_beam() if necessary. * VERSION: release 2.7.4 * input/regression/spacing-uniform-stretching.ly: new file. * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent(). * Documentation/topdocs/NEWS.tely (Top): add Nicolas as contributor. * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally. * input/proportional.ly: new file. * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if columns is empty * lily/tuplet-engraver.cc (finalize): new function. Reset right bounds to currentCommandColumn for the last step. (start_translation_timestep): if tupletFullLength is set, set bound to Paper Column * input/regression/tuplet-full-length.ly (indent): new file. * lily/spacing-loose-columns.cc (set_loose_columns): space a whole clique of loose columns, eg. a set of grace notes in strict notespacing. * input/regression/spacing-strict-spacing-grace.ly: new file. * lily/key-signature-interface.cc: change property name to alteration-alist * lily/key-engraver.cc (read_event): read keyAlterationOrder, not keyAccidentalOrder * python/convertrules.py (conv): keyAccidentalOrder -> keyAlterationOrder * lily/key-engraver.cc (create_key): always print a cancellation for going to C-major/A-minor, regardless of printKeyCancellation. (create_key): remove typecheck for visibility. This fixes key signature not being printed. * lily/spacing-determine-loose-columns.cc: new file. * input/regression/spacing-strict-notespacing.ly: new file. * lily/spacing-spanner.cc (generate_springs): rename from do_measure. (generate_pair_spacing): new function. (init, generate_pair_spacing): set between-cols for floating nonmusical columns. * lily/spaceable-grob.cc (get_spring): new function. * lily/tuplet-bracket.cc (print): on the left, the overshoot is relative to the right edge of the prefatory matter. * lily/beam.cc (print): read break-overshoot to determine where to stop/start broken beams. * input/regression/spanner-break-overshoot.ly: new file. 2005-08-04 Graham Percival * ly/bagpipe.ly: updated. * Documentat/user/instrument.itely: un-comment out bagpipe example. 2005-08-04 Han-Wen Nienhuys * lily/dynamic-engraver.cc (acknowledge_slur): add slur to support: now (de)crescs avoid slurs as well. * Documentation/user/instrument-notation.itely (Bagpipe example): comment out non-functioning bagpipe example. (Bagpipe definitions): idem. * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example. (Top): add proportionalNotationDuration example. * input/regression/spacing-proportional.ly: new file. * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is synched to a beam. * lily/beam.cc (shift_region_to_valid): divide by zero fix. This fixes beams with a single stem (eg. beams across linebreaks.) * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER. * flower/rational.cc (operator +): prevent overflow. This fixes heavily nested tuplets. * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We have to protect even those unlikely to be corrupted data members. 2005-08-04 Graham Percival * ly/bagpipe.ly: new file. * THANKS: added Sven Axelsson. 2005-08-04 Han-Wen Nienhuys * lily/spacing-engraver.cc (stop_translation_timestep): directly copy proportionalNotationDuration into currentMusicalColumn if set. * lily/spacing-spanner.cc (musical_column_spacing): if uniform-stretching set, fixed space is 0.0 * input/regression/spacing-multi-tuplet.ly: show uniform-stretching property. * lily/spacing-spanner.cc (effective_shortest_duration): new function. * lily/include/spacing-spanner.hh (class Spacing_spanner): new file. (struct Spacing_options): new struct. * lily/spacing-basic.cc: new file. * lily/spacing-spanner.cc (note_spacing): remove outdated code: delta_t doesn't have to be smaller than shortest_playing_len 2005-08-03 Han-Wen Nienhuys * input/regression/markup-arrows.ly: new file. * lily/tuplet-bracket.cc: document new behavior. * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets with line breaks. * scm/define-markup-commands.scm (arrow-head): arrow-head markup command. * scm/define-grobs.scm (all-grob-descriptions): set arrows as default * lily/tuplet-bracket.cc: add edge-text property. add break-overshoot. (print): read break-overshoot. (print): read edge-text, add stencils. * mf/feta-arrow.mf: new file. * mf/feta-generic.mf: add feta-arrow. 2005-08-03 Mats Bengtsson * Documentation/user/lilypond-book.itely (An example of a musicological document): Added flag -o to dvips for people who use the default setting in teTeX where output is sent to the printer. * Documentation/user/global.itely (Vertical spacing): Added reference to the Axis_group_engraver which documents the *Extent properties. 2005-08-03 Han-Wen Nienhuys * Documentation/user/basic-notation.itely (Tuplets): add note about nested tuplets. Remove BUG. * input/regression/tuplet-nest.ly: update: remove manual hack. * lily/tuplet-bracket.cc (print): use robust_scm2drul (print): manually call print() for subtuplets. (calc_position_and_height): add subtuplets to the support. Vertically shift outer tuplet * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set remove-first for Lyrics, ChordNames and FiguredBass * scm/define-grob-properties.scm (all-internal-grob-properties): use ly:grob-array? iso. grob-list? (all-internal-grob-properties): add tuplets grob-array. * lily/tuplet-bracket.cc (add_tuplet_bracket): new function 2005-08-03 Han-Wen Nienhuys * input/test/time-signature-staff.ly: new file. * ly/declarations-init.ly (center): escape to Scheme. Fixes spurious # errors. Backportme. 2005-08-03 Mats Bengtsson * Documentation/user/programming-interface.itely (Markup construction in Scheme): Corrected markup syntax in the translation table. 2005-08-03 Graham Percival * Documentation/user/instrument-notation.itely: small update to bagpipe notation docs; thanks Sven! * Documentation/user/basic-notation.itely: add link about trills. 2005-08-02 Graham Percival * Documentation/user/music-glossary: remove accidentally committed fink patch. 2005-08-02 Yoshinobu Ishizaki * lily/lily-parser.cc (get_header): new function. Enable multiple \header definitions. * lily/parser.yy (lilypond_header_body): use get_header. * ly/init.ly: * scm/lily-library.scm (print-score-with-defaults): renamed $globalheader to $defaultheader * Documentation/user/global.itely (Creating titles): added short explanation that multiple headers are useable. 2005-08-01 Han-Wen Nienhuys * lily/module-scheme.cc (LY_DEFINE): new file. * Documentation/user/advanced-notation.itely (Font selection): add doco for make-pango-font-tree. 2005-07-31 Graham Percival * Documentation/user/music-glossary: more languages for tenuto. * Docuemntation/user/instrument-notation.itely: minor update for bagpipe example. 2005-07-29 Han-Wen Nienhuys * input/regression/+.ly (TODO): add some text. 2005-07-28 Graham Percival * Documentation/user/invoking.itely: \score begins with music. * Documentation/user/ basic-notation.itely, instrument-notation.itely: minor changes. * Documentation/user/music-glossary.itely: began tenuto entry. 2005-07-28 Han-Wen Nienhuys * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich * mf/feta-bolletjes.mf: swap up and down for aiken heads. 2005-07-27 Graham Percival * Documentation/user/examples.itely: remove bagpipe template. * Documentation/user/instrument-notation.itely: add bagpipe section, maybe fix quotes in lyrics. I hate text encoding. Clarify chord durations, more bagpipe stuff. 2005-07-27 Han-Wen Nienhuys * lily/accidental-engraver.cc: formatting fixes. * lily/spacing-spanner.cc (prune_loose_columns): right-items is a grob-array. * lily/arpeggio.cc (print): suicide arpeggio for single notehead. * lily/note-column.cc (arpeggio): new function. * lily/note-spacing.cc (get_spacing): also take arpeggio into account for spacing. 2005-07-25 Jan Nieuwenhuizen * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define. (setup_guile_env): Use it instead of nonstandard setenv. Fixes mingw build. 2005-07-25 Han-Wen Nienhuys * scm/lily.scm (lilypond-all): clear anonymous modules after processing files. 2005-07-24 Han-Wen Nienhuys * flower/include/guile-compatibility.hh (SCM_I_CONSP): add SCM_I_CONSP * VERSION: 2.7.3 released * Documentation/user/invoking.itely (Invoking lilypond): add LILYPOND_GC_YIELD documentation. * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for scm_from_real / scm_make_real. * lily/main.cc (setup_guile_env): new function. Set GC min_yields higher. This increases memory footprint, but provides overall speedup of 15 to 20%. * lily/include/translator.hh (class Translator): remove PRECOMPUTED_VIRTUAL everywhere. * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair. * lily/context.cc (now_mom): non-recursive now_mom() * lily/include/profile.hh: new file. * lily/profile.cc: new file. * lily/grob.cc (Grob::Grob): look properties up directly. * lily/open-type-font.cc (get_indexed_char): cache index -> bbox lookups. * lily/include/box.hh (class Box): smob Box type. * lily/smobs.cc (protect_smob): O(1) GC (un)protection. * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods protect() and unprotect(). Use throughout. 2005-07-24 Nicolas Sceaux * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic * scm/define-music-display-methods.scm (markup->lily-string): markup elements can also be strings (without simple-markup appended) 2005-07-24 Han-Wen Nienhuys * lily/context.cc (where_defined): also assign value in where_defined(). * lily/bezier.cc (get_other_coordinate): use curve_coordinate (curve_coordinate): new function * lily/simple-spacer.cc (add_columns): only add rods between column i and begin/end if keep-inside-line is set (this repleces allow-outside-line as default) 2005-07-23 Han-Wen Nienhuys * lily/tuplet-engraver.cc (start_translation_timestep): only read tupletSpannerDuration if applicable. * lily/font-size-engraver.cc (process_music): read fontSize only once per timestep. * lily/engraver*cc: use throughout. * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro. * lily/translator.cc (add_acknowledger): new file. Directly jump into an Engraver::acknowledge_xxx () method based on a grobs interface-list. * lily/include/translator-dispatch-list.hh (class Engraver_dispatch_list): new struct, new file. * scm/define-context-properties.scm (all-internal-translation-properties): remove acceptHashTable, acknowledgeHashTable * lily/translator-group.cc (mark_smob): idem for acceptHashTable. * lily/engraver-group-engraver.cc (Engraver_group_engraver): change acknowledgeHashTable to C++ member. * lily/rest-collision.cc (do_shift): use extract_grob_set(). 2005-07-22 Nicolas Sceaux * scm/display-lily.scm: new file. Define a `display-lily-music' function, that displays the music expression given as an argument, using LilyPond notation. * scm/define-music-display-methods.scm: new file. Implementation of display methods for each music type. * ly/music-functions-init.ly (displayLilyMusic): new function for displaying music with LilyPond notation. * input/regression/display-lily-tests.ly: new regression test file for `display-lily-music'. * scm/markup.scm: remove obsolete debugging code (for printing markups with LilyPond notation). * scm/define-music-types.scm (music-name-to-property-table): * scm/clef.scm (supported-clefs): export, in order to be accessible from the (scm display-lily) module. 2005-07-22 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.tely (Top): Typo. 2005-07-22 Heikki Junes * Documentation/index.html.in, Documentation/texinfo.css, stepmake/bin/text2html.py, buildscripts/mutopia-index.py, Documentation/bibliography/index.html.in, Documentation/bibliography/html-long.bst: revert css-width patch, it does not work with IE6. 2005-07-21 Han-Wen Nienhuys * Documentation/texinfo.css: revert 760px hack. * VERSION: release 2.7.2 * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck * Documentation/user/basic-notation.itely (Barnumber check): add section. * scm/music-functions.scm (skip-to-last): new function. Show only last showLastLength part of the \score. * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub * python/convertrules.py (conv): add ly:x-moment rule * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment -> ly:moment-X * Documentation/topdocs/NEWS.tely (Top): add new feature. * Documentation/user/instrument-notation.itely (Flexibility in alignment): options in subsections. * lily/lyric-engraver.cc (process_music): don't typeset text for _ syllable text. Instead, assume that the previous lyric text is a melismated text. * Documentation/index.html.in: revert 800x600 change. 2005-07-19 Jan Nieuwenhuizen * lily/main.cc (main): Remove invalid handle kludge. * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui. (lambda): add gui define. 2005-07-21 Han-Wen Nienhuys * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta. * Documentation/user/instrument-notation.itely (Musica ficta accidentals): add section Musica ficta accidentals * lily/accidental-engraver.cc (make_suggested_accidental): new function. (make_standard_accidental): move into new function. (create_accidental): new function. * scm/define-grobs.scm (all-grob-descriptions): new Grob AccidentalSuggestion * lily/output-def-scheme.cc (LY_DEFINE): take default argument. * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if undefined. * Documentation/user/global.itely (Page formatting): document horizontalshift. * scm/page-layout.scm (default-page-music-height): horizontalshift: new variable, shift all systems by horizontalshift to the right, to make space for instrument names. * scm/paper.scm (set-paper-dimension-variables): add horizontalshift * lily/input-scheme.cc (LY_DEFINE): take format commands. 2005-07-20 Han-Wen Nienhuys * lily/note-column.cc (dir): idem. * lily/spacing-spanner.cc (Module): idem. * lily/script-column.cc (before_line_breaking): use extract_grob_set() * lily/include/paper-column.hh (class Paper_column): add non-static get_rank() member. * VERSION: release 2.7.1 * scm/framework-null.scm: new file, used for benchmarking. 2005-07-20 Heikki Junes * Documentation/topdocs/INSTALL.texi, configure.in: fix version dependencies for fontforge and gs. * Documentation/index.html.in, Documentation/texinfo.css, stepmake/bin/text2html.py, buildscripts/mutopia-index.py, Documentation/bibliography/index.html.in, Documentation/bibliography/html-long.bst: optimize width of html for a 800x600 screen (width:760), increases printability when 'fit to page' is not set and readability in wide screens. * stepmake/bin/add-html-footer.py: add missing

. 2005-07-19 Han-Wen Nienhuys * scm/define-markup-commands.scm (beam): use polygon in beam command. * lily/grob-pq-engraver.cc (stop_translation_timestep): save up all acknowledged grobs, and do potentially expensive merge and write in one go. * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak. * configure.in (reloc_b): add --enable-static-gxx to statically link to libstdc++ * lily/GNUmakefile (static-gxx-libs): new target static-gxx-libs. Create symlink to libstdc++.a * lily/new-lyric-combine-music-iterator.cc: rename to Lyric_combine_music_iterator * lily/lyric-combine-music-iterator.cc (Old_lyric_combine_music_iterator): rename to Old_lyric_combine_music_iterator * lily/*-engraver.cc (various): remove double use of PRECOMPUTED_VIRTUAL function: only use start_translation_timestep() and stop_translation_timestep(), not both. * lily/break-substitution.cc (fast_substitute_grob_array): do fast_substitute_grob_array for all unordered grob_arrays. (substitute_grob): return Grob *. Saves packing/unpacking SCMs. (substitute_grob_array): optimize. * lily/align-interface.cc (set_axis): set ordered_ for 'elements * lily/include/grob-array.hh (class Grob_array): ordered_ member. * lily/parser.yy: revert $globalheader patch. * lily/include/translator.icc (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into Translator methods, without _static helper. * lily/grob-smob.cc (derived_mark): rename from do_derived_mark(). Return void. * scm/define-context-properties.scm (all-internal-translation-properties): remove tweakCount/tweakRank. * scm/output-lib.scm (begin-of-line-invisible): use vectors for predefined break-visibilities. * lily/item.cc (handle_prebroken_dependencies): use a vector of 3 booleans for break-visibility. * Documentation/topdocs/NEWS.tely (Top): add note about engravers. * python/convertrules.py (conv): rule for Timing_translator. * lily/include/translator.icc: new file. * lily/paper-column-engraver.cc (process_music): new file. Separate Paper_column factory from Score_engraver. * lily/vertically-spaced-context-engraver.cc: administer spaceable-staves property of System. * lily/translator-group-ctors.cc: new file. * lily/context-property.cc (make_grob_from_properties): construct the right Grob class programmatically, looking at the class entry for the meta property. * lily/break-align-engraver.cc (stop_translation_timestep): call Break_align_interface::add_element() directly. * lily/context.cc (measure_position): measure_position() is now a normal function. * lily/include/translator.hh (class Translator): rename process_acknowledged_grobs() to process_acknowledged() and move to Translator. * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta field for each grob description. * lily/include/translator-group.hh (class Translator_group): change to base class. Separate class from Translator. This gets rid of virtual inheritance for Engravers/Performers. * lily/staff-performer.cc (class Staff_performer): derive Staff_performer from Performer, not Performer_group_performer * Lily/translator-group.cc (precomputed_recurse_over_translators): new function. (precompute_method_bindings): new function. Precompute lists of Translators, so we only call methods (process_music, start_translation_timestep, etc.) for Translators needing it. Also: dispose of pointer-to-member-function calls. * lily/engraver-group-engraver.cc: remove engraver_each, recurse_down_engravers () * lily/note-head.cc (internal_print): only call glyph-name-procedure if style != default. 2005-07-16 Graham Percival * ly/titling-init.ly: add printallheaders option. * Documentation/user/global.itely: document printallheaders. 2005-07-16 Han-Wen Nienhuys * lily/system.cc (do_derived_mark): don't mark from object_alist_ anymore, but do it centrally. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove hammer hack. * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object * scm/output-lib.scm: remove hammer-print-function. * lily/include/pointer-group-interface.hh (extract_grob_set): new macro. Declare a Link_array and fill it from a grob. (extract_item_set): idem for item. * lily/break-substitution.cc: add header. (fast_substitute_grob_array): rewrite for Grob_arrays. (substitute_grob_array): idem. * lily/group-interface.cc (add_thing): remove file. * flower/include/parray.hh (class Link_array): slice() is const. * lily/include/grob-array.hh: new file. * lily/grob-array.cc (spanner): new file. * lily/beam-quanting.cc (fill): read details property from beam. * lily/beam.cc: support details property. * total speedups below: approx 10%. * lily/include/beam.hh: new struct, softcode beam quanting parameters * lily/include/grob.hh (class Grob): add interfaces_ member. * lily/bezier.cc (init_polynomial_cache): new function: cache binom(3,j) t^j (1-t)^{3-j} (curve_point): opps, actually use the cache for t^j , (1-t)^j! * lily/*.cc: substitution throughout. * lily/grob-property.cc (internal_get_object): new routine. (internal_set_object): idem. Store grob refrences in separate alist. This saves processing time, since properties aren't break-substituted, and the per grob namespace is smaller, both for grobs and non-grob properties. * scm/define-grob-properties.scm (all-internal-grob-properties): remove center-element. * lily/grob.cc: remove tweak-count, tweak-rank. 2005-07-15 Graham Percival * Documentation/user/lilypond-book.itely: fixes example. 2005-07-15 Nicolas Sceaux * Documentation/user/global.itely (Creating titles): * Documentation/user/examples.itely (All headers): change the place of \header in \score blocks (after music block) to make examples compile (cf. changes on parser.yy on 2005-07-10) 2005-07-13 Graham Percival * python/convertrules.py: add exc -> ecc rule. * scripts/convert-ly.py: add location of convertrules.py in a comment. * Documentation/user/changing-defaults.itely: fix language. 2005-07-12 Jan Nieuwenhuizen * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix. 2005-07-13 Han-Wen Nienhuys * scm/output-socket.scm (grob-bbox): don't use inf? * flower/include/rational.hh: add operator bool() * scm/define-music-types.scm (music-descriptions): remove internal-class-name properties. * lily/include/event.hh: remove file. * lily/include/music-constructor.hh: remove file. * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event in 'types property. * lily/music.cc (duration_length_callback): new function. * lily/event.cc: remove file. * lily/music-constructor.cc: remove file. * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music * lily/context.cc (get_grob_key): nop if use_object_keys not set. (get_context_key): idem. * scm/lily.scm (lambda): new option object-keys (default to #f) * scm/output-svg.scm (utf-8-string): rename from utf8-string. * scm/output-gnome.scm: remove beam routine. * scm/output-ps.scm (scm): idem. * scm/output-svg.scm: remove beam. * ps/music-drawing-routines.ps: remove draw_beam. * lily/lookup.cc (beam): use round_filled_polygon() for beam. * flower/include/guile-compatibility.hh (scm_from_locale_string): add scm_from_locale_string compatibility glue. 2005-07-13 Yoshinobu Ishizaki * scripts/lilypond-book.py: Prevent occuring error when 'lilypond-book --output=foo/ somefile.ly' is executed multiple times and target file shoud be overwritten. (Error message said 'input file and output file is same'.) 2005-07-13 Graham Percival * input/regression/slur-extreme.ly, input/regression/slur-scoring.ly, lily/slur-configuration.cc, lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf, mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change "excentricity" to "eccentricity". * Documentation/user/converters.itely: fix URL for Noteedit and Rosegarden. * THANKS: added Yoshinobu Ishizaki. 2005-07-12 Han-Wen Nienhuys * scm/define-markup-commands.scm (justify-field): add. * scm/define-grobs.scm (all-grob-descriptions): decrease font size. 2005-07-11 Han-Wen Nienhuys * lily/lookup.cc (filled_box): express filled_box with round_filled_box * scm/midi.scm (paper-book-write-midis): new function. Write all performances in numbered MIDI files. * lily/performance-scheme.cc (LY_DEFINE): new file. (LY_DEFINE): new function ly:performance-write. * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name: new function. (LY_DEFINE): change name ly:parser-define -> ly:parser-define! * scm/framework-*.scm: use port arguments throughout. * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X * lily/paper-outputter.cc (Paper_outputter): take port argument. * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument. * scm/framework-texstr.scm (output-framework): * input/regression/repeat-fold.ly (texidoc): remove TeX strings. * scm/output-lib.scm (tablature-stem-attachment-function): tablature stem attachment fix. 2005-07-10 Han-Wen Nienhuys * lily/bezier.cc: hardcode binomial coefficients of order 3. * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype. * scm/define-music-types.scm (music-descriptions): don't use Music_wrapper type. * lily/paper-column.cc (print): print moment too. * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue. remove compatibility cruft. * lily/parser.yy (score_body): \score can only begin with Music. * lily/score-scheme.cc (LY_DEFINE): rename scorify to make-score. Take music argument only. Move parser interaction to Scheme. * scm/lily-library.scm (scorify-music): new function. * python/lilylib.py (datadir): remove 2.1 compat kludge. (datadir): remove resource import. (print_environment): remove get_bbox() (cp_to_dir): remove pre 1.5.2 compat glue. 2005-07-09 Han-Wen Nienhuys * lily/include/simple-spacer.hh (Module): idem. * lily/include/spring.hh (struct Spring): store inverse strength. This prevents division by zero. * VERSION: release 2.7.0 * lily/include/music.hh (class Music): remove Music::duration_log() * lily/stem-engraver.cc (make_stem): take duration log from event. * lily/chord-tremolo-engraver.cc: don't ack note-head-interface. 2005-07-08 Han-Wen Nienhuys * scm/lily.scm (ly:load): load autochange.scm * Documentation/user/tutorial.itely (Running LilyPond for the first time): remove reference to DVI/TeX * scm/define-markup-commands.scm (text): add \text markup command. * configure.in (reloc_b): bump requirement to Python 2.2. * lily/include/dots.hh (class Dots): make has_interface() static. * python/convertrules.py (conv): add rule for ly:grob-default-font * scm/define-grobs.scm (all-grob-descriptions): reorganize in alphabetical order. * input/regression/trill-spanner-pitched.ly: new file. * lily/font-interface-scheme.cc (LY_DEFINE): function ly:grob-default-font (changed from get-default-font). * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file. * lily/note-head.cc (internal_print): if style is not a symbol, set style to 'default. (internal_print): no style suffix if glyph-name-procedure not set. Default to quarter head. * scm/define-grobs.scm (Module): new grob TrillPitchHead. * scm/define-music-properties.scm (all-music-properties): add trill-pitch. * ly/music-functions-init.ly: \pitchedTrill * lily/pitched-trill-engraver.cc (acknowledge_grob): new file. * ly/Welcome_to_LilyPond.ly: update to 2.6.0 * lily/trill-spanner-engraver.cc (finalize): rename req -> event * scm/define-markup-commands.scm (pad-markup): pad-markup command. * po/fr.po: update * po/de.po: update. 2005-07-06 Graham Percival * Documentation/user/changing-defaults.itely: add link to grob-iterface. * Documentation/user/advanced-notation.itely: add material to Setting automatic beam behaviour. Thanks, Joe! * Documentation/user/lilypond.itely: change encoding to utf-8. 2005-07-01 Mats Bengtsson * Documentation/user/advanced-notation.itely (Setting automatic beam behavior): Correct the documentation of revert-auto-beam-setting (backportme) 2005-07-01 Han-Wen Nienhuys * lily/ly-module.cc (ly_make_anonymous_module): define %module-public-interface of module. * lily/lily-parser.cc (print_smob): allow printing of parser smob without lexer. 2005-07-01 Han-Wen Nienhuys * input/regression/fret-diagrams.ly: stretch example. 2005-06-30 Jan Nieuwenhuizen * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan Fodor). 2005-06-30 Graham Percival * Documentation/topdocs/AUTHORS.texi: update personal web address. * Documentation/user/examples.itely, lilypond-book.itely: change \RequirePackage to \usepackage. * Documentation/user/global.itely: document copyright and tagline. 2005-06-30 Han-Wen Nienhuys * Documentation/user/basic-notation.itely (Transpose): remove link to nonexistent UntransposableMusic. * scm/output-svg.scm: remove old definitions. * scripts/lilypond-book.py (do_file): search for kpsewhich before invoking. * python/lilylib.py (search_exe_path): new function. 2005-06-29 Han-Wen Nienhuys * python/lilylib.py (mkdir_p): remove setup_environment() (backportme) * buildscripts/mutopia-index.py (headertext): trim text. * Documentation/topdocs/NEWS.tely (Top): refresh. * scm/define-markup-commands.scm (wordwrap-string): new function: split string in paras and words. (wordwrap-markups): new function. (wordwrap-stencils): new function. (justify): use it. (wordwrap): use it. (wordwrap-string): use it (justify-string): use it. * scm/lily-library.scm (regexp-split): new function. * scm/define-markup-commands.scm: remove encoded-simple. remove font-markup. (fontsize): remove old version of fontsize. (wordwrap): new markup function. Wrap into paragraphs. * VERSION: Branch lilypond_2_6 (MINOR_VERSION): go to 2.7.0 2005-06-28 Han-Wen Nienhuys * po/zh_TW.po: update from translation project. 2005-06-28 Graham Percival * scm/midi.scm: compile fix. 2005-06-28 Mats Bengtsson * scripts/lilypond-book.py : Fix embarrassing bug in my previous patch. Now, the tempfile module is loaded too, not only used. 2005-06-28 Stephen Charles McCarthy * scm/midi.scm: changed midi volumes in absolute-volume-alist from 0.05 - 1.00 to 0.25 - 1.00 * scm/midi.scm: moved the default-instrument-equalizer procedure to just under the insturment-equalizer-alist it takes as an argument. 2005-06-28 Han-Wen Nienhuys * Documentation/user/advanced-notation.itely (Font selection): remove CMR note. * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 2005-06-28 Jan Nieuwenhuizen * THANKS: Add UTF-8 marker. * Documentation/user/point-and-click.itely (http): Update: use lilypond-invoke-editor. Fix: instruct to use user.js. 2005-06-27 Graham Percival * ly/titling-init.ly: implements printpagenumber, increases space between dedication and title (to avoid collisions with "g" and "q" in dedication), and nicer logic about copyright and instrument fields being printed on the first page. Thanks Vincent! * Documentation/user/global.itely: document printpagenumber. 2005-06-27 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.tely: Update to 2.6. 2005-06-27 Han-Wen Nienhuys * THANKS: update to 2.6 * VERSION: 2.6.0 released. 2005-06-27 Jan Nieuwenhuizen * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script rule, errorneously removed probably because of misleading comment. 2005-06-27 Han-Wen Nienhuys * python/lilylib.py (datadir): py2exe comments. * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement. * configure.in (reloc_b): make fontconfig REQUIRED. 2005-06-27 Heikki Junes * po/fi.po: add latest translations. 2005-06-27 Han-Wen Nienhuys * ChangeLog: recode utf-8 * Documentation/pictures/lilypond.xpm (Module): edited photo as logo. * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0 * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. * python/convertrules.py (do_conversion): don't print program_name from within a module * configure.in (reloc_b): bump fontforge requirement to 20050624. * python/convertrules.py (conv): add 2.6.0 dummy rule. 2005-06-23 Graham Percival * Documentation/user/lilypond-book.itely, Documentation/user/examples.itely: add \RequirePackage{graphics}. * ly/titling.ly: checks printfirstpagenumber, adds meter, and fixes baseline-skip. Thanks Vincent! * Documentation/user/advanced-notation.itely, global.itely: moved "Selecting font sizes" to global, since it deals with notation font size, not text fonts. 2005-06-23 Han-Wen Nienhuys * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice to fonts. 2005-06-23 Mats Bengtsson * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly workaround since /dev/stdin doesn't work on Cygwin. Using a temporary file in the current directory since latex doesn't understand the path name to the default TMP in Cygwin (at least on win XP). * Documentation/user/global.itely (Creating titles): Correct misprint in example. Thanks to Rob Vlasaty. 2005-06-22 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): release 2.5.32 * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser variable in lily module * scm/framework-ps.scm (output-classic-framework): error message regarding the classic framework. * Documentation/user/henle-flat-gray.png (Module): new file. * Documentation/user/baer-flat-gray.png (Module): new file. * scm/output-lib.scm (fret-number-tablature-format): vcenter and whiteout for markups. * buildscripts/substitute-encoding.py (note_glyph): include _ in regex too. This fixes change clef appearance in PDF. * ttftool/include/*: remove. * configure.in (reloc_b): remove TTFTOOL_ENDIAN * config.make.in (WINDRES): remove TTFTOOL_ENDIAN. * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool * ttftool/*: remove ttftool subdirectory. * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory. * lily/ttf.cc (print_header): new file. Convert to type42, using FreeType to parse the TTF. * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp and post table may differ. Pass around post_nglyphs as well. 2005-06-20 Han-Wen Nienhuys * ly/music-functions-init.ly (musicMap): new music function musicMap. 2005-06-19 Han-Wen Nienhuys * make/mutopia-rules.make: anti-alias-factor = 2 * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single page switch. * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set anti-alias-factor for lilypond-book runs. * scm/ps-to-png.scm (scale-down-image): new function. (my-system): new function. (make-ps-images): blow up GS resolution by anti-alias-factor, scale down image by anti-alias-factor. This improves appearance of bitmaps (make-ps-images): remove showpage. Fixes spurious empty png at end. * scm/framework-ps.scm (write-preamble): downcase filename before string-matching. Should fix .TTF files (as opposed to ttf files) * Documentation/user/tutorial.itely (Running LilyPond for the first time): separate subsections for windows, macos and unix. * Documentation/user/invoking.itely (Updating files with convert-ly): add MacOS X note. 2005-06-18 Han-Wen Nienhuys * Documentation/user/introduction.itely (Engraving): don't include file optical-spacing, add directly. * lily/paper-outputter.cc (file): open file in binary mode. This fixes OTF embedding on windows. 2005-06-17 Han-Wen Nienhuys * scm/framework-ps.scm (write-preamble): remove debugging output. * mf/aybabtu.pe.in (i): don't generate aybabtu.cff * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for outdir. (install-fc-cache): install font cache in installation directories. 2005-06-17 Jan Nieuwenhuizen * scm/editor.scm (editor-command-template-alist): Use char iso column, except for Emacs. (get-editor-command): Substitute char too (Bertalan Fodor). 2005-06-16 Jan Nieuwenhuizen * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single quoted ~s. This should fix PNG output on Windows; single quotes are regular characters on Windows. 2005-06-16 Graham Percival * Documentation/user/basic-notation.itely: include ChoirStaff in System start delimiters. * Documentation/user/putting.itely: new doc section on fixing overlapping notation. 2005-06-16 Han-Wen Nienhuys * Documentation/user/global.itely (Paper size): \paper is in \book, not \score. * make/mutopia-rules.make: -ddelete-intermediate-files * ly/engraver-init.ly: make Staff default child of ChoirStaff. 2005-06-16 Jan Nieuwenhuizen * ChangeLog: Recode utf-8. * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in datadir with .py modules. 2005-06-15 Heikki Junes * Documentation/user/basic-notation.itely (Ties): add tieDashed. 2005-06-15 Han-Wen Nienhuys * make/mutopia-rules.make: switch off ps, p&c for lilypond runs. * scm/framework-ps.scm (write-preamble): remove status check. * Documentation/user/invoking.itely (Updating files with convert-ly): remove -o option. * VERSION (PACKAGE_NAME): release 2.5.31 * scm/framework-ps.scm (write-preamble): use ly:system. (write-preamble): verbosity. * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules. * python/convertrules.py: new file. Store conversion rules separately. 2005-06-14 Han-Wen Nienhuys * scm/backend-library.scm (postprocess-output): remove debugging gobs. 2005-06-14 Mats Bengtsson * Documentation/topdocs/NEWS.tely (Top): Corrected name of \musicDisplay * Documentation/user/instrument-notation.itely (More stanzas): Add reference to StanzaNumber. 2005-06-14 Han-Wen Nienhuys * THANKS: separate section for website translators. 2005-06-14 Graham Percival * Documentation/topdocs/INSTALL.texi: update vim info; thanks Simon Bailey! * Documentation/user/advanced-notation.itely: included color names. * Documentation/user/advanced-notation.itely, Documentation/usr/notation-appendices.itely: moved color names into an appendix. 2005-06-14 Han-Wen Nienhuys * lily/program-option.cc (LY_DEFINE): new function ly_add_option. * scm/lily.scm (lambda): initialize program options from here. * scm/framework-*.scm: add header info. * lily/main.cc (parse_argv): only set output format to pdf if no other format specified. * scm/backend-library.scm (postprocess-output): process 'delete-intermediate-files after running convert-to-*. This fixes PNG generation when 'delete-intermediate-files is set. 2005-06-13 Han-Wen Nienhuys * buildscripts/mutopia-index.py (list_item): thinko. Fixes png links on website. 2005-06-13 Graham Percival * Documentation/topdocs/INSTALL.texi, Documentation/user/lilypond-book.itely: typos. 2005-06-12 Pal Benko * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space added between program name and switch; -b changed to -f not to generate pdf 2005-06-12 Han-Wen Nienhuys * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi (LilyPond-command-alist): use -f ps (thanks to Pal Benko) * input/sakura-sakura.ly: add \midi. * buildscripts/mutopia-index.py (find): use /usr/bin/find iso. python find. * ttftool/test.c (main): cosmetics. * ttftool/util.c (surely_lseek): use stdio FILE's for I/O * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL, create a ttf2ps binary. * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality. * scm/backend-library.scm (postscript->png): set rename-page-1 to true. 2005-06-11 Graham Percival * Documentation/user/lilypond-book.itely: add warning about the font warnings in dvips. 2005-06-11 Han-Wen Nienhuys * THANKS: typo * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url. * GNUmakefile.in: remove links for .map, .enc don't fail if out/ doesn't exist yet. 2005-06-10 Han-Wen Nienhuys * ttftool/util.c (surely_read): return nbytes * stepmake/bin/text2html.py (txt2html): add utf-8 marker. * VERSION (PACKAGE_NAME): release 2.5.30 * flower/string-convert.cc (precision_string): >? fix. * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too. (make-ps-images): add verbose -q too. * lily/default-actions.cc (Module): new file. default {book,score}-print functions. * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup: pass results via parseStringResult, lookup via ly:parser-lookup. * lily/lily-parser.cc (Lily_parser): only clone lexer in constructors. (parse_file): encapsulate do_yyparse() in scm_set_current_module() (parse_string): idem. * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init. * lily/main.cc (main_with_guile): copy be_verbose_global into ly_set_option() 2005-06-10 Jan Nieuwenhuizen * scm/backend-library.scm (postscript->pdf): * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in verbose mode. Search for several names of gs executable. 2005-06-10 Han-Wen Nienhuys * lily/ly-module.cc (ly_make_anonymous_module): call make-module directly. This fixes a massive memory leak, provided you use CVS GUILE. 2005-06-10 Erik Sandberg * ly/property-init.ly: Added tieDashed. * THANKS: Added some bughunters for 2.5. 2005-06-09 Han-Wen Nienhuys * lily/program-option.cc: add debug-gc option. * lily/include/lily-guile-macros.hh: don't protect exported module objects. * lily/include/lily-parser.hh (class Lily_parser): remove beam_check(). * scm/backend-library.scm (postscript->pdf): use delete-intermediate-files iso. running-from-gui? * ttftool/util.c (surely_read): robustness. Allow read() to return less bytes than requested, as per posix standards. * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity program option. * ttftool/include/ttftool.h ("C"): rename verbosity to ttf_verbosity. Add to public interface. * scm/music-functions.scm (unfold-repeats): remove debugging display. * lily/program-option.cc: rename from scm-option.cc * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting. (get_help_string): Print pretty help string. * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click to snippet preamble. * lily/scm-option.cc: remove command-line-settings option. Fold all command-line options plus default settings in a generic interface. * flower/getopt-long.cc (table_string): indent 2nd lines of help texts too. 2005-06-09 Jan Nieuwenhuizen * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_ or EXT_ components non-empty. 2005-06-08 Jan Nieuwenhuizen * scm/lily.scm (running-from-gui?): Export. * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate output in .ly source directory. 2005-06-09 Han-Wen Nienhuys * ttftool/util.c (surely_lseek): more verbosity. * lily/include/lily-proto.hh: add Context_def. This fixes FC4 compile. * lily/parser.yy (Repeated_music): remove >? * scm/backend-library.scm (postscript->pdf): Support for -dgs-font-load=1 * scm/framework-ps.scm (write-preamble): make font loading switchable to GS via --define-default gs-font-load=1 2005-06-09 Graham Percival * Documentation/user/global.itely: added \layout docs. 2005-06-09 Han-Wen Nienhuys * lily/lily-parser-scheme.cc: add unistd.h 2005-06-08 Han-Wen Nienhuys * scm/editor.scm: add char argument. * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. * ttftool/util.c (syserror): use errno for better error reporting. * lily/source-file.cc (get_counts): new function. Calc column, line and char count in one go. * lily/binary-source-file.cc (quote_input): rename to quote_input * lily/input.cc (set): new function. 2005-06-08 Jan Nieuwenhuizen * flower/file-path.cc (find): Bugfix. Append rather than prepend directory part of file name to search directory. * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to search path and chdir to DIR if --outname=DIR used. * lily/main.cc (prepend_env_path): Bugfix: Check directory existence before appending original path. 2005-06-08 Han-Wen Nienhuys * ttftool/parse.c (readNamingTable): verbosity for "bad TTF file" massage. * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our texinfo.tex is always used. 2005-06-07 Han-Wen Nienhuys * flower/include/axis.hh: rename from axes.hh * lily/include/text-interface.hh (Module): rename from text-item.hh * VERSION (PATCH_LEVEL): release 2.5.29 * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too. * scm/framework-ps.scm (font-file-as-ps-string): new function. (handle-macfont): new function. Call fondu for Native mac fonts. * scm/define-markup-commands.scm (fill-line): handle text-widths = '() case. 2005-06-07 Jan Nieuwenhuizen * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not multi-page. Fix .eps regular expression. 2005-06-07 Graham Percival * Documentation/user/putting.itely: add info on modifying templates. * Documentation/user/lilypond.itely, converters.itely, invoking.itely: misc small changes. 2005-06-07 Han-Wen Nienhuys * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page. * scripts/lilypond-ps2png.scm * VERSION (PACKAGE_NAME): release 2.5.28 2005-06-07 Jan Nieuwenhuizen * lily/main.cc (prepend_env_path): Do not append /, that does not work. Localedir lives in datadir, not in prefix. * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS hack for windows. * flower/include/file-cookie.hh: Compile fix. 2005-06-06 Han-Wen Nienhuys * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine system primitives. (gulp-port): using read-string!/partial. We don't want to read an entire PS file (GUILE 1.6 limits strings to 16M) * scm/define-grobs.scm (all-grob-descriptions): remove arch-* properties. Add font-interface. * scm/define-grob-properties.scm (all-user-grob-properties): remove old bracket properties. * scm/x11-color.scm: reformat. * lily/ledger-line-engraver.cc (acknowledge_grob): create new LedgerLineSpanner if new StaffSymbol is found. * lily/staff-symbol-engraver.cc (acknowledge_grob): also set staff-symbol for finishing staff. * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output * scm/output-svg.scm (setcolor): implement (re)setcolor with change black to currentColor everywhere. This fixes color support in SVG. 2005-06-06 Carl Sorensen * input/regression/fret-diagrams.ly: new file to test fret diagram capability * scm/output-tex.scm: remove white-dot and white-text * scm/output-ps.scm: remove white-dot and white-text * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- using ly:stencil-in-color instead (draw-dots) : remove call to white-dot 2005-06-06 Han-Wen Nienhuys * flower/memory-stream.cc (Memory_out_stream): remove fopencookie support. * ttftool/ttfps.c: use lily_cookie functions everywhere. * flower/include/file-cookie.hh: new file. lily_cookie extension * flower/file-cookie.cc: new file. lily_cookie extension. 2005-06-06 Jan Nieuwenhuizen * scm/editor.scm (editor-command-template-alist): Add syn editor (Jaap [de Vos]). 2005-06-05 Jan Nieuwenhuizen * scripts/lilypond-ps2png.scm: * scm/ps-to-png.scm: New file. * scm/backend-library.scm (postscript->png): Use it. * scripts/lilypond-ps-to-png.py: Remove file. * python/lilylib.py (get_bbox, make_ps_images): Remove. 2005-06-03 Han-Wen Nienhuys * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code. * scm/auto-beam.scm (default-auto-beam-check): only forbid beam start on grace moment. Fixes autobeam-grace.ly. * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't process anything unless we're at the end of a pending beam. Fixes syncopated 8ths beamed across a beat. 2005-06-03 Jan Nieuwenhuizen * scm/editor.scm (editor-command-template-alist): Start emacs if emacslient fails. * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR. * flower/file-path.cc (is_file, is_dir): Export. * lily/main.cc (prepend_env_path, set_env_file): Use them. 2005-06-02 Mats Bengtsson * lily/easy-notation.cc: Added include cctype to correct compilation error. 2005-06-02 Han-Wen Nienhuys * scm/backend-library.scm (postscript->pdf): set resolution to 1200, so bitmap fonts aren't that ugly. * Documentation/topdocs/NEWS.tely (Top): add entry about font family. * lily/dynamic-engraver.cc (acknowledge_grob): only center on parent if we have a notehead. Fixes incorrect offsets when Paper_column is very wide in the X direction. * input/regression/font-family-override.ly (Module): new file. * scm/font.scm (make-pango-font-tree): new function. * lily/beam.cc (before_line_breaking): remove warning about less than 2 visible stems. We still get a warning when there is only one stem. 2005-06-01 Werner Lemberg * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa correctly. 2005-06-01 Han-Wen Nienhuys * lily/slur-scoring.cc (generate_avoid_offsets): new function. Generate avoid offsets once per slur. * lily/slur.cc (add_extra_encompass): add dependency to extra-encompass object. This fixes bugs/c-phrasing-slur.ly * lily/stencil.cc (is_empty): check dim_ field for is_empty() too. Fixes inf error with added bass notes. * scripts/lilypond-book.py (do_options): --psfonts doesn't take argument anymore. * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension. * input/tutorial/lbook-latex-test.tex: add line length test. * scripts/lilypond-book.py (set_default_options): new function. Call this before dissecting snippets, so linewidth settings reach the snippets. 2005-06-01 Jan Nieuwenhuizen * scm/lily.scm (PLATFORM, slashify): Remove double slashes. 2005-06-01 Han-Wen Nienhuys * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix. 2005-05-31 Jan Nieuwenhuizen * stepmake/aclocal.m4: More autopackage friendliness. 2005-05-31 Graham Percival * Documentation/index.html.in: remove link to LSR. * Documentation/user/global.itely: remove duplicate "dedication" \header{} section. 2005-05-31 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.27. * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper too. Plugs memory leak. * make/lilypond.fedora.spec.in (Group): remove lilypond-pdfpc-helper. * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-pdfpc-helper. Use lilypond-invoke-editor instead. * scm/font.scm (make-century-schoolbook-tree): add Mono as 'typewriter family. * lily/score.cc (Score): unprotect copy of Output_def. Plugs memory leak. * lily/parser.yy (score_body): don't clone Score, that's done in Lily_lexer::try_special_identifiers(). This fixes a memory leak. * lily/score-engraver.cc (derived_mark): new function. (initialize): unprotect Paper_score. This fixes a memory leak. * lily/score-performer.cc (derived_mark): new function. * lily/score-translator.cc (get_output): use SCM for get_output() call. * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes spurious warning. * scm/font.scm (make-century-schoolbook-tree): use Sans for sans serif. 2005-05-31 Jan Nieuwenhuizen * configure.in (reloc_b): Add --enable-relocation. 2005-05-31 Han-Wen Nienhuys * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. * input/regression/alignment-order.ly: add Staff example. 2005-05-31 John Mandereau * po/fr.po: update. 2005-05-31 Graham Percival * Documentation/index.html.in: add link to LSR. 2005-05-31 Han-Wen Nienhuys * scm/define-stencil-commands.scm (Module): new file. Register all allowed stencil expression heads in a central place. * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in ly:make-stencil * lily/stencil-expression.cc (all_stencil_heads): registering stencil expressions. * lily/stencil-interpret.cc: new file. Stencil expression interpreting. * input/xiao-haizi-guai-guai.ly: move file back. 2005-05-30 Graham Percival * Documentation/user/advanced.itely, converters.itely, instrument-notation.itely, lilypond-book.itely: misc small changes. 2005-05-30 Jan Nieuwenhuizen * lily/lexer.ll: Skip UTF-8 BOM at BOF. * make/lilypond.fedora.spec.in: Fix source url. * cygwin: Update from mingw patches. * scm/editor.scm (editor-command-template-alist): Use jedit -reuseview (Bertalan), add uedit (Patrick Huberts). * input/xiao-hai-zi-guai-guai.ly: Rename from xiao-haizi-guai-guai.ly. * input/*: Reindent, do not use TAB. * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against white background. 2005-05-29 Jan Nieuwenhuizen * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for numerical overflow error. 2005-05-29 Laura Conrad * abc2ly.py: fix to syntax error in multi-part output. 2005-05-30 Han-Wen Nienhuys * lily/span-bar.cc (print): sort bar line extents. Fixes problem with disappearing span bars when alignAboveContext is active * lily/property-iterator.cc (check_grob): use is-grob? object-property. Fixes crash-key-sig-font-size.ly. 2005-05-29 Han-Wen Nienhuys * lily/bar-line.cc (print): don't round barlines; this produces odd aliasing effects in Acroread. * lily/timing-engraver.cc (process_music): robustness fix. * lily/context-def.cc (filter_engravers): bugfix. 2005-05-28 Jan Nieuwenhuizen * lily/lilypond.rc.in: Add ly-icon. * lily/GNUmakefile: * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon rules. 2005-05-28 Han-Wen Nienhuys * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color * ps/music-drawing-routines.ps: * scm/output-ps.scm: remove draw ez_ball. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove EasyNotation context definition. * lily/easy-notation.cc (brew_ez_stencil): new file. Use Text_interface and color for making easy note heads. * lily/stencil.cc (with_color): new function. * ps/music-drawing-routines.ps: remove draw_zigzag_line * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line output routine. Zigzag now works in SVG too. * scm/output-tex.scm (filledbox): idem. * scm/output-svg.scm (filledbox): idem. * scm/output-ps.scm (lily-def): remove horizontal-line. * lily/lookup.cc (horizontal_line): use draw-line. * lily/system-start-delimiter.cc: remove old staff bracket code. * mf/feta-haak.mf: further tweaks. * lily/system-start-delimiter.cc (staff_bracket): use glyphs. * mf/feta-generic.mf: include feta-haak. * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips * scm/framework-ps.scm (write-preamble): only load fonts if their filename is a string. 2005-05-27 Han-Wen Nienhuys * scm/output-svg.scm (circle): support circle. (bracket): stub for bracket. * scripts/lilypond-book.py (main): make sure --psfonts warning is correct. 2005-05-26 Graham Percival * Documentation/user/lilypond.tely, advanced-notation.itely, basic-notation.itely, instrument-notation.itely, global.itely, introduction.itely, tutorial.itely: rearranging, editing, clean-up. * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required for compiling on FreeBSD. 2005-05-26 Han-Wen Nienhuys * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and otf files. * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower): bugfixes. * VERSION: 2.5.26 released. * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 2005-05-25 Pedro Kroger * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers if printpagenumber is false. 2005-05-26 Han-Wen Nienhuys * lily/font-config.cc (init_fontconfig): comment out FontConfig cache warning. * lily/tie.cc (print): support dotted ties. 2005-05-25 Han-Wen Nienhuys * scm/define-grobs.scm (all-grob-descriptions): switch off debugging (all-grob-descriptions): Arpeggio has Y-extent. * scm/define-music-properties.scm (all-music-properties): document length-callback and start-callback as "read-only". * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set length-callback after creation. * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats, compressmusic -> compressMusic. * ly/music-functions-init.ly (oldaddlyrics): idem. * lily/parser.yy: NewLyricCombineMusic -> LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic. 2005-05-24 Pedro Kroger * ly/Welcome_to_LilyPond.ly: typo. 2005-05-24 Graham Percival * Documentation/user/lilypond.tely: move changing-defaults to be before global issues. * Documentation/user/basic-notation.itely: move Transpose section here from advanced/Other. * Documentation/user/changing-defaults.itely, advanced-notation.itely: move Fonts to advanced, edit. 2005-05-24 Han-Wen Nienhuys * lily/parser.yy (bare_int): remove rule. From now on, we require # before negative integers. 2005-05-23 Graham Percival * ly/property.ly: Update tieDotted to have the same form as slurDotted. * Documentation/user/lilypond.tely: change Unified index to LilyPond index. * Documentation/user/advanced-notation.itely, instrument-notation.itely: editing. 2005-05-23 Jan Nieuwenhuizen * scm/lily.scm (lilypond-all): Bugfix: return failed. * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX. 2005-05-21 Jan Nieuwenhuizen * lily/general-scheme.cc (ly:stderr-redirect): Rename from ly:port-move. Needs to be stderr-specific on mingw. Run fixcc. 2005-05-20 Jan Nieuwenhuizen * lily/general-scheme.cc (ly:port-move): Remove. * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in windows. * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_* variables. This eliminates the need for a gs.bat wrapper, which opens a console. * scripts/lilypond-invoke-editor.scm (running-from-gui?): * scm/lily.scm (running-from-gui?): * lily/main.cc[MINGW]: Remove isatty inversion, this is an artifact of not compiling with -mwindows. * scm/editor.scm: Define PLATFORM. 2005-05-23 Han-Wen Nienhuys * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people can start to cut & paste lilypond-book fragments. * scm/define-music-types.scm (music-descriptions): remove UntransposableMusic 2005-05-20 Han-Wen Nienhuys * scm/output-ps.scm (glyph-string): remove / before CIDs. 2005-05-20 Graham Percival * Documentation/user/instrument-notation.itely: remove *Engraver. * Documentation/user/advanced-notation.itely: edit, rearrange. 2005-05-20 Han-Wen Nienhuys * scm/output-ps.scm (glyph-string): take cid? argument. Use findresource iso. findfont for CID CFF fonts. * VERSION (PACKAGE_NAME): release 2.5.25 * ly/Welcome_to_LilyPond.ly: add \version 2005-05-20 Graham Percival * Documentation/user/programming-interface.itely: move \displayMusic into its own section. * Documentation/user/basic-notation.itely: finish editing. 2005-05-20 Han-Wen Nienhuys * flower/file-path.cc (find): don't throw away file_name.dir, but append to it. Fixes \include with directories. * flower/include/file-path.hh (class File_path): don't derive from Array. * flower/include/file-name.hh (class File_name): remove to_str0() * lily/hara-kiri-engraver.cc (acknowledge_grob): split Hara_kiri_engraver in separate file. * lily/slur-configuration.cc (score_encompass): oops, * Documentation/user/basic-notaton.itely: editing. 2005-05-18 Graham Percival * Documentation/user/macros.itexi, basic-notation.itely: add @commonprop (commonly used properties) macro. 2005-05-18 Han-Wen Nienhuys * ly/Welcome_to_LilyPond.ly: talk about icon, not program. * scripts/lilypond-book.py (invokes_lilypond): new function (main): only run fontextract if invokes_lilypond() is true. * lily/function-documentation.cc (ly_add_function_documentation): duh, use != * Documentation/topdocs/INSTALL.texi (Top): add MacOS command. * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL. * scm/lily.scm (running-from-gui?): lowercase Darwin. * lily/function-documentation.cc (ly_add_function_documentation): use scm_hash_table_p() for checking. 2005-05-18 Jan Nieuwenhuizen * Documentation/user/advanced-notation.itely (Text scripts): Change nonexisting @internalsref{Text markup} to @ref{Text markup}. Change @internalsref{Text script} to @internalsref{TextScript}. * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules. 2005-05-17 Graham Percival * Documentation/user/tutorial.itely, basic-notation.itely, changing-defaults.itely: remove duplicate cindex entries that appear on the same page. * scm/define-grobs.scm: change default padding for TextSpanner. * Documentation/topdocs/AUTHORS.texi: update email address. * Documentation/user/global.itely: add info about \include. 2005-05-17 Jan Nieuwenhuizen * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps when running-from-gui. * scm/editor.scm (get-editor): Add platform defaults. * scm/backend-library.scm (postscript->pdf): Typo. 2005-05-17 Han-Wen Nienhuys * scm/lily.scm (running-from-gui?): Darwin never runs from GUI. * lily/font-config.cc (init_fontconfig): add warning about cache. 2005-05-16 Jan Nieuwenhuizen * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*. 2005-05-16 Mats Bengtsson * lily/horizontal-bracket.cc (print): Take care of the direction property so brackets above the stave point downwards. * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding for HorizontalBracket so it doesn't end up within the stave. 2005-05-16 Jan Nieuwenhuizen * lily/GNUmakefile (default): Typo. * scm/lily.scm (PLATFORM): Export. * scm/framework-ps.scm (write-preamble)[MINGW]: Use load-font-via-GS, ttftool or fopencookie is broken on windows. * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use -dSAFER, that is broken on windows. 2005-05-15 Han-Wen Nienhuys * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency for FlexLexer.h * scripts/lilypond-invoke-editor.scm: remove stray - 2005-05-15 Jan Nieuwenhuizen * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length. Fixes deprecation warning. * flower/include/string.icc (to_string): Only inline if -DSTRING_UTILS_INLINED. * lily/pango-font.cc (pango_item_string_stencil): Normalize file name. Remove windows comment. * scm/editor.scm (slashify): New function. (get-editor-command): Use it. (get-command-template): Do not alter editor command if environment value includes `%(file)s' magic. * scripts/lilypond-invoke-editor.scm (unquote-uri): New function. (dissect-uri): Use it. (unquote-uri): Bugfix. 2005-05-15 Han-Wen Nienhuys * scm/framework-ps.scm (write-preamble): add TTF rule. * Documentation/topdocs/README.texi (Top): remove note about xdelta. * Documentation/topdocs/INSTALL.texi (Top): remove Flex requirement. * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new function. Figure out where FlexLexer.h lives * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h 2005-05-14 Jan Nieuwenhuizen * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs with Windows root in file name. * scm/backend-library.scm (ly:system): Only redirect output (using system and shell, ugh) if /dev/null is writable. * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build windows icon. * scm/lily.scm (is-absolute?): New function. Fixes absolute files on Mingw. * scm/output-ps.scm (grob-cause): Use it. Fixes PDF point and click. * flower/file-path.cc (is_dir, is_file): New function. Actually use result of stat when available. * flower/file-path.cc (find): Use it. Refactor. Fixes Mingw, absolute file name and root. * scm/lily.scm (PLATFORM): On mingw, slashify getcwd. * scm/editor.scm (get-editor-command): Typo: do not apply editor. * flower/file-name.cc (slashify): Bugfix, do substitute if no slashes in file name. 2005-05-13 Jan Nieuwenhuizen * Documentation/user/preface.itely (Preface): Run texinfo-all-menus-update. * scm/editor.scm (get-editor-command): Bugfix: allow full LYEDITOR setting, partial XEDITOR setting. With typo fix. * Documentation/pictures/lilypond-48.xpm: New file. * flower/file-path.cc (to_string): Bugfix: use PATHSEP. * ly/Welcome_to_LilyPond.ly: New file. * lily/main.cc (main): Only identify if we have a terminal. * scm/backend-library.scm (postscript->png) (postscript->pdf): Fix file name quoting for GS/MINGW (ie, non-/bin/sh). 2005-05-13 Heikki Junes * Documentation/topdocs/AUTHORS.texi: polish, update. 2005-05-13 Han-Wen Nienhuys * Documentation/user/preface.itely (Notes for version 2.6): new notes for 2.6 * lily/dynamic-engraver.cc (stop_translation_timestep): first set finished_span_, then call typeset_all(). Fixes spurious "Hairpin is not fully contained" warnings. * lily/slur-scoring.cc (get_bound_info): remove warning. * lily/staff-symbol-engraver.cc (process_music): start initial spanner in process_music(). This fixes overrides of StaffSymbol properties. * scm/framework-pdf.scm (Module): remove. * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update. * lily/ambitus-engraver.cc: formatting cleanups. * mf/feta-solfa.mf (Module): remove. * ChangeLog: more details about contributions. 2005-05-12 Han-Wen Nienhuys * lily/align-interface.cc (align_elements_to_extents): warn if called too early. Fixes: disappearing-staff-lines.ly * VERSION (PACKAGE_NAME): release 2.5.24 2005-05-12 Jan Nieuwenhuizen * stepmake/aclocal.m4: Typo. * flower/string.cc (substitute): Take two strings or two characters. Update callers. 2005-05-11 Jan Nieuwenhuizen * flower/file-name.cc (File_name): Slashify. * scm/lily.scm: Use gui-main iso lilypond-main on MINGW. * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor. * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function. * configure.in (gui_b): Use it. * lily/lilypond.rc.in: New file. * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable. 2005-05-12 Graham Percival * Documentation/user/advanced-notation.itely: edit of Text section; clarify text scripts vs. text markup. 2005-05-12 Han-Wen Nienhuys * lily/multi-measure-rest-engraver.cc (Multi_measure_rest_engraver): init bar_seen_ to true. Notice separation items on start. Fixes mm rests in start of score. * lily/slur-scoring.cc (move_away_from_staffline): robustness, don't access StaffSymbol if not there. Fixes: crash-staff-symbol-engraver.ly. * lily/instrument-name-engraver.cc (class Instrument_name_engraver): data member first_. Create InstrumentName on start. 2005-05-12 Graham Percival * Documentation/user/instrument-notation.itely: add guitar position. * Documentation/user/introduction.itely, Documentation/user/lilypond.tely, Documentation/user/tutorial.itely: begin pruning unused (duplicated) cindex entries and misc cleanup. 2005-05-12 Mats Bengtsson * input/test/volta-chord-names.ly: Bring the explanation up to date. 2005-05-11 Heikki Junes * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}: Specify `@documentencoding utf-8' for html, ignore warnings. 2005-05-11 Erik Sandberg * THANKS: Added bughunters. 2005-05-11 Heikki Junes * lily/main.cc: update help string for `lilypond -H'. * po/fi.po: update. 2005-05-10 Graham Percival * Documentation/user/advanced-notation.itely: minor fixes. 2005-05-10 Jan Nieuwenhuizen * scm/editor.scm: New module. * scm/lily.scm (gui-main): Use it. * scm/framework-gnome.scm (spawn-editor): Use it. * scripts/lilypond-invoke-editor.scm: Use it in new script. 2005-05-10 Han-Wen Nienhuys * scm/framework-ps.scm (load-font-via-GS): new function. * lily/pango-font.cc (pango_item_string_stencil): add support for CID keyed font. * scm/output-ps.scm (glyph-string): add support for CID keyed font. 2005-05-10 Graham Percival * Documentation/user/basic-notation.itely: add @ref. * Documentation/user/advanced-notation.itely: add example of 5/8 beaming. 2005-05-10 Han-Wen Nienhuys * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes. * scm/backend-library.scm (postscript->pdf): Invoke gs instead of going through ps2pdf wrappers. 2005-05-09 Jürgen Reuter * Documentation/user/instrument-notation.itely: petrucci note heads: updated docu * input/regression/note-head-style.ly: updated regression test; indentation fixes * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note heads as default * mf/parmesan-heads.mf: minor editing; use musicological names (rather than optical description) as note head names * scm/output-lib.scm: complete petrucci heads 2005-05-09 Pal Benko * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural heads, but bigger) 2005-05-09 Jan Nieuwenhuizen * lily/main.cc (main_with_guile): Remove no files check. * lily/main.cc (ly:usage): Export to Scheme. * scm/lily.scm (no-files-handler): New function. * scm/lily.scm (lilypond-main): Use it. * configure.in (gui_b): Add mbrtowc checking. Resurrect [utf8/]wchar.h checking. 2005-05-09 Mats Bengtsson * Documentation/user/advanced-notation.itely (Metronome marks): Add link to the program reference for MetronomeMark * Documentation/user/lilypond-book.itely (An example of a musicological document): Correct the example using psfonts 2005-05-09 Heikki Junes * po/fi.po: update after a lesson how to update entries against source. * po/TODO: document the lesson. 2005-05-09 Han-Wen Nienhuys * configure.in (gui_b): remove wcrtomb checking. * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32 bits. Patch by Matthias Neeracher. 2005-05-09 Mats Bengtsson * scripts/convert-ly.py: In the conversion to version 1.9.0, keep Scheme expressions and strings unmodified when doing the conversion to postfix notation for slurs and beams. Should hopefully solve most related conversion problems. * Documentation/user/lilypond-book.itely : Clarify and correct how to call dvips with -h psfonts. 2005-05-09 Jan Nieuwenhuizen * Documentation/user/instrument-notation.itely (Entering lyrics): Typo. Fixes build. 2005-05-09 Graham Percival * Documentation/user/lilypond-book.itely: document PSFONTS file. * Documentation/user/lilypond.tely, lilypond-book.itely, tutorial.itely: change references to 2.5.x to 2.6.x. * Documentation/user/instrument-notation.itely: clarified \addlyrics vs \lyricmode. * Documentation/user/invoking.itely: remove old info about lilypond-profile. * Documentation/topdocs/INSTALL.texi: remove old info about lilypond-profile, add warning about needing international fonts to build docs. 2005-05-09 Han-Wen Nienhuys * lily/include/grob-info.hh (class Grob_info): make data member private. Changes throughout. * input/regression/alignment-order.ly: new file. * lily/vertical-align-engraver.cc (acknowledge_grob): read alignAboveContext and alignBelowContext 2005-05-08 Han-Wen Nienhuys * lily/pfb.cc (LY_DEFINE): add cast. * scm/framework-ps.scm (write-preamble): embed CFFs if file name matches .otf (write-preamble): warn about unknown fonts. * lily/pfb.cc (Module): new function ly:otf->cff * lily/open-type-font.cc (get_otf_table): use ::get_otf_table (get_otf_table): new function. 2005-05-07 Han-Wen Nienhuys * scm/backend-library.scm (postscript->png): call lilypond-ps2png iso. ps2png. 2005-05-06 Heikki Junes * po/fi.po: apply second round of update. 2005-05-06 Han-Wen Nienhuys * scm/x11-color.scm (make-x11-color-handler): don't use #\sp. Apparently doesn't work on all platforms. 2005-05-06 Graham Percival * Documentation/user/advanced-notation.itely, putting.itely, tutorial.itely, global.itely, introduction.itely: really minor fixes. 2005-05-06 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.23 2005-05-06 Jan Nieuwenhuizen * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents, convert to utf-8. * THANKS: Add translators for this release, convert to utf-8. * mf/GNUmakefile (MFTRACE_FLAGS): * buildscripts/substitute-encoding.py (outdir): Build fix: pass outdir as option (WAS: hardcoded). 2005-05-06 Han-Wen Nienhuys * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init finished_span_ * THANKS: add Hans Forbrich. * Documentation/topdocs/NEWS.tely (Top): document new feature. * Documentation/user/basic-notation.itely (Staff symbol): document start/stop staff. Reference to ossia.ly * input/test/ossia.ly: new example using stop and startStaff. * lily/timing-engraver.cc: remove Timing_engraver::initialize(), in other words, don't create "|" barline at start of the score. (start_translation_timestep): don't set whichBar for start of score. * input/regression/staff-halfway.ly: use new functionality. * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents, start and stop staff based on events. * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent * ly/declarations-init.ly (startStaff, stopStaff): new identifiers. 2005-05-05 Han-Wen Nienhuys * Documentation/user/programming-interface.itely (How markups work internally ): remove \encoding reference. 2005-05-04 Mats Bengtsson * scripts/convert-ly.py: Attempt to do a smarter update of text markups from versions < 1.9.0 with arbitrary nesting. 2005-05-04 Heikki Junes * po/fi.po: convert to utf-8, and update. 2005-05-04 Han-Wen Nienhuys * make/lilypond.suse.spec.in: update from suse 2.4 package. * lily/*.cc: more ? to min/max changes * lily/include/interpretation-context-handle.hh: rename Interpretation_context_handle to Context_handle. 2005-05-04 Heikki Junes * input/regression/GNUmakefile (local_delete): use `find` together with `xargs` to avoid too long argument-lists in cmd line. 2005-05-04 Graham Percival * Documentation/user/introduction.itely: updates "About this manual". * Documentation/user/advanced-notation.itely, invoking.itely: minor fixes. 2005-05-04 Han-Wen Nienhuys * COPYING: add font exception. Update FSF address. * lily/context-def.cc (path_to_acceptable_context): bugfix, depth should be taken without child context. * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it. * scm/define-markup-commands.scm (triangle): new command, as robust replacement for unicode Delta/Triangle. 2005-05-03 Han-Wen Nienhuys * ps/music-drawing-routines.ps: add fillp argument. * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument * lily/font-config.cc (init_fontconfig): don't add cff/ * VERSION (PACKAGE_NAME): release 2.5.22 * mf/GNUmakefile: remove cff/cff.ps/.map install rules. * lily/grace-engraver.cc (consider_change_grace_settings): use is_alias(). Fixes problem with CueVoice grace notes. * lily/simultaneous-music-iterator.cc (construct_children): call Music_iterator::quit() for iterators that start out invalid. This fixes indefinitely continuing contexts. * buildscripts/substitute-encoding.py: new file * Documentation/user/basic-notation.itely (Basic polyphony): fix missing @end * scripts/lilypond-book.py (write_if_updated): print file name. * Documentation/user/basic-notation.itely (Explicitly instantiating voices): idem. * Documentation/user/advanced-notation.itely (Text spanners): remove stray { } * lily/context.cc (default_child_context_name): the default child is now first in accepts_list_. * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add \defaultchild to all relevant contexts. This fixes: drums-pitch.ly. (Probably also fixes similar problems with ancient transcriptions getting CueVoices instead of the desired voices.) * lily/context-def.cc (get_default_child): new function. (get_accepted): place default child in front of list. * lily/parser.yy (FIXME): add DEFAULTCHILD token. * lily/include/context-def.hh (struct Context_def): add default_accept_ 2005-05-03 Graham Percival * scm/define-grobs.scm: remove "remove-first" line, since the absent property is set to #f anyway. * Documentation/user/basic-notation.itely, advanced-notation.itely, instrument-notation.itely: minor fixes. * ly/property-init.ly: add textSpanner{Up,Down,Neutral}. * Documentation/user/advanced-notation.itely, changing-defaults.itely: consolidate Text stuff in advanced notation. * Documentation/user/global.itely: better docs for \header. * Documentation/user/putting.itely: new chapter; placeholder for future expansion. * Documentation/user/examples.itely: moved "suggestions for writing LP files" section into putting.itely. * Documentation/user/lilypond.itely: added new chapter, fixed the short table of contents. 2005-05-03 Han-Wen Nienhuys * lily/beam-quanting.cc (quanting): robustness fix, don't produce infinity for unfeasible beams. * make/lilypond.fedora.spec.in (Group): idem. * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png * mf/GNUmakefile (ALL_GEN_FILES): remove .map * scm/framework-ps.scm (write-preamble): extract CFF from OTF fonts directly. * buildscripts/gen-emmentaler-scripts.py (i): idem. * mf/GNUmakefile: remove all CFF rules. * scm/framework-ps.scm (ps-embed-cff): reinstate. * lily/open-type-font-scheme.cc (LY_DEFINE): new function ly:otf-font-table-data. (LY_DEFINE): new function otf-font? 2005-05-02 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule. ($(outdir)/Fontmap.lily): idem. * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding for PFAEmmentaler-XXX.pfa. * Documentation/user/music-glossary.tely (accidental): NL translation of accidental. 2005-05-02 Jan Nieuwenhuizen * flower/include/international.hh: Bugfix: include "string.hh". * lily/include/mingw-compatibility.hh: New file. * flower/include/libc-extension.hh (memrev): Rename from strrev. * configure.in: Search for mingw wcrtomb library. 2005-05-02 Mats Bengtsson * scripts/convert-ly.py: Bug fix * Documentation/user/changing-defaults.itely (Common tweaks): Added example where the context has to be specified explicitly (MetronomeMark). 2005-05-01 Han-Wen Nienhuys * scripts/lilypond-book.py (ly_options): set timing to #f for notime option. * scripts/convert-ly.py (conv): typo. * flower/*.cc: remove ? * lily/*.cc: remove ? * lily/tweak-registration.cc (insert_tweak_from_file): Make sure that 0x0 isn't passed into scm_cons(). Fixes crash with tweak editor. 2005-04-30 Han-Wen Nienhuys * lily/part-combine-engraver.cc: add space to variable list. 2005-04-30 Graham Percival * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's remove-first to false (matches docs) * Documentation/user/advanced-notation.itely: corrected docs concerning remove-first. 2005-04-29 Mats Bengtsson * lily/part-combine-engraver.cc: make sure that the relevant properties are included in the documentation. 2005-04-28 Graham Percival * Documentation/user/lilypond-book.itely: Bernard's docs for \betweenLilyPondSystem. 2005-04-28 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated remarks. 2005-04-28 Pal Benko * lily/mensural-ligature.cc (brew_flexa): apply thickness property only on vertical lines of flexa shape, and use a constant thickness value for horizontal lines (patch slightly modified by Jürgen Reuter) * lily/include/mensural-ligature.hh: make 2 comments clearer 2005-04-28 Jürgen Reuter * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed to need_extra_horizontal_space; bugfix: use class scope to avoid global namespace pollution * Documentation/user/instrument-notation.itely (ligatures): added comment on possible future syntax change and how to work around * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf (epiphonus, cephalicus): fine-tune shape of plica head for narrow intervals (fixes agnus dei example) * Documentation/user/instrument-notation.itely (white mensural ligatures): selected a more illustrative example 2005-04-28 Heikki Junes * Documentation/index.html.in: specify utf-8 charset in meta content. 2005-04-27 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): bugfixes; GS can produce empty 2nd page for single page. * scm/lily.scm: remove p&c definitions. * po/zh_TW.po (Module): new translation. * lily/lily-guile.cc (ly_chain_assoc): remove. * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get (LY_DEFINE): recurse, iso. calling ly_chain_assoc. 2005-04-26 Han-Wen Nienhuys * lily/beaming-info.cc: remove infinity_i * scripts/abc2ly.py (out_filename): fix thinko with \version. 2005-04-26 Graham Percival * Documentation/user/basic-notation.itely, instrument-notation.itely, advanced-notation.itely, changing-defaults.itely: minor fixes. Added docs for colors to advanced-notation.itely. * Documentation/user/advanced-notation.itely: fixed compile problem and added Bernard's x11-color doc patch. 2005-04-25 Jan Nieuwenhuizen * scm/output-ps.scm (grob-cause): Yet another fix, hope it's alright this time round. 2005-04-25 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): idem. * Documentation/topdocs/README.texi (Top): remove clean-fonts refs. * VERSION (MAJOR_VERSION): release 2.5.21 * scm/output-ps.scm (grob-cause): bugfix. 2005-04-25 Jan Nieuwenhuizen * cygwin/*: Update. * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile stuff. * scm/output-ps.scm (grob-cause): Bugfix. * scm/lily.scm (ly:load): Remove x11-color. * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not quote executable, fixes getting version from program --with --options. (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use $ac_exeect. * Documentation/user/GNUmakefile: Only build music-glossary with rendered lilypond snippets during web. 2005-04-25 Han-Wen Nienhuys * po/de.po: update. * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc 2005-04-22 Laura Conrad * scripts/abc2ly: second title line append with punctuation dash character; encode abc2ly python strings in utf-8 2005-04-21 Laura Conrad * scripts/abc2ly fix chords (again) 2005-04-22 Bernard Hurley * scm/x11-color.scm: new file All x11 color names can be accessed with: #(x11-color 'ColorName), #(x11-color "ColorName") or: #(x11-color "color name") If the x11 color name is not recognised then it defaults to black * scm/lily.scm: amended to call scm/x11-color.scm 2005-04-24 Han-Wen Nienhuys * Documentation/user/invoking.itely (Reporting bugs): comment out reference to online PNG bug repository. 2005-04-21 Jan Nieuwenhuizen * lily/translator-scheme.cc (ly:translator-property): Remove. Update callers. * lily/context-scheme.cc (ly:context-now): Move from translator. Update callers. 2005-04-21 Han-Wen Nienhuys * input/regression/grid-lines.ly (skips): refine example. * scm/define-context-properties.scm (all-user-translation-properties): doc autoBeamCheck * input/regression/grid-lines.ly (Module): new file. * lily/grid-point-engraver.cc (Module): new file. * lily/grid-line.cc (Module): new file. * lily/grid-line-span-engraver.cc (Module): new file. * lily/grid-line-interface.cc (Module): new file. 2005-04-21 Jan Nieuwenhuizen * scm/auto-beam.scm (revert-property-setting): Bugfixes: add missing parameter, actualy cdr through list. Actually return a list with ENTRY removed (was '()). * scripts/convert-ly.py: Update. Print warning if file cannot be opened. (do_conversion): Fix printing of continuation comma. * Documentation/user/advanced-notation.itely (Beam formatting): Remove refbugs about compound time and mixed duration. * scm/auto-beam.scm (default-auto-beam-settings): Write out all modulo moments explicitely. * lily/moment.cc (operator %): New function. * lily/moment-scheme.cc (ly:mod-moment): Wrap it. * lily/translator-scheme.cc (ly:translator-now, ly:translator-property): New function. * scm/auto-beam.scm (default-auto-beam-check): New function. * lily/auto-beam-engraver.cc (test_moment): Use it. * flower/rational.cc (operator %): Bugfix. 2005-04-21 Erik Sandberg * scripts/abc2ly: Bugfix 2005-04-20 Han-Wen Nienhuys * python/fontextract.py (write_extracted_fonts): bugfix, too many %'s on EndFont comment. * lily/ledger-line-spanner.cc: some more words of explanation. 2005-04-20 John Williams * scripts/lilypond-book.py: htmlquote bugfix. Allow snippets to be given distinct filenames. Allow the default alt text to be overridden. 2005-04-20 Erik Sandberg * ly/performer-init.ly: Bugfix * THANKS: Added bughunters. 2005-04-20 Jan Nieuwenhuizen * SConstruct (test_lib): Bump mftrace requirement to 1.1.9. * lily/auto-beam-engraver.cc (test_moment): Test exact measure position (was: use modulo measure length). * configure.in (no gui_b): Remove optional gtk+ requirement. 2005-04-20 Han-Wen Nienhuys * Documentation/user/basic-notation.itely (Pitches): add LedgerLineSpanner. * lily/dynamic-engraver.cc (process_music): set right bound to script if present. Else, do not set. (acknowledge_grob): only set right bound of finished spanner to note column if no other bound is set. * python/lilylib.py (make_ps_images): switch back to png16m. 2005-04-19 Jan Nieuwenhuizen * scripts/lilypond-book.py (write_if_updated): Bugfix for not writing up to date file. Add dvips usage suggestion. * scripts/convert-ly.py: Fix error message. Print usage if no files on command line. (usage): Add example usage. * input/test/compound-time.ly: New file. * input/test/circle.ly: New file. * Documentation/topdocs/NEWS.tely: Use them. * input/test/boxed-stencil.ly: Remove \score. * buildscripts/mf-to-table.py (base): Add .log dependency. * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on pfa's. Add .log dependency * scm/define-markup-commands.scm (lower): New command. * elisp/lilypond-mode.el (LilyPond-pdf-command): New command, make it default. 2005-04-19 Han-Wen Nienhuys * lily/dynamic-engraver.cc (acknowledge_grob): add note-column also to finished cresc as right bound. This fixes: skip-string-decresc.ly * lily/slur-scoring.cc (get_bound_info): robustness: substitute relative_coordinate if extent is empty. * lily/stem.cc (width_callback): determine correct extent if flag is not there. This fixes slur-no-flag.ly * lily/grace-engraver.cc (consider_change_grace_settings): new function. (initialize): also consider_change_grace_settings() on initialization. Fixes large grace notes at start of score. * lily/break-align-interface.cc (do_alignment): don't translate if total_extent is empty. * buildscripts/lilypond-{login,profile}.sh (Module): remove file. 2005-04-18 Han-Wen Nienhuys * scm/output-ps.scm (grob-cause): don't add cwd if path starts with slash. 2005-04-18 Jan Nieuwenhuizen * stepmake/aclocal.m4: Remove tfm_path. 2005-04-18 Nicolas Sceaux * scm/music-functions.scm (markup-expression->make-markup): fix bug with cons arguments of markup commands. (music->make-music): fix music expression property list building 2005-04-18 Jan Nieuwenhuizen * aclocal.m4: Massage package names. * SCons updates. 2005-04-18 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.20 * lily/stem.cc (calc_stem_info): add minimum Y extent of stem-tremolo. Fixes: bugs/tremolo-stem-length-beamed * lily/percent-repeat-engraver.cc (try_music): add measure before next_moment to future processing moment. Fixes: percent-repeat-mm-rest.ly (process_music): don't add moment for 2nd time. * input/regression/repeat-percent.ly: add mmrests as extra test. * lily/axis-group-engraver.cc (acknowledge_grob): read keepAliveInterfaces to decide what to kill. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add percent-repeat-interface to keepAliveInterfaces. This fixes percent-repeat-harakiri. 2005-04-17 Jan Nieuwenhuizen * SCons updates. 2005-04-18 Han-Wen Nienhuys * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH * aclocal.m4: remove --enable-tfm-path configure option * input/test/ancient-font.ly (lowerStaff): clef name errors. * scm/backend-library.scm (postscript->png): newline after finishing command. * lily/paper-score-scheme.cc (LY_DEFINE): new file. (LY_DEFINE): ly:paper-score-paper-systems: new function * lily/score-scheme.cc (LY_DEFINE): require music argument. * lily/score.cc (default_rendering): use Music_output too. * input/test/chord-names-languages.ly (Module): rename file. * lily/text-spanner.cc: add bound-padding. * lily/paper-book.cc (systems): accept Paper_score iso. Paper_system vector. * input/regression/line-arrows.ly: new file. * lily/paper-score.cc (process): run get_paper_systems() only once. * lily/line-spanner.cc (line_stencil): add arrows. 2005-04-18 Jonatan Liljedahl * lily/line-interface.cc (make_arrow): new function. (arrows): idem. 2005-04-18 Mathieu Giraud * input/test/chord-names-german.ly: update for italian/french chords. * Documentation/user/instrument-notation.itely (Printing chord names): update. 2005-04-18 Han-Wen Nienhuys * lily/include/paper-score.hh (class Paper_score): remove unused prototypes. * lily/book.cc (process): add -COUNT to midi output. * lily/score.cc (book_rendering): remove outname argument (book_rendering): return list of Music_outputs. * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument. * lily/book.cc (process): loop over Music_outputs returned from Score::book_rendering(). * lily/*.cc (width_callback): remove spurious "unused" warnings for assert (axis==[XY]_AXIS); * lily/include/music-output.hh (class Music_output): smobify class. * lily/include/paper-score.hh (class Paper_score): make members private. * lily/performance.cc (process): return #f iso. #. This prevents # leaking into GUILE-userspace. 2005-04-17 Han-Wen Nienhuys * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC. 2005-04-17 Mathieu Giraud * scm/chord-name.scm : support for italian and french chords names. * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add a space defined by chordPrefixSpacer when the root name is direclty followed by a prefix. * ly/engraver-init.ly : chordPrefixSpacer * scm/define-context-properties.scm : chordPrefixSpacer * ly/property-init.ly : italianChords, frenchChords 2005-04-17 Jan Nieuwenhuizen * mf/feta-din.mf: Remove. * mf/GNUmakefile (fontdir): Bugfix. * mf/SConstruct: Some updates. * SConstruct: Require pkg-config. (test_program): Bugfix for double digit version compares, use integer (not string-) compare. Optionally require gs 8.14. * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too. * lily/*: s/ifdef HAVE_*/if have/. * SConstruct (test_lib): New function. Update pkg-config and some other requirements. * configure.in: Require pkg-config. Enforce REQUIRE and version for freetype, pangof2t. 2005-04-16 Jan Nieuwenhuizen * po/lilypond.pot, ...: Update using bison-CVS. * python/lilylib.py (make_ps_images): Fixo. 2005-04-16 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): typo. * configure.in (gui_b): make bison optional. * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer. 2005-04-16 Bernard Hurley * framework-eps.scm: code added so that a macro \betweenLilyPondSystem with one parameter can be defined in a LaTeX file when processed by lilypond-book this will be evaluated between the systems of a multi-system score. The parameter is the number of systems processed. 2005-04-16 Jan Nieuwenhuizen * python/lilylib.py (make_ps_images): Escape newline. * Documentation/user/music-glossary.tely: Run texinfo-all-menus-update. 2005-04-14 Jan Nieuwenhuizen * scm/lily-library.scm (old-relative-not-used-message) (version-not-seen-message): Add input-file-name-location to message. * lily/parser.yy (lilypond): Add token aliases. * Documentation/user/music-glossary.tely (accidental): Fixes. Do not confuse with alteration. (alteration): Add. 2005-04-14 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): use -dEPSCrop * VERSION (PACKAGE_NAME): release 2.5.19 * Documentation/user/lilypond-book.itely (Invoking lilypond-book): only put xrefs in info documentation. * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi -> .pdf rule to tex-rules.make. * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments from -systems.* output. * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF directly, remove -$(PAGESIZE) target. * input/test/embedded-postscript.ly: update. 2005-04-13 Han-Wen Nienhuys * make/lysdoc-targets.make (local-WWW): remove ps.gz target. * Documentation/user/changing-defaults.itely (Font selection): document font-name. * input/regression/font-name.ly: show Pango fonts for font-name. Update example. * lily/pango-select.cc (properties_to_pango_description): don't convert symbol font-size to number, but use to lookup. * python/fontextract.py (write_extracted_fonts): add VMusage 0. * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and (NAME . FILE-NAME) tuples for font descriptions. (write-preamble): display BeginFont DSC comments. * python/fontextract.py (write_extracted_fonts): new file. Extract font resources from a PS file. * scripts/lilypond-book.py (option_definitions): --psfonts option. (Compile_error.process_include): do_file returns chunks. * make/ly-vars.make (DVIPS_FLAGS): don't load .map file. * make/lysdoc-targets.make: .texi is .PRECIOUS * scripts/lilypond-book.py (write_if_updated): new function. 2005-04-13 Jan Nieuwenhuizen * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages. 2005-04-13 Han-Wen Nienhuys * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages. * input/regression/markup-syntax.ly: remove \score. * scm/define-markup-commands.scm (draw-circle): add fill argument * scm/stencil.scm (make-circle-stencil): add fill argument * ps/music-drawing-routines.ps: add fill argument. * ly/performer-init.ly: add CueVoice to MIDI too. * ps/music-drawing-routines.ps: new routine BeginEPSF / EndEPSF. * input/regression/markup-eps.ly: new file. * scm/framework-ps.scm (write-preamble): change order: vars should be inited before procedures. * scm/output-ps.scm (glyph-string): break lines. 255 chars is max for EPS files. * scm/define-markup-commands.scm (epsfile): add epsfile command. 2005-04-12 Han-Wen Nienhuys * configure.in (gui_b): add check for ghostscript 8.15 2005-04-11 Han-Wen Nienhuys * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at start of line. Fixes cresc-after-newline.ly * lily/source-file.cc (file_line_column_string): use get_column(). 2005-04-10 Han-Wen Nienhuys * lily/source-file.cc (get_column): utf-8 support for column numbers. 2005-04-12 Jan Nieuwenhuizen * lily/*: use message () iso progress_indication () for messages. Revise/uniformise user messages. * flower/warn.cc (progress_indication): New function. (message): Use it. Fixes newline problems. * config.make.in (webdir): Sort out install dirs. * stepmake/stepmake/generic-targets.make (final-install): Bugfix. * python/lilylib.py (command_name): Bugfix. (make_ps_images): 2005-04-11 Pedro Kroger * lily/main.cc: --help says what types of backends are availabe 2005-04-11 Jan Nieuwenhuizen Fix ./VERSION dependency, and without need to reconfigure. * lily/main.cc (setup_paths): Update. * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define.. * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION. * scripts/convert-ly.py (\markup): Fix too simplistic regexps. Add \line for some simplistic cases. * lily/GNUmakefile (main.o): Add missing dependency on version.hh. 2005-04-10 Nicolas Sceaux * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used to compile LY files (useful for adding eg. "-I" args) (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a 2Gnome command for gnome backend. (LilyPond-command-formatgnome): call the 2Gnome command. key binding: C-c C-g 2005-04-10 Jan Nieuwenhuizen * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix: depend on all PNG images. 2005-04-09 Jan Nieuwenhuizen * GNUmakefile.in: Bugfix: also link .map files. 2005-04-09 Nicolas Sceaux * scm/music-functions.scm (music->make-music): generate a (make-music ...) sexpr from a music expression. (display-scheme-music): use guile pretty printer to display the make-music sexpr. 2005-04-09 Han-Wen Nienhuys * ly/engraver-init.ly: reindent. Add CueVoice. * scm/music-functions.scm (music-pretty-string): handle moments too. (music-pretty-string): only print non-empty lists. (cue-substitute): create CueVoice context, which has smaller type. * lily/moment-scheme.cc (LY_DEFINE): new methods ly:moment-grace-{numerator,denominator} * lily/context-handle.cc: remove quit() method. * lily/font-config.cc (init_fontconfig): be verbose about font path. (init_fontconfig): success is 0, not !0 2005-04-08 Han-Wen Nienhuys * mf/feta-nummer-code.mf (code): add plus glyph. * lily/tie.cc (print): idem. * lily/slur.cc (print): don't use thickness property for slur shape-thickness. * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order while adding stencils. * scm/define-markup-commands.scm (with-color): with-color markup command. (whiteout): new markup command (filled-box): new markup command 2005-04-07 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.tely (Top): Make tex-able. Handy test for PDF docs. * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler, PFAAybabtu-Regular. Fixes feta font in PDFs. Notes for tetex-3.0 make web: psclean.map: s/uhv8a/uhvr8a/ config.ps add: p +psfonts_t1.map p +psclean.map p +typeface.map 2005-04-06 Nicolas Sceaux * scm/music-functions.scm (music-pretty-string): fix bug with string argument. 2005-04-06 Jan Nieuwenhuizen * stepmake/bin/add-html-footer.py (i18n): Bugfix. 2005-04-06 Han-Wen Nienhuys * scripts/lilypond-book.py (Lilypond_snippet.__init__): only process options if they're there. (write_file_map): add version-seen? to snippet-map.ly 2005-04-06 Jan Nieuwenhuizen * scripts/lilypond-book.py (split_options): Bugfix. Small code formatting cleanups. * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms. Add PFAaybabtu.pfa dependency on aybabtu.subfonts. 2005-04-06 Han-Wen Nienhuys * scm/framework-ps.scm (ps-font-command): don't hash, just use name directly. * lily/main.cc (setup_paths): either add mf/out to search path or fonts/{otf,type1,etc} * lily/font-config.cc (init_fontconfig): either add mf/out to FontConfig or fonts/{otf,type1,etc} * GNUmakefile.in: don't put mf/ link in share/ dir. * lily/staff-spacing.cc: move same-direction-correction to note-spacing-interface * scm/lily.scm (lilypond-main): use variable argument count for exception handler. * lily/font-config.cc (init_fontconfig): add operator pacification message. * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa * buildscripts/gen-emmentaler-scripts.py (i): generate PFAEmmentaler as well. * scm/framework-ps.scm (munge-lily-font-name): new function (write-preamble): hack: insert PFA equivalent of CFF into .PS. This makes LilyPond output printable on normal PS printers again. * buildscripts/gen-emmentaler-scripts.py (i): generate PFAEmmentaler.pfa aswell. 2005-04-06 John Williams * scripts/lilypond-book.py: refactor the compose_ly procedure. 2005-04-06 Han-Wen Nienhuys * scm/page-layout.scm (default-page-make-stencil): always combine the header stencil, even if empty. This prevents the body text to reach up to the margins. * po/rw.po (Module): new file, for Kinyarwanda. * input/test/spacing-optical.ly (Module): new file. * lily/staff-spacing.cc: add same-direction-correction 2005-04-06 Jan Nieuwenhuizen * Documentation/user/introduction.itely (Engraving): Comment-out non-existent file. 2005-04-05 Han-Wen Nienhuys * scm/define-grob-properties.scm (all-user-grob-properties): add same-direction-correction * VERSION: release 2.5.18 2005-04-05 Jan Nieuwenhuizen * lily/grob.cc (mark_smob): Check pscore->layout_ before dereferencing. Fixes make web. * lily/midi-stream.cc: Handle unwritable midi file. Include errno.h. * Documentation/user/: Fix links. 2005-04-05 Han-Wen Nienhuys * lily/text-interface.cc (Module): rename from text-item.cc * input/regression/apply-output.ly (texidoc): function naming fix. * lily/time-signature-performer.cc (derived_mark): new function. * lily/lily-parser-scheme.cc: print mapped file name for progress * scripts/lilypond-book.py (find_linestarts): new function. (find_toplevel_snippets): keep track of line numbers. * lily/key-performer.cc (try_music): remove FIXME warning, gobble all key changes. * ly/declarations-init.ly (partCombineListener): use ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly * lily/bar-check-iterator.cc (process): ignoreBarChecks property. 2005-04-04 Jan Nieuwenhuizen * lily/text-item.cc: Fix link. * Documentation/user/changing-defaults.itely (Changing defaults): Fix programs reference links. * Documentation/user/music-glossary.tely: Convert to utf-8. 2005-04-04 Han-Wen Nienhuys * make/lilypond-vars.make: remove TEXMF from variables. remove DEB_BUILD pk font variables. remove GUILE_LOAD_PATH remove TeX memory vars. 2005-04-04 Werner Lemberg * lilypond/scm-option.cc (ly_option_usage): Add final newline. 2005-04-03 Han-Wen Nienhuys * ps/lilyponddefs.ps: remove reencode-font * lily/simple-spacer.cc (add_columns): also compare directly. Column rank doesn't distinguish between broken and unbroken columns. This fixes large spaces before time sig changes. * Documentation/user/point-and-click.itely: document ly:set-option. * lily/grob.cc (get_uncached_stencil): only set grob-cause if point_and_click_global is set. * lily/scm-option.cc (LY_DEFINE): add point-and-click ly:set-option argument. 2005-04-03 Jan Nieuwenhuizen * GNUmakefile.in: Include symlinks in webball. * Documentation/user/GNUmakefile (source-links): Add symlinks to source dir for split and non-split manuals. * Documentation/user/*y: Fix @uref/@inputfile links for split/non-split HTML documents. * Documentation/user/GNUmakefile (local-WWW): Do not generate .ps.gz. 2005-04-02 Jan Nieuwenhuizen * GNUmakefile.in: Add newline. 2005-04-01 Erlend Aasland * tex/lilyponddefs.tex: use color instead of xcolor * scm/output-tex.scm: minor editing 2005-04-02 Nicolas Sceaux * scm/music-functions.scm (display-scheme-music): pretty printer for music expressions. 2005-04-02 Jan Nieuwenhuizen * buildscripts/install-info-html.sh (index_file): Fix link. 2005-04-01 Jan Nieuwenhuizen * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent. * Documentation/index.html.in: Add size estimates with some big pages. * Documentation/user/tutorial.itely (Running LilyPond for the first time): Add/replace some @rglos links. TODO: add more @rglos links in tutorial, test non-intrusiveness (.css). * stepmake/bin/add-html-footer.py (do_file): Remove info's annoying's indication of referencing external document. * Documentation/user/GNUmakefile: Split version of glossary too. * Documentation/user/macros.itexi (@rglos): Have makeinfo produce links, not only for html. * Documentation/user/introduction.itely: Fix some links for other than html, do not use `here' as link name. 2005-03-31 Jan Nieuwenhuizen * scm/documentation-generate.scm (string-append): Fix @usermanref, @glossaryref. 2005-03-31 Han-Wen Nienhuys * scm/page-layout.scm (default-page-make-stencil): only add header if existing and not empty. Fixes spurious programming error. * lily/span-bar.cc (print): don't make rounded edges for spanbars. 2005-03-31 Erlend Aasland * scm/output-tex.scm: implement {re,}setcolor * tex/lilyponddefs.tex: use color package 2005-03-31 Jan Nieuwenhuizen * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html additions to website. * Documentation/user/lilypond.tely: Remove reference to ps.gz. * Documentation/user/macros.itexi: Fix @usermanref html links in split documents: use @inforef. 2005-03-30 Graham Percival * Documentation/user/programming-interface.itely: minor fix. * Documentation/user/advanced-notation.itely: added info to Metronome markings. 2005-03-30 Jan Nieuwenhuizen * scm/output-lib.scm (make-stencil-boxer): Junk code duplication, use box-stencil. Remove y-padding argument. (make-stencil-circler): New function. * buildscripts/lilypond-words.py (F): * elisp/SConscript (a): * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS): * vim/SConscript (a): * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update. * lily/general-scheme.cc: Build fix. * scm/markup.scm: * input/regression/markup-scheme.ly: * input/regression/markup-syntax.ly: Drop 'new-' from name. * scm/stencil.scm (make-circle-stencil): New function. * scm/define-markup-commands.scm (draw-circle): Use it. New name (was cicle). Update callers. (circle): New markup command, similar to box. * scm/stencil.scm (circle-stencil): New function. 2005-03-29 David Jedlinsky * configure.in: Detect libutf8/wchar.h variant. * stepmake/aclocal.m4: Modify shared size test. 2005-03-30 Han-Wen Nienhuys * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff. 2005-03-29 Han-Wen Nienhuys * scripts/convert-ly.py (conv): add stencil-aligned-to! rule. * VERSION (PACKAGE_NAME): release 2.5.17 2005-03-29 Jan Nieuwenhuizen * scm/backend-library.scm (postscript->png): Fix comment and png message. * GNUmakefile.in (link-tree): Fix locales. 2005-03-29 Han-Wen Nienhuys * lily/stencil-scheme.cc (LY_DEFINE): change to ly:stencil-aligned-to, non mutating. * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent! * lily/stencil-scheme.cc: remove ly:stencil-set-extent! * lily/quote-iterator.cc (derived_mark): call Music_wrapper_iterator::derived_mark() too. * lily/grace-engraver.cc (derived_mark): change signature, add const. 2005-03-28 Jan Nieuwenhuizen * SConstruct (symlink): * GNUmakefile.in (link-tree): Add scripts to prefix. * lily/general-scheme.cc (ly:effective-prefix): New function. * scm/backend-library.scm (postscript->png): Use it. 2005-03-28 Han-Wen Nienhuys * lily/paper-score.cc (process): don't delete grobs after producing stencils. * scm/part-combiner.scm (determine-split-list): switch off debugging info. * scm/backend-library.scm (postscript->png): explicitly use ps2png.py if available. * scm/define-context-properties.scm (all-user-translation-properties): add stringNumberOrientations. * lily/new-fingering-engraver.cc (position_scripts): make generic, so fingering and string-numbers are separately controlled. 2005-03-28 Jan Nieuwenhuizen * stepmake/aclocal.m4: Fix shared size test: add missing comma, do not use debugging. 2005-03-28 Han-Wen Nienhuys * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess. * config.hh.in: add HAVE_FONTCONFIG. * Documentation/user/instrument-notation.itely (String number indications): new node. * input/regression/new-markup-syntax.ly (texidoc): add circle. * lily/new-fingering-engraver.cc (add_string): new function. (acknowledge_grob): accept string-number-event as well. * scm/define-markup-commands.scm (circle): new markup command. * scm/output-lib.scm (print-circled-text-callback): new function. * lily/GNUmakefile: move ifeq after include stepmake.make. 2005-03-28 Jan Nieuwenhuizen * config.make.in (HAVE_LIBKPATHSEA_SO): * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO. * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO, add KPATHSEA_LIBS. * debian/watch: * debian/control: Update. 2005-03-28 Han-Wen Nienhuys * input/test/title-markup.ly (spaceTest): remove. * input/test/embedded-tex.ly (Module): remove. * input/test/music-box.ly: use 'name property, not ly:music-name. * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS. * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add. 2005-03-28 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi (Top): Remove information about xdeltas. Add information about CVS. * scm/lily.scm (lilypond-main): Fix invocation of handler, gracefully handle failed files. * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS. * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other small fixes. * scm/framework-tex.scm (convert-to-ps): Proper option spacing. No unnecessarily specific i18n messages. Remove stray `1'. 2005-03-28 Han-Wen Nienhuys * buildscripts/lys-to-tely.py (strip_extension): add utf-8 documentencoding * scm/documentation-lib.scm (texi-file-head): set utf-8 documentencoding. * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek Delta, not the Symbol one. * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu for the .map file. * Documentation/topdocs/INSTALL.texi (Top): add running requirement as compilation requirement. 2005-03-27 Han-Wen Nienhuys * buildscripts/mutopia-index.py (headertext): add h1 header and utf-8 charset meta field. * input/GNUmakefile: prune example list. * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips options. * lily/slur-scoring.cc (get_base_attachments): only look at stem extent for visible stems. * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob(). 2005-03-27 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi (Top): Updates. * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats). 2005-03-27 Han-Wen Nienhuys * lily/slur-scoring.cc (get_base_attachments): robustness. Don't pass inf/nan into slur scoring. * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st page. * scripts/abc2ly.py (dump_voices): use alphabet(). 2005-03-27 Jeff Smith * mf/GNUmakefile (depth): use $(FONTFORGE). 2005-03-27 Matthias Neeracher * flower/include/virtual-methods.hh: simplify. Patch by 2005-03-25 John Williams * scripts/lilypond-book.py (main): add png for HTML too, guess only if necessary. 2005-03-25 Graham Percival * Documentation/topdocs/INSTALL.texi: now recommends lexer-gcc-3.1.sh for gcc 3.1.1 or higher. * Documentation/user/basic-notation.itely, Documentation/user/tutoria.itely: warn about only one (phrasing) slur at once. 2005-03-24 Pedro Kroger * ly/music-functions-init.ly (removeWithTag): fixed to return "music". 2005-03-23 Graham Percival * Documentation/user/basic-notation.itely: fixed info about ending a (de)cresc. * Documentation/user/lilypond-book.itely: fixed lilypond-book filter example and warned about not doing --filter and --process at the same time. 2005-03-23 Mats Bengtsson * lily/parser.yy (bass_number), Documentation/user/instrument-notation.itely (Figured bass): Add the possibility to use text markup in figured bass. 2005-03-19 Graham Percival * Documentation/user/global.itely: added info about naming identifiers and breakbefore. * Documentation/user/invoking.itely: added info about batch processing files with convert-ly, removed references to TeX in the jail section. * Documentation/user/examples.itely: possibly fixed piano dynamics. * Documentation/user/advanced-notation.itely: added info about removing other types of Staff. * Documentation/user/instrument-notation.itely: possibly fixed piano staff line switch. * Documentation/user/changing-defaults.itely: added info about using normal font in titles. 2005-03-18 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): release 2.5.16 * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path explicitly. 2005-03-18 Jan Nieuwenhuizen * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains whitespace. * python/lilylib.py (make_ps_images): * scm/backend-library.scm (postscript->pdf, postscript->png): Quote file name. Use format rather than string-append juggling. 2005-03-18 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): add x to -g argument. * lily/key-performer.cc (create_audio_elements): don't use scm_eval_string. Check for minor 3rd directly. * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly (sarabandeCelloGlobal): key is D minor, not F major. 2005-03-17 Jan Nieuwenhuizen Fix truncated --png output (Peter Danenberg). * python/lilylib.py (make_ps_images): * scripts/ps2png.py (copyright): Grok --papersize option. * scm/backend-library.scm (postscript->png): Add parameter PAPERSIZE. Update callers. * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler". Fixes symbol placement. * lily/spanner.cc: * lily/stencil.cc: Use "libc-extension.hh" (WAS: ). 2005-03-16 Jan Nieuwenhuizen * Nitpick run. * buildscripts/fixcc.py: Update. Builddir run fixes. * HACKING (datadir): Add VERSION. * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir higher up. 2005-03-15 Werner Lemberg * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the diagonal stem doesn't become thinner. 2005-03-15 Jan Nieuwenhuizen * buildscripts/fixcc.py: Fixes (Werner). 2005-03-15 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize Emmentaler/Aybabtu. * GNUmakefile.in: fix lilypond-words path. * po/tr.po: update to 2.3.21 * lily/new-fingering-engraver.cc (position_scripts): take priority from head position. * input/regression/finger-chords-order.ly (texidoc): new file. 2005-03-14 Jan Nieuwenhuizen * make/ly-rules.make: * stepmake/aclocal.m4: * Documentation/user/GNUmakefile: Remove old makeinfo compatibility. * buildscripts/fixcc.py (rules): Leave space after operator. 2005-03-14 Werner Lemberg * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for top of the glyph with smooth curve. 2005-03-14 Han-Wen Nienhuys * Documentation/user/global.itely (Page layout): remove printpagenumber. 2005-03-13 Jürgen Reuter * input/regression/mensural-ligatures.ly: new file (with examples compiled by Pal Benko). * Documentation/user/instrument-notation.itely: Bugfix: yet some other "custodes.*-u0" -> "custodes.*.u0" renaming victims in musicglyph access. Many small beautifications in ancient examples. * input/test/divisiones.ly: fixed indentation; small beautifications * ly/engraver-init.ly: added FIXME comment * scripts/lilypond-book.py, Documentation/user/lilypond-book.itely: added music fragment option "packed" to lilypond-book * Documentation/user/instrument-notation.itely: Bugfix: added missing LedgerLineSpanner color setting in several places. Added music fragment option "packed" to VaticanaContext example. 2005-03-12 Han-Wen Nienhuys * scm/define-grobs.scm (all-grob-descriptions): switch off Hyphen_spanner::set_spacing_rods * lily/lyric-hyphen.cc (print): add padding between syllable and hyphen. (print): shorten hyphen in tight situations (determine using minimum-length) * scm/paper.scm (layout-set-staff-size): increase blotdiameter to 0.4pt. 2005-03-13 Jan Nieuwenhuizen * ly/titling-init.ly (bookTitleMarkup): Refinements. * input/regression/page-breaks.ly (paper): Set not raggedlastbottom, header/footer markings for regression-test. * scm/backend-library.scm (output-scopes, header-to-file): Move from framework-tex.scm. * scm/framework-ps.scm (output-framework) (output-preview-framework): * scm/framework-eps.scm (output-classic-framework) (output-framework): Use it. Fixes collated files. 2005-03-12 Jan Nieuwenhuizen * input/sakura-sakura.ly: * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony). * buildscripts/guile-gnome.sh: Update. * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe. * mf/aybabtu.pe.in: Capitalize Aybabtu. 2005-03-11 Han-Wen Nienhuys * lily/separating-group-spanner.cc (find_rods): oops. Fix the real culprit: always exit the loop if we find a rod, even if it has distance < 0. * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n) algorithm. * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb $(outdir)/%.svg $(outdir)/%.pfa): add --simplify. * scm/output-svg.scm (dashed-line): new function body. * GNUmakefile.in: create .htaccess. 2005-03-11 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.tely (Top): Fix text example. 2005-03-11 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.15 * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files. * scm/framework-svg.scm (output-framework): put scaling in document header. Apply scaling only once. (output-framework): dump page size in px, not mm. * scm/lily-library.scm (modified-font-metric-font-scaling): rename from font-size. * lily/paper-outputter-scheme.cc (LY_DEFINE): ly:outputter-output-scheme, new function. * scm/output-svg.scm (pango-description-to-svg-font): new function 2005-03-10 Han-Wen Nienhuys * Documentation/user/GNUmakefile (deep-symlinks): remove outimages target. * input/typography-demo.ly: new file. 2005-03-10 Jan Nieuwenhuizen * Documentation/user/global.itely (File structure): Add markup blocks to toplevel expressions. (Multiple movements, Creating titles): Add markup blocks. * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS: ). * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken. * flower * lily * kpath-guile: Nitpick run: buildscripts/fixcc.py. 2005-03-10 Han-Wen Nienhuys * lily/accidental.cc: special bboxes for natural. * mf/feta-toevallig.mf: make stems heavier. * lily/dynamic-text-spanner.cc (print): add bound padding for edge texts as well. * mf/feta-klef.mf: revise. * mf/feta-schrift.mf: make thinning of accent less pronounced. * mf/feta-klef.mf: add rounded curve at top. make thinnib a little heavier. 2005-03-10 Jan Nieuwenhuizen * lily/parser.yy (book_body): Oops, allow \markup in \book too. * buildscripts/fixcc.py: New file. * input/regression/utf8.ly: Update Debian font description. 2005-03-09 Jan Nieuwenhuizen * stepmake/aclocal.m4: Fix test. 2005-03-09 Graham Percival * Documentation/user/invoking.itely: added Sebastino Vigna's docs for the --jail option. 2005-03-09 Han-Wen Nienhuys * lily/stem.cc (print): only produce stemlets if there are no noteheads on this stem. * lily/note-spacing.cc (stem_dir_correction): robustness fix: don't crash on stemlet (visible stem without heads). * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for unbroken situations. * scm/output-lib.scm (center-invisible): new function. * lily/spacing-loose-columns.cc (set_loose_columns): use spacing wishes to determine loose column space. * lily/font-config.cc (init_fontconfig): add fonts/{otf,type1,cff} to path. * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path * mf/GNUmakefile (Module): install all fonts under otf/ * scm/framework-ps.scm (Module): read fonts from fonts/extension, replace /fonts/otf/ by /ps/ 2005-03-09 Jan Nieuwenhuizen * lily/paper-book.cc (classic_output): Reinstate header_0_ hack. * lily/book.cc (process): Oops, add score_.header_. * lily/paper-book.cc: Fold hearders, score and texts into scores_. * lily/parser.yy: Handle toplevel and book texts as score. * scm/page-layout.scm (default-page-make-stencil): Bugfix: (page-properties rename. * scm/backend-library.scm (ly:system): Typo. 2005-03-09 Han-Wen Nienhuys * stepmake/stepmake/executable-targets.make (installexe): don't strip installed executables * lily/font-select.cc (get_font_by_design_size): revert pango_description_string as well. * lily/system.cc (set_loose_columns): put loose column just left of next column. * lily/include/group-interface.hh (extract_grob_array): rename from Pointer_group_interface__extract_grobs * input/regression/ledger-line-minimum.ly (texidoc): new file. * lily/ledger-line-spanner.cc (set_spacing_rods): new function. Keep ledgered note heads at a minimum distance. Introduce minimum-length-fraction (print): introduce length-fraction property. 2005-03-08 Han-Wen Nienhuys * tex/GNUmakefile: remove latin1.enc rules. 2005-03-08 Jan Nieuwenhuizen * scm/titling.scm: Typo. * input/regression/score-text.ly: Really add. * lily/score.cc: Bugfixes for SCM header_ and texts_ members. 2005-03-08 Han-Wen Nienhuys * lily/open-type-font-scheme.cc: new file. 2005-03-08 Jan Nieuwenhuizen * scm/titling.scm (layout-extract-page-properties): Rename from page-properties. Update callers. * lily/lexer.ll (Lily_lexer): * lily/parser.yy: Junk lyric_markup state. * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature. * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler: Add texts parameter. 2005-03-07 Jan Nieuwenhuizen * lily/lexer.ll (lyric_markup): New mode. (Lily_lexer::push_lyric_markup_state): New method. (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP. * lily/parser.yy (book_body): (toplevel_expression): Grok \markup texts. * lily/score-scheme.cc (ly:music-scorify): * scm/lily-library.scm (collect-music-for-book): Take texts parameter. * lily/score.cc (texts_): New member. * lily/paper-book.cc (systems): Format score texts. * score-text.ly: New file. * ttftool/SConscript: * kpath-guile/SConscript: New file. * lily/SConscript: * SConstruct: Update. 2005-03-07 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.14 2005-03-07 Jan Nieuwenhuizen * lily/main.cc: Add dummy xgettext markers. 2005-03-07 Han-Wen Nienhuys * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex requirements * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea executable is < 40k * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path hack. 2005-03-06 Jan Nieuwenhuizen * flower/libc-extension.cc: * flower/include/libc-extension.hh: [Open]BSD simply cast cookie/funopen declarations. * stepmake/aclocal.m4: Check for libkpathsea.so. * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use dl_kpse_find_file. 2005-03-06 Han-Wen Nienhuys * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so (open_library): alternative for static library. 2005-03-06 Jan Nieuwenhuizen * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS. * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN). Drop run-time dependency on teTeX. * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea. * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include KPATHSEA_LIBS in LIBS. (STEPMAKE_DLOPEN): New function. * lily/font-config.cc (init_fontconfig): Use dir for directory, not path. * flower/file-path.cc (directories): Rename from paths, as this return an array of directories (a single path). 2005-03-06 Han-Wen Nienhuys * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around new ly:kpathsea-find-file * kpath-guile/kpath.c: new file. Put kpath bindings in lib. * kpath-guile/GNUmakefile: new file * buildscripts/gen-emmentaler-scripts.py (i): generate emmentaler-X.fontname as well. * buildscripts/ps-embed-cff.py: new script * scm/lily-library.scm: remove ps-embed-cff. * scm/framework-ps.scm (write-preamble): don't use kpathsea for font loading. * scm/font.scm (add-music-fonts): load dynamics/numbers through fontconfig as well. * lily/font-config.cc (init_fontconfig): add cff/ too. * ly/generate-embedded-cff.ly: capitalize. * lily/pango-select.cc (select_pango_font): use ::find_pango_font, so as to register the pango font. * lily/font-config.cc (init_fontconfig): add prefix/{otf,type1,mf/out} to fontconfig path. * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX overrides all. * configure.in (gui_b): remove ec mftrace check * config.hh.in: use lilypond-Major.Minor as data directory. * scm/framework-ps.scm (dump-page): use output-units for landscape. * buildscripts/gen-emmentaler-scripts.py (i): lower case file name. 2005-03-06 Jan Nieuwenhuizen * lily/main.cc (do_chroot_jail): Small cleanups. Avoid constant error messages. * flower/libc-extension.cc: * flower/include/libc-extension.hh: [Open]BSD fixes for cookie/funopen declarations. 2005-03-06 Han-Wen Nienhuys * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize emmentaler. * lily/score-engraver.cc (initialize): remove check for ecrm10 / lcrm10. * scm/define-markup-commands.scm (fontsize): new markup command. Also set baseline-skip 2005-03-06 Sebastiano Vigna . * lily/main.cc (do_chroot_jail): paranoia security for webserver use. 2005-03-05 Han-Wen Nienhuys * stepmake/bin/add-html-footer.py (do_file): make wiki link optional. * lily/pdf.cc: remove PDF related files 2005-03-04 Han-Wen Nienhuys * ly/deutsch.ly: add quarter tones, patch by Arno Waschk. 2005-03-05 Graham Percival * Documentation/user/advanced-notation.itely: first draft of reorg done. * Documentation/user/global.itely: fixed (sub)section bits of MIDI. 2005-03-02 Jan Nieuwenhuizen * cygwin/mknetrel (extras): Bufix (Bertalan). * Documentation/user/basic-notation.itely (Chords): @ref fix. * Documentation/user/instrument-notation.itely (Introducing chord names): Compile fix: must have unique name. 2005-03-02 Graham Percival * Documentation/user/instrument-notation.itely: reorg. 2005-03-02 Jan Nieuwenhuizen * scm/output-gnome.scm: * scm/output-svg.scm: Fix font scaling. 2005-03-01 Jan Nieuwenhuizen * ly/titling-init.ly (tagline): Use Engraving. Add comment about what link to use best. * Documentation/user/instrument-notation.itely (Ancient accidentals): * Documentation/user/tutorial.itely (Automatic and manual beams): Fix @ref. * lily/tweak-registration.cc (replace_grob_tweak): New function. * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it. * scm/framework-gnome.scm (tweak): Use it. 2005-03-01 Han-Wen Nienhuys * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem. * scm/output-ps.scm (white-text): reinstate white-text 2005-03-01 Jan Nieuwenhuizen * scm/output-ps.scm (offset-add): Remove. * scm/lily-library.scm (offset-flip-y): New function. * scm/framework-gnome.scm (tweak): Use it. * scm/output-gnome.scm (grob-cause): Add parameter. * scm/lily.scm (ly:all-stencil-expressions): Add url-link. * scm/output-ps.scm (url-link): Move. (white-text): Warn user about brokenness. * Documentation/topdocs/NEWS.tely: Be more accurate and respectful wrt ghostscript. 2005-03-01 Han-Wen Nienhuys * lily/slash-repeat-engraver.cc (try_music): always make slashes if body length smaller than measure length. * scm/define-markup-commands.scm (with-url): oops. use Y extent for Y. * ly/titling-init.ly (tagline): put default tagline in \paper 2005-03-01 Jan Nieuwenhuizen * lily/kpath.cc: * lily/pdf.cc (Pdf_file): Use more generic error messages. * scm/lily-library.scm (version-not-seen-message): New function. * ly/init.ly: Use it. * scm/page-layout.scm (ly:optimal-page-breaks): Display page breaks as progess. * scripts/lilypond-book.py (do_process_cmd): Do not lump whitespace with l10n message. * scm/framework-tex.scm (convert-to-ps): (convert-to-dvi): Do not use overly specific l10n messages. * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4. * tex/GNUmakefile $(outdir)/latin1.enc: Build fix: merge stderr with stdout. 2005-03-01 Jan Nieuwenhuizen * flower/libc-extension.cc: Tested BSD compile fix (Matthias Neeracher). 2005-02-29 Graham Percival * Documentation/user/instrument-notation.teily: moved \arpeggio to Basic. * Documentation/user/advanced-notation.itely: Articulation to Basic, a bunch of stuff from Basic moved to Advanced. * Documentation/user/basic.itely: swapped various sections, reorganized Basic. 2005-02-28 Jan Nieuwenhuizen * flower/memory-stream.cc: * flower/libc-extension.cc: Remove obsolete #undefs. * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef more carefully. 2005-02-28 Han-Wen Nienhuys * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as dependency. * VERSION (PACKAGE_NAME): release 2.5.13 * GNUmakefile.in (web-ext): don't ship ps.gz * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to stdout 2005-02-28 Jan Nieuwenhuizen * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems without libintl. Now it compiles too. 2005-02-28 Graham Percival * Documentation/user/basic-notation.itely, instument-notation.itely, advanced-notation.itely: split up contents of notation.itely. * Documentation/user/notation.itely: file removed. * Documentation/user/invoking.itely, converters.itely: moved convert-ly info to invoking.itely. * Documentation/user/global.itely, changing-defaults.itely, sound-output.itexi: moved global settings, file layout, and sound into global.itely. * Documentation/user/sound-output.itexi: file removed. * Documentation/user/lilypond.tely: removed links to notation.itely and sound.itely. 2005-02-27 Han-Wen Nienhuys * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty. * scm/framework-ps.scm (write-preamble): remove pdf-viewer code. * THANKS: add sponsor. * scm/define-markup-commands.scm (with-url): new markup command. * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to tagline. * scm/output-tex.scm (url-link): stub. * scm/output-ps.scm (url-link): new function. * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate ly:set-point-and-click 2005-02-27 Jan Nieuwenhuizen * ps/music-drawing-routines.ps (mark_file_line): Switch Action based on pdf-viewer setting. * scm/framework-ps.scm (write-preamble): Find and set preferred pdf-viewer. 2005-02-27 Han-Wen Nienhuys * Documentation/user/point-and-click.itely: update for PDF point & click. * scripts/lilypond-pdfpc-helper.py: new file. Invoke different editors based on EDITOR setting. 2005-02-27 Jan Nieuwenhuizen * scm/*: Oops, more grand 2005 replace bits. 2005-02-27 Han-Wen Nienhuys * ps/music-drawing-routines.ps: new routine: insert PDF mark * scm/output-ps.scm (grob-cause): point & click support for PostScript 2005-02-26 Han-Wen Nienhuys * lily/input-scheme.cc (LY_DEFINE): rename to ly:input-file-line-column 2005-02-26 Graham Percival * Documentation/user/examples.itely: small fix from Steve Doonan. * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan. * THANKS: added Yuval Harel. * Documentation/user/{various}: inserted two spaces after a period. * Documentation/user/lilypond.tely: added framework for reorg. * Documentation/user/basic-notation.itely, instrument-notation.itely, advanced-notation.itely, global.itely: new files, placeholder for future reorg. 2005-02-26 Yuval Harel * Documentation/user/notation.itely: revamped Polyphony section 2005-02-26 Han-Wen Nienhuys * Documentation/user/lilypond-book.itely (Music fragment options): doc fontload. * Documentation/user/changing-defaults.itely (Text encoding): add fontload option to utf8 include * scripts/lilypond-book.py (compose_ly): add fontload option * scm/framework-eps.scm (dump-stencils-as-EPSes): add force-eps-font-include option. * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate black triangle * Documentation/user/invoking.itely (Editor support): remove lilypond-latex section. * scripts/lilypond-latex.py (Module): remove script. * cygwin/lily-wins.py (stat): write to .lylog, so as not to overwrite .log. * lily/main.cc: remove -m, --no-layout * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE to define. We don't want to override fprintf everywhere. 2005-02-26 Jan Nieuwenhuizen * cygwin/lilypond.hint: * cygwin/README.in: Update dependencies. * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2): Bugfix: do not pollute CPPFLAGS, LIBS. * cygwin/mknetrel (extras): Cross compile fixes. * ttftool/util.c: * ttftool/ttfps.c: * ttftool/ps.c: #include libc-extension.hh * flower/include/libc-extension.hh: * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add wrapper using funopen. (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf, handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream. * config.hh.in: * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen. (AC_CHECK_HEADERS): Add libio.h * scripts/convert-ly.py: Uniformize, internationalize. (2.5.2): Remove fatal encoding rule. (2.5.13): Handle latin1 encoding gracefully. 2005-02-23 Jan Nieuwenhuizen * HACKING: Fix line breaks. 2005-02-23 Werner Lemberg * mf/graycx.mf, mf/graylj.mf: Removed. Any decent TeX distribution contains those two files. 2005-02-21 Werner Lemberg * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point to improve overlap removal process. * mf/feta-slag.mf (draw_trillelement): Add parameter to control left and right ending. This ensures better overlapping. Update all callers. ("lineprall"): Don't use draw_gridline to get better overlapping. 2005-02-21 Han-Wen Nienhuys * scm/lily-library.scm (ps-embed-cff): add \n after EndResource * Documentation/topdocs/NEWS.tely (Top): oops. 2005-02-21 Pedro Kroger * HACKING: new file. * input/regression/utf8.ly (portuguese): added a portuguese example to show latin1 accents. 2005-02-21 Pal Benko * lily/mensural-ligature-engraver.cc: * lily/mensural-ligature.cc: * lily/include/mensural-ligature.hh: new algorithm implemented * scm/define-grob-properties.scm: join-left killed (add-join may be used); join-left-amount changed to join-right-amount 2005-02-21 Graham Percival * Documentation/user/notation.itely: small but urgent fix. 2005-02-21 Jürgen Reuter * lily/duration-scheme.cc: bugfix: correct parameters to SCM_ASSERT_TYPE. * THANKS: added Pal. * Documentation/user/notation.itely: bugfix: unTeXified $\\backslash$. Bugfix: yet another glyph renaming victim: "timesig.*x/y" -> "timesig.*xy". 2005-02-21 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.12 2005-02-20 Han-Wen Nienhuys * ly/engraver-init.ly: set tieWaitForNote to #t by default * configure.in (gui_b): bump GUILE requirement to 1.6.5 * Documentation/topdocs/NEWS.tely: add inputfileref macro. * scm/framework-ps.scm (supplies-or-needs): uniq font name list. 2005-02-20 Jan Nieuwenhuizen * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode latin1..utf-8. * input/regression/stanza-number.ly: * input/regression/utf8.ly (hebrew): Use addlyrics. Update. * lily/tie-engraver.cc (acknowledge_grob): Compile fix. 2005-02-20 Han-Wen Nienhuys * Documentation/topdocs/NEWS.tely (Top): only mention 2.5 NEWS. Refer to website for older news. * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG / .HTML. This should be done for specific servers only. * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some .ly image examples. * scm/define-grobs.scm (all-grob-descriptions): put ledger lines in layer 0 too. * scm/define-context-properties.scm (all-user-translation-properties): add tieWaitForNote * scm/define-grobs.scm (all-grob-descriptions): add Tie_column::before_line_breaking * lily/tie.cc (get_column_rank): new function * lily/tie-column.cc (before_line_breaking): new function. (werner_directions): take into account ties that start on different columns. * lily/score-engraver.cc (set_columns): move add_column() so we have column rank available. * lily/tie.cc (get_column_rank): new function. * input/regression/utf8.ly (japanese): add japanese lyrics. * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function. * THANKS: add Steve D * ttftool/*.c: add TTF -> Type42 conversion library. Based on Public Domain work by Juliusz Chroboczek 2005-02-20 Tatsuya Ono * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic" to show harmonic notes * scm/define-markup-commands.scm: in \markup-by-number "dots-dot" -> "dots.dot" to show dotted notes 2005-02-20 Han-Wen Nienhuys * flower/include/memory-stream.hh (class Memory_out_stream): new file. * flower/memory-stream.cc (writer): new file. * configure.in: add endian test. 2005-02-19 Jürgen Reuter * Documentation/user/examples.itely: small simplification/beautification * Documentation/user/notation.ietly: bugfix: fixed many artefacts from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole notation manual. * lily/mensural-ligature.cc: bugfix: another few victims of the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming. * ly/gregorian-init.ly: commit some experimental code for hi-level ligature input language lying around here for several months. * lily/mensural-ligature-engraver.cc: bugfix: another victim of the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming. * lily/vaticana-ligature-engraver.cc: bugfix: another few "x-y-z"->"x.y.s-z" fixes. 2005-02-19 Han-Wen Nienhuys * scm/framework-pdf.scm (scm): new file * lily/include/pdf.hh (class Pdf_file): new file. * lily/pdf.cc (write_trailer): new file. 2005-02-18 Erlend Aasland * input/regression/color.ly: new file * lily/stencil.cc (interpret_stencil_expression): when a color expression is encountered: save current color, process the rest of the expression, and restore previous color. * lily/system.cc (get_line): check all grobs for color property and prepare the stencil scheme expressions for further processing. Fix layer-loop. * scm/define-grob-properties.scm: introduce the color property. * scm/output-lib.scm: color helper functions. * scm/output-ps.scm: introduce setcolor/resetcolor. 2005-02-07 Erik Sandberg * ly/*.ly, input/regression/*.ly: Added missing \version statements in some files. 2005-02-15 Graham Percival * Documentation/user/notation.itely: minor editing. * Documentation/user/converters.itely: updated convert-ly bugs. * Documentation/user/lilypond-book.itely: add info about using feta characters in latex. 2005-02-15 Han-Wen Nienhuys * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor. 2005-02-12 Han-Wen Nienhuys * scm/define-grob-properties.scm (all-user-grob-properties): removed 'dashed property. 2005-02-13 Nicolas Sceaux * scm/lily.scm (define-safe-public): new macro for defining variables that can be used in --safe mode. Use it in *.scm instead of manually setting safe-objects in safe-lily.scm. 2005-02-11 Han-Wen Nienhuys * lily/slur.cc: Slur-dash patch by Bertalan. * ly/engraver-init.ly (EasyNotation): glyph name dash -> period. * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 2005-02-10 Jan Nieuwenhuizen * stepmake/aclocal.m4: teTeX-3.0 inimf fix. Comment-out. 2005-02-09 Jan Nieuwenhuizen * mf/GNUmakefile: teTeX-3.0 install fix. * Cygwin patch from Bertalan. * stepmake/stepmake/metafont-rules.make: Remove bashism. 2005-02-08 Jan Nieuwenhuizen * GNUmakefile.in: * SConstruct (symlink): teTeX-3.0 build fix: add map symlink. * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc. Add 2.0.x compatibility. 2005-02-08 Werner Lemberg * mf/feta-din-code.mf: Format; clean up code. Replace `---' with `--' plus explicit path directions. (linethickness#, stafflinethickness#): Remove. ("dynamic f"): Replace `draw' with `draw_rounded_block'. ("dynamic s"): Improve shape. ("dynamic p"): Improve shape. Replace `draw' with better outline approximation. ("dynamic r"): Improve shape. Don't call `fill' and `draw' at the same time. 2005-02-08 Jan Nieuwenhuizen * SConstruct (symlink): * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0 build fix: add enc symlink. * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h. Support for DESTDIR besides prefix=/foo * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir. * stepmake/stepmake/*.make: * */GNUmakefile: * GNUmakefile.in: Prepend $(DESTDIR) to installation directory. * config.make.in (prefix): Remove broken $(DESTDIR) hack. * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and mawk in fontforge (date) test. 2005-02-07 Han-Wen Nienhuys * scm/font.scm (make-century-schoolbook-tree): add NCS as font-family=roman. Add Luxi Sans as sans 2005-02-07 Graham Percival * Documentation/user/notation.itely: add warning about percent repeats and Voice contexts. * Documentation/user/lilypond-book.itely: clarified the necessity of dvips -u arguments. 2005-02-07 Erik Sandberg * THANKS: Added a bunch of bug hunters. 2005-02-06 Han-Wen Nienhuys * scm/framework-ps.scm (output-preview-framework): bugfix. * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode o/ for chord modifier.. * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8. * lily/drum-note-performer.cc: remove unused (thanks Michael Welsh Duggan). 2005-02-06 Jan Nieuwenhuizen * Documentation/user/changing-defaults.itely (Text encoding): Clarify. * ly/titling-init.ly: Do not also print intstrument in header on first page. Do not print page number on first and only page. 2005-02-05 Han-Wen Nienhuys * input/regression/*.ly: remove old-relative everywhere * lily/music-sequence.cc (simultaneous_relative_callback): do what-if analysis on copy, not on original. Fixes old-relative compatibility. * scm/backend-library.scm (postscript->png): space before --verbose. 2005-02-05 Werner Lemberg * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group' is defined. * mf/feta-alphabet.mf: Define `staffsize#'. Include `feta-params.mf'. s/staffheight/design_size/. * mf/feta-alphabet??.mf: s/staffheight/design_size/. * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt). * mf/feta-nummer-code.mf: Reformatted. (draw_six): Use outline intersection to avoid a self-intersecting path. ("Numeral comma"): Fix serious outline glitches. This slightly changes the glyph shape. ("Numeral dash"): Use `draw_rounded_block'. ("Numeral dot"): Use `drawdot'. ("Numeral 1"): Assure identical tangent directions for the intersection points of paths. The glyph shape improvement is only visible at very high magnifications. ("Numeral 2"): Use `solve' macro to make the lower right part of the glyph outline touch the x axis exactly. This changes the glyph shape. Minor fixes for better overlap removal support. ("Numeral 4"): Make lefter corner `rounder'. ("Numeral 5"): Assure identical tangent directions for the intersection points of paths. This improves the glyph shape at high magnifications. ("Numeral 7"): Use `solve' macro to make the upper right part of the glyph outline touch the metrics box exactly. This changes the glyph shape. Avoid corner in the upper left part of the glyph (causing a minor shape change). * mf/feta-ital-*.mf: Removed. Unused. 2005-02-04 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): release 2.5.11 * input/regression/fill-line-test.ly: new file. * buildscripts/gen-emmentaler-scripts.py (i): insert dash in emmentaler name, eg. emmentaler-23. 2005-02-04 Christian Hitz * scm/scm/define-markup-commands.scm (fill-line): rework for better alignment with centered texts * scm/stencil.scm (stack-stencils-padding-list): new function, takes a list of paddings 2005-02-04 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file. * lily/note-column.cc (translate_rests): call flush_extent_cache() of parents when translating rests. Fixes: c-chord-rest.ly * lily/include/dimension-cache.hh (struct Dimension_cache): add dimension_callback_ member. * lily/grob.cc (flush_extent_cache): new function. Force recompute of extents. 2005-02-04 Jan Nieuwenhuizen * all but lily/*: The grand 2004/2005 replace. 2005-02-04 Han-Wen Nienhuys * lily/*: add space after , * scm/music-functions.scm (has-request-chord): don't use ly:music-name anywhere. Fixes <<\\>> notation. * scm/define-markup-commands.scm (box): use font-size for padding. Fixes boxed-rehearsal-marks.ly * lily/parser.yy (assignment_id): allow LYRICS_STRING as identifier definition too, so foo = \lyrics { ... } bar = #1 doesn't complain about "bar" being LYRICS_STRING. * lily/paper-def.cc (find_pango_font): new routine; Store pango_fonts in hash tab too. This is necessary for retrieving Pango_fonts::physical_font_tab() later on. * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't crash if psname is null. * lily/lily-guile.cc (ly_hash2alist): new function * Documentation/user/changing-defaults.itely (Text encoding): rewrite. * lily/pango-font.cc (physical_font_tab): new member. Store PSname -> font_filename mapping. * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function ly_pango_font_physical_fonts * scm/framework-ps.scm (supplies-or-needs): extract names from physical Pango_fonts. * utf8.ly: new file. 2005-02-02 Han-Wen Nienhuys * Documentation/user/changing-defaults.itely (Page layout): add doco about systemSeparatorMarkup. * scm/page-layout.scm (default-page-make-stencil): add-to-page function. (default-page-make-stencil): insert system separators. * scm/define-markup-commands.scm (hcenter): add (beam): add. 2005-02-01 Han-Wen Nienhuys * scm/output-ps.scm (ez-ball): reinstate ez notation. 2005-02-01 Jan Nieuwenhuizen * lily/main.cc: Spell backend consistently. Sort options. 2005-01-31 Han-Wen Nienhuys * scripts/lilypond-book.py (Module): revert @include. 2005-01-31 Jan Nieuwenhuizen * scripts/lilypond-book.py: Resurrect HTML links to .ly source. Bugfix: @include .tex (not .texi). Small cleanups. * stepmake/bin/add-html-footer.py (i18n): New function. 2005-01-31 Werner Lemberg * mf/feta-nummer.mf: Removed. Unused. 2005-01-31 Han-Wen Nienhuys * lily/ : 2004 -> 2005 s&r * scm/file-cache.scm (cached-file-contents): add file. Read each file only once. * scm/font.scm (add-pango-fonts): change order. Medium weight is now default. * VERSION: release 2.5.10 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files. * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker. * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure that both X and Y extents of bbox are non-nil. 2005-01-30 Han-Wen Nienhuys * scm/chord-name.scm (alteration->text-accidental-markup): change - to . * scm/output-ps.scm (utf8-string): add utf8-string for completeness. * scm/framework-ps.scm (dump-stencil-as-EPS): new function * Documentation/user/invoking.itely (Invoking lilypond): add note about EPS backend. * scm/framework-eps.scm: new file: create per-system/per-page EPS files for inclusion in lilypond-book document. * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex * input/tutorial/lbook-texi-test.texi: new file. * scm/safe-lily.scm (safe-objects): add {begin,end}-of-line-(in)?visible as safe. 2005-01-30 Graham Percival * Documentation/user/changing-defaults.itely: fixed example of (dynamics). 2005-01-29 Graham Percival * lily/main.cc: fix info about -o=FILE. 2005-01-29 Werner Lemberg * mf/feta-toevallig.mf ("Natural"): Completely changed the construction to assure smooth transition from straight to curved lines. 2005-01-29 Han-Wen Nienhuys * lily/stencil.cc (moved_to_edge): don't halt on adding empty stencils. * ps/lilyponddefs.ps: add start-page, start-system doesn't translate to top of page. Fixes alignment problems of lilypond-generated EPS files. 2005-01-28 Han-Wen Nienhuys * scm/part-combiner.scm (analyse-spanner-states): trigger on crescendo-end as well, since Decrescendo maybe ended with Stop Crescendo.). Fixes: partcombine-diminuendo.ly * scm/script.scm (default-script-alist): swap portato symbols. * lily/instrument-name-engraver.cc (acknowledge_grob): typo. * lily/paper-outputter-scheme.cc (LY_DEFINE): ly:outputter-port. New function. * scm/framework-ps.scm (output-classic-framework): dump a -systems.texi too (output-classic-framework): dump multiple systems on an "infinite" page EPS including fonts. * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use .eps files for both texi and tex formats. Use PNG coming from lilypond. 2005-01-28 Graham Percival * Docuemntation/user/invoking.itely: fix info about -o=FILE. * scripts/lilypond-latex.py: fix info about -o=FILE. 2005-01-28 Han-Wen Nienhuys * ly/generate-embedded-cff.ly: write .cff.ps files. * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file. * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify 2005-01-28 Jan Nieuwenhuizen * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix. 2005-01-28 Werner Lemberg * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New macros. (draw_bulb): Improved. * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for metapost bug. (draw_pedal_P): Use soft_end_penstroke. (draw_pedal_d): Use soft_start_penstroke. * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in path. ("Varied Coda"): Move some points to avoid fontforge warnings. This doesn't change the glyph shape. * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without changing the shape) to avoid fontforge warnings. * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use soft_end_penstroke and fix glyph shape. 2005-01-27 Han-Wen Nienhuys * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 2005-01-27 Han-Wen Nienhuys * scm/define-markup-commands.scm (line): filter out empty stencils from line command. * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real amount. 2005-01-27 Graham Percival * Documentation/user/notation.itely: added info about what \voiceFoo does. Also rewrote warning about marks at a line break. * Documentation/user/changing-defaults.itely: added info about putting dynamics in parenthesis and brackets. 2005-01-27 Werner Lemberg * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo. 2005-01-27 Han-Wen Nienhuys * mf/feta-schrift.mf: reverse u and d portato. Fixes: portato-direction.ly * lily/beam.cc (consider_auto_knees): add beam height to threshold. Fixes: knee-multiple-beam.ly * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore pedal line spanners. Fixes: instrument-center-pedal.ly * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam if encountering barline. Fixes: auto-beam-repeat.ly 2005-01-26 Werner Lemberg * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean overlapping. * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves with inflections for the 1/2 sharp glyph. * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of connection between `t' and `r'. Unify bulb with the rest of `r' to avoid grazing outlines which confuses the overlap removal algorithm of fontforge. * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with inflections. (draw_cross): Fix shape to have uniform thickness in corners. * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces to avoid an uneven number of self-intersections; this confuses fontforge. Fix a slight bug in the shape at left bottom (which is visible only at high magnifications). `Center' the stem horizontally to avoid overlapping. 2005-01-24 Werner Lemberg * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme to `asis'. (fet_begingroup): Save group name in string `feta_group'. (fet_endgroup): Updated. (fet_beginchar): Emit `glyph_name' special for mf2pt1. * mf/feta-bolletjes.mf: s/p/pat/ for paths. * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug in metapost. 2005-01-24 Graham Percival * Documentation/user/notation.itely: really minor editing. 2005-01-22 Graham Percival * Documentation/user/examples.itely: minor editing. * Documentation/user/changing-defaults.itely: minor editing. * Documentation/user/notation.itely: clarified info on polyphony and \addlyrics. 2005-01-22 Jan Nieuwenhuizen * scm/output-gnome.scm: * scm/output-svg.scm: * scm/lily-library.scm (font-name-style): Update font name kludging for fontconfig use. 2005-01-20 Erlend Aasland * scm/define-markup-commands.scm: Document right-align and larger markup commands. Remove "TODO" from the topmost comment "each markup function should have a doc string." More consistent use of new-lines. 2005-01-22 Graham Percival * Documentation/user/changing-defaults: removed info about copyright symbol, since it's likely to change soon. Added info about betweensystemspace. * Documentation/user/notation.itely: minor fixes. * Documentation/user/lilypond.tely, Documentation/user/music-glossary.tely: changed copyright date to 2005 instead of 2004. * input/test/volta-chord-names.ly: added old example back. 2005-01-22 Han-Wen Nienhuys * mf/feta-beugel.mf: use design size 20 (not 15). * mf/aybabtu.pe.in: scale brace fonts to design sizes. change name to aybabtu completely 2005-01-21 Han-Wen Nienhuys * buildscripts/gen-emmentaler-scripts.py (outdir): add design_size to fontname 2005-01-19 Werner Lemberg * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf, mf/feta-schrift.mf: s/p/pat/ if a path variable. * mf/feta-autometric.mf (set_char_box): Add code which emits specials for mf2pt1 if run with metapost. (to_bp): New macro for mf2pt1. 2005-01-18 Graham Percival * Documentation/user/changing-defaults: added info on creating a copyright symbol. 2005-01-18 Han-Wen Nienhuys * VERSION: release 2.5.9 2005-01-18 Erlend Aasland * scm/auto-beam.scm: Simplify score-override-auto-beam-setting * Documentation/user/notation.itely: Document score-override-auto-beam-setting Fix documentation for revert-auto-beam-setting. 2005-01-18 Werner Lemberg * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments. (procset): New function to define a procset resource. (ps-embed-pfa): New function to define a font resource. (setup): New function to define a `Setup' environment. (preamble): Use new functions. * ps/lilypond.defs (init-lilypond-parameters): New function to get rid of directly executed PS code. Used in scm/framework-ps.scm. 2005-01-18 Han-Wen Nienhuys * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS 2005-01-17 Erlend Aasland * scm/define-markup-commands.scm: Change number->markletter-string to take two arguments (vector number). Add number->mark-alphabet-vector and markalphabet markup command. * scm/translation-functions.scm: Add format-mark-box-alphabet, format-mark-alphabet, format-mark-box-barnumbers and format-mark-barnumbers. Fix bug in format-mark-box-numbers. 2005-01-17 Graham Percival * Documentation/user/examples.itely: add SATB automatic piano reduction template. * Documentation/user/notation.itely: added info about changing partcombine texts. Also adds examples of alternate lyrics. * Documentation/user/changing-defaults.itely: added warning about \RemoveEmptyStaffContext overriding previous changes. 2005-01-17 Werner Lemberg * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for feta-alphabet*. 2005-01-17 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): don't do final showpage for multi-page documents. * VERSION (MY_PATCH_LEVEL): release 2.5.8 2005-01-16 Graham Percival * Documentation/user/lilypond.tely: changed order of appendices; unified index should be last. * Documentation/user/notation.itely: add example of key signatures and info about Staff.printKeyCancellation. 2005-01-16 Han-Wen Nienhuys * lily/include/repeated-music.hh (class Repeated_music): change into "namespace" class. * lily/event.cc: remove Key_change_event. * lily/include/transposed-music.hh (class Transposed_music): remove. * lily/transposed-music.cc: remove * lily/include/relative-music.hh: remove. * lily/include/music-sequence.hh (struct Music_sequence): change into "namespace" class. * lily/untransposable-music.cc (Module): remove * lily/include/un-relativable-music.hh (Module): remove * lily/include/untransposable-music.hh (Module): remove * lily/include/music-list.hh (Module): remove file * lily/un-relativable-music.cc: remove file. 2005-01-14 Jan Nieuwenhuizen * lily/parser.yy: Compile fix. 2005-01-14 Han-Wen Nienhuys * lily/include/music.hh (class Music): unvirtualize transpose(). * lily/sequential-music.cc: remove file. * lily/include/lyric-combine-music.hh ("music.hh"): remove file. * lily/slur-scoring.cc (get_best_curve): only switch on DEBUG_SLUR_SCORING for non NDEBUG builds. * lily/include/music.hh (class Music): replace Music::start_mom() by start-callback property * lily/include/grace-music.hh: remove file. * lily/stem.cc (height): robustness fix. * lily/time-scaled-music.cc: remove file. * lily/include/music.hh (class Music): include SCM init argument. (class Music): replace Music::get_length() virtual by length-callback property everywhere. * scripts/convert-ly.py (conv): add # to \property scalar value. * mf/GNUmakefile: don't install *list.ly 2005-01-14 Jan Nieuwenhuizen * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces. 2005-01-12 Werner Lemberg This patch addresses the following problems in the feta sources files which contribute to the fetaXX fonts. . Many fixes for rasterization at low resolutions (consistent use of `vround' and `hround', integer shift values for paths, applying `eps' for mirrored paths, use of `define_whole_pixels' and friends, etc.) -- while this probably looks like a waste of time it has revealed deficiencies in some glyph shapes. See comment at the end of feta-params.mf how vertical symmetry is achieved. . The `---' operator has been replaced everywhere with `--'; this both improves and considerably reduces the font size after conversion with mf2pt1. These change aren't explicitly mentioned below since virtually all glyphs are affected. Other notable differences: . Glyphs from feta-accordion.mf now have charboxes around the outline. . Fixed incorrect charbox for `accDot'. . The `rcomma' and `lcomma' glyphs were distorted due to a typo. . Fixed position of the bow in the `upprall' glyph and its siblings. . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now dependent on the staff line thickness to avoid touching the middle staff line at smaller sizes. . Largely extended output for feta-testXX: Where useful, glyphs are shown both between and on staff lines. * mf/feta-params.mf (staff_space_rounded, stafflinethickness_rounded, linethickness_rounded, ledgerlinethickness_rounded, stemthickness_rounded): New variables. Update all code which uses them where appropriate. (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen): New variables used to control rasterization at low resolutions. Set to zert if feta code is processed with metapost. * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated. (draw_rounded_block, draw_square_block): Updated to use `--' only. (flare_path): Updated. Make it work with `filldraw' (but only circular pens). (hfloor, vfloor, hceiling, vceiling): New macros. * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"): Use `draw' again in mf mode to have good pixel dropout control. Fix intersection points of horizontal lines with circle. ("accDot"): Fix parameters for set_char_box. ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout control. * mf/feta-banier.mf: Updated. * mf/feta-bolletjes.mf (remember_pic): New variable, used for testing. (undraw_inside_ellipse): Remove `center' argument. Update all callers. (draw_brevis): New macro, called by "Brevis notehead". (draw_whole_triangle_head): New macro, called by "Whole trianglehead". (draw_small_triangle_head): Use `filldraw'. * mf/feta-eindelijk.mf: Remove useless global group. Updated. * mf/feta-klef.mf (draw_c_clef): Correct point positions for using `filldraw'. * mf/feta-pendaal.mf: Updated. * mf/feta-puntje.mf: Updated. * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use less points. ("Flageolet"): Use `draw' again in mf mode to have good pixel dropout control. ("Varied Coda"): Use `draw_block'. (draw_comma): Fix typo. (draw_arpeggio_arrow): Use `draw' also in mf mode to have good pixel dropout control. * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start position of bow. * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design sizes. * mf/feta-toevallig.mf (remember_pic): New variable, used for testing. (draw_meta_sharp): Much simplified. ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift. * mf/feta-test-generic.mf: Include all files as in feta-generic.mf. 2005-01-13 Mats Bengtsson * Documentation/user/notation.itely (Ancient rests): Fix typo (thanks Anthony) 2005-01-13 Jan Nieuwenhuizen * scm/auto-beam.scm (score-override-auto-beam-setting): New function. * lily/main.cc (setup_paths): Add cff. * mf/GNUmakefile (foe): Include actual target %.cff. (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too. 2005-01-10 Han-Wen Nienhuys * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b suffix for main_input_b_. * scm/music-functions.scm (toplevel-music-functions): precompute music lengths for music expressions. 2005-01-11 Nicolas Sceaux * lily/include/input.hh (class Input): new `end_' slot for end of input. Renamed defined_str0_ to start_. * lily/input.cc (Input): Add Input::Input (Input const &) and remove Input::Input (Source_file*, char const *). Use the new slots. (set_location): method used by bison to propagate input locations (YYLLOC_DEFAULT). (end_line_number, end_column_number, step_forward): new methods * lily/input-scheme.cc (ly:input-both-locations): new function, similar to ly:input-location, but also return the end line and column. * lily/include/includable-lexer.hh: * lily/includable-lexer.cc: * lily/include/lily-lexer.hh (class Lily_lexer): * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from Includable_lexer to Lily_lexer, in order to update lexloc (the yylloc), a new slot of Lily_lexer. (here_input, LexerError): simplify by using the lexloc slot (aka yylloc) * lily/lexer.ll: #define yylloc to use input locations (it may be useless here?). Fixed the #embedded_scm rule (step the location forward in order to skip the sharp sign before parsing the scheme expression) * lily/include/lily-parser.hh (class Lily_parser): * lily/lily-parser.cc: Remove push_spot(), pop_spot() and here_input() (parser_error): overload for more precise locations of errors. * lily/parser.yy (YYLTYPE): set location type to Input (YYLLOC_DEFAULT): use Input::set_location() (yylex): add the YYLTYPE* location parameter. Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc. Give an Input parameter to THIS->parser-error() for more accurate messages. 2005-01-10 Han-Wen Nienhuys * stepmake/aclocal.m4: do NDEBUG for optimizing builds. * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch on BEAMQUANTING for non-NDEBUG builds. * lily/stem.cc (head_count): performance: avoid String::String() inside oft called function. 2005-01-09 Graham Percival * Documentation/user/examles.itely: attempted fix for broken string quartet template. * Documentation/user/notation.itely: remove unnecessary broken link. 2005-01-09 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.5.7 2005-01-09 Jan Nieuwenhuizen * config.make.in (METAFONT): Append -progname=mf, fixes use with mf-nowin for teTeX-3.0. Backportme. * scm/output-svg.scm (utf8-string): New function. * scm/output-gnome.scm (utf8-string): New function. (otf-name-mangling): Remove. * lily/pango-font.cc (Pango_font): Use font string iso font filename for utf8-text. * buildscripts/gen-emmentaler-scripts.py: Remove designsize from name. 2005-01-08 Graham Percival * Documentation/user/notation.itely: add info about Staff.extraNatural = ##f in Pitches section. Also fixed some minor issues in the Vocal music section. 2005-01-08 Han-Wen Nienhuys * scm/output-ps.scm (white-text): comment out Helvetica font, which is broken for my GS install. * lily/pango-font.cc (pango_item_string_stencil): use ink_rect, which provides a tighter bbox. * scm/define-grobs.scm (all-grob-descriptions): remove all extra-offsets from definitions. 2005-01-08 Erlend Aasland * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and add tuning for 4-string bass and some common 4/5-string banjo tunings. New function (four-string-banjo) turns a 5-string tuning into a 4-string tuning. New function (fret-number-tablature-format-banjo) computes correct fret numbers on 5-string banjos. * ly/engraver-init.ly: Default stringTunings = #guitar-tuning Add beam correction to TabVoice. * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers using bold font; makes tabs more readable. 2005-01-08 Han-Wen Nienhuys * lily/font-select.cc (get_font_by_design_size): don't make Modified_font_metric; this causes trouble, since we don't know the font magnification from inside Pango_font::text_stencil() * lily/all-font-metrics.cc (find_pango_font): take magnification argument. * Documentation/user/notation.itely (The Lyrics context): comment out broken {Small ensembles} link. * scm/framework-svg.scm (output-framework): change calling convention. * lily/object-key-dumper-scheme.cc: new file. * lily/object-key-undumper-scheme.cc: new file. * lily/tweak-registration-scheme.cc: new file. * lily/pango-select.cc (symbol_to_pango_variant): init local variable. * Documentation/user/examples.itely (String quartet): uncomment broken example. * lily/font-config.cc: new file. 2005-01-08 Jan Nieuwenhuizen * scm/output-svg.scm: * scm/output-gnome.scm: s/bigcheese/emmentaler. * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20. 2005-01-07 Jan Nieuwenhuizen * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf). Add headers. * lily/GNUmakefile (general-scheme.o): Add version.hh dependency. 2005-01-07 Han-Wen Nienhuys * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler. * lily/include/main.hh: lose _b hungarian suffixes for global variables. * lily/include/lily-guile-macros.hh: new file. * lily/pango-select-scheme.cc (LY_DEFINE): new file. * lily/general-scheme.cc: new file. * lily/font-select.cc (get_font_by_design_size): retrieve PangoFont for (designsize . "pango-descr") entries. * lily/lily-parser-scheme.cc: new file. * lily/output-def-scheme.cc: new file. * lily/paper-book-scheme.cc: new file. * lily/duration-scheme.cc (LY_DEFINE): new file. * lily/pitch-scheme.cc: new file. * scm/font.scm (add-cmr-fonts): use real dimens in font selection. 2005-01-07 Han-Wen Nienhuys * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}. 2005-01-06 Graham Percival * Documentation/user/notation.itely: minor editing. * Documentation/user/changing-defaults: minor editing. * Documentation/user/examples.itely: add template for string quartet part extraction; demonstrates tag. 2005-01-06 Erlend Aasland * Documentation/user/notation.itely: documents format-mark-box-letters and format-mark-box-numbers * scm/define-context-properties.scm: change comment. 2005-01-06 Han-Wen Nienhuys * scm/framework-ps.scm (output-classic-framework): new function: dump systems as separate .eps files (without fonts) and write a single collecting .tex file. 2005-01-05 Mats Bengtsson * Documentation/user/notation.itely (Setting simple songs): Correct several errors in the equivalent formulation of \addlyrics. (The Lyrics context): Corrected link to the SATB example. 2005-01-05 Han-Wen Nienhuys * scm/lily.scm (completize-formats): new function (postprocess-output): new function * lily/paper-book.cc (classic_output): change calling convention. Give basename as first argument. remove Paper_book::post_processing(). * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function. 2005-01-04 Han-Wen Nienhuys * lily/paper-outputter.cc (LY_DEFINE): new function ly:outputter-close. * lily/main.cc: change --format,-f to --backend,-b * lily/include/main.hh: rename format to backend. * scm/translation-functions.scm (format-mark-box-numbers): add. patch by Erlend Aasland 2005-01-03 Han-Wen Nienhuys * lily/pango-font.cc (text_stencil): dump string as (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg. 2005-01-03 Jan Nieuwenhuizen * configure.in (gui_b): Remove handy developer-only PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/ CVS source installations (but break other non-default but correct PKG_CONFIG_PATH setups), as this is no longer developer-only. * SConstruct: * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0 compatibility (backportme). * GNUmakefile.in: teTeX-3.0 compatibility (backportme). 2005-01-03 Werner Lemberg Prepare glyph shapes for mf2pt1 conversion. * mf/feta-accordion.mf (accreg_pen): Removed. No longer used. (accDiscant, accFreebase, accStdbase): Replace `draw' with `penstroke'. (accDot): Use `drawdot'. (accBayanbase): Replace `draw' with `draw_gridline'. (print_penpos): Moved to feta-macros.mf. (accOldEE): Replace `filldraw' with `penstroke'. Replace `draw' with `penstroke' and `drawdot'. * mf/feta-banier.mf: Code clean-up. ("grace dash (up)", "grace dash (down)"): Replace `draw' with `fill'. * mf/feta-bolletjes (draw_cross): Remove call to `labels'. * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add paremeter to control drawing of labels. Update all callers. * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths. (new_bulb): Return a bulb as a single path. To do that, it now takes some more parameters. Updated all callers. (draw_gclef): Major clean-up. `draw' has been replaced with `penstroke', unnecessary outlines have been removed. Remove (unused) gnome-canvas code. * mf/feta-macros.mf (print_penpos): New macro (from feta-accordion.mf). Other minor fixes. * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'. ("Pedal dot"): Use `drawdot'. (draw_pedal_P): Add parameter to control drawing of labels. Update all callers. Fix shape at top. (draw_pedal_e): Add parameter to control drawing of labels. Update all callers. (draw_pedal_d): Add parameter to control drawing of labels. Update all callers. Revert drawing direction. * mf/feta-schrift.mf (draw_fermata): Use single path. (draw_short_fermata): Replace `filldraw' with `fill'. (draw_long_fermata, draw_very_long_fermata): Replace calls to `draw_rounded_block' with a single path. ("Thumb"): Draw full circle instead of mirroring segments. (draw_accent): New macro. ("> accent", "espr"): Use it. (draw_marcato): Replace `filldraw' and `draw' with `fill'. ("open (unstopped)"): Draw full circle instead of mirroring segments. (draw_vee): Removed. ("Upbow"): Use `draw_accent' instead of `draw_vee'. ("Downbow"): Replace calls to `draw_rounded_block' with a single path. ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with partial pieces drawn with `fill' -- these do still overlap with the stem of the `t' but just once, not multiple times so that fontforge can handle it gracefully. Change other parts of the glyph so that fontforge's overlapping algorithm reliably works. (draw_heel): Replace `draw' with `fill'. (draw_toe): Use `draw_accent' instead of `draw_vee'. ("Flageolet"): Replace `draw' with `penstroke'. ("Segno"): Replace `filldraw' with `penstroke'. Replace `draw' with `drawdot'. ("Coda"): Replace `fill' with `penstroke', using a single path. ("Varied Coda"): Use less overlapping paths. (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a single path. * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of group to better control the `labels' command. Rename argument to `offset' and use it actually. Update all callers. Replace `filldraw' with `fill'. ("mordent", "prallmordent", "upmordent", "downmordent", "lineprall"): Replace `draw' with `draw_gridline'. ("upprall", "downprall"): Replace `draw' with `fill'. * mf/feta-timesig.mf: Formatting. * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels to... ("Flat"): Here. (draw_paren): Move code to draw labels to... ("Right Parenthesis"): Here. 2005-01-02 Graham Percival * Documentation/user/notation.itely: add example of \setTextDecresc and \setTextDim. 2005-01-02 Tatsuya Ono * scm/define-markup-commands.scm : fix glyph-strings of accidentals and \note-by-number 2005-01-01 Han-Wen Nienhuys * VERSION: 2.5.6 released. * ps/lilyponddefs.ps: put mm -> pt scaling in here. * input/regression/new-markup-scheme.ly: oops. font-family=music -> font-encoding fetaMusic. * lily/main.cc: put default to PS. * lily/tfm.cc: idem. * lily/afm.cc: idem. * lily/include/modified-font-metric.hh (struct Modified_font_metric): remove coding_scheme() method. * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8 * scripts/convert-ly.py (conv): crash on encountering \encoding. * input/les-nereides.ly: convert to utf8 * lily/modified-font-metric.cc (text_dimension): idem. * lily/parser.yy (TODO): idem. * lily/include/lily-lexer.hh (class Lily_lexer): idem. * lily/lexer.ll: remove encoding * scm/framework-ps.scm (output-variables): separately scale the page to mm * lily/pango-font.cc (Pango_font): fix scaling. * lily/font-metric.cc (design_size): design_size returns a dimension now as well. 2004-12-31 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes brace generation. * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table(). 2004-12-30 Jan Nieuwenhuizen * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang). 2004-12-30 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp in first run as well. * scm/paper.scm (layout-set-staff-size): use text-font-size in dimension less points (ie. 12 = 12 point) * lily/pango-select.cc (select_pango_font): use find_scaled_font(). * lily/all-font-metrics.cc (find_pango_font): set description_ * lily/pango-font.cc (text_stencil): export size as well. (text_stencil): fix scaling and extents box. 2004-12-29 Han-Wen Nienhuys * Documentation/topdocs/NEWS.texi (Top): add -f texstr * Documentation/user/invoking.itely (Invoking lilypond): document texstr * scripts/convert-ly.py (conv): add ancient rules. * scm/clef.scm (c0-pitch-alist): replace - with . * scripts/lilypond-book.py (process_snippets): add texstr support. * scm/framework-texstr.scm (header): change extension to .textmetrics * lily/lily-parser.cc (parse_file): do try_load_text_metrics for -f tex. * lily/text-metrics.cc: new file. (try_load_text_metrics): new function * lily/include/text-metrics.hh: new file. 2004-12-28 Han-Wen Nienhuys * lily/include/lily-guile.hh (ly_lily_module_constant): rename ly_scheme_function to ly_lily_module_constant. * lily/modified-font-metric.cc (text_dimension): try lookup_tex_text_dimension() first. * lily/tfm.cc: new function ly:load-text-dimensions 2004-12-27 Han-Wen Nienhuys * scm/output-texstr.scm (text): use \lilygetmetrics * scm/framework-texstr.scm (header): dump in new format. * tex/lilypond-tex-metrics: new file. 2004-12-27 Jan Nieuwenhuizen * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode mapping. (index_to_charcode): New method. * scm/output-ps.scm (glyph-string): * scm/output-gnome.scm (glyph-string): Add FONT parameter. 2004-12-26 Jan Nieuwenhuizen * scm/output-gnome.scm (FIXME-glyph-string): New function. Cannot implement fully, need FONT to get to charcode. * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string. * scm: Cleanups. * Documentation/user/changing-defaults.itely: Fix internalsrefs {Tunable context properties}, {All layout objects}, {Music definitions}. 2004-12-25 Han-Wen Nienhuys * VERSION: release 2.5.5 * lily/main.cc: use TeX as default output format. * flower/file-path.cc (find): try to open directly as well, so we find absolute path files. * lily/pango-select.cc: new file. * scm/framework-ps.scm: remove all encoding code. load pfb/pfa for PangoFont too. * lily/lily-guile.cc (ly_chain_assoc_get): new function. 2004-12-22 Werner Lemberg Prepare glyph shapes for mf2pt1 conversion. * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix. * mf/feta-bolletjes.mf (penposx): New auxiliary macro. (define_triangle_shape): Use it to replace `draw' with `fill' and `unfill'. Update all callers. (draw_slash): Replace `filldraw' with `fill'. Update all callers. (draw_cross): Ditto. ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'. Use penrazor for better conversion with mf2pt1. (generic_draw_solfa_note_shape, draw_solfa_note_shape, draw_solfa_quarter_note_shape, triangle): Removed. Unused. (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head, draw_la_head, draw_ti_head): Replace `filldraw' with `fill'. Update all callers. 2004-12-24 Han-Wen Nienhuys * lily/paper-book.cc (output): revert: only allow a single output format. * lily/include/pango-font.hh: new file. * lily/pango-font.cc: new file. * lily/font-metric.cc (text_stencil): new routine * lily/all-font-metrics.cc (find_pango_font): new routine. * lily/include/font-metric.hh (struct Font_metric): add text_stencil() * configure.in (PKG_CONFIG_PATH): require PANGO_FT2 2004-12-22 Werner Lemberg Prepare glyph shapes for mf2pt1 conversion. * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting. * mf/feta-toevallig.mf: Formatting. (draw_meta_sharp): Modify path to replace `filldraw' with `fill'. ("Natural"): Fix paths to allow better postprocessing. (draw_meta_flat): Use `z3l' as additional point in path to get better conversion with mf2pt1. Other minor cleanups. ("3/4 Flat"): Add auxiliary points and modify path to replace `draw' with `fill'. ("Double Sharp"): Mirror path segments instead of picture elements to get a single outline. Modify path to replace `filldraw' with `fill'. 2004-12-22 Graham Percival * input/test/unfold-all-repeats.ly: added file back. * Documentation/user/notation.itely, Documentation/user/programming-interface.itely Documentation/user/changing-defaults.itely: fixed misc broken links to input/test/ files. 2004-12-22 Jan Nieuwenhuizen * tex/texinfo.tex: Update. We should not be distributing this, but since we do, use latest version. * Documentation/user/macros.itexi: Comment-out \fetaflat, \fetasharp. Fixes make web. FIXME: make usable (compatible?) TeX macros for feta glyphs. 2004-12-22 Graham Percival * Documentation/user/changing-defaults.itely: fix index for set. * Documentation/user/converters.itely: added convert-ly bugs list from CVS. 2004-12-21 Jan Nieuwenhuizen * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB to empty. Fixes make web, using gs-gpl-8.01. In fact, gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user). * mf/GNUmakefile (pfa_warning): Use less broken check. * python/lilylib.py (setup_environment): Remove cruft from GS_FONTPATH. * configure.in: Bump mftrace requirement to 1.1.1. 2004-12-20 Jan Nieuwenhuizen * scm/output-svg.scm (beam): Use polygon. * scm/lily-library.scm: Bugfix. * Documentation/user/invoking.itely (Invoking lilypond): Bugfix. * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily. 2004-12-19 Werner Lemberg Prepare glyph shapes for mf2pt1 conversion. * mf/feta-eindelijk: Some formatting. (multi_rest_x, multi_beam_height): Removed. Unused. ("Quarter rest"): Use `intersectiontimes' to create a single outline. (rest_crook): Removed. Unused. (draw_rest_bulb): Return path (wihtout filling). Update callers. Simplified. (draw_eighth_rest, "16th rest", "32th rest", "64th rest", "128th rest"): Simplify `pat'. Create single outline. 2004-12-19 Jan Nieuwenhuizen * mf/GNUmakefile (ALL_GEN_FILES): (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale. * scm/output-svg.scm (polygon, draw-line, dashed-line): New function. 2004-12-19 Han-Wen Nienhuys * scm/output-texstr.scm (placebox): add routine * VERSION (PACKAGE_NAME): release 2.5.4 * scm/framework-texstr.scm (output-framework): new file. * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX processing. * Documentation/user/invoking.itely (Invoking lilypond): add SVG * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB rule. * configure.in (gui_b): bump mftrace requirement to 1.1.0 * mf/feta-bolletjes.mf (triangle): add s to 0triangle. * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too. 2004-12-19 Jan Nieuwenhuizen * scm/framework-svg.scm (dump-page): Implement landscape. 2004-12-18 Jan Nieuwenhuizen * lily/main.cc (setup_paths): Add svg to search path. * scm/output-svg.scm: * scm/framework-svg.scm: Add pageSet. Update. (dump-fonts): New function. (output-framework): Use it. * mf/GNUmakefile: * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font. 2004-12-18 Han-Wen Nienhuys * tex/lilyponddefs.tex: comment out new ifpdf code. 2004-12-17 Jan Nieuwenhuizen * GNUmakefile.in: * SConstruct (symlink): Replace afm by otf. * scm/framework-gnome.scm (gnome-main): Remove invocation of ly:pango-add-afm-decoder. * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove. 2004-12-17 Han-Wen Nienhuys * scm/output-ps.scm (new-text): don't access t glyph for getting space dimension. * ly/init.ly: warn about \version * lily/lexer.ll: set version-seen? 2004-12-17 Jan Nieuwenhuizen * scm/output-svg.scm (string->entities): Update. 2004-12-17 Han-Wen Nienhuys * lily/main.cc (setup_paths): replace afm by otf for path. * lily/pangofc-afm-decoder.cc: remove. * lily/include/pangofc-afm-decoder.hh: remove. * scm/framework-scm.scm (output-framework): new file. * mf/GNUmakefile: remove SAUTER_FONTS. remove SVG/sodipodi hacks. * scm/lily-library.scm (stderr): move stderr. * mf/GNUmakefile: remove AFM support. * buildscripts/mf-to-table.py (base): remove AFM support. * lily/open-type-font.cc (design_size): use design_size 2004-12-17 Pedro Kroger * lily/font-metric.cc (LY_DEFINE): Fix the docstring. 2004-12-17 Jan Nieuwenhuizen * mf/GNUmakefile: Generate combined aybabtu info. * mf/aybabtu.pe.in (i): Load it. * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts are not symbols. * lily/include/open-type-font.hh (count): New method. * mf/aybabtu.pe.in: Typo. * Documentation/user/out/lilypond-internals.nexi (Scheme functions): Typo. * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat. 2004-12-17 Han-Wen Nienhuys * buildscripts/gen-bigcheese-scripts.py (i): use symbols for subfonts. * scm/output-tex.scm (named-glyph): new function. This fixes TeX output. * scm/framework-tex.scm (otf-font-load-command): load subfonts. (tex-font-command-raw): new function. * lily/include/virtual-font-metric.hh (Module): remove file * lily/virtual-font-metric.cc (Module): remove file. * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info (get_indexed_char): read bbox from lily table if present. 2004-12-16 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for aybabtu.subfonts * mf/feta-beugel.mf (y): don't number consecutively, instead, use global glyphname. Enables more than 64 glyphs in the OTF. 2004-12-16 Jan Nieuwenhuizen * scm/font.scm (add-music-fonts): Load aybabtu iso all separate braces. * lily/open-type-font.cc (design_size): Use 12 as default for design size. * mf/aybabtu.pe.in: New file. Merge all our braces. * mf/GNUmakefile: Generate aybabtu. * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix. 2004-12-14 Jan Nieuwenhuizen * scm/lily-library.scm (char->unicode-index): Remove. * scm/output-gnome.scm (text): Bugfix for plain string input. Updates. * scm/output-svg.scm (svg-font): Add weight to font selection. 2004-12-14 Mats Bengtsson * Documentation/topdocs/INSTALL.texi (Top): Point to buildscripts/out/clean-fonts instead of buildscripts/clean-fonts.sh. 2004-12-13 Graham Percival * input/regression/figured-bass.ly: attempt to clarify text. * Documentation/user/notation.tely: add cindex for tag, attempt to add figured bass example. * Documentation/user/changing-defaults: basic editing. 2004-12-13 Han-Wen Nienhuys * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. * lily/open-type-font.cc (LY_DEFINE): new function ly:font-sub-fonts * lily/include/font-metric.hh (struct Font_metric): new method sub_fonts() * lily/vaticana-ligature-engraver.cc (transform_heads): replace . with - in add.stem. 2004-12-13 Jan Nieuwenhuizen * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber and fetaDynamic. * lily/rest.cc (glyph_name): Change - to . . * scm/output-gnome.scm (text): Hello world, again. * scm/output-svg.scm (named-glyph): New function. Hello world! * lily/modified-font-metric.cc (index_to_charcode): New method. * lily/include/font-metric.hh (index_to_charcode): New function. * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in new function. (ly:font-glyph-to-index): Remove. 2004-12-12 Han-Wen Nienhuys * lily/open-type-font.cc (make_index_to_charcode_map): new method. * mf/feta-autometric.mf (code): remove tex name from fet_beginchar. * lily/open-type-font.cc (load_scheme_table): new function * lily/dots.cc (print): replace - * lily/open-type-font.cc (attachment_point): new function. (load_table): read LILC table * buildscripts/gen-bigcheese-scripts.py (Module): new file. Generate FF scripts. * mf/feta-din10.mf: idem. * mf/feta-nummer10.mf: remove mf files. * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font. 2004-12-12 Jan Nieuwenhuizen * lily/lily-guile.cc: Use scm_from_locale_stringn. * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add compatibility. 2004-12-12 Han-Wen Nienhuys * lily/open-type-font.cc (get_indexed_char): scale metrics by design-size and units_per_EM. * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer. 2004-12-12 Jan Nieuwenhuizen * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which does not crash fontforge. * scm/lily-library.scm (char->unicode-index): Hack to map onto PUA. 2004-12-12 Han-Wen Nienhuys * scm/framework-ps.scm (ps-embed-cff): new function. * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof. 2004-12-12 Werner Lemberg * mf/bigcheese.pe.in: Add PUA mapping. Don't create Type 42 but bare CFF font. 2004-12-12 Jan Nieuwenhuizen * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols within canvas boundaries. * mf/merge.pe.in: Set font names, version, license GPL. * make/substitute.make: Add FONTFORGE. * config.make.in (FONTFORGE): Add. * configure.in (gui_b): Use PATH_PROG for fontforge. 2004-12-11 Graham Percival * scm/define-markup-commands.scm: add baseline-skip to info about \column. 2004-12-11 Jan Nieuwenhuizen * lily/font-metric.cc (ly:font-get-glyph-index): New function. * scm/output-gnome.scm (named-glyph): Use it. * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph. * flower/string.cc (substitute_char): Rename, rewrite, modify this. (upper_string, lower_string, reverse_string): Remove. * configure.in (fontforge): Reinstate version check. * ly/engraver-init.ly: Fix clef glyph names. * lily/time-signature.cc (special_time_signature): Fix fraction glyph names. 2004-12-11 Han-Wen Nienhuys * mf/merge.pe: new file. * lily/freetype.cc: new file. * lily/include/open-type-font.hh (class Open_type_font): new file. * lily/include/freetype.hh: new file. * lily/open-type-font.cc: new file. * lily/all-font-metrics.cc (find_otf): new function. 2004-12-11 Jan Nieuwenhuizen * lily/time-signature.cc (special_time_signature): Fix. * configure.in (PKG_CONFIG_PATH): Remove stray `i'. Check for GTK2 before checking for pango. Fixes -fgnome. * lily/font-metric.cc (LY_DEFINE): Also rename C name to match Scheme name. * scm/define-markup-commands.scm: * scm/safe-lily.scm: Bugfix: ly:font-by-name. * configure.in: Require makeinfo 4.7 (needed for @ifdocbook). * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like date versions. Fixes configure. (STEPMAKE_CHECK_VERSION): Support optional actual program version argument. 2004-12-10 Han-Wen Nienhuys * buildscripts/mf-to-table.py (write_ps_encoding): write real names in .enc * lily/*.cc: use '.' iso. '-' for separating glyph name elements. 2004-12-09 Graham Percival * Documentation/user/changing-defaults.itely: add info about make-dynamic-script * Documentation/user/notation.itely: add link in dynamics to section about make-dynamic-script. 2004-12-09 Christian hitz * lily/lily-guile.cc: change MACOS_X to __APPLE__ 2004-12-09 Han-Wen Nienhuys * buildscripts/mf-to-table.py (parse_logfile): use . for concatting name and group. (parse_logfile): use M for Minus (negative.) * lily/include/type-swallow-translator.hh (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR * lily/*.cc: cosmetics around = sign. * lily/paper-column.cc (Paper_column): copy rank_. This fixes lyric spacing on the penultimate column. 2004-12-05 Christian Hitz * configure.in: * lily/accidental-placement.cc: * lily/bar-line.cc: * lily/beam-concave.cc: * lily/beam-quanting.cc: * lily/beam.cc: * lily/bezier-bow.cc: * lily/bezier.cc: * lily/break-align-interface.cc: * lily/custos.cc: * lily/dimension-cache.cc: * lily/dot-column.cc: * lily/font-metric.cc: * lily/font-select.cc: * lily/gourlay-breaking.cc: * lily/grob-property.cc: * lily/grob.cc: * lily/lily-guile.cc: * lily/line-spanner.cc: * lily/lookup.cc: * lily/lyric-extender.cc: * lily/lyric-hyphen.cc: * lily/mensural-ligature.cc: * lily/midi-def.cc: * lily/misc.cc: * lily/note-collision.cc: * lily/note-column.cc: * lily/note-head.cc: * lily/paper-outputter.cc: * lily/percent-repeat-item.cc: * lily/rest-collision.cc: * lily/side-position-interface.cc: * lily/simple-spacer.cc: * lily/slur-configuration.cc: * lily/slur-scoring.cc: * lily/slur.cc: * lily/spaceable-grob.cc: * lily/spacing-spanner.cc: * lily/spanner.cc: * lily/staff-symbol-referencer.cc: * lily/stem.cc: * lily/stencil.cc: * lily/system-start-delimiter.cc: * lily/system.cc: * lily/text-item.cc: * lily/tie.cc: * lily/tuplet-bracket.cc: * lily/vaticana-ligature.cc: Fix for MacOS X: use instead of beacause isinf/isnan is undefined in 2004-12-03 Mats Bengtsson * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond. 2004-12-02 Han-Wen Nienhuys * VERSION: release 2.5.3 2004-11-29 Arno Waschk * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo" 2004-12-01 Han-Wen Nienhuys * scm/music-functions.scm (cue-substitute): voice counts start at 0. * lily/note-head.cc (internal_print): always try the "s" head if u/d not found. * scm/titling.scm (marked-up-headfoot): reinstate default tagline. 2004-11-29 Han-Wen Nienhuys * mf/parmesan-heads.mf (overdone_heads): typos. 2004-11-30 Nicolas Sceaux * lily/parser.yy (markup): in markups, { .. } without command before are also flattened, ie \line must be explicitely used. * Documentation/user/changing-defaults.itely: * Documentation/user/notation.itely: * input/wilhelmus.ly: * input/regression/instrument-name-markup.ly: * input/regression/markup-score.ly: * input/regression/new-markup-scheme.ly: * input/regression/new-markup-syntax.ly: * input/test/coriolan-margin.ly: use \line in markups where appropriate 2004-11-28 Nicolas Sceaux * scm/new-markup.scm (map-markup-command-list): helper function used in parser.yy to map markup commands on a markup list. * lily/parser.yy: get rid off < > in markups by treating { } as real lists. * lily/lexer.ll: remove < > from markup lexer mode. * scripts/convert-ly.py (conv): add rule for converting \markup < > to \markup { } * ly/titling-init.ly: * input/test/coriolan-margin.ly: * input/regression/new-markup-syntax.ly: * input/regression/new-markup-scheme.ly: * input/regression/multi-measure-rest-text.ly: * input/regression/markup-stack.ly: * input/regression/markup-score.ly: * input/regression/instrument-name-markup.ly: * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: * input/mutopia/R.Schumann/romanze-op28-2.ly: * input/mutopia/J.S.Bach/wtk1-fugue2.ly: * input/wilhelmus.ly: * Documentation/user/notation.itely: * Documentation/user/music-glossary.tely: * Documentation/user/changing-defaults.itely: change < > to { } in markups 2004-11-28 Han-Wen Nienhuys * lily/accidental-placement.cc (position_accidentals): shortcut if no accidentals to place. 2004-11-28 Nicolas Sceaux * scm/define-grob-properties.scm (all-user-grob-properties): fixed typo s/ly:dimension ?/ly:dimension?/ * input/regression/lily-in-scheme.ly: * input/regression/music-function.ly: * ly/spanners-init.ly (assertBeamSlope): * scm/music-functions.scm (def-grace-function): add the paper argument to music function definitions. 2004-11-28 Han-Wen Nienhuys * lily/moment.cc (LY_DEFINE): ly:moment-main-{denominator,numberator}, new function. * lily/score-engraver.cc (typeset_all): assign to column on basis of axis-group-parent-X setting. * lily/axis-group-engraver.cc (process_acknowledged_grobs): do add_element() on basis of axis-group-parent-Y setting. * lily/grob.cc: add axis-group-parent-{XY} properties. * input/regression/spacing-stick-out.ly: new file. * lily/simple-spacer.cc (add_columns): use binary search for setting column rods. Changes O(n^2) to O(n log(n)) for constructing spacing problem from columns. (add_columns): read allow-outside-line to make sure no texts stick out. (solve): Simple_spacer::is_active() only determines satisfies_constraints_ for non-ragged typesetting. * lily/simultaneous-music.cc (to_relative_octave): only set old_relative_used if return pitch actually changed. * scm/define-context-properties.scm (all-user-translation-properties): change to match implementation. * python/lilylib.py: Replace re.match by re.search and adds "-c showpage" to the gs command line (Johannes Schindelin) * scm/framework-ps.scm (output-preview-framework): sanitize bbox before processing. Prevents crash when inf is in the extent. * scm/define-markup-commands.scm (note-by-number): add "s" to "noteheads-" glyphname. * lily/parser.yy (Generic_prefix_music): supply parser argument to music function as well. 2004-11-26 Han-Wen Nienhuys * VERSION: release 2.5.2 * Documentation/user/changing-defaults.itely (Creating titles): add breakbefore variable. * lily/paper-book.cc (set_system_penalty): new function. Set penalty_ based on breakBefore setting * lily/context-specced-music-iterator.cc (construct_children): interpret special context id $uniqueContextId * lily/context.cc (create_unique_context): new method. Move creation of unique (\new) contexts into interpreting phase. This makes foo= \new Staff .. << \foo \foo >> produce 2 staves. * scm/define-music-properties.scm (all-music-properties): add quoted-voice-direction * ly/music-functions-init.ly: killCues function. * scm/music-functions.scm (cue-substitute): move creation of voice contexts further to the back. 2004-11-25 Werner Lemberg * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with `/hyphen' in encoding vector to get correct glyph name for EC fonts. 2004-11-24 Erik Sandberg * buildscripts/guile-gnome.sh: Fixed typo. 2004-11-23 Han-Wen Nienhuys * lily/lexer.ll: add < > to markup lexer mode (backportme) * scripts/abc2ly.py (dump_slyrics): add ord(). * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles to regular engraver. 2004-11-22 Han-Wen Nienhuys * mf/feta-bolletjes.mf (triangle): rewrite solfa heads. 2004-11-22 Jan Nieuwenhuizen * scm/define-markup-commands.scm (fill-line): Typo. * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96 and newer. 2004-11-22 Erik Sandberg * ly/dynamic-scripts-init.ly: Fixed typo. 2004-11-22 Han-Wen Nienhuys * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle note-head, to have different attachment points for up and down. * mf/feta-bolletjes.mf: merge solfa heads into main note heads. * mf/feta-generic.mf (else): remove solfa. * mf/feta-bolletjes.mf (tishape): remove unicode test. * scm/define-context-properties.scm (all-user-translation-properties): add shapeNoteStyles property. * lily/shape-note-heads-engraver.cc (process_music): new file. * lily/event.cc (transpose): call Event::transpose() for transposing the tonic. 2004-11-21 Jan Nieuwenhuizen * scm/output-gnome.scm: Save some pointers about pango/fontconfig Unicode/OpenType and AFM. * lily/include/guile-compatibility.hh (scm_from_bool): Add. 2004-11-21 Han-Wen Nienhuys * lily/grob.cc (Grob): idem. Plugs mem leaks. * lily/context.cc (Context): unprotect key from ctor. * scm/stencil.scm (stack-lines): return empty-stencil if argument is '() (stack-stencils): idem. * Documentation/user/changing-defaults.itely (Creating titles): document new title layout options. * lily/parser.yy (lilypond_header_body): copy previous $globalheader if present. * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to ly:module-copy * scm/page-layout.scm (marked-up-headfoot): remove old functions. * scm/titling.scm: remove old titling functions * lily/stencil.cc (translate): remove absolute dimension. * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles via markup. * scm/page-layout.scm (marked-up-headfoot): create header/footer field from user-supplied markup * scm/define-markup-commands.scm (on-the-fly): new markup command. Enter SCM markup procedure directly in Scheme. (fromproperty): new markup command. Read markup from props argument. * scm/titling.scm (marked-up-title): create title via user-specified markup. * scm/define-markup-commands.scm (column): remove empty stencils from column. * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does not have side-effect of creating variable stub. * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty? 2004-11-21 Jan Nieuwenhuizen * scm/encoding.scm (coding-alist): * scm/font.scm (add-ec-fonts): * ly/paper-defaults.ly: Use actual name for EC fontencoding: Extended-TeX-Font-Encoding---Latin. * lily/side-position-interface.cc (general_side_position): Add actual offset to error message (avoid constant error messages). * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first block. * lily/font-select.cc (select_encoded_font) (get_font_by_mag_step, get_font_by_design_size): * lily/modified-font-metric.cc (Modified_font_metric): * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter. * scm/encoding.scm (coding-alist): Add fetaDynamic. (read-encoding-file): Bugfix: do not require space after bracket. * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14, these do not exist. 2004-11-20 Graham Percival * Documentation/user/notation.itely: added info about typesetting boxed bar numbers. 2004-11-20 Han-Wen Nienhuys * flower/interval.cc (T_to_string): gcc4 fixes. * scm/define-markup-commands.scm (fill-line): use stack-stencils. This fixes problems with putting already centered stencils in a line. * VERSION: release 2.5.1 * lily/bar-line.cc (get_staff_bar_size): add line thickness. 2004-11-19 Han-Wen Nienhuys * input/example-[1-3].ly: simplify. * lily/cluster-engraver.cc (try_music): react to busy-playing-event * scm/output-ps.scm (new-text): new function. Use glyphshow to show glyphs. * scm/encoding.scm (decode-byte-string): new function. * scripts/convert-ly.py (conv): add warning about set-global-staff-size. * Doxyfile: add. * scripts/convert-ly.py (conv): add raggedlastbottom rule (conv): warn for TextSpanner split. (conv): warn for textheight. 2004-11-19 Jan Nieuwenhuizen * GNUmakefile.in (install-WWW): Invoke install-info, so that when building the documentation, info with images are installed. (final-install): Fix description. Mention sourcing of login scripts (instead of running). 2004-11-18 Jan Nieuwenhuizen * Debian lmodern support. Note that LilyPond will issue warnings no such encoding: "FontSpecific" The font selection mechanism wants to get the encoding from the font itself, but the idea of lmodern is that it is usable with different encodings, ie, Lily should get the encoding from the font tree, rather than the font itself. This would require some more work. * configure.in: Test for and accept lmodern if EC fonts not found. * scm/framework-tex.scm (font-load-command): TeX font name mangling for latin1 encoded cork-lm fonts. (convert-to-ps): Load lm.map if available. * ly/paper-defaults.ly: Use cork-lm encoding if ec is not available. * scm/encoding.scm (coding-alist): Add cork-lm encoding. * scm/font.scm: Add header. Autoload cork-lm and ec fonts if available. * lily/kpath.cc (ly_kpathsea_find_file): Rename. Do not use path for absolute file name, that is silly. * lily/score-engraver.cc (initialize): * Documentation/user/GNUmakefile (local-install-info): Invoke install-info --remove first. * #include cleanup (Andreas Scherer). 2004-11-18 Heikki Junes * input/test/script-abbreviations.ly: fix typos. 2004-11-17 Werner Lemberg * python/lilylib.py (options_help_str): Support pretty-printing of newlines in fourth element of option description. * scripts/lilypond-book.py (option_definitions): Use new lilylib feature. Sort options. * Documentation/user/lilypond-book.itely: Finish update. 2004-11-17 Jan Nieuwenhuizen * Documentation/user/macros.itexi: Add comment about \command. * Documentation/user/lilypond.tely: * Documentation/user/lilypond-book.itely: Fix names of lilypond and lilypond-book nodes, so that `info lilypond' visits the manual at top level, and `info lilypond-book' visits the lilypond-book section. * Documentation/user/GNUmakefile (local-install-info): Fix rules and packager messages. * lily/pangofc-afm-decoder.cc: Update test. 2004-11-16 Jan Nieuwenhuizen * scm/lily-library.scm (char->unicode-index): New function. * scm/output-gnome.scm: * scm/output-svg.scm: Cleanup. Map custom fonts to PUA. * Proper naming of file name throughout; s/filename/file[-_]name/. * lily/modified-font-metric.cc ("ly:font-encoding"): New function. * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA. 2004-11-16 Werner Lemberg * scripts/lilypond-book.py: The Lord has commanded me to use only tabs for indentation. Your humble servant obeys. 2004-11-16 Jan Nieuwenhuizen * scm/output-svg.scm: Font fixes. Sodipodi now groks svg including font, if LilyPond-feta font is only feta font in path. * scm/output-gnome.scm (text): Revert to file name of font if font has no name. Fixes ec font selection. (char): Bugfix: do not utf8 twice. Fixes clefs. * scm/framework-svg.scm: * scm/output-svg.scm: New file. TODO: figure out how to do character by index in font. * scm/output-sodipodi.scm: Remove. * scm/output-ps.scm (stem): Remove. 2004-11-15 Jan Nieuwenhuizen * scm/output-gnome.scm (beam): New function. (slur): Round corners. (round-filled-box): Round corners. 2004-11-16 Han-Wen Nienhuys * scm/output-gnome.scm (beam): add function. (draw-line): new routine. (dashed-line): stub; call draw-line (polygon): new routine. 2004-11-15 Werner Lemberg * Documentation/user/lilypond-book.itely: Revise section on lilypond-book options. Other minor fixes. * scripts/lilypond-book.py: Change indentation to 4. Minor formatting. 2004-11-15 Han-Wen Nienhuys * lily/system.cc (apply_tweaks): new function. Run tweaks on all grobs that have tweaks specced. 2004-11-14 Heikki Junes * Documentation/user/sound-output.itexi: add code snippets for MIDI. 2004-11-14 Jan Nieuwenhuizen * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get actual char #, not 0 based index. * lily/system-start-delimiter.cc (staff_brace): Start at 65. * mf/feta-beugel.mf: Actually start at char #65. Add header. Warning: do make -C mf clean. * lily/context-property.cc: Compile fix. * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf. Grok ec-fonts, braces and dynamics. * scm/framework-gnome.scm (gnome-main): Register braces with pango. 2004-11-14 Han-Wen Nienhuys * lily/include/tweak-registration.hh: new file. * lily/tweak-registration.cc: new file. * scm/framework-gnome.scm (save-tweaks): use new key mechanism for saving tweaks. * scm/output-gnome.scm (text): comment dribble. 2004-11-14 Jan Nieuwenhuizen * lily/pangofc-afm-decoder.cc (main): Test more feta fonts. * scm/output-gnome.scm (bezier-sandwich): New function. Reset path-def before using. Fixes muchtomany slurs in wrong places bug. 2004-11-14 Han-Wen Nienhuys * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key. * lily/include/object-key-undumper.hh (Module): new file. * lily/object-key-undumper.cc (Module): New file. Deserialize keys. SCM bindings * lily/object-key-dumper.cc (Object_key_dumper): idem. Provide SCM bindings. * lily/include/object-key-dumper.hh (class Object_key_dumper): new file. Serialize object keys. * lily/object-key.cc (dump): new function. (as_scheme): new virtual function (undump): new function (undumpers): new table. * lily/include/global-context.hh (Context): take \score key upon init. * lily/object-key-dumper.cc (serialize_key): new file. * lily/include/object-key-dumper.hh (class Object_key_dumper): new file. * lily/lily-lexer.cc: remove \quote. * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle(). * lily/context.cc (Context): take key argument in ctor. (create_context): new function * lily/grob.cc (Grob): take key argument in ctor. * lily/lilypond-key.cc (do_compare): new file. * lily/object-key.cc (Object_key): new file. * lily/include/object-key.hh (class Object_key): new file. * lily/include/lilypond-key.hh (class Lilypond_context_key): new file. 2004-11-13 Graham Percival * Documentation/user/lilypond-book.itely: add small warning about noindent default in lilypond-book. * Documentation/user/converters.itely: add examples for convert-ly. * Documentation/user/examples.itely: change version string in templates to 2.4.0. 2004-11-12 Karl Hammar * GNUmakefile.in (local-WWW-post): `find ...` overflows the cmdline, use xargs instead (backportme) 2004-11-10 Andreas Scherer * Documentation/user/: Numerous fixes in the user manual. 2004-11-13 Han-Wen Nienhuys * lily/parser.yy (re_rhythmed_music): search music expression for context-id, surround by \new Voice if not found. Fixes: addlyrics-second-staff.ly * VERSION: 2.5.0 released. 2004-11-12 Jan Nieuwenhuizen * Documentation/index.html.in: Fix url to one big page. (backportme) * Documentation/user/GNUmakefile: Separate rules for split and unsplit html documents. Remove perl massaging. (backportme) 2004-11-11 Graham Percival * Documentation/user/lilypond-book.itely: add short warning about \lilypond{} in LaTeX docs. 2004-11-11 Jan Nieuwenhuizen * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not found. (backportme) * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add version requirement. (backportme) * configure.in: Be explicit about old versions of ec-fonts-mtraced. (backportme) * lily/context-selector.cc (set_tweaks): New function. * lily/grob-selector.cc (set_tweaks): (Re)set hash table. Fixes web with -DTWEAK. * Documentation/user/introduction.itely (Automated engraving): Remove fragment option. Fixes web. * lily/context-property.cc (make_item_from_properties): * lily/context.cc (add_context)[TWEAK]: Tweak registration behind #ifdef. * scm/define-context-properties.scm (all-internal-translation-properties): Add tweakRank and tweakCount. * lily/grob.cc: * scm/define-grob-properties.scm (all-internal-grob-properties): Add tweak-rank and tweak-count. 2004-11-10 Jan Nieuwenhuizen * scm/output-gnome.scm (string->utf8-string, char->utf8-string): New function. (text): Use them. * scm/framework-gnome.scm (item-event): Add support from TLA. Support animated/opaque grob dragging tweaks. * buildscripts/guile-gnome.sh: Update. 2004-11-10 Mats Bengtsson * scm/define-grobs.scm (all-grob-descriptions): Added line-interface to the LigatureBracket object. 2004-11-10 Jan Nieuwenhuizen * scm/framework-gnome.scm (item-event): Support non-animated mouse dragging tweaks. * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function. * lily/context-selector.cc (store_context): New function. * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak. (store_grob): New function. (identify_grob): Add Moment parameter. * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it exists. * scm/framework-gnome.scm (save-tweaks): Write as alist. 2004-11-09 Jan Nieuwenhuizen * scm/framework-gnome.scm (item-event): Print grob id. (save-tweaks): New function. (tweak): New funtion. (item-event): Use it, bound to arrow keys. * lily/context-property.cc (make_item_from_properties): Register grob. * lily/context.cc (add_context): Register context. * lily/include/context-selector.hh: * lily/include/grob-selector.hh: * lily/context-selector.cc: * lily/grob-selector.cc: New file. 2004-11-08 Han-Wen Nienhuys * lily/slur.cc: add 'positions to interface * lily/main.cc: reinstate PS as standard output format. * scm/framework-tex.scm (output-preview-framework): print systems up to first non title system. * lily/grace-engraver.cc (start_translation_timestep): split scm_cadddr 2004-11-07 Han-Wen Nienhuys * lily/quote-iterator.cc (Module): remove old quote-iterator * scm/define-music-types.scm (music-descriptions): move NewQuoteMusic over QuoteMusic * Documentation/user/notation.itely (Formatting cue notes): use \cueDuring. * lily/new-quote-iterator.cc (quote_ok): new function. * input/regression/quote-cue-during.ly: new file. * input/regression/quote-grace.ly: new file. * scm/define-context-properties.scm (Module): change definition of graceSettings * lily/context-property.cc (Module): rename from translator-property.cc * lily/context.cc (context_name_symbol): new function * lily/grace-engraver.cc: new file. Set properties for grobs based on the grace-ness of now_moment(). * scm/music-functions.scm (add-grace-property): use list iso. vector for graceSettings remove set-{start,stop}-grace-properties. * lily/new-quote-iterator.cc (construct_children): set quote_outlet_ if no quoted-context-{id,type} specified. * scripts/convert-ly.py (conv): \quote -> \quoteDuring. * lily/parser.yy (command_element): remove \quote. * ly/music-functions-init.ly (location): add quoteDuring music function. * lily/lexer.ll: allow \encoding in lyrics as well. Remove optional semicolon. (backportme) 2004-11-06 Jan Nieuwenhuizen * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no need to link to GUILE et al. 2004-11-06 Han-Wen Nienhuys * scm/define-music-properties.scm (all-music-properties): add quoted-context-type, quoted-context-id. * scm/lily.scm (type-check-list): new function. * scm/lily-library.scm: new file. Generic library routines. * lily/parser.yy (Generic_prefix_music): move typechecking out of parser. * ly/music-functions-init.ly: add quoteDuring function. * lily/include/music-iterator.hh (class Music_iterator): rename set_translator -> set_context * lily/parser.yy (Generic_prefix_music_scm): add MUSIC_FUNCTION_SCM_SCM_MUSIC * scm/lily.scm (sanitize-command-option): new function. (backportme) * scm/framework-tex.scm (header): sanitize TeX paper size. (backportme) 2004-11-06 Jan Nieuwenhuizen * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard. * tex/lilyponddefs.tex: If no inputencoding use latin1. (backportme) * scm/framework-tex.scm (font-load-command): Use T1 if no font-encoding set. (backportme) * scm/lily.scm (postscript->pdf): Remove .pdf file if it exists before converting. (backportme) * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it exists before converting. (backportme) (convert-to-ps): Remove .ps file if it exists before converting. (backportme) * lily/lexer.ll: Remove extra progress newline, use present tense. * scm/paper.scm (paper-alist): public. * scm/framework-tex.scm (convert-to-ps): * scm/lily.scm (postscript->pdf): Do not leak papersizename into command line. 2004-11-06 Han-Wen Nienhuys * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme) * lily/recording-group-engraver.cc (derived_mark): mark now_events_. (backportme) 2004-11-05 Han-Wen Nienhuys * mf/GNUmakefile: use Fedora-3 in download link. (backportme.) * scm/framework-tex.scm (convert-to-dvi): use ly:system for invoking latex. (backportme.) * lily/stem.cc (off_callback): center stems for all rest stems. 2004-11-05 Werner Lemberg * Documentation/user/lilypond.tely: Add more guidelines for writing lilypond texinfo documents. 2004-11-05 Heikki Junes * Documentation/index.html.in: remove
. * THANKS: change 2.3 to 2.4. 2004-11-05 Jan Nieuwenhuizen * scm/output-gnome.scm: More fontconfig comment. 2004-11-05 Pedro Kroger * GNUmakefile.in ($(builddir)/share/lilypond-force): create the directory in $(builddir)/share according with PACKAGE_NAME defined in the VERSION file. 2004-11-04 Han-Wen Nienhuys * lily/beam.cc (rest_collision_callback): use local beam multiplicity. * input/regression/stem-stemlet.ly: new file. * lily/stem.cc (add_head): store rests as well. * scm/define-grob-properties.scm (all-user-grob-properties): add stemlet-length * lily/stem.cc: store rests as well. * input/regression/new-slur.ly: mention forcing. 2004-11-04 Werner Lemberg * Documentation/user/*: A new round of layout fixes and document structure cleanup. 2004-11-04 Heikki Junes * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x. 2004-11-04 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi (Top): Remove geometry. 2004-11-03 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax). * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message. * lily/main.cc (main): Invoke identify. * scm/lily.scm (postscript->pdf): Remove progress newline. Write progress to stderr. * lily/paper-book.cc (output): Remove progress newline. * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call gettext on user messages, and remove whitespace. * lily/paper-outputter.cc (get_paper_outputter): Add progress newline. * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of argv[0] (Thomas Scharkowski). * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF call (carlyannehorse). Also check for mf and mf-nowin. Add check for ec-fonts-mtraced. * GNUmakefile.in (builddir-exec): Add symlink tex/out. Fixes --srcdir build (Bertalan). * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile headers and library too (Laura Conrad). * Documentation/topdocs/INSTALL.texi (Top): Mention development package for guile too (Laura Conrad). * lily/main.cc (usage): Typo. 2004-11-02 Werner Lemberg * Documentation/user/notation.ly: More fixes to improve appearance. * tex/texinfo.tex: Updated from texinfo CVS -- this version provides better output for multicolumn tables. 2004-11-01 Mats Bengtsson * lily/main.cc (dir_info): Fixed typo in the printouts. 2004-11-01 Werner Lemberg * buildscripts/mf-to-table.py (write_fontlist): Improve formatting of output. Set `per_line' to 2; replace hard-coded value with it. * Documentation/user/*: Many fixes to improve appearance of printed manual. 2004-11-01 Werner Lemberg * Documentation/user/changing-defaults.itely, Documentation/user/notation.ly, Documentation/user/programming-interface.itely: Use @/. Fix formatting of some lilypond snippets and tables. * scripts/lilypond-book.py (compose_ly): Provide useful default for LINEWIDTH in `override'. 2004-10-31 Graham Percival * Documentation/user/invoking.itely: change "3.0" -> "2.4" 2004-10-31 Werner Lemberg Resetting @exampleindent to `5' gives ugly results with texinfo's DVI output. Use `@format @exampleindent 0 ... @end format' instead (if not quoting) to change @exampleindent only locally. * scripts/lilypond-book.py (NOQUOTE): New variable. (output) [LATEX]: Remove AFTER and BEFORE. [TEXINFO]: Remove AFTER and BEFORE. Fix QUOTE and VERBATIM pattern. Add NOQUOTE pattern. (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER and BEFORE. [output_texinfo]: Use NOQUOTE. 2004-10-31 Graham Percival * Documentation/user/changing-defaults.itely: clarify paper size commands with correct info. * Documentation/user/lilypond-book.itely: add more docs for filename extensions. 2004-10-31 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0 (PATCH_LEVEL): start 2.5.0. 2004-10-30 Graham Percival * Documentation/user/notation.itely: add warning about bar numbers in multistaff music, add warning about quoting grace notes. * Documentation/user/changing-defaults.itely: clarify paper size commands, add missing subsubtitle entry to Creating titles. * Documentation/user/tutorial.itely: change 3.0 references to 2.4. 2004-10-30 Han-Wen Nienhuys * scripts/convert-ly.py (conv): fixed \context Foo = mixedCaps case. (conv): add dummy 2.4.0 conversion rule. * Documentation/user/lilypond.tely: add @finalout. * lily/slur-scoring.cc (enumerate_attachments): use stem_extent_ for attaching, fixes slur/stem left attachment of downslur/downstem. * lily/quote-iterator.cc (process): use <= for comparisons. Fixes quote problem if for last note of quoted sequence. * input/regression/part-combine-text.ly (comm): add expect strings. 2004-10-30 Werner Lemberg * Documentation/user/examples.itely: Improved layout. * Documentation/invoking.itely: Use `@/' to insert breakpoints. * Documentation/macros.itexi (@inputfileref) [@tex]: Use `@/'. * Documentation/notation.itely: Use `@/'. Other layout fixes. 2004-10-30 Han-Wen Nienhuys * lily/part-combine-iterator.cc (unisono): examine last_playing_ (not state_), this fixes a2 printing after chord. * input/regression/no-staff.ly: fix octave, revise syntax. * input/regression/lyrics-bar.ly (texidoc): fixes. * input/regression/beam-dir-functions.ly (Module): remove from regtest * input/regression/accidentals.ly (Module): remove from regtest. * lily/parser.yy (Prefix_composite_music): oops. Chords should be unrelativable, not bass figures untransposable. * VERSION: 2.3.26 released. * lily/completion-note-heads-engraver.cc (try_music): only return something when is_first_ is true. Fixes lyrics with completion_heads. * make/lilypond-vars.make: add scripts/out/ to PATH, to find ps2png. * scm/lily.scm (ly:system): new function. Catches uninstalled ps2png. 2004-10-29 Han-Wen Nienhuys * Documentation/user/notation.itely: remove @hyphenatedinternalsref. 2004-10-29 Werner Lemberg * scm/framework-tex.scm (dump-line): Fix dimensions for \lybox. * scripts/lilypond-book.py (no_options): New dictionary. (simple_options): New list. (ly_options): Remove NOINDENT and EXAMPLEINDENT patterns. (compose_ly): Use `no_options' and `simple_options'. Fix logic of option handling. Handle `linewidth' option without parameter. 2004-10-29 Han-Wen Nienhuys * lily/lookup.cc (triangle): use (0, interval.length()) for X extent, since the stencil is translated later on. * lily/ledger-line-spanner.cc (print): swap linear_combination arguments, effectively shortens ledger line. * Documentation/user/GNUmakefile ($(outdir)/lilypond/lilypond.html): use find to remove files. * lily/main.cc: --no-pages option. 2004-10-28 Carl Sorensen * Documentation/user/notation.itely (Fret diagrams): add extra notes to example to avoid collisions between fret diagrams. 2004-10-29 Han-Wen Nienhuys * Documentation/user/notation.itely (Automatic note splitting): note about lyrics. * Documentation/user/converters.itely (Invoking convert-ly): note about version numbers. * scripts/abc2ly.py (dump_score): revise lyric dumping * scripts/mup2ly.py (pre_processor_commands): always open file. * scripts/etf2ly.py (Frame.calculate): always close \grace. (Etf_file.dump): add \version * VERSION: 2.3.25 released. * lily/scm-option.cc: add 'resolution to ly:get-option argument list. 2004-10-28 Han-Wen Nienhuys * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-origin 2004-10-28 Werner Lemberg * Documentation/user/music-glossary.tely: More fixes to improve appearance with DVI output. * scripts/lilypond-book.py (compose_ly): Use 0.4in for EXAMPLEINDENT. This is the maximum value for quotation environments used in `texinfo.tex' -- many warnings in lilypond.dvi are now gone. 2004-10-27 Werner Lemberg * Documentation/user/music-glossary.tely: Revised. 2004-10-26 Carl Sorensen * input/test/fret-diagram.ly: insert breaks, remove raggedright to improve fret diagram spacing in printed output. * Documentation/user/notation.itely (Fret diagrams): Remove raggedright from options for the example so fret-diagrams won't overlap one another. 2004-10-26 Werner Lemberg * scripts/lilypond-book.py: Some additional formatting for orthogonality. (ly_options) [*]: Format strings. [RAGGEDRIGHT]: Don't set `indent'. This is now properly handled by `compose_ly'. (output) [LATEX][OUTPUT]: Format string and simplify. (PREAMBLE_LY, FRAGMENT_LY): Format string. (classic_lilypond_book_compatibility): Take key/value pair as parameter. Return key/value pair. (compose_ly): Rewritten, taking the snippet type as third parameter. The default values are now set more sensible, and a `linewidth' option is no longer overwritten under some circumstances. * Documentation/user/music-glossary.tely: Replace all accented character macros with latin-1 codes. 2004-10-26 Nicolas Sceaux * lily/music-function.cc (ly_make_music_function): when an argument predicate is markup?, the signature keyword becomes "markup" iso "scm". * lily/lexer.ll (music_function_type): new MUSIC_FUNCTION_*MARKUP* tokens, for functions which signatures contain "markup". * lily/parser.yy (Generic_prefix_music_scm): add treatment for new MUSIC_FUNCTION_*MARKUP* tokens. 2004-10-26 Jan Nieuwenhuizen * input/regression/lyrics-bar.ly: Make StaffGroup accept the new Lyrics context. 2004-10-25 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): return list of output files. * lily/simple-spacer.cc (LY_DEFINE): for ragged, we can end with all springs tight, and still satisfy the constraints. 2004-10-25 Werner Lemberg * scripts/lilypond-book.py: s/option-sep/option_sep/. (format_res) [LATEX, TEXINFO]: Skip whitespace before comma also. (snippet_res): Fix regexps and make them ignore whitespace properly. (compose_ly): Use `re.split' instead of `string.split' to remove surrounding whitespace. Some formatting to get more consistency. 2004-10-25 Han-Wen Nienhuys * VERSION: 2.3.24 * scm/define-context-properties.scm (all-user-translation-properties): add verticallySpacedContexts. * scm/define-grob-interfaces.scm (vertically-spaceable-interface): add interface * scm/define-grob-properties.scm (all-internal-grob-properties): add spaceable-staves * scm/define-grobs.scm (all-grob-descriptions): set vertically-spaceable-interface for VerticalAxisGroup and RemoveEmptyVerticalGroup * lily/system.cc (get_line): determine staff_refpoints_ using spaceable-staves. * lily/score-engraver.cc (acknowledge_grob): ack vertically-spaceable-interface and verticallySpacedContexts to set spaceable-staves. * input/regression/new-slur.ly: add slur under 16th subbeam case. * lily/slur-scoring.cc (fill): init has_same_beam_ before use. 2004-10-24 Han-Wen Nienhuys * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): tune minimumVerticalExtent tweaks. * mf/feta-schrift.mf: include size of thumb appendix in bbox. Fixes: c-thumb-notehead.ly * THANKS: add Meisters to the Development team. * scm/framework-tex.scm (convert-to-dvi): redirect output to /dev/null for non-verbose. * Documentation/user/invoking.itely (Invoking lilypond): add note about resource usage. * tex/GNUmakefile (TEX_FILES): add texinfo.cnf * stepmake/stepmake/texinfo-vars.make (MAKEINFO): add --enable-encoding * Documentation/user/lilypond.tely: add -*- coding: latin-1 -*- everywhere. * Documentation/user/changing-defaults.itely (Text encoding): change to latin1. * Documentation/user/lilypond.tely: add language and encoding. * scm/define-grobs.scm (all-grob-descriptions): add line-interface. * configure.in (PKG_CONFIG_PATH): bump makeinfo version to 4.7 * input/test/ossia.ly: font sizes for ossia. * scripts/convert-ly.py (conv): \context Foo = NOTENAME -> \context Foo = "NOTENAME". * lily/main.cc (determine_output_options): fix ordering. 2004-10-24 Erik Sandberg * THANKS: Added bughunters for 2.3. 2004-10-24 Han-Wen Nienhuys * Documentation/user/macros.itexi: use findex functions/internals objects. * scm/documentation-generate.scm (string-append): add syncodeindex * Documentation/user/tutorial.itely (A lead sheet): use \chords for tutoring chord names. * Documentation/user/lilypond.tely: remove @authors. 2004-10-23 Werner Lemberg * scm/framework-tex.scm (dump-page): Add width to \lybox call. Remove first two parameters of \lybox. Don't emit \vbox around \lybox. (dump-line): Add width to \lybox call. Remove first two parameters of \lybox. * tex/lilyponddefs.tex (\topalign, \leftalign): Removed. (\lyitem): Updated. (\lybox): Only take three parameters. Create box which has zero depth, only height. Center box vertically along the x-height of current font. 2004-10-23 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.3.23 * scm/framework-tex.scm (convert-to-ps): add -E if filename contains .preview. 2004-10-22 Han-Wen Nienhuys * lily/lyric-extender.cc (print): only run to right-bound if broken. This fixes input/regression/lyric-extender.ly * input/regression/beamed-chord.ly: removed. * Documentation/user/macros.itexi: add \global to definitions for feta macros. * po/fr.po: updated po file. * po/de.po: updated po file. 2004-10-22 Werner Lemberg * tex/lilyponddefs.tex (\lilypondend): Undo change from 2004-10-20. 2004-10-21 Werner Lemberg * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex (\lilypondexperimentalfeatures): Removed. 2004-10-20 Jürgen Reuter * Documentation/user/notation.itely: fixed 2 typos 2004-10-20 Werner Lemberg * scm/framework-tex.scm (header-end): Don't set \outputscale. (dump-line): Produce prettier output. * tex/lilyponddefs.tex: Comment all macros extensively. (\lilypondstart): Set \outputscale. Define \lilypondpagebreak and \lilypondnopagebreak here. Don't test for positive \lilypondpaperlinewidth -- this is always positive in the normal case (LilyPond produces bad output otherwise so we can safely ignore negative or zero values). (\lilypondend): Remove useless test for \lilypondbook. (\fetasixteen, \fetafont, \fetachar): Removed, unused. We also don't input `feta20.tex'. 2004-10-19 Graham Percival * Documentation/user/examples.itely: added texidoc lilypond-book template. 2004-10-19 Jan Nieuwenhuizen * cygwin/lilypond.hint: Update. 2004-10-18 Carl Sorensen * Documentation/user/notation.itely (Fret diagrams): Add documentation for fret diagram markups to user manual * scm/fret-diagrams.scm (fret-diagram-terse): Fix mistake in internal documentation for fret-diagram-terse * Documentation/user/notation.itely: Added section on fret diagrams. 2004-10-18 Jan Nieuwenhuizen * scripts/convert-ly.py (usage): Fix --help description. Apply range also for --show-rules. 2004-10-18 Werner Lemberg * scripts/lilypond-book.py (Snippet, Include_snippet) [replacement_text]: Use group `match'. 2004-10-17 Jan Nieuwenhuizen * Documentation/user/macros.itexi: Use @ref instead of @inforef for html. Apparently, ``you should'' in texinfo documentation is merely a guideline that can safely be ignored. * elisp/lilypond-init.el (auto-mode-alist): Add .ily to auto-mode-alist. * input/test/engraver-example.ily: * input/regression/allfontstyle.ily: Rename, update users. 2004-10-16 Graham Percival * Documentation/user/lilypond-book.itely: add more details about building .lytex files. * Documentation/user/examples.itely: added piano-lyrics template * input/template/piano-4-voices.ly, piano-lyrics.ly: remove. * input/GNUmakefile: remove "templates" from build subdirs. * input/template: removed. 2004-10-16 Werner Lemberg * scripts/lilypond-book.py (snippet_res): Define group `match' everywhere. Accept more spaces between commands and its arguments and options. Fix some regexps. (output): Remove some newlines in string values and suppress spaces in output. (output_texinfo): Output `output_print_filename' only if not empty. (Lilypond_snippet)[find_toplevel_snippets]: Use group `match'. 2004-10-16 Werner Lemberg * scm/framework-tex.scm (font-load-command, define-fonts): Protect some TeX line ends with `%' to avoid additional horizontal space in output. * scripts/lilypond-book.py: Unexpand spaces to tabs. (snippet_res): Use `x' modifier to represent regular expressions in a friendlier way. Fix `lilypond_block' for LaTeX to accept `%\end{lilypond}'. (find_toplevel_snippets): Don't use indices from match group 0, which is the whole pattern space, but group 1. 2004-10-15 Han-Wen Nienhuys * flower/include/direction.hh (enum Direction): add DIRECTION_LIMIT 2004-10-14 Han-Wen Nienhuys * po/fr.po: new po file. 2004-10-15 Jan Nieuwenhuizen * Documentation/user/macros.itexi: Do not construct external references using @uref. That results in broken links. * lily/slur.cc (outside_slur_callback): Use int in for loop; avoids g++-3.4.1 enum beature. 2004-10-13 Graham Percival * Documentation/user/examples.itely: added lilypond-book template. * Documentation/user/lilypond-book.itely: added filename extension page. 2004-10-13 Jan Nieuwenhuizen * debian/rules (binary-indep): Link images for info. * elisp/lilypond-mode.el (LilyPond-command): Set XEDITOR. Cool feature nicked from jEdit. 2004-10-12 Pedro Kroger * Documentation/user/introduction.itely: Minor corrections. * Documentation/user/notation.itely: Minor corrections. * Documentation/user/tutorial.itely: Minor corrections. 2004-10-11 Jan Nieuwenhuizen * scm/framework-ps.scm (page-header): Fix Layout renaming bug. * scm/*.scm: * ly/paper-defaults.ly: Use papersizename only. 2004-10-11 Werner Lemberg * tex/lilyponddefs.tex (\lyitem): Don't use \topalign to make \raise work with positive values. 2004-10-11 Mats Bengtsson * Documentation/user/notation.itely (Multi measure rests): Update the docs corresponding to the implementation change from 2004-10-08. 2004-10-10 Han-Wen Nienhuys * VERSION (MY_PATCH_LEVEL): release 2.3.22 * scm/part-combiner.scm (determine-split-list): reinstate playing+resting case. * Documentation/user/invoking.itely (Reporting bugs): rename. * lily/lexer.ll (Lily_lexer): bump version req to 2.3.22. * lily/parser.yy (Prefix_composite_music): change no-transposition for mode_changing_head to figures too. * lily/phrasing-slur-engraver.cc (acknowledge_grob): do something with normal slurs too. * lily/slur-scoring.cc (move_away_from_staffline): new function. (get_base_attachments): move away attachment point for breaks similar to attachment points on slurs (staffline collision, and half a space of padding) * scm/page-layout.scm (ly:optimal-page-breaks): don't compute force twice. * lily/simple-spacer.cc (LY_DEFINE): if line too long in ragged mode, return #f. * scm/page-layout.scm (ly:optimal-page-breaks): set force = 0.0 for last page if raggedlast. * lily/parser.yy (Prefix_composite_music): untransposable is for FiguredBass, not ChordNames 2004-10-10 Jan Nieuwenhuizen * scm/framework-tex.scm: Merge fix. 2004-10-09 Jan Nieuwenhuizen The grand \paper -> \layout, \bookpaper -> \paper renaming. 2004-10-10 Graham Percival * Documentation/user/notation.itely: add raggedright to a whole bunch of places. 2004-10-10 Han-Wen Nienhuys * scm/paper.scm (set-paper-dimension-variables): new function. Define dimension-variables explicitly in \paper too. This allows overriding linewidth inside \score { \paper { } } blocks * scm/framework-tex.scm (convert-to-ps): invoke dvips with -t landscape. (header): add landscape and papersize options. 2004-10-09 Han-Wen Nienhuys * lily/*.cc: use robust_scm2moment() where appropriate. * lily/moment.cc (robust_scm2moment): new function. * scm/titling.scm (default-score-title): remove caps for piece. * VERSION: 2.3.21 released. * lily/include/slur-scoring.hh (struct Slur_score_state): new file * lily/include/slur-configuration.hh (class Slur_configuration): new file. * lily/slur-configuration.cc: new file. move scoring functions into Slur_configuration. * lily/slur-scoring.cc (Slur_score_state): change static functions to methods of Slur_score_state. * lily/bezier-bow.cc (Message): * flower/include/interval-set.hh (Message): new file. * flower/interval-set.cc (Message): new file. 2004-10-08 Han-Wen Nienhuys * lily/multi-measure-rest-engraver.cc (process_music): always generate MultiMeasureRestNumbers. * SConstruct (txt_files): switch of make dist * lily/bezier-bow.cc (get_slur_indent_height): change recipe to make sure that (indent < len / 3). This fixes progerror-max_h.ly * lily/multi-measure-rest-engraver.cc (process_music): make MultiMeasureRestNumber too. 2004-10-08 Mats Bengtsson * Documentation/user/notation.itely (Bar lines): Added a note that defaultBarType is to be changed in the Timing context. 2004-10-07 Han-Wen Nienhuys * lily/include/guile-compatibility.hh: add file. * scm/framework-tex.scm (convert-to-dvi): use max of current extra_mem_top and 1M. * lily/kpath.cc (LY_DEFINE): ly_kpathsea_expand_variable. New function. 2004-10-05 Han-Wen Nienhuys * scm/framework-tex.scm (convert-to-dvi): set extra_mem_top to 1M. 2004-10-04 Han-Wen Nienhuys * lily/slur-scoring.cc (struct Slur_score_state): add has_same_beam_, edge_has_beams_, is_broken_ bools. (get_base_attachments): simpler Y attachment determination for broken slurs. 2004-10-04 Jan Nieuwenhuizen * buildscripts/texi2omf.py: Add hashbang. Starting the script in bash without that is quite interesting. Add xml and some omf keys. 2004-10-03 Jan Nieuwenhuizen * Documentation/user/macros.itexi: Add xml macros. * Documentation/user/GNUmakefile (extra-local-help): Add xml rules. * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): Fix location. 2004-10-03 Han-Wen Nienhuys * lily/break-substitution.cc (substitute_mutable_property_alist): only put property back into value if != SCM_UNDEFINED * lily/lyric-extender.cc (print): don't take common refpoint of null object if right_text isn't there. * lily/slur-scoring.cc (struct Slur_score_state): new struct. Collect scoring function arguments. (struct Slur_score_state): add musical_dy_ (get_extra_encompass_infos): new function. Split off state computations. * scm/part-combiner.scm (determine-split-list): remove playing1 and playing2. 2004-10-02 Graham Percival * Documentation/index.html.in: remove link to templates. * Documentation/user/notation.itely: more small fixes. 2004-10-02 Han-Wen Nienhuys * lily/timing-engraver.cc (process_music): move setting measure-length. This fixes spacing-whole-rest.ly * VERSION (PACKAGE_NAME): release 2.3.20 * input/regression/quote-transposition.ly: update example * scm/define-music-properties.scm (all-music-properties): change meaning of instrumentTransposition. It is now the pitch played that sounds as middle C. This means that instrumentTransposition can be \transposed. Fixes: transpose-quote.ly * lily/parser.yy (command_element): reverse setting of instrumentTransposition * lily/pitch.cc (pitch_interval): rename. * lily/recording-group-engraver.cc (stop_translation_timestep): remove macrameing of accumulator and set_car/cdr. Fixes: transposition-quote.ly * lily/music.cc (transpose): fold Event::transpose() in. * lily/event.cc: remove Transpose. * lily/recording-group-engraver.cc: cleanup. * ly/music-functions-init.ly (displayMusic): add function. * make/lilypond.fedora.spec.in: rename file. * lily/lily-lexer.cc (mark_smob): don't use ly_cdr() for getting to-be-marked objects. Use SCM_CELL_WORD_1 instead. * Documentation/user/changing-defaults.itely (Changing context properties on the fly): typo. * lily/slur.cc (outside_slur_callback): try three sample points for determining collisions. This fixes: slur-script.ly. 2004-09-30 Jan Nieuwenhuizen * scripts/lilypond-book.py (ext2format): Add latex as Latex. 2004-10-01 Graham Percival * Documentation/user/notation.itely: more small fixes. * Documentation/user/examples.itely: make new sections. * input/test/bar-lines.ly: improve output, fix bug. * Documentation/user/changing-defaults.itely: small fixes. 2004-10-01 Werner Lemberg * tex/lilyponddefs.tex (\lilypondECencoding): New command to handle T1 encoding in texinfo mode. (\lilypondstart): Use it. (\lilypondloop, \lilyponditerate): Removed. Unused. 2004-09-30 Werner Lemberg * tex/lilyponddefs.tex (\lilypondstart): Define \lilypondfontencoding for both texinfo and latex mode. * scm/framework-tex.scm (font-load-command): Use \lilypondfontencoding. 2004-09-30 Han-Wen Nienhuys * scm/framework-tex.scm (dump-page): take with-extents? argument. If true, output Y extents. Used for lilypond-book documents. * scripts/lilypond-book.py (PREAMBLE_LY): set dump-extents for \bookpaper. * lily/slur.cc (outside_slur_callback): epsilon-delta management for slur edges. Fixes: progerror-no-bezier-intersection.ly * scm/framework-tex.scm (dump-page): put stencil height in dumped page. 2004-09-29 Mats Bengtsson * Documentation/user/notation.itely (Multi measure rests): Improved example. 2004-09-29 Han-Wen Nienhuys * lily/auto-beam-engraver.cc (test_moment): robustify. 2004-09-28 Werner Lemberg * scm/framework-tex.scm (font-load-command): Define proper font macro which sets font encoding if available. (define-fonts): Define \lilypondpaperinputencoding, to be taken from the \bookpaper block. * tex/lilyponddefs.tex (\lilypondstart): Use \lilypondpaperinputencoding for global input encoding. 2004-09-28 Han-Wen Nienhuys * lily/score.cc (Score): oops. Copy error_found_ too. 2004-09-27 Jan Nieuwenhuizen * stepmake/stepmake/texinfo-rules.make: * Documentation/GNUmakefile: --srcdir build fixes. * input/test/coriolan-margin.ly: Put papersize settings in \bookpaper. * Documentation/user/latex-lilypond-example.latex: * Documentation/user/latex-example.latex: Fix compile errors. Still buggy, need more love. 2004-09-27 Werner Lemberg * tex/lilyponddefs.tex (\lilypondstart): Use \frenchspacing. 2004-09-26 Juergen Reuter * Documentation/user/examples.itely: removed \midi block to simplify the example * Documentation/user/notation.itely: Removed superfluous TextSpanner tweakings (is already done by engraver-init.ly). Documented bug: vertical alignment of articulations. * Documentation/user/notation.itely, ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice): Bugfix: TextSpanner padding. * Documentation/user/notation.itely, ly/engraver-init.ly: moved docu about TextSpanner padding bug from manual to engraver.ly (since it's workarounded and hence not user-visible any more) 2004-09-27 Han-Wen Nienhuys * VERSION: release 2.3.19 2004-09-26 Graham Percival * ly/property-init.ly: fix bug in displaying ledger lines while \hideNotes is on. * Documentation/user/notation.itely: more editing. * Documentation/user/examples.itely: add piano-dynamics template. * input/template/piano-dynamics.ly: remove. * Documentation/user/sound-output.itexi: more editing 2004-09-25 Graham Percival * Documentation/user/notation.itely: more editing. 2004-09-25 Nicolas Sceaux * scm/ly-from-scheme.scm (read-lily-expression): use ~s in format instead of ~a, to get #{ #"foo" #} actually printed to #"foo". 2004-09-24 Han-Wen Nienhuys * lily/hairpin.cc (print): check columns of bounds, not bounds themselves. (print): robustify bound-padding lookup. * lily/*: ly_c[ad]+r -> scm_XXX , ly_c_pair_p -> scm_is_pair. * scripts/lilypond-book.py (Compile_error.process_include): catch Compile_error exception, and remove output .texi. * scm/define-music-properties.scm (all-music-properties): add error-found * lily/parser.yy (Music_list): add error-found to music with errors. * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors. * lily/book.cc (process): ignore books with errors * lily/include/score.hh (class Score): add error_found_ member. * lily/drum-note-engraver.cc (try_music): idem. * lily/note-heads-engraver.cc: remove start-playing-event. * lily/part-combine-iterator.cc (Part_combine_iterator): use BusyPlayingEvent to determine which voice was active last. (unisono): use last active to where to get unisono information from. This fixes: partcombine-rest.ly (again). * scm/part-combiner.scm (determine-split-list): cleanups 2004-09-23 Han-Wen Nienhuys * input/regression/lyric-extender.ly: simplify. complexify. * lily/lyric-extender.cc (print): use it to determine size of extender. Remove Lyric_extender::is_visible(). * lily/extender-engraver.cc (acknowledge_grob): store lyric in next property. * lily/lyric-engraver.cc: remove get_current_rest(). 2004-09-23 Jan Nieuwenhuizen * input/regression/lyric-extender.ly: Fix and add test. * lily/extender-engraver.cc (stop_translation_timestep): Oops, typo. 2004-09-23 Han-Wen Nienhuys * lily/note-head.cc: remove Note_head::extent. 2004-09-23 Graham Percival * Documentation/user/tutorial.itely: do manual style 2-space indents in examples * Documentation/user/notation.itely: more editing. 2004-09-23 Jan Nieuwenhuizen * lily/lyric-engraver.cc (get_current_rest): New function. * lily/extender-engraver.cc (stop_translation_timestep): Use it: stop at rest. * lily/lyric-extender.cc (print): Fix crash (Russ Ross). * lily/slur-scoring.cc (get_bezier): Fix for broken beziers. 2004-09-23 Juergen Reuter * Documentation/user/examples.itely (Small ensembles): added example for transcription of mensural music * Documentation/user/notation.itely (The Lyrics context): fixed broken link to SATB vocal score * Documentation/user/notation.itely (System start delimiters): fixed typo: GrandStaff->StaffGroup * Documentation/user/notation.itely (Ancient articulations): removed obsolete comment on \episem bug 2004-09-22 Jan Nieuwenhuizen * scm/framework-tex.scm (output-preview-framework): Fix invocation of header. 2004-09-22 Han-Wen Nienhuys * lily/dynamic-engraver.cc (acknowledge_grob): attach hairpin start to note-column. * lily/hairpin.cc (print): check text-interface, to attach to dynamic texts. * lily/include/text-item.hh (class Text_interface): rename Text_item -> Text_interface * lily/piano-pedal-bracket.cc (print): robustify. 2004-09-22 Pedro Kroger * scm/paper.scm (set-paper-dimensions): add printfirstpagenumber. * scm/page-layout.scm (plain-header): if printfirstpagenumber is true will print the page number in the first page. * Documentation/user/changing-defaults.itely: Document printfirstpagenumber. 2004-09-22 Han-Wen Nienhuys * lily/phrasing-slur-engraver.cc (acknowledge_grob): avoid more objects. * lily/beam-concave.cc (calc_concaveness): take absolute value of dy for scaling. This fixes various downbeams. * lily/beam-quanting.cc (best_quant_score_idx): 2004-09-22 Jan Nieuwenhuizen * scm/framework-tex.scm (header-to-file): Fix. 2004-09-22 Werner Lemberg * lily/parser.yy : Fix typo. 2004-09-22 Graham Percival * Documentation/user/tutorial.itely: modified a "future planning" comment. * Documentation/user/notation.itely: more editing. 2004-09-22 Han-Wen Nienhuys * scm/define-markup-commands.scm (note-by-number): read font-size to determine stem length. Fixes: markup-note.ly 2004-09-21 Han-Wen Nienhuys * lily/slur.cc (outside_slur_callback): read #'padding for slur-padding. Fixes: slur-script.ly * lily/parser.yy (score_body): disallow \bookpaper in \score. 2004-09-21 Juergen Reuter * Documentation/user/notation.itely (ancient flags): documented flags-related known bugs * lily/include/ligature-engraver.hh: added comment about why and how of (non-)use of abstract virtual methods * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice): bugfix (workaround): TextSpanner: unset dash-fraction property in order to get solid lines * ly/engraver-init.ly (MensuralStaff): fixed bad comment 2004-09-21 Mats Bengtsson * scripts/convert-ly.py (ly): Corrected replacement of \scriptBoth 2004-09-21 Jan Nieuwenhuizen * lily/parse-scm.cc (internal_ly_parse_scm): Eval in module, not in function. * scm/framework-tex.scm (convert-to-dvi): Use nonstopmode. Set openout_any=p. Throughout: progress to stderr, translate user messages. * scm/output-gnome.scm: Fix font dir description. 2004-09-20 Han-Wen Nienhuys * input/test/mensural-ligatures.ly (voice): move linethickness settings to bookpaper. * lily/simple-spacer.cc (Module): use force to stretch to line length as force measure for ragged spacing. * lily/lily-parser.cc (get_paper): don't set parent for \paper blocks in the parser. This eliminates ordering dependency for \bookpaper and \paper * ly/part-paper-init.ly: remove file. * lily/includable-lexer.cc (new_input): elucidate message. * VERSION: 2.3.18 released. 2004-09-19 Jan Nieuwenhuizen * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: * input/mutopia/R.Schumann/romanze-op28-2.ly: * input/mutopia/F.Schubert/standchen.ly: Remove obsolete #'Slur.attachment setting. * elisp/lilypond-mode.el (LilyPond-command-alist): Use -ftex, friendlier for point and click. 2004-09-19 Han-Wen Nienhuys * ly/init.ly: reverse collected scores. * scm/page-layout.scm (ly:optimal-page-breaks): use non-ragged layout to determine force. 2004-09-18 Werner Lemberg * ly/engraver-init.ly [quotedEventTypes]: Add tuplets and ties. * ly/declarations-init.ly (escapedBiggerSymbol, escapedSmallerSymbol): Fix typos. * scripts/convert-ly.py: s/removeTag/removeWithTag/. 2004-09-18 Han-Wen Nienhuys * input/{input,regression}/*.ly: run convert-ly * VERSION: release 2.3.17 * lily/slur-scoring.cc (enumerate_attachments): make stem_extent a little wider for attachment calculation. This prevents stem and slur touching. * lily/parser.yy (direction_less_char): soft code \< \> \! \( \) ( ) * input/regression/tie.ly (texidoc): cleanup. * ly/declarations-init.ly (tildeSymbol): soft-code meaning of [ ] and ~ * lily/slur-scoring.cc (score_extra_encompass): check if extra objects are on boundary column. * lily/main.cc (parse_argv): process --tex too. * ly/music-functions-init.ly (keepWithTag): add music functions keepWithTag and removeWithTag. * lily/quote-iterator.cc (Quote_iterator): init transposed_musics_. * lily/accidental-engraver.cc (recent_enough): interpret laziness = #t. This fixes no-reset accidental-style. * input/regression/accidental-piano.ly (Module): new file. * lily/lily-guile.cc (LY_DEFINE): ly_assoc_get: new function. 2004-09-17 Han-Wen Nienhuys * lily/slur-scoring.cc (score_extra_encompass): widen X extent of extra encompass. (score_extra_encompass): use Y coordinate of attachment if X attachment falls in extra encompass X extent. * buildscripts/guile-gnome.sh (SLIB_PATH): add SLIB_PATH to GUILE_LOAD_PATH 2004-09-17 Jan Nieuwenhuizen * scm/output-gnome.scm: Small fixes. * buildscripts/guile-gnome.sh: Getting close to 2.6.0 release. 2004-09-16 Juergen Reuter * Documentation/user/notation.itely (Ancient flags): Removed documentation on adjust-if-on-staffline (this property was removed by Han-Wen). * Documentation/user/notation.itely (Ancient notation): Minor cleanups and fixes. Renamed "Vaticana style contexts" -> "Gregorian Chant contexts". Added section "Mensural contexts". Added section "Ancient articulations". * ly/engraver-init.ly: Added "MensuralVoice" and "MensuralStaff". 2004-09-16 Jan Nieuwenhuizen * buildscripts/guile-gnome.sh: Add missing bit. 2004-09-16 Han-Wen Nienhuys * buildscripts/guile-gnome.sh (LD_LIBRARY_PATH): new script. * lily/slur-scoring.cc (get_y_attachment_range): set end point using base_attachment. * scm/page-layout.scm (default-page-make-stencil): whoops. Add page header back. * scm/documentation-generate.scm (top-node): move version to top node. * lily/ledger-line-spanner.cc: add ledgered-interface, with property no-ledgers. 2004-09-16 Heikki Junes * Documentation/user/{changing-defaults,examples,invoking, tutorial}.itely: Expand 's to is. * Documentation/user/notation.itely: Capitalize only first letter. * Documentation/user/programming-interface.itely: Capitalize Scheme. * Documentation/user/lilypond-book.itely: use @refbugs. * THANKS: sort. * input/mutopia/F.Schubert/morgenlied.ly, input/mutopia/J.S.Bach/baerenreiter-sarabande.ly, input/mutopia/R.Schumann/romanze-op28-2.ly: Add lifetime and full name. 2004-09-15 Juergen Reuter * mf/parmesan-heads.mf: bugfixes: (i) removed duplicate lneomensural char entry; (ii) fixed mensural/neomensural naming clash typo; (iii) lneomensural char: fixed stem attachment point. WARNING: FONT CHANGED! 2004-09-15 Graham Percival * Documentation/user/introduction.itely: update \stemBoth to \stemNeutral. * Documentation/user/notation.itely: more editing of the manual. 2004-09-15 Han-Wen Nienhuys * lily/slur-scoring.cc (score_edges): add exp(slope*dir*leftright) factor in edge attraction. This reflects that the left edge may have a larger gap for an ascending up-slur. (get_base_attachments): copy bound Y from right bound, if there is only one note-column after the line break. 2004-09-14 Jan Nieuwenhuizen * buildscripts/guile-gnome.sh: Update with tarball [pre]releases. 2004-09-14 Mats Bengtsson * lily/phrasing-slur-engraver.cc (process_music): Create PhrasingSlur instead of Slur. * Documentation/user/changing-defaults.itely (Defining new contexts): Fixed misprinted context name. 2004-09-13 Han-Wen Nienhuys * ly/property-init.ly (hideStaffSwitch): remove turnOff. * scripts/convert-ly.py (conv): change Both to Neutral in property settings. * ly/engraver-init.ly: increase extent of Staff. 2004-09-13 Graham Percival * scm/script.scm: change behaviour of slur and accent. * Documentation/user/music-glossary.tely: de-gender a few entires. * Documentation/user/introduction.itely: de-gender a few sentences. 2004-09-13 Mats Bengtsson * input/regression/rehearsal-mark-number.ly: Reuse the existing formatting routine when adding boxed numbers. Makes it easier to extrapolate how to do for boxed letters. 2004-09-12 Graham Percival * Documentation/user/notation.itely: fixed Time Signature numbers bug. * Documentation/user/invoking.itexi: updated the "reporting bugs" section. 2004-09-12 Han-Wen Nienhuys * scm/define-grobs.scm (all-grob-descriptions): longer ideallengths for stems in higher order beams. * Documentation/user/changing-defaults.itely (Page layout): document them. * scm/page-layout.scm (ly:optimal-page-breaks): use new parameters to get sane spaces for titles. * ly/book-paper-defaults.ly: new parameters aftertitlespace, beforetitlespace, betweentitlespace. * input/regression/beam-quant-standard.ly (primeSixteenths): add 16th notes. * lily/beam.cc (set_minimum_dy): new function. Round non-zero small slope up to smallest quant. This prevents small slopes from getting rounded to zero. * lily/beam-quanting.cc (quanting): don't allow dy_mus slopes that are smaller than the smallest quant. * input/tutorial/brahms*.ly: remove. * input/*: update all .ly files. * ly/a4-init.ly (vsize): remove papersize init files. * scripts/convert-ly.py (conv): add conversion. * lily/parser.yy: change mode changing commands to XXXmode, eg. drummode. (mode_changing_head): group mode changes. (mode_changing_head_with_context): new commands: create context as well as change mode. * input/regression/system-overstrike.ly: new file. * scm/page-layout.scm (ly:optimal-page-breaks): add betweensystempadding also to fixed distance for the spring. * scm/define-grobs.scm (all-grob-descriptions): fix order of key-cancellation. * input/regression/beam-concave-damped.ly: new file. * lily/beam-concave.cc: new file, with new routines for concave decisions. There are now two types of concaveness: 1. a sharp logic decision forcing a beam horizontal, and 2. a number that measures how concave beams are that are not caught by 1. This fixes: morgenlied.ly and input/regression/beam-concave.ly * lily/new-fingering-engraver.cc (stop_translation_timestep): new property: add-stem-support 2004-09-11 Han-Wen Nienhuys * lily/slur-scoring.cc (get_bound_info): only do broken trend at the end of the line. * VERSION (PACKAGE_NAME): release 2.3.16. * input/regression/phrasing-slur.ly (Module): remove (duplicate with phrasing-slur-slur-avoid.ly) * lily/slur-scoring.cc (struct Extra_collision_info): collect parameters for extra offset. (get_bezier): add slurs mid-points for curve determination (score_extra_encompass): add slur end points for scoring. 2004-09-11 Matthias Neeracher * scm/framework-ps.scm (reencode-font): Handling font scaling and reencoding differently to work around a bug in gs 8.30 and earlier. Update callers. 2004-09-11 Han-Wen Nienhuys * lily/slur-scoring.cc (broken_trend_y): always take use vdir extent index of other system. Fixes slurs across line breaks. * lily/tuplet-engraver.cc (start_translation_timestep): use Tuplet_description::stop_ for determining when to stop producing tuplet brackets. This fixes: tuplet-overwrite.ly * lily/*-engraver.cc: remove all Protected_scm objects to fix GC errors with GUILE 1.7 CVS. * lily/translator.cc (derived_mark): new function. * lily/slur-scoring.cc (score_encompass): new penalty type: variance penalty demerits slurs where one head/stem is much closer to the slur than average. * lily/tuplet-bracket.cc (print): use robust_relative_extent iso. extent() (calc_position_and_height): use robust_relative_extent(). This fixes a couple of programming_errors * input/regression/part-combine-mmrest-after-solo.ly (Module): new file. * lily/part-combine-iterator.cc (unisono): bugfix for the case that voice-2 plays solo, and voice-1 has an mmrest that starts earlier. In that case, we switch to voice-2, so we catch the mmrest of voice-2. This fixes: partcombine-rest.ly. 2004-09-10 Han-Wen Nienhuys * scm/define-grob-properties.scm (all-internal-grob-properties): add adjacent-hairpins property. * lily/hairpin.cc: lengthen hairpin if space is available. * input/regression/dynamics-hairpin-length.ly (Module): new file. 2004-09-10 Graham Percival * Documentation/user/notation.itely: small fixes to docs. 2004-09-10 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.3.15 * make/lilypond.redhat.spec.in (Requires): bump requirement for ec-fonts-mftraced * mf/GNUmakefile (SAUTER_FONTS): remove ecb10. This is provided by the latest ec-fonts-mftraced package. * scm/define-context-properties.scm (all-internal-translation-properties): add property. Remove definition of quotes property. * Documentation/user/notation.itely (Quoting other voices): document it * lily/quote-iterator.cc (moment_less): add quotedEventTypes property, to determine what events are processed in \quote. 2004-09-10 Juergen Reuter * (many files): removed most occurrences of underscore ("_") from font characters; made font character naming more consistent * input/test/gregorian-scripts.ly: fixed another victim of grand replacement operations * lily/vaticana-ligature-engraver.cc: caught some more "_" inconsistencies * input/puer-fragment.ly: bugfix: lyrics hyphen: syntax update 2004-09-10 Han-Wen Nienhuys * Documentation/user/changing-defaults.itely (Paper size): doc landscape * scm/framework-ps.scm (eps-header): bugfixes. * scm/titling.scm (default-score-title): remove opus from the \score title. 2004-09-08 Pedro Kroger * scripts/convert-ly.py (program_name): changed to sys.argv[0] * scripts/abc2ly.py (program_name): changed to sys.argv[0] * scripts/etf2ly.py (program_name): changed to sys.argv[0] * scripts/lilypond-book.py (program_name): changed to sys.argv[0] * scripts/lilypond-latex.py (program_name): changed to sys.argv[0] * scripts/midi2ly.py (program_name): changed to sys.argv[0] * scripts/mup2ly.py (program_name): changed to sys.argv[0] * scripts/ps2png.py (program_name): changed to sys.argv[0] 2004-09-09 Jan Nieuwenhuizen * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Increment character position. Huh? * scm/output-gnome.scm (placebox): Shield affine-relative. * buildscripts/guile-gnome.sh: Update. Do not use GUILE CVS, cater for system's pango 1.5.1. * input/regression/new-slur.ly: Add ugly slur from scsii-sarabande. * scm/slur.scm: Tweak. 2004-09-08 Graham Percival * Documentation/user/{first couple of chapters}: more editing. 2004-09-07 Graham Percival * Documentation/topdocs/AUTHORS.texi, THANKS: add/modify my name and summary. * Documentation/user/{first couple of chapters}: the big "Graham's moved to a new city, his friends haven't arrived, and he has no internet access" patch. Numerous editorial and stylistic changes to the manual. 2004-09-07 Han-Wen Nienhuys * scm/framework-ps.scm (output-framework): handle landscape settings. * ps/lilyponddefs.ps: cleanup. 2004-09-06 Han-Wen Nienhuys * scm/define-grobs.scm (all-grob-descriptions): unset threshold. This fixes morgenlied. * scm/page-layout.scm (ly:optimal-page-breaks): whoops. Thinko in rod calculation. * lily/system.cc (get_line): don't take piano-pedal & dynamic line spanners into account for staff-extents. * lily/ottava-bracket.cc (print): take common refpoint of dots into account as well. 2004-09-05 Han-Wen Nienhuys * lily/lookup.cc (triangle): translate by interval. * VERSION (PACKAGE_NAME): release 2.3.14 * Documentation/user/changing-defaults.itely (Page layout): add betweensystempadding * scm/page-layout.scm (ly:optimal-page-breaks): typo. * input/regression/quote-cyclic.ly (Module): new file. * scm/lily.scm (print): add function. * scm/music-functions.scm (quote-substitute): new function. Substitute \quote when putting music into \score. * input/regression/key-signature-cancellation.ly (Module): new file. * lily/*.cc: more ly_scm2 -> scm_to converions. * lily/key-signature-interface.cc (print): take position difference into account when spacing naturals. * lily/key-engraver.cc (create_key): create KeyCancellation grob separately, so the cancellation can be put before the staff-bar * scm/define-grobs.scm (all-grob-descriptions): add a KeyCancellation grob. * lily/tuplet-engraver.cc (struct Tuplet_description): new struct. Use to clean-up Tuplet_engraver 2004-09-04 Han-Wen Nienhuys * lily/*: ly_scm2int -> scm_to_int ly_scm2double -> scm_to_double * lily/include/lily-guile.hh (scm_from_double): more compat glue. 2004-09-03 Han-Wen Nienhuys * lily/simple-spacer.cc (LY_DEFINE): return something sensible for 0 springs * lily/system.cc (post_processing): * scm/page-layout.scm (ly:optimal-page-breaks): implement uniform density for vertical spacing by means of force penalty. * scm/paper.scm (paper-set-staff-size): add betweensystemspace as dimension-variables * Documentation/user/changing-defaults.itely (Page layout): add betweensystemspace variable. * ly/book-paper-defaults.ly: set betweensystemspace: 20 mm * scm/page-layout.scm (space-systems): new function. Use spring and rod approach for vertically spacing systems. * ly/engraver-init.ly: tune down minimumVerticalExtent. * scm/define-grobs.scm (all-grob-descriptions): set threshold for vertical alignment. * lily/slur-engraver.cc (process_music): add warning for slur. 2004-09-02 Han-Wen Nienhuys * lily/include/lily-guile.hh (scm_is_number): add scm_is_number * lily/simple-spacer.cc (LY_DEFINE): ly_solve_spring_rod_problem: export spacing routine to SCM. * lily/include/simple-spacer.hh (struct Simple_spacer_wrapper): new class, separate Grobs from interface. 2004-09-01 Han-Wen Nienhuys * lily/include/lily-guile.hh: compatibility glue for 1.6 * lily/*.cc (acknowledge_grob): ly_string_p -> scm_is_string. * lily/lily-guile.cc: remove ly_scm2str0. 2004-09-01 Jan Nieuwenhuizen * Documentation/user/macros.itexi: Use @inforef iso @uref for external references. Fixes HTML cross references with makeinfo 4.7. 2004-09-01 Han-Wen Nienhuys * lily/include/simple-spacer.hh (struct Simple_spacer): remove expand_only option. 2004-08-29 Han-Wen Nienhuys * lily/system.cc (get_line): add System stencil to exprs. Fixes system-extents.ly. * ly/engraver-init.ly: decrease minimumVerticalExtent to (-5,5). * scm/define-grobs.scm (all-grob-descriptions): decrease padding for MultiMeasureRestNumber * VERSION (PACKAGE_NAME): release 2.3.13 2004-08-29 Nicolas Sceaux * lily/context-scheme.cc (LY_DEFINE): ly:context-grob-definition takes two arguments. 2004-08-29 Han-Wen Nienhuys * input/regression/slur-stem-broken.ly: remove. * lily/slur.cc: add quant-score. * input/regression/slur-staccato.ly (texidoc): remove * make/lilypond.redhat.spec.in (Group): remove musedata2ly 2004-08-28 Han-Wen Nienhuys * lily/include/bezier-bow.hh: remove. * lily/slur-bezier-bow.cc (Module): remove. * lily/include/slur.hh (Module): remove. * lily/slur.cc: remove * input/test/slur-beautiful.ly (Module): remove * input/test/slur-attachment-override.ly (Module): remove * lily/slur-quanting.cc (after_line_breaking): only do scoring when less than 4 control-points. * lily/key-signature-interface.cc: add style. * Documentation/user/notation.itely (Automatic staff changes): document new behavior. * input/regression/slur-extreme.ly: new file. * ly/engraver-init.ly (Score): set bassStaffProperties to \clef bass. Obviates \clef bass in the bass staff, when using \autochange * lily/auto-change-iterator.cc (construct_children): instantiate up/down Staff, create Voice on up staff initially. Obviates explicit instantiation of up/down contexts for \autochange. * lily/slur-quanting.cc (get_bezier): new functionality, blow up slur depending on extents of note heads. 2004-08-28 Graham Percival * Documentation/user/tutorial.itely: minor editing. * Documentation/user/examples.itely: tiny editing. 2004-08-28 Han-Wen Nienhuys * lily/slur-quanting.cc (init_score_param): read scoring parameters from slur-details property * scm/define-grobs.scm (all-grob-descriptions): add inside-slur to Accidental * Documentation/user/advanced.itely: removed. * Documentation/user/programming-interface.itely (How markups work internally): new subsection. * Documentation/user/converters.itely (Invoking abc2ly): remove musedata2ly. 2004-08-27 Han-Wen Nienhuys * Documentation/user/point-and-click.texi (Point and click): new file. put point & click in appendix. * Documentation/user/changing-defaults.itely (Vertical spacing): corrections 2004-08-27 Graham Percival * Documentation/user/introduction.itely: add note about the "example templates" section of the manual, and remove link to input/template/ 2004-08-27 Juergen Reuter * Documentation/user/lilypond-book.itely: fix parse error: @LaTeX -> La@TeX * mf/parmesan-heads.mf: draw_diamond_head: fixed pen width; added missing lneo_mensural head; editorial cleanups * lily/mensural-ligature.cc: added more comments 2004-08-26 Graham Percival * Documentation/user/examples.itely: second, third, fourth, and fifth sections added. * input/template/{various}: removed files included in examples.itely. 2004-08-26 Juergen Reuter * lily/stem.cc: bugfix: adjust-if-on-staffline: use Stem::stem_end_position instead of broken Staff_symbol_referencer::get_position 2004-08-26 Han-Wen Nienhuys * debian/changelog: debian patch by Anthony Fok. * lily/stem.cc (flag): bugfix for mensural flags (thanks Juergen!) * lily/slur-engraver.cc (try_music): ignore slurs_. Otherwise we get spurious messages with skipTypesetting on. 2004-08-25 Graham Percival * Documentation/user/lilypond-book.itely: slight clean-up. * Documentation/user/examples.itely: began section. 2004-08-25 Han-Wen Nienhuys * lily/script-interface.cc: add slur property. * lily/slur-quanting.cc (score_extra_encompass): avoid other slurs too. * input/regression/phrasing-slur-slur-avoid.ly: new file. * lily/ottava-bracket.cc (print): always start from right edge of a broken bound. This fixes ottava-clef.ps 2004-08-24 Han-Wen Nienhuys * input/regression/slur-script-inside.ly: new file. * lily/new-slur.cc (outside_slur_callback): new function, to make scripts avoid slurs * lily/slur-engraver.cc (finalize): * lily/script-interface.cc: add inside-slur property. * lily/slur-engraver.cc (finalize): read inside-slur property. * scm/lily.scm (postscript->png): use ~a iso. ~s in progress message. * ly/property-init.ly (unHideNotes): hide accidentals at staff level. Fixes: hideNotes-accidental.ly 2004-08-23 Pedro Kroger * scm/page-layout.scm (plain-header): fix bug that print page number in the first page if firstpagenumber was different than 1. 2004-08-23 Han-Wen Nienhuys * scm/framework-ps.scm (define-fonts): use UPCASE for Bluesky fonts. Fixes triangle markup for chords. * lily/slur-quanting.cc (score_extra_encompass): make score depend on distance. This fixes slur-tenuto.ly and slur-tie.ly * flower/include/interval.hh (T>): add distance() function * lily/ottava-bracket.cc (print): add dots to extent. Fixes octaviation-dot.ly * lily/context-scheme.cc: ly_context_grob_definition: new function. * VERSION (MY_PATCH_LEVEL): release 2.3.12 * lily/new-slur.cc (add_column): remove set_interface() 2004-08-22 Han-Wen Nienhuys * input/regression/slur-double.ly: new file. * lily/slur-engraver.cc: add doubleSlurs property * scm/fret-diagrams.scm (label-fret): use cond instead of case for symbols. * Documentation/user/notation.itely (Easy Notation note heads): revise notation Chapter. * ly/music-functions-init.ly (makecluster): add makeClusters music function. * lily/part-combine-engraver.cc: rename soloADue -> printPartCombineTexts * scripts/convert-ly.py (conv): junk script{Up|Down|Both}. * lily/horizontal-bracket.cc (print): use Tuplet_bracket::make_bracket, so it supports bracket-flare, edge-eight and shorten-pair. 2004-08-22 Pedro Kroger * Documentation/user/changing-defaults.itely (Page layout): description of firstpagenumber. Moved @refbugs about rightmargin to the end of the section (it was looking like the documentation after the refbugs was part of the bug comment). * scm/framework-ps.scm (output-framework): set the first postscript page number to firstpagenumber * scm/page-layout.scm (ly:optimal-page-breaks): print the first page number according to firstpagenumber * scm/paper.scm (set-paper-dimensions): added firstpagenumber parameter 2004-08-22 Han-Wen Nienhuys * lily/slur-engraver.cc (class Slur_engraver): simplify: remove nested slurs. * scripts/convert-ly.py (lilypond_version_re_str): handle \version "bar" % "foo" * lily/completion-note-heads-engraver.cc (process_music): set duration-log before announcing object. * lily/staff-symbol.cc (print): subtract thickness from staff line length * lily/parser.yy (book_body): disallow { ..music.. } inside \book 2004-08-21 Carl Sorensen * scm/stencil.scm: remove fontify-text and fontify-text-white 2004-08-21 Han-Wen Nienhuys * scm/part-combiner.scm: skip name string. Fixes segfault problem. * Documentation/user/sound-output.texi (Sound): new file. Move all MIDI related information. 2004-08-20 Han-Wen Nienhuys * lily/script-engraver.cc (acknowledge_grob): only take into account note heads with a music cause. Fixes ambitus-accent.ly * scm/define-markup-commands.scm (finger): set encoding to fetaNumber. 2004-08-20 Erik Sandberg * scripts/convert-ly.py: typo 2004-08-19 Carl Sorensen * scm/fret-diagrams.scm: Eliminate use of fontify-text; make font calls for diagrams based on paper and props 2004-08-19 Graham Percival * scripts/convert-ly.py: add \newpage -> \pageBreak rule. 2004-08-19 Erik Sandberg * ly/spanners-init.ly: Correct meanings of setTextDecresc/Dim, added setHairpinDecresc/Dim 2004-08-19 Jan Nieuwenhuizen * lily/include/lily-guile.hh: Cosmetics. 2004-08-18 Han-Wen Nienhuys * input/regression/fermata-rest-position.ly: new file * ly/property-init.ly (hideNotes): remove \setMmRestFermata * scripts/convert-ly.py (conv): add rule for \setMmRestFermata 2004-08-18 Nicolas Sceaux * scm/framework-tex.scm (output-preview-framework) (output-classic-framework): * scm/framework-ps.scm (output-preview-framework): s/ly:paper-book-lines/ly:paper-book-systems/g * scm/fret-diagrams.scm (ss-font-encoding): s/my-font-encoding/ss-font-encoding 2004-08-18 Mats Bengtsson * scm/music-functions.scm (direction-polyphonic-grobs): Set direction also on fingerings. * lily/clef-engraver.cc: Add forceClef to list of read properties. 2004-08-18 Jan Nieuwenhuizen * po/nl.po: Some updates. * scm/lily.scm (_): New function. (postscript->pdf, postscript->png, lilypond-main) (postscript->pdf): Use it. Write messages to stderr. * stepmake/stepmake/po-targets.make (ALL_PO_SOURCES): Add SCM_FILES. * scm/GNUmakefile (XGETTEXT_FLAGS): Set language to Lisp. xgettext does not recognise scheme yet. Patch submitted. * lily/scm-option.cc (LY_DEFINE): * lily/main.cc: The program is now called lilypond (WAS: lilypond-bin). * lily/rest-collision.cc (do_shift): Uniformise two too many rests messages. * lily/include/paper-book.hh * lily/include/paper-system.hh: Finish renaming of paper-line to system. Fix users. 2004-08-18 Han-Wen Nienhuys * scm/documentation-generate.scm (string-append): add version. * scm/define-markup-commands.scm (box): add box-padding and thickness props for the box command. * Documentation/user/changing-defaults.itely (Text encoding): elucidate use of \encoding for \header strings. * lily/parser.yy (lyric_element): use \encoding for lyrics strings. * lily/score.cc (LY_DEFINE): check if length of music > 0. Fixes: staff-change.ly * lily/output-def.cc (assign_context_def): use set_variable(). * lily/text-item.cc (interpret_string): accept string input encoding too. * scm/encoding.scm (read-encoding-file): print warning when file can't be found. * tex/latin1.enc: remove. * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS. * lily/rod.cc (columnize): robustness fix. Don't crash for nil span points. Fixes: appoggiatura-segfault.ly (add_to_cols): extra robustness fix. 2004-08-17 Han-Wen Nienhuys * lily/text-item.cc (interpret_string): use lookup_variable() to fidn inputencoding. Now, \paper inherits inputencoding from \bookpaper. * lily/script-engraver.cc (stop_translation_timestep): remove slur collision kludge. * lily/dynamic-engraver.cc (typeset_all): remove slur collision kludge. 2004-08-14 Jan Nieuwenhuizen * lily/main.cc (parse_argv): Bugfix: handle 'p'. Add warning. 2004-08-13 Jan Nieuwenhuizen * lily/spanner.cc (spanned_rank_iv): Bugfix. * lily.scm: Mark un-internationlised user messages (with FIXME). * lily/include/modified-font-metric.hh (struct Modified_font_metric): New file. (WAS: incorrectly named scaled-font-metric.hh ?) * lily/include/scaled-font-metric.hh: Remove. * lily/text-item.cc (interpret_string): Identify and document input-encoding problem. * lily/paper-book.cc (pages): Do not use `paper' as variable name for a Bookpaper. * tex/latin1.enc: Replace /minus with /hyphen. * scm/encoding.scm: For latin1 (input-)encoding, use latin1. (Cork.enc is NOT latin1 -- see man latin1). * ly/book-paper-defaults.ly: Add a comment about suspicious TeX inputencoding. 2004-08-12 Heikki Junes * Documentation/topdocs/INSTALL.html: fixes. 2004-08-12 Jan Nieuwenhuizen * buildscripts/builder.py: Fix for scons CVS. 2004-08-11 Heikki Junes * Documentation/user/notation.itely, Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly, input/test/ambitus-mixed.ly: fix plurals: english: ambit, pl. ambits; latin: ambitus, pl. ambitus. 2004-08-11 Jan Nieuwenhuizen * lily/dynamic-engraver.cc (typeset_all): * lily/script-engraver.cc (stop_translation_timestep): Handle collisions with new-slur. 2004-08-10 Jan Nieuwenhuizen * scm/define-grobs.scm (all-grob-descriptions): Add new-slur-interface. 2004-08-03 Jan Nieuwenhuizen * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now produces .PS 2004-08-09 Carl Sorensen * scm/define-grob-properties.scm (all-user-grob-properties): fix definition of number-type 2004-08-08 Carl Sorensen * scm/fret-diagrams.scm : change sans-serif font encoding from TeX-text to ec (uses ecss fonts instead of cmss fonts) * scm/define-grob-interfaces.scm (fret-diagram-interface): add number-type and label-dir * scm/define-grob-properties.scm: add number-type and label-dir * scm/fret-diagrams.scm (label-fret): allow fret label to be on either left or right. Allow choice of upper-case roman, lower-case roman, or arabic numerals in fret label 2004-08-04 Werner Lemberg * lily/slur-quanting.cc: Include libc-extension.hh. s/round/my_round/. * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice): s/autobeaming/autoBeaming/. 2004-08-03 Han-Wen Nienhuys * VERSION: 2.3.11 released. * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate renameinput. 2004-08-02 Han-Wen Nienhuys * lily/lookup.cc (round_filled_box): remove warnings about blot diameter. * scm/paper.scm (paper-set-staff-size): make linethickness more easily tunable. * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics, \newlyrics -> \addlyrics * lily/text-spanner.cc (print): use it. * lily/dynamic-text-spanner.cc (print): use it. * lily/grob.cc (robust_relative_extent): new function. * scripts/lilypond-book.py (main): add -f tex as default process. * lily/text-spanner.cc (print): only take linear_combination of nonempty interval. 2004-08-02 Pedro Kroger * scm/page-layout.scm (default-page-make-stencil): If leftmargin isn't specified by the user in \bookpaper center the music in the page. 2004-08-02 Mats Bengtsson * Fix some problems after the renaming of my-lily -> lily 2004-08-02 Han-Wen Nienhuys * lily/lily-parser.cc (parse_string): don't overwrite keytable_. * lily/slur-quanting.cc (enumerate_attachments): apply center on stem-X in more cases. * lily/stem.cc (dim_callback): solve todo. 2004-08-01 Han-Wen Nienhuys * input/test/README: new file. * lily/lily-parser.cc: rename my-lily* files. * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect parser. * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer. * lily/include/my-lily-parser.hh: rename My_lily -> Lily * make/mutopia-targets.make (local-WWW): don't make ps.gz examples. They take a huge amount of space. * Documentation/user/GNUmakefile: fix symlinks. * VERSION: 2.3.10 released. * input/test/lyrics-skip-notes.ly: remove * input/test/stem-cross-staff.ly (noFlag): fold into manual * input/test/{spacing-2,staff-space,tablature,textscript}.ly: remove. 2004-08-01 Heikki Junes * Documentation/user/{changing-defaults,notation,tutorial}.itely: fixes. 2004-08-01 Han-Wen Nienhuys * input/regression/beam-dir-functions.ly: move from test/ * Documentation/user/notation.itely (Feathered beams): new node. * Documentation/user/changing-defaults.itely (Difficult tweaks): new node * input/regression/lyric-hyphen-retain.ly: move to regression. * input/regression/harmonic.ly: fold into manual * input/test/{hshift,move-accidentals,crescendi,feathered-beam, stem-length,chord-names-no-inversions}.ly: remove * input/test/tie-cross-voice.ly: move to regression. * Documentation/user/notation.itely (Running trills): new node. * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent * lily/trill-spanner-engraver.cc: new file. * input/regression/trill-spanner.ly: new file. * input/test/timing.ly: fold into manual. * input/test/time.ly: remove * input/test/trill.ly: remove * input/test/time-signature-double.ly: fold into manual * input/test/separate-staccato.ly: remove * input/test/spanner-after-break-tweak.ly: fold into manual. * input/test/script-priority.ly: fold into manual. * input/test/scheme-interactions.ly: remove. * input/test/unfold-all-repeats.ly (mel), input/test/repeat.ly,input/test/repeat-shorter-bracket.ly, input/test/polymetric-differing-notes.ly input/test/polymetric.ly: fold into manual. * input/regression/no-staff.ly: move from input/test/ * input/regression/markup-score.ly: move from input/test/ * input/test/lyrics-melisma-faster.ly: fold into manual * input/test/lyrics-melisma-variants.ly: fold into manual * Documentation/user/notation.itely (Popular music): new node. * input/test/gourlay.ly: remove * input/test/improv.ly: fold into manual. * input/test/figured-bass-alternate.ly (fl): remove * lily/dynamic-text-spanner.cc (print): new file. * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner * lily/engraver-group-engraver.cc (do_announces): reorder logic: keep recursing into children in case a parent context inserts a grob into a child context. * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to 2004-07-31 Han-Wen Nienhuys * scm/define-markup-commands.scm (postscript): new markup command \postscript * Documentation/user/notation.itely (Formatting cue notes): new section. * input/test/clef-end-of-line.ly: fold into manual. * input/test/scales-greek.ly: remove. * input/test/chords-without-melody.ly: fold into manual. * input/test/cadenza-skip.ly: remove. * input/test/clef-8-syntax.ly: remove. * input/test/clef-manual-control.ly: move into manual. * Documentation/user/notation.itely (Aligning to cadenzas): fold in cadenza-skip.ly * mf/parmesan*.mf: change neo_mensural to neomensural. * input/test/trills.ly: remove. * input/test/transposition.ly: remove. * input/test/to-xml.ly: move to no-notation. * buildscripts/lilypond-profile.sh: change zsh bomb to warning. * lily/ledger-line-spanner.cc (print): use staff variable, not me. Fixes ledger lines on differently sized staves. * input/test/rhythm-excercise.ly: remove file. * lily/stem.cc (dim_callback): only do something if visible. Fixes spurious flag not found warning for 128th rest. * input/regression/rest-dot-position.ly: new file. * input/test/rest-dot-positions.ly: remove * lily/staff-symbol-referencer.cc (get_position): emergency fallback: use coordinate * 2. * input/no-notation/midi-scales.ly: move from test/ * scm/define-markup-commands.scm (score): remove debugging code. * input/test/incipit.ly (violin): remove. * lily/system-start-delimiter.cc (print): only draw system delimiter to staves that reach up to left bound of the delimiter. * input/no-notation/embedded-scm.ly: move from test/ * input/test/follow-voice.ly: remove * input/no-notation/dynamic-absolute-volume.ly: move from test/. * input/test/drarn*: remove * input/test/count-systems.ly: remove. * lily/bar-line.cc (compound_barline): fix : for staff without lines. * lily/accidental.cc (print): use music_font_alist_chain(). This fixes smaller cautionaries. * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic encoding for accidental. * Documentation/user/notation.itely (Educational use): new section * input/test/*.ly: clean up directory: move examples into manual or regtest. * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add mode as well. This fixes resolution errors. 2004-07-30 Han-Wen Nienhuys * scm/lily.scm (postscript->png): show commands for --verbose. * flower/include/getopt-long.hh: opps. short option should be char, not int. * Documentation/user/GNUmakefile: use symlinks to save space. * VERSION: 2.3.9 released. * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto. * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from manual. * Documentation/user/tutorial.itely (Integrating text and music): remove \score and \notes from manual. * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note mode in the beginning. 2004-07-30 Mats Bengtsson * Documentation/user/changing-defaults.itely (Horizontal spacing): Correct the documentation of the spacing parameters. * Documentation/user/tutorial.itely (Integrating text and music), Documentation/user/lilypond-book.itely (Integrating LaTeX and music): Document that you need to add the map file ec-mftrace.map in the dvips command. 2004-07-30 Han-Wen Nienhuys * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not found. * lily/text-item.cc (interpret_string): insert encoding setting here * scm/framework-ps.scm (ps-font-command): remove feta/parmesan encoding kludge. * Documentation/user/changing-defaults.itely (Text encoding): node on encoding. * lily/lyric-engraver.cc (try_music): remove superfluous check. * lily/book-paper-def.cc (find_scaled_font): remove default encoding, because it messes up font loading for feta and parmesan. Encoding should only be specified for running texts. * lily/modified-font-metric.cc (text_dimension): support coding scheme "" 2004-07-28 Han-Wen Nienhuys * lily/tie-engraver.cc (stop_translation_timestep): remember tie definition, so \override works as expected. * lily/measure-grouping-engraver.cc: clarify 2004-07-27 Han-Wen Nienhuys * lily/parser.yy (context_def_mod): remove \consistsend * lily/context-def.cc (instantiate): use Translator::must_be_last to determine engraver order. * lily/translator.cc (must_be_last): new function * scripts/convert-ly.py (conv): rule. * lily/bar-line.cc (print): return '() for height == 0.0 too. 2004-07-27 Heikki Junes * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs. 2004-07-26 Han-Wen Nienhuys * lily/include/lily-guile.hh (scm_is_int): compat glue. 2004-07-25 Pedro Kroger * input/regression/page-layout.ly: new file. * scm/paper.scm (set-paper-dimensions): Preliminary support for left and right margins. * Documentation/user/changing-defaults.itely (Page layout): Explain the leftmargin option. 2004-07-25 Han-Wen Nienhuys * input/test/lyrics-melisma-variants.ly (texidoc): new file. * input/test/lyrics-melisma-faster.ly: new file. * lily/new-lyric-combine-music-iterator.cc (find_voice): allow change of melody by setting associatedVoice. * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode. * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy file contents, rather \include them, so default linewidth is set. (ly_options): make BOOKPAPER set of options. Move linewidth settings there. * Documentation/user/examples.itely: new file. Templates are to be moved here. * Documentation/user/programming-interface.itely: move chapter. * scm/document-markup.scm (doc-markup-function): add @code * stepmake/stepmake/texinfo-rules.make: remove chmod. 2004-07-24 Han-Wen Nienhuys * scm/page-layout.scm (plain-header): add printpagenumber boolean to bookpaper. * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary. * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere. * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin * scripts/lilypond-latex.py: move from lilypond.py * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting. (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book. * scm/lily.scm (postscript->png): new function (postscript->pdf): new function * lily/paper-book.cc (post_processing): call convert-to-{dvi,ps,png,pdf} * scripts/ps2png.py (option_definitions): new file. * lily/paper-book.cc (output): call output-preview-framework (post_processing): new function. Do PDF/PNG conversion. * lily/paper-outputter.cc (close): new function. * scm/framework-ps.scm (convert-to-pdf): new function. Call ps2pdf. (output-preview-framework): new function. Generate a preview .ps 2004-07-23 Han-Wen Nienhuys * VERSION: release 2.3.8 * lily/note-head.cc: remove ledger line handling. * lily/ambitus.cc (print): strip away accidental / note head code, and associated properties. * lily/ambitus-engraver.cc (create_ambitus): change name to AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for other ambitus parts. (create_ambitus): group grobs in Ambitus grouping object. * lily/include/pitch-interval.hh (Pitch>): new file. * lily/pitch-interval.cc (add_point): new file. * lily/ledger-line-engraver.cc: new file. * lily/ledger-line-spanner.cc (print): new file. Set limits to ledger line length to avoid clashes. 2004-07-22 Han-Wen Nienhuys * Documentation/user/invoking.itexi (Invoking lilypond): remove deprecated options 2004-07-21 Jan Nieuwenhuizen * SConstruct: Use only code files for TAGS. Change GO_FAST_BUTTON to command line option: fast=1 (default on). * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach. This brings SCons run-time on up-to-date tree down from 48s with only checksums, to 34s without 2day checksums, to 14s (make needs 4 seconds). (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when necessary. 2004-07-20 Han-Wen Nienhuys * lily/slur-quanting.cc (score_extra_encompass): add break ; (score_extra_encompass): process scripts at edges too, by checking control points directly. 2004-07-20 Jan Nieuwenhuizen * po/nl.po: Update. * lily/main.cc: Fix ly:option-usage help. * input/regression/slur-script.ly: More collision tests. * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct. 2004-07-18 Han-Wen Nienhuys * VERSION: release 2.3.7 * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript files. * Documentation/user/notation.itely (Slurs): document ^ and _ for slurs. * input/regression/slur-script.ly: new file. * lily/accidental-engraver.cc (process_acknowledged_grobs): make accidental appear to come from note head engraver. * lily/slur-quanting.cc: new file. (score_extra_encompass): new function. Avoid scripts and accidentals 2004-07-18 Jan Nieuwenhuizen * lily/include/lily-guile.hh: Remove guile-1.4 compatibility. This greatly reduces the number of files that get recompiled after touching config.hh. * config.hh.in: Remove GUILE_*_VERSION. * lily/new-slur.cc: Resolve conflicts. * lily/stem-engraver.cc (make_stem): New method. * lily/include/script-interface.hh: * lily/script-interface.cc: New file. * lily/include/script.hh: * lily/script.cc: Remove. * lily/music.cc (duration_log): New method. * lily/script.cc (struct Skript): Remove. * lily/new-slur.cc (get_base_attachments): Try at articulations. Lots of coding cleanups (Stom). 2004-07-18 Han-Wen Nienhuys * lily/new-slur.cc (avoid_staff_line): new function: avoid collisions with staff lines. * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to global_path * scm/define-grobs.scm (all-grob-descriptions): set ratio .25. This flattens short slurs. * lily/new-slur.cc (enumerate_attachments): move X of attachment points for tilted slurs. * input/regression/slur-tilt.ly: new file. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten stems of 16th graces too. * lily/beam-quanting.cc (score_forbidden_quants): make forbidden quant penalty dependent on how much the line is in the gap. * input/regression/grace-stem-length.ly: new file. * lily/beam-quanting.cc (score_forbidden_quants): remove interquant check. The penalty of 1000 is much too harsh, and the inter case should be caught by check-staff-line-in-gap check. * lily/scm-option.cc: move debug-beam to \paper. * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create .txt files to appease makeinfo. * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: remove texttagline. * lily/new-slur.cc: cleanup, split in functions. * lily/parser.yy (chord_body_element): allow octave-check = inside chord body. * lily/new-slur.cc (score_encompass): variable head-distance penalty. * lily/stem.cc (height): call Beam::after_line_breaking(). * lily/rest-collision.cc (force_shift_callback): only call shift for columns containing rests. * lily/new-slur.cc (print): use debug-slur-quanting paper var. * input/regression/font-postscript.ly: invoke afm2tfm. 2004-07-18 Jan Nieuwenhuizen * mf/SConscript: Build map files. * SConstruct: Rename $out to out-www in web. 2004-07-17 Jan Nieuwenhuizen * SConstruct (web_kluts): Have make web build in out-www. Not. 2004-07-17 Han-Wen Nienhuys * Documentation/user/music-glossary.tely (Top): add fragment to pertinent @lilypond entries. * scm/define-grobs.scm: switch on new-slur by default. * lily/scm-option.cc: symbol != string. * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't really work yet. (set_end_points): make X coord of attachment dependent on Y. (score_encompass): add edges too. 2004-07-16 Han-Wen Nienhuys * lily/stem.cc (get_beaming): new function. * scripts/lilypond-book.py (compose_ly): make fragment mandatory for fragment snippets. This fixes inclusion of toplevel-music examples (such as new-slur.ly) 2004-07-16 Jan Nieuwenhuizen * scripts/lilypond-book.py: Remove second import of stat. * More SCons cleanups. * Documentation/bibliography/computer-notation.bib (note): Remove extraneous closing brace. 2004-07-16 Han-Wen Nienhuys * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix stat calls. * Documentation/bibliography/SConscript (bibs): failed try to get bib2html find html-long.bst. * buildscripts/bib2html.py (stat): fail if bibtex fails. * make/stepmake.make: use usescons for using scons. 2004-07-16 Jan Nieuwenhuizen * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check for lilypondend. Import stat (huh?). 2004-07-16 Han-Wen Nienhuys * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES): bypass dvi. * input/regression/font-postscript.ly: new file. * scm/framework-ps.scm (load-fonts): load pfb files too. * lily/pfb.cc (pfb2pfa): new file. 2004-07-15 Han-Wen Nienhuys * scripts/lilypond-book.py (PREAMBLE_LY): set toplevel-music-handler too. 2004-07-15 Jan Nieuwenhuizen * SConstruct (symlink): Add dvips and music-drawing-routines.ps. (web_path): Fixes for webball. Install fixes, add DESTDIR option. * lily/slur.cc: Add quant-score to interface. Fixes web build. * python/SConscript: * python/vim: * input/mutopia/*SConscript: New file. * input/mutopia/W.A.Mozart/: Use .ily suffix for includes. * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height, fixes web build. * make/stepmake.make (scons): re-route to SCONS if user has been running scons in this tree. * SConstruct (config_vars): Add CPPDEFINES. (env): Set checksums type to "content". (save_config_cache): Do not exit after configuring when using checksums (the default) instead of timestamps. 2004-07-15 Jan Nieuwenhuizen * SConstruct: Further development. * input/test/SConscript: * input/template/SConscript: * input/regression/SConscript: * Documentation/bibliography/SConscript: * Documentation/bibliography/index.html.in: New file. * Documentation/bibliography/GNUmakefile (local-WWW): Remove index generation. * buildscripts/builder.py: Add new builders. * make/stepmake.make: * stepmake/stepmake/*.make: * configure.in: * lily/*: * flower*: Use config.hh (Was config.h). * scm/encoding.scm (get-coding): Print friendly error message when no encoding is found, rather than crashing. 2004-07-15 Han-Wen Nienhuys * lily/new-slur.cc (score_slopes): strong sloping score only when stems point in same dir. 2004-07-14 Han-Wen Nienhuys * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix for beam start. * lily/parser.yy (context_prop_spec): check grob name for alphanumericness.. * lily/lyric-engraver.cc: creates LyricText objects 2004-07-13 Han-Wen Nienhuys * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue. 2004-07-13 Jan Nieuwenhuizen * SConstruct: Configure only pristine build tree or on user request. Cleanups. Add Documentation/topdocs to subdirs. Use checksums instead of timestamps. (CheckYYCurrentBuffer): Return result. * Documentation/topdocs/SConscript: New file. 2004-07-12 Han-Wen Nienhuys * lily/staff-symbol-referencer.cc (on_staffline): bugfix * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use scm_from_int instead. 2004-07-12 Jan Nieuwenhuizen * SConstruct: Updates. Add targets: tar, dist, release. 2004-07-11 Jan Nieuwenhuizen * input/mutopia-header.ly: Generate output. * SConstruct: * buildscripts/builder.py: * Documentation/user/SConscript: SCons fixes. 2004-07-11 Han-Wen Nienhuys * lily/new-slur.cc (class New_slur): new file. Score based slur computations. 2004-07-10 Jan Nieuwenhuizen * mf/SConscript: Remove Builders. * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders. * input/SConscript: * Documentation/user/SConscript: New file. 2004-07-10 Han-Wen Nienhuys * Documentation/topdocs/NEWS.texi (Top): add note about new emacs electric-| * scm/*.scm: adapt ly:warn calls. * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments. * lily/repeat-acknowledge-engraver.cc (process_music): look at main timing, not grace timing. Fixes volta-repeat-grace. * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function remove ly:kpathsea-gulp-file. * scm/translation-functions.scm (format-metronome-markup): make note smaller, align to bottom. * scm/define-grobs.scm (all-grob-descriptions): metronome fixes. * lily/metronome-engraver.cc (stop_translation_timestep): attach metronome to musical column. Don't ack time sigs or bar lines. 2004-07-10 Heikki Junes * THANKS: sort, add David. Kristof contributed code, he is a contributor. 2004-07-09 David Svoboda * elisp/lilypond-mode.el, * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to count beats between last measure stop | and point in emacs. 2004-07-09 Han-Wen Nienhuys * tex/GNUmakefile (TEX_FILES): don't dist music-drawing-routines.ps, latin1.enc * scripts/lilypond.py (include_path): remove --no-lily, --no-ps , --no-pdf, --pdftex (copyright): add --latex option (ic_p.make_include_option): use direct PS as default. * scm/beam.scm (check-slope-callbacks): check sign of slope. * input/regression/beam-concave.ly (rossFourBeams): add cases from Ross * scm/script.scm (default-script-alist): marcato should follow into staff 2004-07-09 Jan Nieuwenhuizen * buildscripts/builder.py: * Documentation/SConscript (outdir): New file. Add *list.ly dependencies. Fixes PDF doc build. 2004-07-08 Jan Nieuwenhuizen * SConstruct: Add Tar target (incomplete), fix install issues, fix run from build-dir. * ly/SConscript: * scm/SConscript: New file. * lily/main.cc (dir_info): Print variables in sh format. * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests. * mf/SConscript: Update multiple target rules. * SConstruct (assert_version): Add. 2004-07-08 Han-Wen Nienhuys * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check. 2004-07-07 Jan Nieuwenhuizen * buildscripts/mf-to-table.py: Do not try to open ''. * mf/SConscript: New file. 2004-07-06 Carl Sorensen * scm/fret-diagrams.scm : Convert many properties to constants, reducing the pollution of the property namespace. * scm/define-grob-properties.scm (all-user-grob-properties): Reduce unnecessary properties for fret-diagram * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols for interface 2004-07-07 Jan Nieuwenhuizen * SConstruct: Update. 2004-07-07 Han-Wen Nienhuys * input/regression/beam-quant-standard.ly (seconds): print desired quants when failing. 2004-07-06 Jan Nieuwenhuizen * SConstruct: * flower/SConscript: * lily/SConscript: New file. 2004-07-05 Carl Sorensen * scm/define-grob-properties.scm (all-user-grob-properties): Add descriptions for all fret-diagram properties. * scm/define-grob-interfaces.scm (fret-diagram-interface): Add fret-diagram interface code 2004-07-06 Han-Wen Nienhuys * ly/book-paper-defaults.ly: set default encoding to ec. * buildscripts/guile-gnome.sh (OPT): only compile pango if not installed. * tex/latin1.enc: new file, from a2ps. 2004-07-06 Heikki Junes * stepmake/bin/add-html-footer.py: use
instead of , add a faint, green border line. * Documentation/index.html.in: drop
, add a faint border line. 2004-07-05 Han-Wen Nienhuys * scm/font.scm (add-cmr-fonts): upright caps is eccc. * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt. 2004-07-02 Carl Sorensen * scm/output-ps.scm (white-text): Add scale paramter to allow scaling * scm/output-tex.scm (white-text): Add scale parameter to allow font scaling * scm/stencil.scm (fontify-text-white) : Adjust to better center, properly scale white text * scm/fret-diagrams.scm (make-fret-diagram): change default dot position for numbered dots so dot will touch fret. (various routines): move to font-metric interface, rather than name, size interface. Clean up comments. * ps/music-drawing-routines.ps: (/draw_white_text) Adjust font size and offset to better center white text. 2004-07-05 Jan Nieuwenhuizen * ChangeLog: Remove pre-2.1 changes. * Documentation/misc/ChangeLog-2.1: New file. * stepmake/bin/release.py: Cleanup. Add release marker if missing from ChangeLog. 2004-07-05 Mats Bengtsson * input/test/chords-below-volta-bracket.ly, input/test/no-key-at-end-of-line.ly: New example files (FAQs) 2004-07-05 Han-Wen Nienhuys * VERSION: release 2.3.6 * input/regression/beam-quant-standard.ly: new file: test standard beam quants. * scm/beam.scm (check-quant-callbacks): new function (check-beam-quant): new function: check whether current beam quants match argument. * lily/beam-quanting.cc (score_forbidden_quants): fix problem with forbidden quant for sitting (upstem)/hanging (downstem) on outer staffline line. 2004-07-04 Han-Wen Nienhuys * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music functions. * lily/note-collision.cc (do_shifts): align colliding notes to their leftmost note. * input/regression/collision-alignment.ly: new file. * ly/init.ly: don't print gc stats. * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add extra newline * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f for dimensions. This fixes ottava-remove-empty-staff.ly * input/regression/lyrics-tenor-clef.ly: new file. * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch cyclic parents when two axis-group-engravers are present. Fixes: crash-axis-group-engraver.ly. * input/test/volta-chord-names.ly: new file. * scm/define-context-properties.scm (all-user-translation-properties): change voltaOnThisStaff definition. * lily/volta-engraver.cc (stop_translation_timestep): set bounds if necessary. * lily/volta-bracket.cc (print): handle volta brackets without bars. 2004-07-01 Jan Nieuwenhuizen * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to 2.0 chord syntax. Ouch. (thanks Dave Phillips). 2004-07-01 Nicolas Sceaux * scm/output-gnome.scm: updated instructions for running gnome backend 2004-06-29 Carl Sorensen * scm/fret-diagrams.scm (draw-dots): default values for dot size and dot-position now depend on finger-code value; in-dot makes dots larger and centered. (draw-barre): added straight-barre indicator option (draw-dots): made fontify-text-white work. * music-drawing-routines.ps: added /draw_white_text * scm/output-tex.scm: added white-text * scm/output-ps.scm: added white-text * scm/lily.scm (ly:all-stencil-expressions): Added white-text to list of stencil expressions * scm/stencil.scm: Added fontify-text-white 2004-06-29 Heikki Junes * input/regression/+.ly: use @unnumbered section. 2004-06-28 Nicolas Sceaux * elisp/lilypond-mode.el (LilyPond-guile): set current module to (*anonymous-ly-0*) iso. (*anonymous-ly-1*) 2004-06-28 Jan Nieuwenhuizen * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred. 2004-06-26 Nicolas Sceaux * scm/ly-from-scheme.scm (read-lily-expression): #$( ... ) was causing an error. (was not actually commited in 2004-06-20) * input/regression/lily-in-scheme.ly (withPaddingC): does not breaks anymore 2004-06-24 Han-Wen Nienhuys * VERSION: 2.3.5 released. * lily/my-lily-parser.cc (parse_string): switch module too. 2004-06-24 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and ec-fonts-mftraced to running requirements. 2004-06-22 Han-Wen Nienhuys * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary assignments don't reach the original file. * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it exists 2004-06-22 Jan Nieuwenhuizen * scm/output-gnome.scm: * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS. * debian/: Apply Debian patch (Anthony Fok). 2004-06-22 Heikki Junes * Documentation/user/music-glossary.tely: fix titling; @top is already an @unnumbered @chapter. 2004-06-22 Han-Wen Nienhuys * debian/GNUmakefile (EXTRA_DIST_FILES): (CONF_FILES): update file list. * lily/stencil.cc (interpret_stencil_expression): bugfix. 2004-06-21 Jan Nieuwenhuizen * debian/: Remove cruft (requested Anthony Fok.) * buildscripts/guile-gnome.sh: Build without gcc libtool version juggling. * scm/framework-gnome.scm: Cleanups. Resurrect +/- canvas scaling. Add popup menu with grob properties. * lily/grob-scheme.cc (ly:grob-properties): (ly:grob-basic-properties): New function. * lily/stencil.cc (interpret_stencil_expression): Comment-out "no-origin" call. Fixes -fps output. * scm/output-ps.scm (no-origin): Add dummy implementation. * scm/output-gnome.scm (define-origin): Remove (grob-cause): Add. * scm/output-ps.scm (scm): * scm/output-tex.scm (scm): Remove define-origin from exports list. (define-origin): Remove. * scm/output-gnome.scm (define-origin): * scm/lily.scm (ly:all-output-backend-commands): Remove define-origin. Add grob-cause. 2004-06-21 Heikki Junes * buildscripts/lilypond-words.py: add ly/portugues.ly. 2004-06-20 Heikki Junes * Documentation/user/GNUmakefile: * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using --include-css=.../texinfo.css; command includes css into the html. * Documentation/texinfo.css: add file. define
as black and thin. 2004-06-20 Han-Wen Nienhuys * lily/stencil.cc (interpret_stencil_expression): add grob-cause stencil expression. Junk define-origin. * lily/my-lily-parser.cc (parse_string): init parser variable when lexer_ is set, ie. in parse_string and parse_file. * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes ly:score-bookify. * scm/lily.scm (collect-scores-for-book): new function. * ly/init.ly: print collected scores/musics. * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser scope, not in lily module. * lily/book.cc (LY_DEFINE): ly:make-book. New function. * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and encapsulate gtk/pango tests. * po/tr.po: Turkish translation. 2004-06-20 Nicolas Sceaux * input/regression/lily-in-scheme.ly: regression test for #{ ... #} syntax * scm/ly-from-scheme.scm (read-lily-expression): #$( ... ) was causing an error. * Documentation/user/programming-interface.itely (Using LilyPond syntax inside Scheme): documentation for #{ ... #} syntax. 2004-06-19 Heikki Junes * Documentation/index.html.in: use black thin
. * buildscripts/mutopia-index.py: use thin black
. 2004-06-19 Jan Nieuwenhuizen * scm/fret-diagrams.scm: Use UNIX style line endings. (fret-diagram-verbose): A couple of @{VAR} and an closing itemize typo. Fixes compile. * scm/output-ps.scm (white-dot): Remove second incarnation. * scm/lily.scm (ly:all-stencil-expressions): Add white-dot. 2004-06-19 Han-Wen Nienhuys * scripts/lilypond.py (ic_p.make_include_option): set error_p for single file error. * lily/bar-line.cc (compound_barline): add support for unbroken ||: 2004-06-17 Carl Sorensen (carl_sorensen@byu.edu) * scm/fret-diagrams.scm: added fret-diagram-terse interface; remove size as argument to fret-diagram interface; improved white-circle dots for fret; improved top-fret thick line/ * scm/output-ps.scm: added white-dot function * scm/output-tex.scm: added white-dot function * tex/music-drawing-routines.ps: added draw_white_dot function * ps/music-drawing-routines.ps: added draw_white_dot function * input/test/fret-diagram.ly: examples to show multiple functions and multiple interfaces 2004-06-18 Jan Nieuwenhuizen * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) (pango_fc_afm_get_charset): Update iaw Pango CVS update. * buildscripts/guile-gnome.sh: Add pango to recipe. Resolve conflict. Have I told you lately how much I love autotools? 2004-06-17 Jan Nieuwenhuizen * lily/lily-guile.cc: * lily/pangofc-afm-decoder.cc: * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef. Fixes build without Pango CVS. Use "pangofc-afm-decoder.hh". * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for developers. * lily/paper-outputter.cc (file): New method. (dump_string): Use it. * scm/output-gnome.scm: Update with pango CVS info, lilylib musing. * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one of them has a comma :-). * scm/framework-gnome.scm: Add pango decoders. * lily/include/pangofc-afm-decoder.hh: * lily/pangofc-afm-decoder.cc: New file. * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function. * configure.in: Check for pango. * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from autoconf). (STEPMAKE_GTK2, STEPMAKE_PANGO): New function. * config.make.in (USER_CFLAGS, USER_LDLAGS): Update. 2004-06-17 Han-Wen Nienhuys * Documentation/user/tutorial.itely (Integrating text and music): fix grammar & punctuation. 2004-06-16 Jan Nieuwenhuizen * lily/: Stray janitorial cleanups. * scm/lily.scm (ly:all-stencil-expressions): * scm/lily.scm (ly:all-output-backend-commands): New function. * scm/safe-lily.scm (safe-objects): Add them. * scm/framework-gnome.scm (): New class. * scm/output-gnome.scm: Move non-stencil evaluators to framework. 2004-06-15 Jan Nieuwenhuizen * buildscripts/guile-gnome.sh: Pick-up user-installed pango. 2004-06-15 Han-Wen Nienhuys * scm/page-layout.scm (default-page-make-stencil): add raggedbottom, raggedlastbottom. * Documentation/user/changing-defaults.itely (Page layout): add doc. * scm/framework-tex.scm (define-fonts): fix export of papersize. * lily/paper-book.cc (classic_output): strip suffixes from framework functions. * lily/tuplet-bracket.cc (before_line_breaking): do not return SCM_UNDEFINED to Scheme. 2004-06-14 Han-Wen Nienhuys * lily/book.cc: remove Book::to_stencil(). (process): whoops. Score::book_rendering returns vector, not list. * scripts/convert-ly.py (conv): remove \notes. apply to input examples. * lily/paper-outputter.cc (output_stencil): don't use smobify_self() but self_scm() * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM from smobify_self(). * lily/paper-book.cc (output): load framework module scm_c_resolve_module(). * python/lilylib.py (exit): exit with argument i. 2004-06-14 Jan Nieuwenhuizen * scm/framework-gnome.scm (output-framework-gnome): Try loading gnome modules from non-toplevel. * lily/ly-module.cc (ly:import-module): Export to ly:. * lily/paper-score.cc (process): Do not show progress newline. * lily/paper-book.cc (output, classic_output): Show progess newline after score. 2004-06-14 Heikki Junes * buildscripts/lilypond-words.py: add ly/vlaams.ly 2004-06-14 Jan Nieuwenhuizen * lily/score.cc (ly:run-translator): Do not crash on empty music list. * lily/book.cc (process): Do not render score when systems is empty. * input/simple-song.ly: Down one octave. * scm/output-gnome.scm: Remove script again; re-add modules fix (CVS conflict resolve?) * lily/stencil.cc (ly:interpret-stencil): Was: interpret_stencil_expression. 2004-06-13 Jan Nieuwenhuizen * buildscripts/guile-gnome.sh: New file. * scm/output-gnome.scm: White background, better window size, sane canvas size. Cleanups. 2004-06-13 Han-Wen Nienhuys * VERSION: release 2.3.4 * Documentation/user/invoking.itexi (Invoking the lilypond binary): document --safe. * scm/output-gnome.scm: set PATH in script. * scm/page-layout.scm (default-page-make-stencil): don't stretch if there is too few systems on a page. * lily/parser.yy (relative_music): start at middle C without pitch argument. * Documentation/user/changing-defaults.itely (Page layout): new node. (Paper size): rename node (Page breaking): new node. (Titling): move from invoking. (File structure): new node. * lily/parser.yy (score_body): allow \header and music anywhere in \score body. 2004-06-13 Jan Nieuwenhuizen * scm/lily.scm (ly:load): Remove page-breaking.scm. 2004-06-13 Han-Wen Nienhuys * lily/include/paper-system.hh: move cc/hh file from paper-line.* * lily/include/paper-line.hh: rename to Paper_system. * lily/include/paper-book.hh: doc class. * lily/paper-book.cc (c_ragged_page_breaks): remove functions. * scm/page-layout.scm (plain-footer): add tagline/copyright. (plain-header): add instrument-name. (default-page-make-stencil): bugfixes. * lily/parser.yy (book_body): allow \header anywhere in \book{} * lily/paper-book.cc: remove copyright & tagline. Remove interactions with Page * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking here, (default-page-make-stencil): new function (default-page-music-height): new function (page-headfoot): new function (ly:optimal-page-breaks): generate stencils directly from here * scm/titling.scm: new file, group titling functions 2004-06-13 Jan Nieuwenhuizen * scm/output-gnome.scm: Handle multiple pages. * scm/framework-gnome.scm: Do not load output-gnome. (framework-gnome): Invoke output-gnome::header and output-gnome::end-output as faked stencils. Fixes experimental gnome output. 2004-06-13 Han-Wen Nienhuys * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): octavation compatibility fixes. Backportme. * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull pages. (ly:optimal-page-breaks): combine-penalties: no shortcut for negative. Now we handle negative penalties (ie. \pageBreak) correctly. * lily/system.cc (get_line): extract page-penalty from the left bound. * scm/fret-diagrams.scm (fret-diagram): use @table for documentation 2004-06-12 Han-Wen Nienhuys * scm/framework-ps.scm: don't load output-XXX from framework-XXX 2004-06-12 Jan Nieuwenhuizen * scm/output-gnome.scm: Update script. Move development to lilypond_2_3_2 branch for now. 2004-06-11 Han-Wen Nienhuys * scm/page-breaking.scm (ly:optimal-page-breaks): don't do negative penalties. cleanups. * Documentation/user/changing-defaults.itely (Creating contexts): index entries * scm/page-breaking.scm (ly:optimal-page-breaks): new file. Rewrite function. * lily/paper-book.cc (pages): new interface: page-breaking returns list of line-list. * lily/page.cc (Page): take lines argument. * scm/document-translation.scm (all-engravers-doc): link to user man * scm/page-layout.scm (ly:optimal-page-breaks): use penalty iso. score. * Documentation/user/notation.itely (Relative octaves): typo. * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function. 2004-06-11 Jan Nieuwenhuizen * scm/output-gnome.scm: Update build script. 2004-06-10 Jan Nieuwenhuizen * scm/output-gnome.scm: Add font scaling. Attempt to resurrect gnome backend. * scm/framework-gnome.scm: New file. * scm/lily.scm: Use it. * lily/paper-outputter.cc: Janitorial cleanups. (ly:outputter-dump-string): Remove unreachable statement. * scm/framework-ps.scm: Add header. Janitorial cleanups. (ice-9): Bugfix: Add srfi-1. * scm/framework-tex.scm: Add header. Janitorial cleanups. 2004-06-08 Han-Wen Nienhuys * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning in do_quit() 2004-06-07 Han-Wen Nienhuys * ly/book-paper-defaults.ly: set optimal-page-breaks as default 2004-06-06 Han-Wen Nienhuys * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove override of Beam::position-callbacks. Why would grace beams not be quantized? Fixes: weird-stem-size-grace. * lily/new-lyric-combine-music-iterator.cc (find_voice): issue warning only once. Backportme. * lily/accidental-engraver.cc (number_accidentals_from_sig): bugfix, 2nd try. Backportme. * ly/vlaams.ly: new file. (Thanks Hendrik Maryns) 2004-06-04 Mats Bengtsson * Documentation/user/notation.itely (Instrument transpositions): Correct the name of the instrumentTransposition property. 2004-06-04 Han-Wen Nienhuys * scm/output-ps.scm (ps-font-command): fix parmesan coding too. 2004-06-04 Mats Bengtsson * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample and postLilyPondExample are called when defined. 2004-06-03 Han-Wen Nienhuys * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names. This fixes setting notenames with `\include "nederlands.ly" ' * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names: new function. 2004-06-01 Han-Wen Nienhuys * scm/page-layout.scm: don't do piece, it should be in score-title only. * lily/lexer.ll: lex \score separately. * lily/paper-book.cc: junk stencil2line. * lily/paper-line.cc (Paper_line): construct from Stencil directly. No futzing with the dimensions. * lily/include/paper-line.hh (class Paper_line): * lily/stencil.cc (interpret_stencil_expression): combine-stencil takes arbitrary number of arguments. * input/test/markup-score.ly (tuning): simplify example. 2004-05-31 Han-Wen Nienhuys * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. * scm/define-markup-commands.scm (score): define score-markup * lily/parser.yy (markup): use score-markup. * lily/score.cc: add ly:score? 2004-05-30 Carl Sorensen * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified fret-parse-string so it prepares for calls to fret-diagram-verbose Changed display constants to props so they are available for \override. 2004-05-31 Han-Wen Nienhuys * VERSION: release 2.3.3 * stepmake/stepmake/generic-vars.make: unset LANG. * input/regression/tuplet-nest.ly: bugfix. * lily/tie-performer.cc (stop_translation_timestep): reset ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly * lily/chord-tremolo-engraver.cc (stop_translation_timestep): clear repeat_ directly after setting stem_tremolo_. Fixes: tremolo-repeat.ly * input/regression/span-bar-break.ly: new file. * scm/define-grobs.scm (all-grob-descriptions): remove break-visibility from SpanBar. Fixes: piano-repeat.ly 2004-05-30 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): only compute bbox when needed. * scripts/lilypond-book.py (process_snippets): use lily -f ps files for generating pngs. (failed experiment) * scm/framework-ps.scm (output-classic-framework-ps): dump EPS file with PFA fonts included. * lily/score.cc (default_rendering): put header in too. * lily/paper-line.cc (LY_DEFINE): change function to ly:paper-line-extent * scm/page-layout.scm (default-book-title): only add lines for non-nil fields. (default-score-title): idem. * lily/my-lily-parser.cc (parse_string): delete lexer after use. * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable. * lily/include/paper-book.hh (class Paper_book): remove height_ member. * input/test/coriolan-margin.ly (texidoc): remove latex macros. * lily/ly-module.cc (LY_DEFINE): bugfix. * lily/paper-book.cc (book_title): separate function for the book title. * scm/page-layout.scm (default-book-title): only account for markup fields. * scm/framework-ps.scm: new file. Move high level interface from output-ps.scm * scm/music-functions.scm (def-grace-function): move macros from ly/music-functions-init.ly * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to framework-tex.scm * scm/framework-tex.scm (dump-line): new file. High level interface for output (pages, systems, header). * lily/include/page.hh (class Page): add is_last_ field. * lily/paper-outputter.cc (print_smob): smobify Paper_outputter. * lily/paper-book.cc (split_string): new function (output): output multiple formats, i.e. --format=ps,tex * scm/output-ps.scm (output-scopes): dump variables directly. (define-fonts): rewrite for new interface * ps/lilyponddefs.ps: remove lilypondpaper redefinitions. * lily/paper-outputter.cc (Paper_outputter): take format argument. * lily/main.cc (parse_argv): don't set extension for output. * lily/clef-engraver.cc (create_clef): remove Staff_symbol_referencer::set_position() call. 2004-05-30 Nicolas Sceaux * ly/music-functions-init.ly (addlyrics): set the 'origin property with the location argument in music function definitions. 2004-05-29 Han-Wen Nienhuys * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item -> staffsymbol dependency. * lily/include/grob.hh (class Grob): live () -> is_live (). Small cleanups. * lily/book.cc (process): return Paper_book (to_stencil): use Book::process(). * lily/include/my-lily-parser.hh (class My_lily_parser): remove header_ field. Store in $globalheader * lily/parser.yy (book_body): book header is initted to $globalheader. 2004-05-28 Han-Wen Nienhuys * input/test/fill-a4.ly: removed. * lily/parser.yy (output_def): push scope of parent_ Output_def too. 2004-05-28 Jan Nieuwenhuizen * scm/output-gnome.scm: Update info. 2004-05-28 Han-Wen Nienhuys * lily/book-paper-def.cc: collapse Book_output_def to Output_def. * scm/lily.scm (ly:modules-lookup): handle empty list, and more than 1 module. * lily/include/ly-module.hh (ly_use_module): rename is_module to ly_c_module_p. * scm/page-layout.scm (default-book-title): move Scheme titling functions to here. * lily/parser.yy (book_paper_block): remove scope too. * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext * lily/rest.cc: add direction to rest properties. * lily/include/output-def.hh: new file, move from music-output-def.hh 2004-05-27 Jan Nieuwenhuizen * scm/output-gnome.scm: Describe feta-cork hack. 2004-05-27 Han-Wen Nienhuys * lily/include/book-paper-def.hh: derive from Output_def * lily/include/paper-def.hh: move all functionality out of class. Junk header. * lily/include/music-output-def.hh: rename Music_output_def to Output_def. * input/wilhelmus.ly: only set space for Paper formatting. * lily/include/midi-def.hh: remove file, remove class. Move functions to Music-output-def. * lily/music-output-def.cc (Music_output_def): remove separate translator table. Lookup translators in scope directly. This obviates Context suffix for context identifiers, i.e. \context { \Staff .. } will work. * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3. * Documentation/user/changing-defaults.itely (Horizontal spacing): document spacing override hack. 2004-05-27 Jan Nieuwenhuizen * scm/output-gnome.scm: Add C-q, C-w keybindings. Update installation info. Support point-and-click. Add +/- zoom keybindings. 2004-05-26 Han-Wen Nienhuys * VERSION: 2.3.2 released * lily/parser.yy (book_body): set default bookpaper. * scm/output-tex.scm (header): kludge: hard code linewidth. * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer. 2004-05-25 Han-Wen Nienhuys * lily/score.cc (default_rendering): scale outputdef before starting. 2004-05-25 Jan Nieuwenhuizen * scm/fret-diagrams.scm: Add header. * scm/output-gnome.scm: Hello world :-) 2004-05-25 Han-Wen Nienhuys * scripts/lilypond.py (run_dvips): only add papersize if present. * lily/accidental-engraver.cc (update_local_key_signature): new function, fold code from initialize() and process_music(). (update_local_key_signature): use deep copy. This fixes one problem from custom-key-signatures.ly. (number_accidentals_from_sig): tighter check for accidental-too-old. * ly/engraver-init.ly: remove localKeySignature definition from ChoirStaff, StaffGroup, Score. * lily/percent-repeat-engraver.cc (try_music): add moments for barlines too. Fixes: skipbars-percent-repeat.ly. 2004-05-24 Han-Wen Nienhuys * lily/context-def.cc (filter_performers): don't go to cdrloc if skipping last pair. Fixes: crash-bar-number. * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl D. Sorensen) * input/test/fret-diagram.ly: new file. * scm/paper.scm (paper-set-staff-size): scale linewidth too. (scale-paper): divide by scale. 2004-05-19 Han-Wen Nienhuys * lily/rest-collision.cc (do_shift): also do nothing for the (0,2) case. 2004-05-18 Han-Wen Nienhuys * scm/stencil.scm (fontify-text): reinstate function * tex/lily-ps-defs.tex: remove lilypondblotdiam def. * lily/book-paper-def.cc (Book_paper_def): add copy ctor. * lily/parser.yy (book_paper_head): \bookpaper {} * python/midi.c: remove config.h 2004-05-18 Jan Nieuwenhuizen * scm/output-gnome.scm: Update. 2004-05-17 Jan Nieuwenhuizen * scm/output-gnome.scm: New file. * lily/include/book-paper-def.hh: Add. Janitorial fixes. 2004-05-17 Han-Wen Nienhuys * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef (find_scaled_font): move from Paper_def 2004-05-16 Han-Wen Nienhuys * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup (LY_DEFINE): add SCM_ASSERT_TYPE everywhere. * po/fr.po: update po. * lily/include/book-paper-def.hh (class Book_paper_def): new file. * lily/book-paper-def.cc (print_smob): new file. 2004-05-16 Heikki Junes * buildscripts/lilypond-words.py: search words also from music-functions-init.ly. 2004-05-15 Nicolas Sceaux * ly/music-functions-init.ly (def-music-function): new helper macro for defining music functions. \addlyrics \appoggiatura \acciaccatura \grace \partcombine \autochange \applycontext \applyoutput and \breathe are now defined here thanks to it. * lily/parser.yy: * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura \grace \partcombine \autochange \applycontext \applyoutput and \breathe keywords removed from the parser. * lily/parser.yy: * lily/music-function.cc (ly_make_music_function): * lily/lexer.ll (music_function_type): added a case for 0-arg music functions. 2004-05-14 Nicolas Sceaux * scm/ly-from-scheme.scm (read-lily-expression): A variable refering to a music expression can be used in lily-inside-scheme: #{ $music #} * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser and ly:parser-define, and change ly:parser-parse-string in order to make #{ $music #} work. * scm/new-markup.scm (compile-markup-expression): when an argument is a string, use `make-simple-markup'. 2004-05-14 Han-Wen Nienhuys * lily/parser.yy (My_lily_lexer): bugfix; op should be tag. 2004-05-10 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.func): handle + in font-size. (backportme) 2004-05-09 Han-Wen Nienhuys * lily/paper-outputter.cc (output_stencil): dump font definitions before each stencil. * lily/include/paper-book.hh (struct Score_lines): new struct. Collect info per Paper-score. * lily/include/page.hh (class Page): to_stencil() returns Stencil everywhere. * lily/stencil.cc (find_expression_fonts): new function * lily/paper-outputter.cc (output_stencil): use interpret_stencil_expr * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function. (interpret_stencil_expr): new function. Generic stencil interpretation. * lily/paper-def.cc (find_scaled_font): divide lookup magnification by outpuscale for non-virtual fontmetrics. This fixes ludicrously long font definitions for text fonts. (backportme) * lily/score-engraver.cc: remove {Engraver,Score_engraver}::typeset_grob(), remove all calls. 2004-05-09 Jan Nieuwenhuizen * input/test/markup-score.ly: Remove \notes. * lily/parser.yy (book_body): Grok Composite_music and \header. (markup): Push NOTES mode before score_block. * VERSION: release 2.3.1 * mf/feta-klef.mf: * mf/feta-bolletjes.mf: Oops. Comment-out canvast test code. * Documentation/user/programming-interface.itely: Use @emph (was: @em). * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error. 2004-05-09 Han-Wen Nienhuys * scm/output-tex.scm (output-tex-string): tighten safe security. * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define allowed ly functions. * lily/ly-module.cc (ly_module_define): only define variable if bound. (ly_make_anonymous_module): take safe option. 2004-05-08 Han-Wen Nienhuys * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY. 2004-05-08 Jan Nieuwenhuizen * input/regression/newaddlyrics.ly: Fix. * Documentation/user/tutorial.itely: Use \newlyrics, remove most \score \notes. 2004-05-08 Heikki Junes * Documentation/user/music-glossary.tely ([k-z]): last fixes. 2004-05-08 Han-Wen Nienhuys * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. ) * lily/paper-line.cc (Paper_line): don't store list of stencils, but convert to single Stencil immediately. * lily/paper-book.cc (title): don't return Stencil* but Stencil. 2004-05-07 Jan Nieuwenhuizen * scm/output-sodipodi.scm: Resurrect sodipodi output. 2004-05-07 Kristof Bastiaensen * elisp/lilypond-mode.el: Changed the way defaults are created for LilyPond-command-master. LilyPond-mode will now check the timestamps of the files to see which command has to run next. 2004-05-07 Han-Wen Nienhuys * scm/bass-figure.scm (format-bass-figure): don't set number-markup for strings. This fixes string in bass figure. (backportme) * lily/parser.yy (bass_number): insert number-markup into figure definition. * scm/define-music-properties.scm (all-music-properties): make 'figure a markup. * scripts/convert-ly.py (conv): \apply -> \applymusic 2004-05-06 Kristof Bastiaensen * elisp/lilypond-mode.el: changed the order of some commands ("Midi" after "2Midi"), use the user-defined LilyPond-command-default as default instead of "LilyPond" * elisp/lilypond-mode.el: added a LilyPond-master-file variable, to set the master file for the next command. * elisp/lilypond-font-lock.el: replaced font-lock-warning-face with font-lock-reference-face. 2004-05-07 Heikki Junes * Documentation/user/music-glossary.tely ([ab]*): small fixes. * Documentation/user/music-glossary.tely ([c-l]*): more fixes. 2004-05-06 Han-Wen Nienhuys * ly/music-functions-init.ly (TODO): new file. * lily/parser.yy (Generic_prefix_music_scm): add more music_function symbols. (Prefix_composite_music): change \apply to music-function * lily/include/music-function.hh: rename to music-function 2004-05-05 Han-Wen Nienhuys * lily/music-head.cc (LY_DEFINE): change order of args. * input/regression/music-head.ly (texidoc): new file. * lily/parser.yy (Generic_prefix_music): allow generic music-transformation functions. * lily/include/music-head.hh (is_music_head): new file. * lily/music-head.cc (get_music_head_transform): new file. 2004-05-04 Han-Wen Nienhuys * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for empty extent. This fixes ottava brackets on rests. (backportme) * make/lilypond.redhat.spec.in (Group): ln png files for info. * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix. * cygwin/lily-wins.py: update for the lily-wins.py script. 2004-05-03 Han-Wen Nienhuys * lily/score-engraver.cc (typeset_all): switch off unbound spanner code. This will obviate typeset_grob () in the future. The effect of this is that improperly written spanner handling will result in invalid spanner bounds. (announce_grob): add to elems_ from here (typeset_grob): comment out. * lily/include/engraver.hh (make_spanner): new calling interface for make_{item,spanner}. This obviates most calls to announce_grob(). * scm/music-functions.scm (set-accidental-style): use GrandStaff iso. PianoStaff for piano styles. 2004-05-03 Heikki Junes * Documentation/user/music-glossary.tely: add segno after d.s. 2004-05-02 Han-Wen Nienhuys * lily/include/audio-column.hh: remove unused variables. (patch by Michael Welsh Duggan) * flower/include/axes.hh (other_axis): inline Axes function (thanks to David Brandon). 2004-05-02 Jan Nieuwenhuizen * cygwin/mknetrel: Install image links (backportme). * Documentation/user/GNUmakefile (local-install-info): Activate actual installing of image links (backportme). 2004-04-30 Mats Bengtsson * Documentation/user/notation.itely (Measure repeats): Removed unnecessary (and confusing) \context Voice{. 2004-04-29 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Mention use of \score as markup. * lily/page.cc (Page): Do not use ly_scheme_function for volatile/configurable variables (FIXME: better name). * lily/music-output-def.cc (c_lookup_variable): Rename (WAS: get_scmvar). 2004-04-29 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.subst): use \transposition. 2004-04-29 Jan Nieuwenhuizen * lily/include/page.hh (class Page): Declare left_margin (). * lily/page.cc: Remove paper var caching. 2004-04-28 Jan Nieuwenhuizen * Documentation/user/music-glossary.tely: Add name to @top node. Remove comment from @table definitions (workaround for makinfo bug). * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was: ly:stencil-get-expr). Update callers. (ly:stencil-align-to!): Return stencil too. * lily/paper-outputter.cc (output_page): Bugfix. Use page stencil. Remove looped line-based page output. (output_line): Use line stencil. Remove looped stencil-based line output. * lily/page.cc (ly:page-paper-lines): New function. * input/test/markup-score.ly: New file. * scm/define-markup-commands.scm (stencil): New markup. * lily/book.cc (to_stencil): New method. * lily/parser.yy (markup): Use it to grok \score. 2004-04-27 Jan Nieuwenhuizen * lily/stencil.cc (expr): Rename (was: get_expr). Update callers. * lily/paper-book.cc (pages): Change signature. Update callers. * lily/include/page.hh: * lily/page.cc: New file. * lily/paper-line.cc (to_stencil): New method. * lily/paper-outputter.cc (output_stencil): New method. * lily/paper-outputter.cc (output_line): Use them. * lily/warn.cc: Remove. * lily/my-lily-parser.cc (distill_inname): Remove. * flower/include/file-name.hh: * flower/file-name.cc: New file. Update users. * flower/file-path.cc [CYGWIN]: Junk testing code. Remove Path. (find): New method of same name. * lily/my-lily-parser.cc (ly:parse-file): Use it. * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix: constant error message. 2004-04-27 Heikki Junes * input/test/{blank-notes.ly,staff-container.ly}: typos. 2004-04-26 Jan Nieuwenhuizen * Documentation/user/music-glossary.tely: @table @strong' replaced by `@table @samp @c @strong'. This fixes invalid makeinfo output (backportme). 2004-04-25 Nicolas Sceaux * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading. * scm/ly-from-scheme.scm: New file. Introduce a new syntax: #{ lily music expression #} that returns an equivalent scheme music expression by parsing the string. 2004-04-25 Jan Nieuwenhuizen * lily/my-lily-parser.cc: * lily/my-lily-lexer.cc: Another step towards parsing ly code from SCM string (foo.ly/toto.scm support). 2004-04-24 Jan Nieuwenhuizen * lily/my-lily-parser.cc (ly:parser-parse-string): New function. 2004-04-21 Jan Nieuwenhuizen * input/regression/newaddlyrics.ly: Remove lilypond-book kludge. * scripts/lilypond-book.py: LY code that includes \header is not assumed to be a fragment. 2004-04-20 Jan Nieuwenhuizen * lily/stem-tremolo.cc (print): If stem direction == CENTER, move tremolo beams up. * lily/stem.cc (chord_start_y): Return 0 if no heads. (get_default_stem_end_position): No tremolo head juggling if no heads. Fixes tremolo crash on rests (backportme). * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax. 2004-04-19 Jan Nieuwenhuizen * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy Gascoigne-Piggford). Also: TAB and whitespace fixes. * lily/lexer.ll: Allow \encoding in NOTES mode. * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics for lyrics, not for commands. * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING. FIXME: Replace some `Music's with Grouped_music_list; fixes make web. * input/regression/newaddlyrics.ly: New file. * Documentation/topdocs/NEWS.texi: Update. * lily/parser.yy (new_lyrics): Return SCM list of lyric musics. (Music_list): Allow embedded scm. * lily/score.cc (ly:score-bookify): New function. * lily/music.cc (ly:music-scorify): Idem. * lily/my-lily-parser.cc (ly:parser-print-book): Idem. (ly:parser-print-score): Idem. * scm/lily.scm (default-toplevel-book-handler): Idem. (default-toplevel-music-handler): Idem. (default-toplevel-score-handler): Idem. * ly/declarations-init.ly: Set default toplevel handlers. * lily/parser.yy (book_block, score_block, toplevel_music): Use them. * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score printer for score at toplevel. 2004-04-18 Jan Nieuwenhuizen * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics. Fix for simple case: input/simple-song.ly, more complex stuff does not work yet. 2004-04-18 Han-Wen Nienhuys * lily/parser.yy (Prefix_composite_music): split Composite_music in Prefix_composite_music and Grouped_music_list. (re_rhythmed_music): use Grouped_music_list for NEWLYRICS. 2004-04-18 Jan Nieuwenhuizen * scm/lily.scm (toplevel-expression): New define. * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function. * lily/parser.yy (toplevel_expression): Use it. * lily/include/my-lily-parser.hh: Smobbify. * lily/my-lily-parser.cc (parse_string): New method. * lily/my-lily-parser.cc (ly:parse-string): New function. * Documentation/user/lilypond.tely: Add comment and workaround for gs-8.01 crash. Fixes make web. Simplification of toplevel music. * lily/lexer.ll, lily/parser.yy: * In LYRICS mode, return LYRICS_STRING. This fixes one shift/reduce problem. * Use NOTES mode at start of maininput. * Grok toplevel composite music expression, put in score and book. * Grok \relative COMPOSITE_MUSIC, make relative on middleC. * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics * input/simple.ly: New file. * input/simple-song.ly: Idem. 2004-04-16 Han-Wen Nienhuys * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik Sandberg. 2004-04-17 Jan Nieuwenhuizen * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb. 2004-04-17 Heikki Junes * input/regression/accidental-octave.ly: doc automatic showing of note names. 2004-04-16 Heikki Junes * po/fi.po: do "make po && make -C po po-update" at top-level, then "cp po/out/fi.po po/fi.po" and update fields. * po/fi.po: remove all designations of `fuzzy'; shows those elements. 2004-04-15 Jan Nieuwenhuizen * Documentation/user/introduction.itely (About this manual): Fix templates and regression urls (backportme). 2004-04-14 Mats Bengtsson * ly/engraver-init.ly (Score:graceSettings): Increase beamed-lengths, especially for 32nd notes. * Documentation/user/notation.itely (Grace notes): Correct the syntax for add-grace-property example. 2004-04-13 Jan Nieuwenhuizen * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global `Generated' tag. * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts. NOT. Severely broken (the Debian package, at least). 2004-04-13 Han-Wen Nienhuys * lily/context.cc (find_create_context): assign to lvalue. 2004-04-12 Han-Wen Nienhuys * lily/include/translator.hh (class Translator): rename get_parent_context() to context () to avoid confusion. * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming. * lily/lexer.ll: change is_string -> ly_c_string_p * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book. * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book. 2004-04-12 Han-Wen Nienhuys * VERSION: release 2.3.0 * mf/feta-nummer-code.mf: use ascii names for number glyphs. * buildscripts/mf-to-table.py (parse_logfile): only prepend group- if nonempty. * lily/include/context.hh (class Context): make members protected. (children_contexts): new accessor function. * lily/include/translator.hh (class Translator): make daddy_context_ protected. (class Translator): clean up. * lily/include/context.hh (class Context): make daddy_context_ private. * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go higher for finding Voice. (backportme) * lily/include/context.hh (class Context): remove find_context_below() as a method. * Documentation/user/notation.itely (The Lyrics context): add note about manual durations * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math encoding. * scm/output-tex.scm (text): dump \inputencoding{} for text. 2004-04-11 Han-Wen Nienhuys * scripts/lilypond.py (global_latex_preamble): remove latin1 from \usepackage{inputenc} * lily/paper-book.cc (classic_output): don't advance Offset for TeX output. * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include ec-sauter.map in rules * mf/ecb.mf (font_identifier): new file, based on ecbx * mf/ecb10.mf (gensize): new file. * Documentation/topdocs/NEWS.texi (Top): document some more new features. * ly/declarations-init.ly: run convert-ly * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function from input-file-results. Remove input-file-results.* 2004-04-11 Jan Nieuwenhuizen * scm/output-ps.scm (font-command): Fix, again. * input/test/title-markup.ly: Add \noPagebreak test. * lily/score-engraver.cc (try_music): Bugfix. 2004-04-11 Han-Wen Nienhuys * lily/main.cc (main_with_guile): excise dependency options -M and --dep-prefix * lily/input-file-results.cc: excise Makefile dependency code * Documentation/user/invoking.itexi (Invoking the lilypond binary): remove dep doco * lily/main.cc (main_with_guile): call lilypond-main * scm/lily.scm (lilypond-main): new function: handle multiple files. * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed exception. * lily/my-lily-parser.cc: remove paper_description function * lily/music-output-def.cc (LY_DEFINE): ly:output-description new function. * lily/main.cc: remove global_score_count. * lily/book.cc (process): don't take header from global_input_file. * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH * lily/parser.yy (My_lily_lexer): remove current_parser global var. * lily/music-output-def.cc (LY_DEFINE): new function ly_output_description. This function does the bulk for setting, parsing and breaking down of an input file. * lily/ly-module.cc (ly_make_anonymous_module): don't protect anonymous modules globally. Let's hope they get GCd * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 2004-04-11 Jan Nieuwenhuizen * scm/output-ps.scm (header): Papersize from paper. * scripts/lilypond.py (global_latex_preamble): Oldish behaviour for classic output. * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if lilypondclassic is defined. (lilypondstart): Oldish behaviour if lilypondclassic is defined. * input/regression/between-systems.ly: Remove. * python/lilylib.py (get_bbox): Fix regular expression for bounding box. * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro. * scm/output-tex.scm (stop-page): Use it. * scm/output-ps.scm (define-fonts): Bugfix. * lily/grob.cc: Add penalty to interface. * lily/include/paper-line.hh (class Paper_line): New member var penalty_. * lily/system.cc (get_line): Initialise Paper_line with page-penalty's from original grobs. * scm/define-music-properties.scm (all-music-properties): Add page-penalty. * scm/define-grob-properties.scm (all-grob-descriptions): Idem. * lily/score-engraver.cc (try_music): Handle page-penalty. * ly/declarations-init.ly (pagebreak, noPagebreak): New command. 2004-04-11 Han-Wen Nienhuys * ly/declarations-init.ly (melismaEnd): typo * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps. * scm/output-ps.scm (text): split string into spaces, use moveto for setting space. 2004-04-10 Jan Nieuwenhuizen * po/nl.po: Update. * scm/font.scm (add-cmr-fonts): Typo. 2004-04-10 Han-Wen Nienhuys * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1 font-encoding. * scm/define-grobs.scm (all-grob-descriptions): idem. * lily/time-signature.cc (numbered_time_signature): idem. * scm/font.scm (add-cmr-fonts): use real encoding names for font-encoding. 2004-04-10 Jan Nieuwenhuizen * lily/paper-book.cc (classic_output): * tex/lilyponddefs.tex (lybox): Add height, and proper raising. Fixes classic output. (lilypondstart): * scripts/lilypond.py (global_latex_preamble): Remove topmargin kludge. * scripts/old-lilypond-book.py: Remove. Page layout for SCOREs enclosed in a BOOK: * scripts/lilypond.py: Remove LaTeX titling kludge. Remove page layout tweaking. * input/les-nereides.ly (theScore): Add \book. * input/test/title-markup.ly: Add \book. * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output only if 'verbose. * lily/include/paper-book.hh (PAGE_LAYOUT): Remove. * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check. * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem): * scm/output-tex.scm (start-system): Update for page layout by LilyPond. * scm/output-ps.scm (start-system): Previously (new-start-system). * lily/paper-outputter.cc (output_header): Uniquify list of fonts passed to define-fonts. * lily/paper-column.cc: * lily/system.cc (get_line): * ly/property-init.ly (newpage): * scm/define-grob-properties.scm: * scm/output-ps.scm: * scm/output-tex.scm: Remove between-system-string kludge. * scm/output-ps.scm (define-fonts, font-command, font-load-encoding): Handle ENCODING = #f. * scm/output-tex.scm (output-scopes): Check if variable is bound. * scm/define-markup-commands.scm (fill-line): Use make-simple-markup (WAS: unexisting make-word-markup). * lily/text-item.cc (interpret_markup): Bugfix, transpose ENCODING, MARKUP parameters for interpret_string. * lily/input-file-results.cc (do_one_file): Remove Paper_book hack. * lily/score.cc (book_rendering): New method. (default_rendering): Create Paper_book helper locally, dump output. * lily/my-lily-lexer.cc (the_key_tab): Add book. * lily/parser.yy: Handle \book. * lily/include/book.hh: * lily/book.cc: New file. 2004-04-10 Han-Wen Nienhuys * lily/text-item.cc (interpret_string): new file, select font with encoding. * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout. * scm/define-markup-commands.scm (encoded-simple): new markup command. * lily/parser.yy (markup): take encoding from lexer. 2004-04-09 Jan Nieuwenhuizen * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation. * scm/output-ps.scm: Remove some cruft. 2004-04-09 Han-Wen Nienhuys * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs. * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme) 2004-04-09 Jan Nieuwenhuizen * scm/font.scm (add-century-schoolbook-fonts): (make-century-schoolbook-tree): New function. * input/test/title-markup.ly: Use Century Schoolbook font. 2004-04-09 Han-Wen Nienhuys * scripts/convert-ly.py: limited old-style markup convert. (Thanks to Erik Sandberg) * lily/font-metric.cc (LY_DEFINE): new function, return fontName. * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan. * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename * scm/encoding.scm (coding-alist): add AdobeStandardEncoding 2004-04-08 Han-Wen Nienhuys * scm/part-combiner.scm (determine-split-list): bugfix: if no solo-state (at end of solo), we can set the solo status too. (backportme.) * input/regression/part-combine-solo-end.ly: new file. 2004-04-08 Jan Nieuwenhuizen * scripts/abc2ly.py (parse_file): Strip \r from lines. Fixes DOS flavour abc files. Really ignore unknown keys (backportme). 2004-04-08 Han-Wen Nienhuys * lily/scaled-font-metric.cc (text_dimension): only multiply with magnification_ when looking up in orig_. * scm/output-tex.scm (text): switch off char-mapping. * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-', because AFM's encoding field cannot have spaces. 2004-04-08 Jan Nieuwenhuizen * scm/output-ps.scm (define-fonts): More re/encoding tweaking. 2004-04-08 Han-Wen Nienhuys * lily/paper-def.cc (find_scaled_font): change to inputencoding. * mf/cmr.enc: new file, without hi-bit ascii info. * lily/bezier-bow.cc (slur_shape): make indent dependent on width. This removes the 'hook' at the end of a long slur. * buildscripts/mf-to-table.py (parse_logfile): don't append encoding to fontname. 2004-04-07 Jan Nieuwenhuizen * scm/output-ps.scm (define-fonts): Load .enc only once. * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files too. 2004-04-07 Han-Wen Nienhuys * buildscripts/mf-to-table.py (parse_logfile): remove spaces from encoding field. * lily/stencil-scheme.cc: remove ly:fontify-atom * ly/portuges.ly (pitchnames): new file. * lily/include/lily-guile.hh: many new ly_ functions. Thanks to Michael Welsh Duggan * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan * ly/nederlands.ly: add comment about digits. * lily/scaled-font-metric.cc (derived_mark): idem. * scm/encoding.scm (make-encoding-mapping): change permutation to mapping. * lily/scaled-font-metric.cc (derived_mark): is a const method. (Modified_font_metric): make alist for coding_description_ (LY_DEFINE): remove coding-name. * scm/output-tex.scm (text): remove debugging code. * lily/scaled-font-metric.cc (ly_font_encoding): return vector * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme from infile. * mf/feta-generic.mf: move fet_beginfont into generic code. use fetaMusic (without space) as encoding * mf/feta-autometric.mf: take encoding argument * lily/afm.cc (read_afm_file): bugfix, read global info too. * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr use. * scm/encoding.scm (read-encoding-file): use symbol for glyph name. 2004-04-07 Jan Nieuwenhuizen * input/test/title-markup.ly: Set inputencoding. * scm/output-ps.scm (define-fonts): Handle font re-encoding. * lily/scaled-font-metric.cc (ly:font-coding-name): New function. * scm/encoding.scm (get-coding-filename, get-coding-command): New function. (coding-alist): Also hold filename, command. (read-encoding-file): Return symbols. 2004-04-06 Han-Wen Nienhuys * scm/output-tex.scm: remove fontify; text and char take a font argument. * lily/tfm.cc (name_to_index): new function, use encoding_table_. * lily/scaled-font-metric.cc (text_dimension): init coding_{permutation,table}_ too (LY_DEFINE): ly:font-encoding, new function return * lily/paper-def.cc (find_scaled_font): take input coding from inputcoding paper var. * lily/performance.cc (output): remap modulo 16. * lily/text-item.cc (interpret_markup): whoops, variable shadowing fixed. 2004-04-06 Michael Welsh Duggan * lily/piano-pedal-performer.cc (try_music): Compare symbols to symbols, not symbols to strings. * lily/piano-pedal-engraver.cc (try_music): Compare symbols to symbols, not symbols to strings. 2004-04-06 Jan Nieuwenhuizen * lily/kpath.cc (kpathsea_gulp_file_to_string): (ly:kpathsea-gulp-file): New function. * scm/encoding.scm (read-encoding-file): Use it. 2004-04-06 Werner Lemberg * scm/encoding.scm (coding-alist): Fix typo. 2004-04-06 Han-Wen Nienhuys * lily/scaled-font-metric.cc (text_dimension): move function from Font_metric (make_scaled_font_metric): init coding_scheme_ to TeX (text_dimension): use get-coding-vector for non TeX coding_scheme_ * lily/include/scaled-font-metric.hh (struct Modified_font_metric): rename from Scaled_font_metric * scm/encoding.scm (read-encoding-file): split up large function, leave caching to (delay) * lily/lily-guile.cc (LY_DEFINE): typecheck argument. 2004-04-05 Jan Nieuwenhuizen * lily/my-lily-lexer.cc (set_encoding): New method. * lily/lexer.ll: Grok \encoding. * lily/font-metric.cc (get_encoded_index): New function. * lily/include/font-metric.hh (coding_scheme): New method. * scm/encoding.scm: New file. * mf/feta-beugel.mf: Better error message (WAS: `foobar'). 2004-04-05 Werner Lemberg * Documentation/user/tutorial.itely: Revised (finished). * Documentation/user/macros.itexi (@separate): Removed. 2004-04-05 Han-Wen Nienhuys * scm/output-ps.scm (define-fonts): fix scaling. * lily/scaled-font-metric.cc (design_size): add function. * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only partial cut&paste of ly:font-magnification. 2004-04-05 Jan Nieuwenhuizen * scm/output-ps.scm (define-fonts): (fontify): Update. 2004-04-04 Han-Wen Nienhuys * po/fr.po: update. (backportme). * po/nl.po: update. (backportme). * mf/feta-beugel.mf: document why design size is not fixed. * mf/feta-braces-a.mf: rename to stress that it's not design size. 2004-04-04 Werner Lemberg * Documentation/user/tutorial.itely: Revised (continued). 2004-04-03 Jan Nieuwenhuizen * po/nl.po: Update (backportme). 2004-04-03 Han-Wen Nienhuys * po/de.po: update. (backportme). * scm/output-tex.scm (font-command): use ly: functions to construct name. (define-fonts): don't use alist, just dump \font definitions. (font-load-command): calculate proper scaling by taking outputscale from paper argument. * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into expression. * lily/paper-outputter.cc (output_header): pass paper arg to define-fonts * lily/paper-def.cc (font_descriptions): dump list of Scaled_font_metrics (find_scaled_font): take Font_metric argument, store Scaled_font_metrics in hash-table containing (size -> Scaled_font_metrics) alist. (get_dimension): rename from get_realvar * lily/font-metric.cc (LY_DEFINE): ly:font-design-size, ly:font-magnification, ly:font-name: new functions 2004-04-03 Werner Lemberg * Documentation/user/dedication.itely, Documentation/user/preface.itely, Documentation/user/introduction.itely, Documentation/user/tutorial.itely: Revised. Removing leading spaces which distorts output if info files are read with stand-alone info. Removing superfluous inter-word spaces which also distorts output for stand-alone info. Using ` and ' instead of `` and '' everywhere to improve legilibility with stand-alone info Using @samp for single-letter input items and data which contains spaces, @code for other things. * lily/grob-interface.cc: Adding copyright. (check_interfaces_for_property): Improve format of warning message. 2004-04-03 Han-Wen Nienhuys * lily/include/font-metric.hh (struct Font_metric): add design_size () method. * buildscripts/mf-to-table.py (base): add DesignSize comment. * lily/afm.cc (read_afm_file): read design size. * input/regression/repeat-unfold-tremolo.ly: add dotted case. * scm/music-functions.scm (unfold-repeats): handle dots too. 2004-04-02 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL. (backportme) 2004-04-02 Jan Nieuwenhuizen * input/wilhelmus.ly: Use raggedright. Hack `Een prin -- ce' lyric indent. Revert melismaBusyProperties using \unset. 2004-04-02 Han-Wen Nienhuys * input/regression/bar-check-redefine.ly (pipeSymbol): new file. * lily/parser.yy (command_element): allow redefinition of | meaning. * lily/break-align-engraver.cc (acknowledge_grob): construct LeftEdge where the first cause for alignment is coming from. This makes \override Staff.LeftEdge work as expected. * lily/slur-performer.cc (Slur_performer): add inits * lily/beam-performer.cc (Beam_performer): add inits 2004-04-01 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.2.0 #Local variables: #coding: utf-8 #End: