From: John Mandereau Date: Tue, 26 Jun 2007 10:10:34 +0000 (+0200) Subject: Merge branch 'master' into topic/master-translation X-Git-Tag: release/2.11.28-1~72 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=43713b38df966b2f5af2ccfb6081cf0f26bf8973;hp=e89d4b8578439d07a63dc2029c6d8fe016051fe3;p=lilypond.git Merge branch 'master' into topic/master-translation * master: (26 commits) Update font-table.ly after toplevel text handler changes: lists of texts are collected, iso. single texts. -b ... -> -dbackend=... -b eps -> -dbackend=eps Replace `-' with `M' directly in glyph names to avoid mf-to-table.py trickery. Resurrect ChangeLog entries from 2004-10-31 to 2005-08-18. Update main doc page. Fix #383. Minor update in German basic-notation.itely Update general guidelines for docs. LSR: I'm an idiot. LSR: automatic update, and minor makelsr.py changes. Change main doc page: give less prominence to regression tests, make the Update "about this manual" to avoid regression tests. Update docs to point to LSR-snippet instead of input/test/ and LSR: add new categories. LSR: automagic update. LSR: update to build system. LSR: improve buildscript, add directories. Small update from mailist. Trivial fix for makelsr.py ... --- diff --git a/Documentation/de/user/basic-notation.itely b/Documentation/de/user/basic-notation.itely index 23cb4a1025..46cfeb7e8f 100644 --- a/Documentation/de/user/basic-notation.itely +++ b/Documentation/de/user/basic-notation.itely @@ -1,7 +1,7 @@ @c -*- coding: utf-8; mode: texinfo; -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 3733d93a10f64a886941dc05afd8dc07fe47b67a + Translation of GIT committish: cc4d776da798710d18d2dec631b2f02c1450442f When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -1011,7 +1011,7 @@ Notenwerte noch in dem jeweiligen Takt fehlen. Wenn Sie wollen, dass auch Zeilenumbrüche an den Stellen, an denen automatisch Noten aufgeteilt wurden, stattfinden, müssen Sie auch -den Formatierer @internalsref{Forbid_line_breaks_engraver} mit +den Formatierer @internalsref{Forbid_line_break_engraver} mit dem @code{\remove}-Befehl entfernen. diff --git a/Documentation/index.html.in b/Documentation/index.html.in index 3d5e0ccb47..7661deadaa 100644 --- a/Documentation/index.html.in +++ b/Documentation/index.html.in @@ -51,18 +51,22 @@ Tutorial
(start here) - +
  • Glossary +(in one big page ~ 1 Mb, +in PDF) + +
    (for non-English users) + @@ -74,47 +78,48 @@ User manual (in one big page ~ 4 Mb, in PDF) -
    (everything about LilyPond) - -
  • Examples - -
    (see some examples) - -
  • Snippets -
    (Short tricks, tips, and examples) - -
  • Glossary -(in one big page ~ 1 Mb, -in PDF) -
    (for non-English users) - +
  • + Program reference + (in one big page ~ 1 Mb) +
    (definitions for tweaking) + +   + + + +   + + +   + diff --git a/Documentation/misc/ChangeLog-2.10 b/Documentation/misc/ChangeLog-2.10 index 3c42fb12b9..ae5f2983ac 100644 --- a/Documentation/misc/ChangeLog-2.10 +++ b/Documentation/misc/ChangeLog-2.10 @@ -9846,4 +9846,8070 @@ time sigs and related stuff. * scm/define-grob-properties.scm (all-user-grob-properties): add - @c + @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 zero 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 (without 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. + +#Local variables: +#coding: utf-8 +#End: diff --git a/Documentation/user/README.txt b/Documentation/user/README.txt index 8297e4b0f9..e736fd6718 100644 --- a/Documentation/user/README.txt +++ b/Documentation/user/README.txt @@ -4,7 +4,7 @@ Info for Documentation Current version of the manual: 2.11.15 *** Please update this whenever you run convert-ly on the docs. -convert-ly --from=... --to=... --no-version *.itely +convert-ly -e --from=... --to=... --no-version *.itely %%%%% DOC ORGANIZATION @@ -34,12 +34,14 @@ technical writing style. * Technical Details contains information about using the program lilypond with other programs (lilypond-book, operating systems, GUIs, convert-ly, etc). This section -is writtin in formal technical writing style. +is written in formal technical writing style. %%%%% GENERAL GUIDELINES +* Use two spaces for indentation in lilypond examples. + * Do not forget to create @cindex entries for new sections of text. Enter commands with @funindex, i.e. @funindex \relative @@ -50,7 +52,7 @@ GENERAL GUIDELINES `invalid' instead. * Avoid long stretches of input code. Noone is going to read them in - print. Instead refer to an example input file (@inputfileref), these + print. Instead refer to an example input file (with @lsr{}); these are clickable in HTML. * Abbrevs in caps, e.g., HTML, DVI, MIDI, etc. diff --git a/Documentation/user/advanced-notation.itely b/Documentation/user/advanced-notation.itely index bd3f1d8535..e7cd36b3a2 100644 --- a/Documentation/user/advanced-notation.itely +++ b/Documentation/user/advanced-notation.itely @@ -1125,7 +1125,7 @@ be added Bar numbers can be typeset at regular intervals instead of at the beginning of each line. This is illustrated in the following example, whose source is available as -@inputfileref{input/@/test,bar@/-number@/-regular@/-interval@/.ly} +@lsr{staff,making-bar-numbers-appear-at-regular-intervals.ly}. @lilypondfile[ragged-right,quote]{bar-number-regular-interval.ly} @@ -1150,9 +1150,7 @@ c4 c c c Program reference: @internalsref{BarNumber}. -Examples: -@inputfileref{input/@/test,bar@/-number@/-every@/-five@/-reset@/.ly}, -and @inputfileref{input/@/test,bar@/-number@/-regular@/-interval@/.ly}. +Examples: @lsrdir{staff} @refbugs @@ -1889,7 +1887,7 @@ Double time signatures are not supported explicitly, but they can be faked. In the next example, the markup for the time signature is created with a markup text. This markup text is inserted in the @internalsref{TimeSignature} grob. See also -@inputfileref{input/@/test,compound@/-time@/.ly}). +@lsr{contemporary,compound-time-signature}. @lilypond[verbatim,ragged-right] % create 2/4 + 5/8 @@ -2650,7 +2648,6 @@ the notes. >> @end lilypond -Examples: @inputfileref{input/@/regression,grid@/-lines@/.ly}. - +Examples: @lsrdir{education} diff --git a/Documentation/user/basic-notation.itely b/Documentation/user/basic-notation.itely index e17f3e480f..e33db9b3a0 100644 --- a/Documentation/user/basic-notation.itely +++ b/Documentation/user/basic-notation.itely @@ -486,7 +486,7 @@ existing music with another @code{transpose} Program reference: @internalsref{TransposedMusic}. -Example: @inputfileref{input/@/test,smart@/-transpose@/.ly}. +Example: @lsr{scheme,transpose-pitches-with-minimum-accidentals.ly}. @refbugs @@ -941,7 +941,7 @@ is off. If you want to allow line breaking on the bar lines where @internalsref{Completion_heads_engraver} splits notes, you must -also remove @internalsref{Forbid_line_breaks_engraver}. +also remove @internalsref{Forbid_line_break_engraver}. @refbugs @@ -1612,7 +1612,7 @@ measure is subdivided in 2, 2, 2 and 3. This is passed to Program reference: @internalsref{TimeSignature}, and @internalsref{Timing_translator}. -Examples: @inputfileref{input/@/test,compound@/-time@/.ly}. +Examples: @lsr{contemporary,compound-time-signature.ly}. @refbugs @@ -1898,8 +1898,8 @@ LilyPond, these lines are drawn using a separate layout object called The staff symbol may be tuned in the number, thickness and distance of lines, using properties. This is demonstrated in the example files -@inputfileref{input/@/test,staff@/-lines@/.ly}, -@inputfileref{input/@/test,staff@/-size@/.ly}. +@lsr{staff,changing-the-number-of-lines-in-a-staff.ly} and +@lsr{staff,changing-the-staff-size.ly}. In addition, staves may be started and stopped at will. This is done with @code{\startStaff} and @code{\stopStaff}. @@ -1930,10 +1930,7 @@ sections. An example is shown here Program reference: @internalsref{StaffSymbol}. -Examples: @inputfileref{input/@/test,staff@/-lines@/.ly}, -@inputfileref{input/@/test@/,ossia.ly}, -@inputfileref{input/@/test,staff@/-size@/.ly}, -@lsr{staff,staff-line-positions.ly} +Examples: @lsrdir{staff} @node Writing music in parallel diff --git a/Documentation/user/instrument-notation.itely b/Documentation/user/instrument-notation.itely index b6e400215b..28fa837d75 100644 --- a/Documentation/user/instrument-notation.itely +++ b/Documentation/user/instrument-notation.itely @@ -556,7 +556,7 @@ adds the new exceptions to the default ones, which are defined in @file{ly/@/chord@/-modifier@/-init@/.ly}. For an example of tuning this property, see also -@lsr{chords/,chord@/-name@/-exceptions@/.ly} +@lsr{chords,chord@/-name@/-exceptions@/.ly} @cindex exceptions, chord names. @@ -614,8 +614,8 @@ demonstrated here, There are also two other chord name schemes implemented: an alternate Jazz chord notation, and a systematic scheme called Banter chords. The alternate Jazz notation is also shown on the chart in @ref{Chord name -chart}. Turning on these styles is described in the input file -@inputfileref{input/@/test,chord@/-names@/-jazz@/.ly}. +chart}. Turning on these styles is demonstrated in +@lsr{chords,chord-names-jazz.ly}. @cindex Banter @cindex jazz chords @@ -639,10 +639,7 @@ chart}. Turning on these styles is described in the input file @seealso Examples: -@lsr{chords/,chord@/-name@/-exceptions@/.ly}, -@lsr{chords,chord@/-name@/-major7@/.ly}, and -@inputfileref{input/@/test,chord@/-names@/-jazz@/.ly}. - +@lsrdir{chords} Init files: @file{scm/@/chords@/-ignatzek@/.scm}, and @file{scm/@/chord@/-entry@/.scm}. @@ -2237,7 +2234,7 @@ Details about the property interface to fret diagrams are found at @seealso -Examples: @inputfileref{input/@/test,fret@/-diagram@/.ly} +Examples: @lsrdir{guitar} @node Right hand fingerings @@ -2610,7 +2607,7 @@ ancient accidentals. As shown, not all accidentals are supported by each style. When trying to access an unsupported accidental, LilyPond will switch to a different style, as demonstrated in -@inputfileref{input/@/test,ancient@/-accidentals@/.ly}. +@lsr{ancient,ancient-accidentals.ly}. Similarly to local accidentals, the style of the key signature can be controlled by the @code{glyph-name-alist} property of the @@ -2625,7 +2622,7 @@ the use of key signatures. Program reference: @internalsref{KeySignature}. -Examples: @inputfileref{input/@/test,ancient@/-accidentals@/.ly}. +Examples: @lsrdir{ancient} @node Ancient rests @subsection Ancient rests @@ -2652,8 +2649,7 @@ r\longa r\breve r1 r2 r4 r8 r16 There are no 32th and 64th rests specifically for the mensural or neo-mensural style. Instead, the rests from the default style will be -taken. See @inputfileref{input/@/test,rests@/.ly} for a chart of all -rests. +taken. See @lsr{pitches,rests} for a chart of all rests. There are no rests in Gregorian Chant notation; instead, it uses @ref{Divisiones}. @@ -3216,7 +3212,8 @@ In this manual: @ref{Breath marks}. Program reference: @internalsref{BreathingSign}. -Examples: @inputfileref{input/@/test,divisiones@/.ly}. +Examples: @lsr{expressive,breathing-sign.ly}. + @node Ligatures @subsection Ligatures @@ -4574,6 +4571,16 @@ automatically. @end lilypond +@commonprop + +By default, this method produces figures above the notes. To get +figures below the notes, use + +@example +\override Staff.BassFigureAlignmentPositioning #'direction = #DOWN +@end example + + @refbugs When using figured bass above the staff with extender lines and diff --git a/Documentation/user/introduction.itely b/Documentation/user/introduction.itely index 554c039e17..87bb1851a3 100644 --- a/Documentation/user/introduction.itely +++ b/Documentation/user/introduction.itely @@ -690,7 +690,13 @@ to mix music and text in documents. @node About this manual @section About this manual -The manual is divided into the following chapters: +The manual is divided into four books. + +@subsubheading Learning manual + +This book explains how to begin learning LilyPond, as well as explaining +some key concepts in easy terms. + @itemize @bullet @item @@ -716,6 +722,16 @@ problems. shows how to change the default engraving that LilyPond produces. +@end itemize + +@subsubheading Notation reference + +This book explains all the LilyPond commands which produce notation. It +assumes that readers are familiar with the concepts in the Learning +manual. + +@itemize @bullet + @item @emph{@ref{Basic notation}}, discusses topics grouped by notation construct. This section gives @@ -751,6 +767,16 @@ paper size or specifying page breaks. @emph{@ref{Interfaces for programmers}}, explains how to create music functions. +@end itemize + + +@subsubheading Program usage + +This book explains how to execute the program and how to integrate +LilyPond notation with other programs. + +@itemize @bullet + @item @emph{@ref{Running LilyPond}}, shows how to run LilyPond and its helper programs. In addition, this @@ -768,6 +794,14 @@ explains how to run the conversion programs. These programs are supplied with the LilyPond package, and convert a variety of music formats to the @code{.ly} format. +@end itemize + + +@subsubheading Appendices + +This book contains useful reference charts. + +@itemize @bullet @item @ifhtml The @@ -810,118 +844,100 @@ is a complete index. @end itemize -Once you are an experienced user, you can use the manual as reference: -there is an extensive index@footnote{If you are looking for something, -and you cannot find it in the manual, that is considered a bug. In -that case, please file a bug report.}, but the document is also -available in -@iftex -a big HTML page, -@end iftex -@ifhtml -@uref{source/Documentation/user/lilypond.html, one big page}, -@end ifhtml -which can be searched easily using the search facility of a web -browser. -@cindex search in manual -@cindex using the manual +@subsubheading Other information -@c FIXME: -@c add/integrate glossary, put in list above -If you are not familiar with music notation or music terminology -(especially if you are a non-native English speaker), it is advisable -to consult the glossary as well. -@iftex -The music glossary explains musical terms, and includes translations -to various languages. It is a separate document, available in HTML -and PDF. -@end iftex -@ifnottex -The @ref{Top,Music glossary,,music-glossary}, explains musical terms and -includes translations to various languages. It is also available in -PDF. -@end ifnottex +There are a number of other places which may be very valuable. + +@itemize @bullet @cindex idiom @cindex jargon @cindex terminology @cindex foreign languages @cindex language +@item +@ifnottex +The @ref{Top,Music glossary,,music-glossary}, explains musical terms and +includes translations to various languages. It is also available in +PDF. +@end ifnottex +@iftex +The music glossary explains musical terms, and includes translations +to various languages. It is a separate document, available in HTML +and PDF. +@end iftex +If you are not familiar with music notation or music terminology +(especially if you are a non-native English speaker), it is highly +advisable to consult the glossary. +@cindex snippets +@cindex LSR +@item +The +@ifhtml +@uref{source/input/lsr/collated-files.html,Snippets} +@end ifhtml +@ifnothtml +Snippets +@end ifnothtml +are a great collection of short examples which demonstrate tricks, tips, +and special features of LilyPond. Most of these snippets can also be +found in the @uref{http://lsr.dsi.unimi.it/,LilyPond Snippet +Repository}. This website also has a searchable LilyPond manual. -This manual is not complete without a number of other documents. They -are not available in print, but should be included with the -documentation package for your platform -@itemize @bullet @item +The @iftex Program reference @end iftex @ifnottex -@ref{Top,Program reference,,lilypond-internals}. +@ref{Top,Program reference,,lilypond-internals} @end ifnottex - -The program reference is a set of heavily cross linked HTML pages, -which document the nitty-gritty details of each and every LilyPond -class, object, and function. It is produced directly from the -formatting definitions used. +is a set of heavily cross linked HTML pages, which document the +nitty-gritty details of each and every LilyPond class, object, and +function. It is produced directly from the formatting definitions used. Almost all formatting functionality that is used internally, is -available directly to the user. For example, all variables that -control thickness values, distances, etc., can be changed in input -files. There are a huge number of formatting options, and all of them -are described in this document. Each section of the notation manual -has a @b{See also} subsection, which refers to the generated -documentation. In the HTML document, these subsections have clickable -links. +available directly to the user. For example, all variables that control +thickness values, distances, etc., can be changed in input files. There +are a huge number of formatting options, and all of them are described +in this document. Each section of the notation manual has a @b{See +also} subsection, which refers to the generated documentation. In the +HTML document, these subsections have clickable links. -@cindex snippets -@item -@ifnothtml -Various input examples. -@end ifnothtml -@ifhtml -@c Works, but link name is not so nice; so write-out macro -@c @inputfileref{input/test,Various input examples}. -@uref{source/input/test/collated-files.html,Various input examples}. -@end ifhtml +@end itemize -This collection of files shows various tips and tricks, and is -available as a big HTML document, with pictures and explanatory texts -included. -@item -@ifnothtml -The regression tests. -@end ifnothtml +Once you are an experienced user, you can use the manual as reference: +there is an extensive index@footnote{If you are looking for something, +and you cannot find it in the manual, that is considered a bug. In +that case, please file a bug report.}, but the document is also +available in +@iftex +a big HTML page, +@end iftex @ifhtml -@c Works, but link name is not so nice; so write-out macro -@c @inputfileref{input/regression,The regression tests}. -@uref{source/input/regression/collated-files.html,The regression tests}. +@uref{source/Documentation/user/lilypond.html, one big page}, @end ifhtml - -This collection of files tests each notation and engraving feature of -LilyPond in one file. The collection is primarily there to help us -debug problems, but it can be instructive to see how we exercise the -program. The format is similar to the tips and tricks document. -@end itemize +which can be searched easily using the search facility of a web +browser. In all HTML documents that have music fragments embedded, the LilyPond input that was used to produce that image can be viewed by clicking the image. -The location of the documentation files that are mentioned here can -vary from system to system. On occasion, this manual refers to +The location of the documentation files that are mentioned here can vary +from system to system. On occasion, this manual refers to initialization and example files. Throughout this manual, we refer to input files relative to the top-directory of the source archive. For -example, @file{input/@/test/@/bla@/.ly} may refer to the file -@file{lilypond@/2.x.y/@/input/@/test/@/bla@/.ly}. On binary packages -for the Unix platform, the documentation and examples can typically be -found somewhere below @file{/usr/@/share/@/doc/@/lilypond/}. -Initialization files, for example @file{scm/@/lily@/.scm}, or -@file{ly/@/engraver@/-init@/.ly}, are usually found in the directory -@file{/usr/@/share/@/lilypond/}. +example, @file{input/@/lsr/@/dirname/@/bla@/.ly} may refer to the file +@file{lilypond@/2.x.y/@/input/@/lsr/@/dirname/@/bla@/.ly}. On binary +packages for the Unix platform, the documentation and examples can +typically be found somewhere below +@file{/usr/@/share/@/doc/@/lilypond/}. Initialization files, for +example @file{scm/@/lily@/.scm}, or @file{ly/@/engraver@/-init@/.ly}, +are usually found in the directory @file{/usr/@/share/@/lilypond/}. @cindex adjusting output @cindex variables @@ -936,3 +952,4 @@ Finally, this and all other manuals, are available online both as PDF files and HTML from the web site, which can be found at @uref{http://@/www@/.lilypond@/.org/}. + diff --git a/Documentation/user/lilypond-book.itely b/Documentation/user/lilypond-book.itely index 3beacf52db..653a854b05 100644 --- a/Documentation/user/lilypond-book.itely +++ b/Documentation/user/lilypond-book.itely @@ -893,6 +893,6 @@ the following options To produce a useful @file{eps} file, use @example -lilypond -b eps -dno-gs-load-fonts -dinclude-eps-fonts myfile.ly +lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts myfile.ly @end example diff --git a/Documentation/user/macros.itexi b/Documentation/user/macros.itexi index 32536c3cd5..5b36bd3a50 100644 --- a/Documentation/user/macros.itexi +++ b/Documentation/user/macros.itexi @@ -62,7 +62,7 @@ @macro lsrdir{DIR} @ifhtml - @uref{source/input/lsr/\DIR\/collated-files.html,@file{\DIR\}} + @uref{source/input/lsr/\DIR\/collated-files.html,@file{\DIR\}/} @end ifhtml @ifnothtml @file{\DIR\} @@ -135,7 +135,7 @@ @end ifclear -@c usage: @inputfileref{input@/regression,FILE@/-NAME.ly} +@c not used anymore @macro inputfileref{DIR,NAME} @uref{source/\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c @end macro diff --git a/Documentation/user/non-music.itely b/Documentation/user/non-music.itely index 536780c36f..74f4f5edfd 100644 --- a/Documentation/user/non-music.itely +++ b/Documentation/user/non-music.itely @@ -368,7 +368,7 @@ For more information on output formats, see @ref{Invoking lilypond}. @seealso -Examples: @inputfileref{input/regression/,clip-systems.ly} +Examples: @lsr{non-notation,clip-systems.ly} @node Including LilyPond files @@ -442,7 +442,7 @@ in the input are put in the output as-is. Extents of text items in the @file{texstr} backend, @example -lilypond -b texstr input/les-nereides.ly +lilypond -dbackend=texstr input/les-nereides.ly latex les-nereides.texstr @end example @@ -450,7 +450,7 @@ The last command produces @file{les-nereides.textmetrics}, which is read when you execute @example -lilypond -b tex input/les-nereides.ly +lilypond -dbackend=tex input/les-nereides.ly @end example Both @file{les-nereides.texstr} and @file{les-nereides.tex} need diff --git a/THANKS b/THANKS index 536b9516bc..c2b3ebe478 100644 --- a/THANKS +++ b/THANKS @@ -46,6 +46,7 @@ Cameron Horsburgh Carl Sorensen Christian Hitz David Bobroff +David Griffel Daniel Johnson Eduardo Vieira Frédéric Chiasson diff --git a/VERSION b/VERSION index 552b2a6eed..3debdc06bc 100644 --- a/VERSION +++ b/VERSION @@ -1,6 +1,6 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=2 MINOR_VERSION=11 -PATCH_LEVEL=26 +PATCH_LEVEL=27 MY_PATCH_LEVEL= diff --git a/buildscripts/makelsr.py b/buildscripts/makelsr.py index 6b72bbebee..cc79192bd8 100755 --- a/buildscripts/makelsr.py +++ b/buildscripts/makelsr.py @@ -4,7 +4,7 @@ import os import os.path import shutil -dirs = ['ancient','chords','connecting','contemporary','expressive','education','guitar','parts','pitch','repeats','scheme','spacing','staff','text','vocal','other'] +dirs = ['ancient','chords','connecting','contemporary','expressive','education','guitar','parts','pitch','repeats','scheme','spacing','staff','text','vocal','other','non-music','engravers','instrument-specific'] notsafe=[] try: @@ -19,6 +19,8 @@ def copy_with_warning(src, dest): def copy_dir_with_test(srcdir, destdir): + global notsafe + global notconvert if not(os.path.exists(srcdir)): return file_names = os.listdir (srcdir) @@ -28,7 +30,11 @@ def copy_dir_with_test(srcdir, destdir): dest = os.path.join (destdir, file) copy_with_warning(src, dest) os.system('convert-ly -e ' + dest) - s = os.system('lilypond -dno-print-pages -dsafe -o /tmp/lsrtest ' + dest) + if os.path.exists( dest + '~' ): + os.remove( dest + '~' ) + # the -V seems to make unsafe snippets fail nicer/sooner. + s = os.system('nice lilypond -V -dno-print-pages -dsafe -o /tmp/lsrtest ' + dest) + #s = os.system('nice lilypond -dno-print-pages -dsafe -o /tmp/lsrtest ' + dest) if s: notsafe.append(dest) @@ -45,8 +51,7 @@ for dir in dirs: file_names = os.listdir (destdir) for file in file_names: if (file.endswith ('.ly')): - if (file[:3] != 'AAA'): - os.remove( os.path.join(destdir,file) ) + os.remove( os.path.join(destdir,file) ) ## copy in new files from LSR download copy_dir_with_test( srcdir, destdir ) ## copy in new files in source tree @@ -57,6 +62,7 @@ file=open("lsr-unsafe.txt", 'w') for s in notsafe: file.write(s+'\n') file.close() + print print print "Unsafe files printed in lsr-unsafe.txt: CHECK MANUALLY!" diff --git a/buildscripts/mf-to-table.py b/buildscripts/mf-to-table.py index 24b0971d7a..7febb8fa32 100644 --- a/buildscripts/mf-to-table.py +++ b/buildscripts/mf-to-table.py @@ -58,7 +58,6 @@ def parse_logfile (fn): elif tags[0] == 'char': name = tags[9] - name = re.sub ('-', 'M', name) if group: name = group + '.' + name m = { diff --git a/input/lsr/GNUmakefile b/input/lsr/GNUmakefile index 951962ec08..6cc66a8a50 100644 --- a/input/lsr/GNUmakefile +++ b/input/lsr/GNUmakefile @@ -2,6 +2,7 @@ depth = ../../ SUBDIRS = ancient chords connecting contemporary education expressive SUBDIRS += guitar parts pitch repeats spacing staff text vocal scheme other +SUBDIRS += engravers non-music instrument-specific STEPMAKE_TEMPLATES=documentation texinfo tex LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc diff --git a/input/lsr/LSR.ly b/input/lsr/LSR.ly index dfeb0b6fa1..a05842e207 100644 --- a/input/lsr/LSR.ly +++ b/input/lsr/LSR.ly @@ -33,6 +33,12 @@ These pages show LilyPond examples (snippets) from the @strong{@uref{vocal/collated-files.html,Vocal music}} +@strong{@uref{non-music/collated-files.html,Non-musical}} + +@strong{@uref{instrument-specific/collated-files.html,Instrument-specific}} + +@strong{@uref{engravers/collated-files.html,Engravers}} + @strong{@uref{scheme/collated-files.html,Advanced stuff with scheme}} @strong{@uref{other/collated-files.html,Other: snippets that do not fit diff --git a/input/lsr/ancient/AAA-intro-advanced.ly b/input/lsr/ancient/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/ancient/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/ancient/AAA-intro.ly b/input/lsr/ancient/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/ancient/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/ancient/adding-a-figured-bass-above-or-below-the-notes.ly b/input/lsr/ancient/adding-a-figured-bass-above-or-below-the-notes.ly new file mode 100644 index 0000000000..acb771e151 --- /dev/null +++ b/input/lsr/ancient/adding-a-figured-bass-above-or-below-the-notes.ly @@ -0,0 +1,31 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header { texidoc = " +When writing a figured bass, here's a way to specify if you want your +figures to be placed above or below the bass notes, by defining the +BassFigureAlignmentPositioning #'direction property (exclusively in a +Staff context). Choices are #UP (or #1), #CENTER (or #0) and #DOWN (or +#-1). + +As you can see here, this property can be changed as many times as you +wish. Use \once \override if you dont want the tweak to apply to the +whole score. +" } + +bass = { \clef bass g4 b, c d e d8 c d2} +continuo = \figuremode { + < _ >4 < 6 >8 + \once \override Staff.BassFigureAlignmentPositioning #'direction = #CENTER + <5/> < _ >4 + \override Staff.BassFigureAlignmentPositioning #'direction = #UP + < _+ > < 6 > + \set Staff.useBassFigureExtenders = ##t + \override Staff.BassFigureAlignmentPositioning #'direction = #DOWN + < 4 >4. < 4 >8 < _+ >4 + } +\score { + << \new Staff = bassStaff \bass + \context Staff = bassStaff \continuo >> +} + diff --git a/input/lsr/ancient/demonstrating-lilypond-support-for-figured-bass.ly b/input/lsr/ancient/demonstrating-lilypond-support-for-figured-bass.ly new file mode 100644 index 0000000000..6f31a6ada4 --- /dev/null +++ b/input/lsr/ancient/demonstrating-lilypond-support-for-figured-bass.ly @@ -0,0 +1,28 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header { texidoc = " +This snippet shows LilyPond's \"limited support\" (says the +Documentation) for figured bass... well, maybe not so limited after +all; moreover, though there are numerous BassFigure objects you can +always use text markups instead to get precisely what you need. + +You can find all of these examples in the manual; read the \"Figured +bass\" section to learn how to add a figured bass with simple but +powerful notation. +" } + +{ + << + \new Voice { \clef bass dis4 c d ais g fis e a r gis d b, f,! e c c c1} + \figures { + < 6 >4 < 7\+ >8 < 6+ [_!] > + < 6 >4 <6 5 [3+] > + < _ >4 < 6 5/>4 + <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/> + < [4 6] 8 [_! 12] > < 5 \markup { \number 6 \super (1) } > + \set useBassFigureExtenders = ##t + <4 6> <3 6> <3 7> + } + >> +} diff --git a/input/lsr/chords/AAA-intro-chords.ly b/input/lsr/chords/AAA-intro-chords.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/chords/AAA-intro-chords.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/chords/AAA-intro.ly b/input/lsr/chords/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/chords/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/chords/customising-the-chord-naming-function-for-jazz.ly b/input/lsr/chords/customising-the-chord-naming-function-for-jazz.ly new file mode 100644 index 0000000000..0f078997f0 --- /dev/null +++ b/input/lsr/chords/customising-the-chord-naming-function-for-jazz.ly @@ -0,0 +1,155 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header { texidoc = " +Chord names are generated from a list pitches. The functions which +construct these names can be customised. Here are shown Jazz chords, +following Ignatzek (pp. 17-18, 1995) and an alternative Jazz chord +notation. + + +Chords following Banter (1987) can also be printed from this snippet, +but are turned off for brevity. + + + +" } + +chs = \transpose c' c' +{ + 1 + % m = minor triad + + \break + + + % triangle = maj + + \break + + + + \break + % 6 = major triad with added sixth + % m6 = minor triad with added sixth + + \break + + + + \break + + + + \break + + + + \break + + + + \break + + + + \break + + + + \break + + % add9 + +} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% alternate Jazz notation + +efullmusicJazzAlt = +{ + 1-\markup { "+" } + -\markup { \normal-size-super + % \override #'(font-family . math) "N" } + \override #'(font-family . math) "M" } + %%c:3.5.7 = \markup { \override #'(font-family . math) "M" } + %%c:3.5.7 = \markup { \normal-size-super "maj7" } + + -\markup { \super "o" } % should be $\circ$ ? + -\markup { \super \combine "o" "/" } + -\markup { \super "o7" } +} + +efullJazzAlt = #(sequential-music-to-chord-exceptions efullmusicJazzAlt #f) + +epartialmusicJazzAlt = { + 1-\markup { \normal-size-super "2" } + -\markup { "m" } + -\markup { \normal-size-super "sus4" } + -\markup { \normal-size-super "5" } + + %% TODO, partial exceptions + -\markup { "m" }-\markup { \normal-size-super "sus4" } + -\markup { "m" }-\markup { \normal-size-super "sus2" } +} + +epartialJazzAlt = #(sequential-music-to-chord-exceptions epartialmusicJazzAlt #f) + +jazzAltProperties = \sequential { + \set majorSevenSymbol = #whiteTriangleMarkup + \set chordNameSeparator = #(make-simple-markup "/") + \set chordNameExceptionsFull = #efullJazzAlt + \set chordNameExceptionsPartial = #epartialJazzAlt + \set chordNameFunction = #jazz-chord-names +} + +banterProperties = \sequential { + \set chordNameFunction = #banter-chord-names +} + +\score{ + << + \new ChordNames { + \set ChordNames.instrumentName = #"Ignatzek (default)" + \set ChordNames.shortInstrumentName = #"Def" + \chs + } + + \new ChordNames { + \jazzAltProperties + \set ChordNames.instrumentName = #"Alternative" + \set ChordNames.shortInstrumentName = #"Alt" + \chs + } + +%{ + + %% This is the Banter (1987) style. It gives exceedingly + %% verbose (wide) names, making the output file take up to 4 pages. + %% (FIXME: how big is is now?) + %% Turned off by default. + + %% FIXME: use smaller font for Banter (or remove some esoteric + %% chords). + + \new ChordNames { + \banterProperties + \set ChordNames.instrumentName = #"Banter" + \set ChordNames.shortInstrumentName = #"Ban" + \chs + } +%} + + \new Staff \transpose c c' { \chs } + >> + \layout { + indent = 3.\cm + \context { + \ChordNames + \consists Instrument_name_engraver + } + } +} + + diff --git a/input/lsr/connecting/AAA-intro-connecting.ly b/input/lsr/connecting/AAA-intro-connecting.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/connecting/AAA-intro-connecting.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/connecting/AAA-intro.ly b/input/lsr/connecting/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/connecting/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/contemporary/AAA-intro-contemporary.ly b/input/lsr/contemporary/AAA-intro-contemporary.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/contemporary/AAA-intro-contemporary.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/contemporary/AAA-intro.ly b/input/lsr/contemporary/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/contemporary/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/education/AAA-intro-advanced.ly b/input/lsr/education/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/education/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/education/AAA-intro.ly b/input/lsr/education/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/education/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/engravers/AAA-intro.ly b/input/lsr/engravers/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/engravers/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/engravers/GNUmakefile b/input/lsr/engravers/GNUmakefile new file mode 100644 index 0000000000..43325ab698 --- /dev/null +++ b/input/lsr/engravers/GNUmakefile @@ -0,0 +1,16 @@ + +depth = ../../../ + +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc + +## Hmm, would this work? No -- if we really want examples, move +## to other dir (input/) comes to mind. +## examples = font20 ancient-font +## LOCALSTEPMAKE_TEMPLATES += ly mutopia + +EXTRA_DIST_FILES= + +include $(depth)/make/stepmake.make + +TITLE=Advanced snippets diff --git a/input/lsr/engravers/SConscript b/input/lsr/engravers/SConscript new file mode 100644 index 0000000000..f72bfffc28 --- /dev/null +++ b/input/lsr/engravers/SConscript @@ -0,0 +1,4 @@ +# -*-python-*- + +Import ('env', 'collate') +collate (title = 'Advanced snippets') diff --git a/input/lsr/expressive/AAA-intro-advanced.ly b/input/lsr/expressive/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/expressive/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/expressive/AAA-intro.ly b/input/lsr/expressive/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/expressive/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/expressive/how-to-print-a-classical-trill-combining-acciaccatura,-trillspan-and-aftergrace.ly b/input/lsr/expressive/how-to-print-a-classical-trill-combining-acciaccatura,-trillspan-and-aftergrace.ly new file mode 100644 index 0000000000..fe3bd5b347 --- /dev/null +++ b/input/lsr/expressive/how-to-print-a-classical-trill-combining-acciaccatura,-trillspan-and-aftergrace.ly @@ -0,0 +1,39 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header { texidoc = " +Here is an excerpt of Mozart's KV545 piano Sonata (as brought to +Mutopia by A. Sierra), in which you can see the typical classical +trill, i.e. beginning with an acciaccatura, then trilling the whole +bar, and ending with two afterGrace notes. + +This combination, which is rather frequent (if not systematic) in +classical piano music, requires a rather precise typesetting: first the +\acciaccatura, then the \afterGrace (which you have to define using +Scheme-like syntax), then the main note, the TrillSpan and the two +final notes (don't forget the curly braces here). You can also notice +here the \slurDown, which avoids slurs collision. +" } + +rh = \relative { + b''8-3(\f g-1) d'2-5(\sf c16 b a g) +#(define afterGraceFraction (cons 31 32)) + \acciaccatura b8-3 \slurDown \afterGrace a1 \startTrillSpan \( ( {g16[ a ] ) +\stopTrillSpan} + g4 \) r2. +} + +lh = \relative { + \clef treble + d16_5 b'_1 g_2 b \repeat unfold 3 { d, b' g b } + \repeat unfold 4 { d, c' fis, c' } + 4 r2. +} + + +\score { + \new PianoStaff << + \new Staff \rh + \new Staff \lh + >> +} diff --git a/input/lsr/guitar/AAA-intro-advanced.ly b/input/lsr/guitar/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/guitar/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/guitar/AAA-intro.ly b/input/lsr/guitar/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/guitar/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/instrument-specific/AAA-intro.ly b/input/lsr/instrument-specific/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/instrument-specific/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/instrument-specific/GNUmakefile b/input/lsr/instrument-specific/GNUmakefile new file mode 100644 index 0000000000..43325ab698 --- /dev/null +++ b/input/lsr/instrument-specific/GNUmakefile @@ -0,0 +1,16 @@ + +depth = ../../../ + +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc + +## Hmm, would this work? No -- if we really want examples, move +## to other dir (input/) comes to mind. +## examples = font20 ancient-font +## LOCALSTEPMAKE_TEMPLATES += ly mutopia + +EXTRA_DIST_FILES= + +include $(depth)/make/stepmake.make + +TITLE=Advanced snippets diff --git a/input/lsr/instrument-specific/SConscript b/input/lsr/instrument-specific/SConscript new file mode 100644 index 0000000000..f72bfffc28 --- /dev/null +++ b/input/lsr/instrument-specific/SConscript @@ -0,0 +1,4 @@ +# -*-python-*- + +Import ('env', 'collate') +collate (title = 'Advanced snippets') diff --git a/input/lsr/non-music/AAA-intro.ly b/input/lsr/non-music/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/non-music/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/non-music/GNUmakefile b/input/lsr/non-music/GNUmakefile new file mode 100644 index 0000000000..43325ab698 --- /dev/null +++ b/input/lsr/non-music/GNUmakefile @@ -0,0 +1,16 @@ + +depth = ../../../ + +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc + +## Hmm, would this work? No -- if we really want examples, move +## to other dir (input/) comes to mind. +## examples = font20 ancient-font +## LOCALSTEPMAKE_TEMPLATES += ly mutopia + +EXTRA_DIST_FILES= + +include $(depth)/make/stepmake.make + +TITLE=Advanced snippets diff --git a/input/lsr/non-music/SConscript b/input/lsr/non-music/SConscript new file mode 100644 index 0000000000..f72bfffc28 --- /dev/null +++ b/input/lsr/non-music/SConscript @@ -0,0 +1,4 @@ +# -*-python-*- + +Import ('env', 'collate') +collate (title = 'Advanced snippets') diff --git a/input/lsr/non-music/clip-systems.ly b/input/lsr/non-music/clip-systems.ly new file mode 100644 index 0000000000..66e8e79428 --- /dev/null +++ b/input/lsr/non-music/clip-systems.ly @@ -0,0 +1,86 @@ +%% Do not edit this file; it is auto-generated from LSR! +\header { + texidoc = "Clipping snippets from a finished score + +Notes: + +@itemize @bullet +@item If system starts and ends are included, they include extents of the System grob, eg. instrument names. +@item Grace notes at the end point of the region are not included +@item Regions can span multiple systems. In this case, multiple EPS files are generated. +@end itemize + +This file needs to be run separately with @code{-dclip-systems}; the +collated-files.html of the regression test does not adequately show +the results. + +The result will be files named +@file{@var{base}-from-@var{start}-to-@var{end}[-@var{count}].eps}. +" + +} + +\version "2.11.23" + +#(ly:set-option 'clip-systems) + +#(set! output-count 1) + +origScore = \score{ + \relative { + \set Staff.instrumentName = #"bla" + c1 + d + \grace c16 + e1 + \key d\major + + f + \break \clef bass + g, + fis + } +} + +\book { + \score { + \origScore + \layout { + + %% each clip-region is a (START . END) pair + %% where both are rhythmic-locations. + + %% (make-rhythmic-locations BAR-NUMBER NUM DEN) + %% means NUM/DEN whole-notes into bar numbered BAR-NUMBER + + clip-regions + = #(list + (cons + (make-rhythmic-location 2 0 1) + (make-rhythmic-location 4 0 1)) + + (cons + (make-rhythmic-location 0 0 1) + (make-rhythmic-location 4 0 1)) + + (cons + (make-rhythmic-location 0 0 1) + (make-rhythmic-location 6 0 1)) + ) + } + } +} + +#(set! output-count 0) +#(ly:set-option 'clip-systems #f) + +\book { + \score { \origScore } + \markup { \bold \fontsize #6 clips } + \score { + \lyrics { + \markup { from-2.0.1-to-4.0.1-clip.eps } + \markup { \epsfile #X #30.0 #(format #f "~a-1-from-2.0.1-to-4.0.1-clip.eps" (ly:parser-output-name parser)) } + } + } +} diff --git a/input/lsr/non-music/toc.ly b/input/lsr/non-music/toc.ly new file mode 100644 index 0000000000..8b988ea4b7 --- /dev/null +++ b/input/lsr/non-music/toc.ly @@ -0,0 +1,30 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.26" + +\header { + texidoc = "A table of contents is included using +@code{\\markuplines \\table-of-contents}. The toc items are added with +the @code{\\tocItem} command." +} + +#(set-default-paper-size "a6") + +\book { + \markuplines \table-of-contents + \pageBreak + + \tocItem \markup "The first score" + \score { + { + c'1 \pageBreak + \mark "A" \tocItem \markup "Mark A" + d' + } + } + \pageBreak + \tocItem \markup "The second score" + \score { + { e' } + \header { piece = "Second score" } + } +} \ No newline at end of file diff --git a/input/lsr/other/AAA-intro-advanced.ly b/input/lsr/other/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/other/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/other/AAA-intro.ly b/input/lsr/other/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/other/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/parts/AAA-intro-advanced.ly b/input/lsr/parts/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/parts/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/parts/AAA-intro.ly b/input/lsr/parts/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/parts/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/pitch/AAA-intro-advanced.ly b/input/lsr/pitch/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/pitch/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/pitch/AAA-intro.ly b/input/lsr/pitch/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/pitch/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/pitch/combining-two-parts-on-the-same-staff.ly b/input/lsr/pitch/combining-two-parts-on-the-same-staff.ly deleted file mode 100644 index 3569f3f5a5..0000000000 --- a/input/lsr/pitch/combining-two-parts-on-the-same-staff.ly +++ /dev/null @@ -1,74 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" - -\header { texidoc = " -The part combiner tool ( \partcombine command ) allows you to combine -different parts on a same Staff. You can choose whether you want or -don't want to add texts such as \"solo\" or \"a2\", by defining the -printPartCombineTexts property. - -For vocal scores (hymns), there is no need to add solo/a2 texts, so -they should be switched off. However, you'd better not use it if there -are any solos, as they won't be indicated. In such cases, you may -simply wan't to use standard LilyPond polyphony. - -This snippet presents the three ways two parts can be printed on a same -staff : standard polyphony, \partcombine whitout texts, and -\partcombine with texts. - - -" } - -musicUp = { \time 4/4 - \relative c'' { - a4 c4.(g8) a4 | - g4 e' g,( a8 b) | - c b a2. - } -} - -musicDown = { - \relative c'' { - g4 e4.(d8) c4 | - r2 g'4( f8 e) | - d2 a - } -} -\score{ - \new Staff { - \set Staff.instrumentName = "Standard polyphony " - << \musicUp \\ \musicDown >> - } - \layout{ - indent = 6.0\cm - } -} - -\score{ - \context Staff { - \set Staff.instrumentName = "PartCombine without texts " - \partcombine \musicUp \musicDown - } - \layout{ - indent = 6.0\cm - \context { - \Voice - printPartCombineTexts = ##f - } - } -} - -\score{ - \context Staff { - \set Staff.instrumentName = "PartCombine with texts " - \partcombine \musicUp \musicDown - } - \layout{ - indent = 6.0\cm - \context { - \Voice - printPartCombineTexts = ##t - } - } -} - diff --git a/input/lsr/pitch/preventing-stem-extension.ly b/input/lsr/pitch/preventing-stem-extension.ly deleted file mode 100644 index 731a76e0de..0000000000 --- a/input/lsr/pitch/preventing-stem-extension.ly +++ /dev/null @@ -1,30 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" - -\header { texidoc = " -Extending stems to the center line may be prevented using -@code{no-stem-extend}. - - -" } - -\score { - \context Voice \relative c { - \context Staff << - \new Voice { - f2 f8 g a b - \override Stem #'no-stem-extend = ##t - f2 f8 g a b - } - \new Voice { - c''2 c8 b a g - \override Stem #'no-stem-extend = ##t - c2 c8 b a g - } - >> - - } - -} - - diff --git a/input/lsr/pitch/rest-styles.ly b/input/lsr/pitch/rest-styles.ly deleted file mode 100644 index c14c92710f..0000000000 --- a/input/lsr/pitch/rest-styles.ly +++ /dev/null @@ -1,39 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" - -\header { texidoc = " -Rests may be used in various styles. - - - -" } - -\layout { - indent = 0.0 - raggedright = ##t -} - -\context Staff \relative c { - \set Score.timing = ##f - \override Staff.Rest #'style = #'mensural - r\maxima^\markup \typewriter { mensural } - r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 - \bar "" - - \override Staff.Rest #'style = #'neomensural - r\maxima^\markup \typewriter { neomensural } - r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 - \bar "" - - \override Staff.Rest #'style = #'classical - r\maxima^\markup \typewriter { classical } - r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 - \bar "" - - \override Staff.Rest #'style = #'default - r\maxima^\markup \typewriter { default } - r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 - -} - - diff --git a/input/lsr/repeats/AAA-intro-advanced.ly b/input/lsr/repeats/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/repeats/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/repeats/AAA-intro.ly b/input/lsr/repeats/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/repeats/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/scheme/AAA-intro-advanced.ly b/input/lsr/scheme/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/scheme/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/scheme/AAA-intro.ly b/input/lsr/scheme/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/scheme/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/spacing/AAA-intro-advanced.ly b/input/lsr/spacing/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/spacing/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/spacing/AAA-intro.ly b/input/lsr/spacing/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/spacing/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/spacing/page-label.ly b/input/lsr/spacing/page-label.ly new file mode 100644 index 0000000000..d2ea23efd9 --- /dev/null +++ b/input/lsr/spacing/page-label.ly @@ -0,0 +1,47 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.26" + +\header { + texidoc = "Page labels may be placed inside music or at top-level, +and refered to in markups." +} + +#(set-default-paper-size "a6") + +#(define-markup-command (toc-line layout props label text) (symbol? markup?) + (interpret-markup layout props + (markup #:fill-line (text #:page-ref label "8" "?")))) + +\book { + \markup \huge \fill-line { \null "Title Page" \null } + + \pageBreak + + \label #'toc + \markup \column { + \large \fill-line { \null "Table of contents" \null } + \toc-line #'toc "Table of contents" + \toc-line #'firstScore "First Score" + \toc-line #'markA "Mark A" + \toc-line #'markB "Mark B" + \toc-line #'markC "Mark C" + \toc-line #'unknown "Unknown label" + } + + \pageBreak + + \label #'firstScore + \score { + { c'2 c' + \mark \markup { A (page \concat { \page-ref #'markA "0" "?" ) }} \label #'markA + c' c' + \pageBreak + \mark "B" \label #'markB + d' d' + d' d' + \once \override Score . RehearsalMark #'break-visibility = #begin-of-line-invisible + \mark "C" \label #'markC + } + \header { piece = "First score" } + } +} \ No newline at end of file diff --git a/input/lsr/staff/AAA-intro-advanced.ly b/input/lsr/staff/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/staff/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/staff/AAA-intro.ly b/input/lsr/staff/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/staff/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/text/AAA-intro-advanced.ly b/input/lsr/text/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/text/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/text/AAA-intro.ly b/input/lsr/text/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/text/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/lsr/text/flat-and-sharp-symbols-in-text-markups.ly b/input/lsr/text/flat-and-sharp-symbols-in-text-markups.ly new file mode 100644 index 0000000000..568bd50ecd --- /dev/null +++ b/input/lsr/text/flat-and-sharp-symbols-in-text-markups.ly @@ -0,0 +1,26 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header { texidoc = " +If you want to use flat or sharp symbols in text, you may want to +adjust the horizontal and vertical position of the \flat or \sharp. +" } + +raisedFlat = \markup { \translate #(cons -0.4 0.5) \smaller \flat } + + + \new Staff { + +\set Staff.instrumentName = \markup { \center-align { \line { Solo Clar. } {\line { "in B"\raisedFlat } } } } + +\relative c'{ + +des1^\markup { "D" \translate #(cons -0.3 0.4) \flat "major" } ~ | des | + +dis1^\markup { "D" \translate #(cons -0.3 0.9) \sharp "minor" } ~ | dis1 \bar "||" + + + } } + +\paper { +ragged-right = ##t } diff --git a/input/lsr/text/markup-lines.ly b/input/lsr/text/markup-lines.ly new file mode 100644 index 0000000000..695d87dce1 --- /dev/null +++ b/input/lsr/text/markup-lines.ly @@ -0,0 +1,39 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.25" + +\header { + texidoc = "Text that can spread over pages is entered with the +@code{\\markuplines} command." +} + +#(set-default-paper-size "a6") + +#(define-markup-list-command (paragraph layout props args) (markup-list?) + (interpret-markup-list layout props + (make-justified-lines-markup-list (cons (make-hspace-markup 2) args)))) + +%% Candide, Voltaire +\markuplines \override-lines #'(baseline-skip . 2.5) { + \paragraph { + Il y avait en Westphalie, dans le château de M. le baron de + Thunder-ten-tronckh, un jeune garçon à qui la nature avait donné + les mœurs les plus douces. Sa physionomie annonçait son âme. + Il avait le jugement assez droit, avec l'esprit le plus simple ; + c'est, je crois, pour cette raison qu'on le nommait Candide. Les + anciens domestiques de la maison soupçonnaient qu'il était fils + de la sœur de monsieur le baron et d'un bon et honnête + gentilhomme du voisinage, que cette demoiselle ne voulut jamais + épouser parce qu'il n'avait pu prouver que soixante et onze + quartiers, et que le reste de son arbre généalogique avait été + perdu par l'injure du temps. + } + \paragraph { + Monsieur le baron était un des plus puissants seigneurs de la + Westphalie, car son château avait une porte et des fenêtres. Sa + grande salle même était ornée d'une tapisserie. Tous les chiens + de ses basses-cours composaient une meute dans le besoin ; ses + palefreniers étaient ses piqueurs; le vicaire du village était + son grand-aumônier. Ils l'appelaient tous monseigneur, et ils + riaient quand il faisait des contes. + } +} diff --git a/input/lsr/text/printing-the-title-on-every-page-of-your-score.ly b/input/lsr/text/printing-the-title-on-every-page-of-your-score.ly new file mode 100644 index 0000000000..853c485a66 --- /dev/null +++ b/input/lsr/text/printing-the-title-on-every-page-of-your-score.ly @@ -0,0 +1,35 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header { texidoc = " +With this trick, the title of your work will be printed in small on top +of every page, using evenHeaderMarkup and oddHeaderMarkup. +" } + +\paper{ +oddHeaderMarkup = \markup +\fill-line { +\fromproperty #'header:title +" " % This will make sure that the header is never completely empty, to +% avoid some layout problems. Also, moving it in between the title and +% the page number, makes these be typeset left and right aligned, respectively. +\on-the-fly #print-page-number-check-first \fromproperty #'page:page-number-string +} + +evenHeaderMarkup = \markup +\fill-line { +\on-the-fly #print-page-number-check-first \fromproperty #'page:page-number-string +" " +\fromproperty #'header:title +} +} +\header { + title = "This title will be repeated" + subtitle = "whereas this subtitle won't" + } + + \score { \new Staff {\repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak +\repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak +\repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak +\repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak + } } diff --git a/input/lsr/vocal/AAA-intro-advanced.ly b/input/lsr/vocal/AAA-intro-advanced.ly deleted file mode 100644 index fe8a536d36..0000000000 --- a/input/lsr/vocal/AAA-intro-advanced.ly +++ /dev/null @@ -1,22 +0,0 @@ -%% Do not edit this file; it is auto-generated from LSR! -\version "2.11.23" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/lsr/vocal/AAA-intro.ly b/input/lsr/vocal/AAA-intro.ly new file mode 100644 index 0000000000..4997892c3c --- /dev/null +++ b/input/lsr/vocal/AAA-intro.ly @@ -0,0 +1,17 @@ +%% Do not edit this file; it is auto-generated from LSR! +\version "2.11.23" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/manual/font-table.ly b/input/manual/font-table.ly index 523db092d9..74f0ef978a 100644 --- a/input/manual/font-table.ly +++ b/input/manual/font-table.ly @@ -90,9 +90,8 @@ (ly:font-load "emmentaler-20")))) (lines (doc-chars glyphs '())) (pages (group-lines (reverse lines)))) - (for-each - (lambda (x) - (collect-scores-for-book - parser - (make-override-markup '(word-space . 4) x))) - pages)) + (collect-scores-for-book + parser + (map (lambda (x) + (make-override-markup '(word-space . 4) x)) + pages))) diff --git a/input/new/ancient/AAA-intro-advanced.ly b/input/new/ancient/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/ancient/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/chords/AAA-intro-chords.ly b/input/new/chords/AAA-intro-chords.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/chords/AAA-intro-chords.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/chords/AAA-intro.ly b/input/new/chords/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/chords/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/connecting/AAA-intro-connecting.ly b/input/new/connecting/AAA-intro-connecting.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/connecting/AAA-intro-connecting.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/connecting/AAA-intro.ly b/input/new/connecting/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/connecting/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/contemporary/AAA-intro-contemporary.ly b/input/new/contemporary/AAA-intro-contemporary.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/contemporary/AAA-intro-contemporary.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/contemporary/AAA-intro.ly b/input/new/contemporary/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/contemporary/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/education/AAA-intro-advanced.ly b/input/new/education/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/education/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/education/AAA-intro.ly b/input/new/education/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/education/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/engravers/AAA-intro.ly b/input/new/engravers/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/engravers/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/engravers/GNUmakefile b/input/new/engravers/GNUmakefile new file mode 100644 index 0000000000..43325ab698 --- /dev/null +++ b/input/new/engravers/GNUmakefile @@ -0,0 +1,16 @@ + +depth = ../../../ + +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc + +## Hmm, would this work? No -- if we really want examples, move +## to other dir (input/) comes to mind. +## examples = font20 ancient-font +## LOCALSTEPMAKE_TEMPLATES += ly mutopia + +EXTRA_DIST_FILES= + +include $(depth)/make/stepmake.make + +TITLE=Advanced snippets diff --git a/input/new/engravers/SConscript b/input/new/engravers/SConscript new file mode 100644 index 0000000000..f72bfffc28 --- /dev/null +++ b/input/new/engravers/SConscript @@ -0,0 +1,4 @@ +# -*-python-*- + +Import ('env', 'collate') +collate (title = 'Advanced snippets') diff --git a/input/new/expressive/AAA-intro-advanced.ly b/input/new/expressive/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/expressive/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/expressive/AAA-intro.ly b/input/new/expressive/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/expressive/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/guitar/AAA-intro-advanced.ly b/input/new/guitar/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/guitar/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/guitar/AAA-intro.ly b/input/new/guitar/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/guitar/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/instrument-specific/AAA-intro.ly b/input/new/instrument-specific/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/instrument-specific/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/instrument-specific/GNUmakefile b/input/new/instrument-specific/GNUmakefile new file mode 100644 index 0000000000..43325ab698 --- /dev/null +++ b/input/new/instrument-specific/GNUmakefile @@ -0,0 +1,16 @@ + +depth = ../../../ + +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc + +## Hmm, would this work? No -- if we really want examples, move +## to other dir (input/) comes to mind. +## examples = font20 ancient-font +## LOCALSTEPMAKE_TEMPLATES += ly mutopia + +EXTRA_DIST_FILES= + +include $(depth)/make/stepmake.make + +TITLE=Advanced snippets diff --git a/input/new/instrument-specific/SConscript b/input/new/instrument-specific/SConscript new file mode 100644 index 0000000000..f72bfffc28 --- /dev/null +++ b/input/new/instrument-specific/SConscript @@ -0,0 +1,4 @@ +# -*-python-*- + +Import ('env', 'collate') +collate (title = 'Advanced snippets') diff --git a/input/new/non-music/AAA-intro.ly b/input/new/non-music/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/non-music/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/non-music/GNUmakefile b/input/new/non-music/GNUmakefile new file mode 100644 index 0000000000..43325ab698 --- /dev/null +++ b/input/new/non-music/GNUmakefile @@ -0,0 +1,16 @@ + +depth = ../../../ + +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc + +## Hmm, would this work? No -- if we really want examples, move +## to other dir (input/) comes to mind. +## examples = font20 ancient-font +## LOCALSTEPMAKE_TEMPLATES += ly mutopia + +EXTRA_DIST_FILES= + +include $(depth)/make/stepmake.make + +TITLE=Advanced snippets diff --git a/input/new/non-music/SConscript b/input/new/non-music/SConscript new file mode 100644 index 0000000000..f72bfffc28 --- /dev/null +++ b/input/new/non-music/SConscript @@ -0,0 +1,4 @@ +# -*-python-*- + +Import ('env', 'collate') +collate (title = 'Advanced snippets') diff --git a/input/new/non-music/clip-systems.ly b/input/new/non-music/clip-systems.ly new file mode 100644 index 0000000000..06247e76b5 --- /dev/null +++ b/input/new/non-music/clip-systems.ly @@ -0,0 +1,85 @@ +\header { + texidoc = "Clipping snippets from a finished score + +Notes: + +@itemize @bullet +@item If system starts and ends are included, they include extents of the System grob, eg. instrument names. +@item Grace notes at the end point of the region are not included +@item Regions can span multiple systems. In this case, multiple EPS files are generated. +@end itemize + +This file needs to be run separately with @code{-dclip-systems}; the +collated-files.html of the regression test does not adequately show +the results. + +The result will be files named +@file{@var{base}-from-@var{start}-to-@var{end}[-@var{count}].eps}. +" + +} + +\version "2.10.0" + +#(ly:set-option 'clip-systems) + +#(set! output-count 1) + +origScore = \score{ + \relative { + \set Staff.instrumentName = #"bla" + c1 + d + \grace c16 + e1 + \key d\major + + f + \break \clef bass + g, + fis + } +} + +\book { + \score { + \origScore + \layout { + + %% each clip-region is a (START . END) pair + %% where both are rhythmic-locations. + + %% (make-rhythmic-locations BAR-NUMBER NUM DEN) + %% means NUM/DEN whole-notes into bar numbered BAR-NUMBER + + clip-regions + = #(list + (cons + (make-rhythmic-location 2 0 1) + (make-rhythmic-location 4 0 1)) + + (cons + (make-rhythmic-location 0 0 1) + (make-rhythmic-location 4 0 1)) + + (cons + (make-rhythmic-location 0 0 1) + (make-rhythmic-location 6 0 1)) + ) + } + } +} + +#(set! output-count 0) +#(ly:set-option 'clip-systems #f) + +\book { + \score { \origScore } + \markup { \bold \fontsize #6 clips } + \score { + \lyrics { + \markup { from-2.0.1-to-4.0.1-clip.eps } + \markup { \epsfile #X #30.0 #(format #f "~a-1-from-2.0.1-to-4.0.1-clip.eps" (ly:parser-output-name parser)) } + } + } +} diff --git a/input/new/non-music/toc.ly b/input/new/non-music/toc.ly new file mode 100644 index 0000000000..e6164ea602 --- /dev/null +++ b/input/new/non-music/toc.ly @@ -0,0 +1,29 @@ +\version "2.11.26" + +\header { + texidoc = "A table of contents is included using +@code{\\markuplines \\table-of-contents}. The toc items are added with +the @code{\\tocItem} command." +} + +#(set-default-paper-size "a6") + +\book { + \markuplines \table-of-contents + \pageBreak + + \tocItem \markup "The first score" + \score { + { + c'1 \pageBreak + \mark "A" \tocItem \markup "Mark A" + d' + } + } + \pageBreak + \tocItem \markup "The second score" + \score { + { e' } + \header { piece = "Second score" } + } +} \ No newline at end of file diff --git a/input/new/other/AAA-intro-advanced.ly b/input/new/other/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/other/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/other/AAA-intro.ly b/input/new/other/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/other/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/parts/AAA-intro-advanced.ly b/input/new/parts/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/parts/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/parts/AAA-intro.ly b/input/new/parts/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/parts/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/pitch/AAA-intro-advanced.ly b/input/new/pitch/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/pitch/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/pitch/AAA-intro.ly b/input/new/pitch/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/pitch/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/repeats/AAA-intro-advanced.ly b/input/new/repeats/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/repeats/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/repeats/AAA-intro.ly b/input/new/repeats/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/repeats/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/scheme/AAA-intro-advanced.ly b/input/new/scheme/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/scheme/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/scheme/AAA-intro.ly b/input/new/scheme/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/scheme/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/spacing/AAA-intro-advanced.ly b/input/new/spacing/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/spacing/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/spacing/AAA-intro.ly b/input/new/spacing/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/spacing/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/spacing/page-label.ly b/input/new/spacing/page-label.ly new file mode 100644 index 0000000000..cb023872dc --- /dev/null +++ b/input/new/spacing/page-label.ly @@ -0,0 +1,46 @@ +\version "2.11.26" + +\header { + texidoc = "Page labels may be placed inside music or at top-level, +and refered to in markups." +} + +#(set-default-paper-size "a6") + +#(define-markup-command (toc-line layout props label text) (symbol? markup?) + (interpret-markup layout props + (markup #:fill-line (text #:page-ref label "8" "?")))) + +\book { + \markup \huge \fill-line { \null "Title Page" \null } + + \pageBreak + + \label #'toc + \markup \column { + \large \fill-line { \null "Table of contents" \null } + \toc-line #'toc "Table of contents" + \toc-line #'firstScore "First Score" + \toc-line #'markA "Mark A" + \toc-line #'markB "Mark B" + \toc-line #'markC "Mark C" + \toc-line #'unknown "Unknown label" + } + + \pageBreak + + \label #'firstScore + \score { + { c'2 c' + \mark \markup { A (page \concat { \page-ref #'markA "0" "?" ) }} \label #'markA + c' c' + \pageBreak + \mark "B" \label #'markB + d' d' + d' d' + \once \override Score . RehearsalMark #'break-visibility = #begin-of-line-invisible + \mark "C" \label #'markC + } + \header { piece = "First score" } + } +} \ No newline at end of file diff --git a/input/new/staff/AAA-intro-advanced.ly b/input/new/staff/AAA-intro-advanced.ly deleted file mode 100644 index 48fe478494..0000000000 --- a/input/new/staff/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.11.15" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/staff/AAA-intro.ly b/input/new/staff/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/staff/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/text/AAA-intro-advanced.ly b/input/new/text/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/text/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/text/AAA-intro.ly b/input/new/text/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/text/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/new/text/markup-lines.ly b/input/new/text/markup-lines.ly new file mode 100644 index 0000000000..752dcf3bcb --- /dev/null +++ b/input/new/text/markup-lines.ly @@ -0,0 +1,38 @@ +\version "2.11.25" + +\header { + texidoc = "Text that can spread over pages is entered with the +@code{\\markuplines} command." +} + +#(set-default-paper-size "a6") + +#(define-markup-list-command (paragraph layout props args) (markup-list?) + (interpret-markup-list layout props + (make-justified-lines-markup-list (cons (make-hspace-markup 2) args)))) + +%% Candide, Voltaire +\markuplines \override-lines #'(baseline-skip . 2.5) { + \paragraph { + Il y avait en Westphalie, dans le château de M. le baron de + Thunder-ten-tronckh, un jeune garçon à qui la nature avait donné + les mœurs les plus douces. Sa physionomie annonçait son âme. + Il avait le jugement assez droit, avec l'esprit le plus simple ; + c'est, je crois, pour cette raison qu'on le nommait Candide. Les + anciens domestiques de la maison soupçonnaient qu'il était fils + de la sœur de monsieur le baron et d'un bon et honnête + gentilhomme du voisinage, que cette demoiselle ne voulut jamais + épouser parce qu'il n'avait pu prouver que soixante et onze + quartiers, et que le reste de son arbre généalogique avait été + perdu par l'injure du temps. + } + \paragraph { + Monsieur le baron était un des plus puissants seigneurs de la + Westphalie, car son château avait une porte et des fenêtres. Sa + grande salle même était ornée d'une tapisserie. Tous les chiens + de ses basses-cours composaient une meute dans le besoin ; ses + palefreniers étaient ses piqueurs; le vicaire du village était + son grand-aumônier. Ils l'appelaient tous monseigneur, et ils + riaient quand il faisait des contes. + } +} diff --git a/input/new/vocal/AAA-intro-advanced.ly b/input/new/vocal/AAA-intro-advanced.ly deleted file mode 100644 index b907dd0d52..0000000000 --- a/input/new/vocal/AAA-intro-advanced.ly +++ /dev/null @@ -1,21 +0,0 @@ -\version "2.10.0" -%% +.ly: Be the first .ly file for lys-to-tely.py. -%% Better to make lys-to-tely.py include "introduction.texi" or -%% other .texi documents too? - -\header{ -texidoc = #(string-append " -@unnumbered Introduction - -This document shows examples from the -@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. - -In the web version of this document, you can click on the file name -or figure for each example to see the corresponding input file. - -This document is for LilyPond version -" (lilypond-version) "." ) -} - -% make sure .png is generated. -\lyrics { " " } diff --git a/input/new/vocal/AAA-intro.ly b/input/new/vocal/AAA-intro.ly new file mode 100644 index 0000000000..93c62a94e3 --- /dev/null +++ b/input/new/vocal/AAA-intro.ly @@ -0,0 +1,16 @@ +\version "2.10.0" + +\header{ +texidoc = " +@unnumbered Introduction + +This document shows examples from the +@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}. + +In the web version of this document, you can click on the file name +or figure for each example to see the corresponding input file." +} + +% make sure .png is generated. +\markup{ "This document is for LilyPond version" #(ly:export(lilypond-version)) } + diff --git a/input/regression/tuplet-no-stems.ly b/input/regression/tuplet-no-stems.ly new file mode 100644 index 0000000000..c15a3b2cf0 --- /dev/null +++ b/input/regression/tuplet-no-stems.ly @@ -0,0 +1,28 @@ +\header{ + texidoc = "Removing Stem_engraver doesn't cause crashes." +} + + +\version "2.10.27" + +\layout{ + \context{ + \TabStaff + \override TimeSignature #'stencil = ##f + } + \context{ + \TabVoice + \remove Beam_engraver + \remove Stem_engraver + \override TupletBracket #'number-visibility = ##f + } +} + +partition = { + \times 2/3 { f8 g a } +} + + +\new TabStaff { + \partition +} diff --git a/lily/tuplet-bracket.cc b/lily/tuplet-bracket.cc index 06411f72f2..b27c783208 100644 --- a/lily/tuplet-bracket.cc +++ b/lily/tuplet-bracket.cc @@ -91,8 +91,10 @@ Tuplet_bracket::parallel_beam (Grob *me_grob, vector const &cols, Drul_array stems (Note_column::get_stem (cols[0]), Note_column::get_stem (cols.back ())); - if (dynamic_cast (stems[RIGHT])->get_column () - != me->get_bound (RIGHT)->get_column ()) + if (!stems[RIGHT] + || !stems[LEFT] + || (dynamic_cast (stems[RIGHT])->get_column () + != me->get_bound (RIGHT)->get_column ())) return 0; Drul_array beams; @@ -759,6 +761,9 @@ Tuplet_bracket::calc_cross_staff (SCM smob) for (vsize i = 0; i < cols.size (); i++) { Grob *stem = unsmob_grob (cols[i]->get_object ("stem")); + if (!stem) + continue; + if (to_boolean (stem->get_property ("cross-staff"))) return SCM_BOOL_T; diff --git a/mf/README b/mf/README index 1d6c4c74e5..89eef4ee22 100644 --- a/mf/README +++ b/mf/README @@ -1,27 +1,28 @@ -This is a font of music symbols. All MF sources are original. Most -of the documentation is in comments in the MF code. +This is a font of music symbols. All MF sources are original. Most of the +documentation is in comments in the MF code. Non-square pixels are not supported; with other words, the horizontal and vertical resolution of the output device must be the same. Currently, outline fonts are created by using `autotrace', but we are -already in the process to convert the MF code directly to PostScript code +already in the process of converting the MF code directly to PostScript code with a tool called `mf2pt1', which in turn calls `FontForge' to postprocess the output (mainly to remove outline overlaps and to add hints). The recommended calling sequence of mf2pt1 is - mf2pt1 --rounding=0.001 + mf2pt1 --rounding=0.001 You need mf2pt1 version 2.1 or newer. + Here some guidelines to assure a clean conversion. . Never use `---'. Replace it with `--' together with explicit path directions (if necessary). -. Don't use self-intersecting outlines in general since it can confuse +. Don't use self-intersecting outlines in general since they can confuse mf2pt1's algorithm to get the orientation of a closed path. Note that MetaPost's implementation of the `turningnumber' primitive (which would immediately give the orientation of a path) is severely broken before @@ -29,7 +30,7 @@ Here some guidelines to assure a clean conversion. to work around this bug. . If outlines intersect, avoid grazing intersections. In case two outlines - intersect in an explicitly defined point, include this point into both + intersect in an explicitly defined point, include this point in both intersecting paths to avoid problems due to rounding errors. . Don't use `draw' with a polygonal pen but for straight lines (consisting @@ -43,6 +44,25 @@ Here some guidelines to assure a clean conversion. overlaps. +Some glyph name rules: + +. Most glyph names have the form ., where is defined + with the `fet_begingroup' command, and is given with + `fet_beginchar' (within a `fet_begingroup' block). Example: + `clefs.vaticana.fa'. + +. Sometimes it would be sensible to use negative numbers in glyph names. + However, the `-' character shouldn't be used in a glyph name. Replace it + with `M'. For example, write `rests.M3mensural' instead of + `rests.-3mensural'. + +. Glyphs which exist in both an `up' and `down' version should start the + part with either `u' or `d', respectively. Example: `flags.d3', + `flags.u3'. Glyphs which are neutral w.r.t. the direction, and where + members of the glyph group exist which have `up' and `down' versions, + should start with an `s'. Example: `noteheads.s0re'. + + Some design rules: . Always use smooth curve transitions. Since this is difficult to see in @@ -57,7 +77,7 @@ Some design rules: . Use rounded corners. -Finally, some rules to assure that rasterization at low resolutions give +Finally, some rules to assure that rasterization at low resolutions gives good results. Today, this is a minor issue, but in some cases it might show design flaws. diff --git a/mf/feta-bolletjes.mf b/mf/feta-bolletjes.mf index 7be4addb5f..1926fc5224 100644 --- a/mf/feta-bolletjes.mf +++ b/mf/feta-bolletjes.mf @@ -190,13 +190,13 @@ def draw_longa (expr up) = enddef; -fet_beginchar ("Longa notehead", "u-2"); +fet_beginchar ("Longa notehead", "uM2"); draw_longa (true); draw_staff (-2, 2, 0); fet_endchar; -fet_beginchar ("Longa notehead", "d-2"); +fet_beginchar ("Longa notehead", "dM2"); draw_longa (false); draw_staff (-2, 2, 0); @@ -204,13 +204,13 @@ fet_endchar; if test > 0: - fet_beginchar ("Longa notehead", "u-2"); + fet_beginchar ("Longa notehead", "uM2"); draw_longa (true); draw_staff (-2, 2, 0.5); fet_endchar; - fet_beginchar ("Longa notehead", "d-2"); + fet_beginchar ("Longa notehead", "dM2"); draw_longa (false); draw_staff (-2, 2, 0.5); @@ -249,7 +249,7 @@ def draw_brevis = enddef; -fet_beginchar ("Brevis notehead", "s-1"); +fet_beginchar ("Brevis notehead", "sM1"); draw_brevis; draw_staff (-2, 2, 0); @@ -257,7 +257,7 @@ fet_endchar; if test > 0: - fet_beginchar ("Brevis notehead", "s-1"); + fet_beginchar ("Brevis notehead", "sM1"); draw_brevis; draw_staff (-2, 2, 0.5); diff --git a/mf/feta-eindelijk.mf b/mf/feta-eindelijk.mf index 56bd2ba6d1..c1618ece73 100644 --- a/mf/feta-eindelijk.mf +++ b/mf/feta-eindelijk.mf @@ -85,7 +85,7 @@ fet_beginchar ("half rest (outside staff)", "1o"); fet_endchar; -fet_beginchar ("maxima rest", "-3"); +fet_beginchar ("maxima rest", "M3"); set_char_box (0, 3 breve_rest_x#, breve_rest_y#, breve_rest_y#); draw_block ((0, -breve_rest_y + feta_shift), @@ -97,7 +97,7 @@ fet_beginchar ("maxima rest", "-3"); fet_endchar; -fet_beginchar ("longa rest", "-2"); +fet_beginchar ("longa rest", "M2"); set_char_box (0, breve_rest_x#, breve_rest_y#, breve_rest_y#); draw_block ((0, -breve_rest_y + feta_shift), @@ -107,7 +107,7 @@ fet_beginchar ("longa rest", "-2"); fet_endchar; -fet_beginchar ("breve rest", "-1"); +fet_beginchar ("breve rest", "M1"); set_char_box (0, breve_rest_x#, 0, breve_rest_y#); draw_block ((0, 0), (breve_rest_x, breve_rest_y)); diff --git a/mf/feta-pendaal.mf b/mf/feta-pendaal.mf index 892717510b..ccdad5a0b1 100644 --- a/mf/feta-pendaal.mf +++ b/mf/feta-pendaal.mf @@ -88,7 +88,7 @@ fet_endchar; %% ugh. rounded corners! -fet_beginchar ("Pedal dash", "-"); +fet_beginchar ("Pedal dash", "M"); save dash_thickness; dash_thickness# := penw#; diff --git a/mf/parmesan-accidentals.mf b/mf/parmesan-accidentals.mf index 7b27c91be8..4d8da44004 100644 --- a/mf/parmesan-accidentals.mf +++ b/mf/parmesan-accidentals.mf @@ -17,7 +17,7 @@ fet_begingroup ("accidentals"); % % % -fet_beginchar ("Ed. Med. Flat" , "medicaea-1"); +fet_beginchar ("Ed. Med. Flat" , "medicaeaM1"); set_char_box (0.1 staff_space#, 0.6 staff_space#, 0.6 staff_space#, 1.0 staff_space#); @@ -85,7 +85,7 @@ fet_endchar; % % % -fet_beginchar ("Ed. Vat. Flat" , "vaticana-1"); +fet_beginchar ("Ed. Vat. Flat" , "vaticanaM1"); z1 = (0.00 staff_space, +0.80 staff_space); z2 = (0.00 staff_space, -0.08 staff_space); z3 = (0.25 staff_space, -0.23 staff_space); @@ -221,7 +221,7 @@ fet_beginchar ("Mensural Sharp" , "mensural1"); fet_endchar; -fet_beginchar ("Mensural Flat" , "mensural-1"); +fet_beginchar ("Mensural Flat" , "mensuralM1"); save stemthick; define_pixels (stemthick); @@ -285,7 +285,7 @@ fet_beginchar ("Mensural Flat" , "mensural-1"); fet_endchar; -fet_beginchar ("Hufnagel Flat" , "hufnagel-1"); +fet_beginchar ("Hufnagel Flat" , "hufnagelM1"); save stemthick; define_pixels (stemthick); diff --git a/mf/parmesan-heads.mf b/mf/parmesan-heads.mf index d62b4d95a7..a83449781e 100644 --- a/mf/parmesan-heads.mf +++ b/mf/parmesan-heads.mf @@ -182,17 +182,17 @@ enddef; % % (ze is wel breed) % -fet_beginchar ("Neo-mensural maxima notehead", "s-3neomensural"); +fet_beginchar ("Neo-mensural maxima notehead", "sM3neomensural"); draw_neomensural_longa (2.6 staff_space#); fet_endchar; -fet_beginchar ("Neo-mensural longa notehead", "s-2neomensural"); +fet_beginchar ("Neo-mensural longa notehead", "sM2neomensural"); draw_neomensural_longa (2 staff_space#); fet_endchar; -fet_beginchar ("Neo-mensural brevis notehead", "s-1neomensural"); +fet_beginchar ("Neo-mensural brevis notehead", "sM1neomensural"); draw_neomensural_brevis (2 staff_space#); fet_endchar; @@ -364,17 +364,17 @@ fet_beginchar ("Mensural left stemmed notehead", "slmensural"); fet_endchar; -fet_beginchar ("Mensural maxima notehead", "s-3mensural"); +fet_beginchar ("Mensural maxima notehead", "sM3mensural"); draw_mensural_longa (2.0 staff_space#); fet_endchar; -fet_beginchar ("Mensural longa notehead", "s-2mensural"); +fet_beginchar ("Mensural longa notehead", "sM2mensural"); draw_mensural_longa (staff_space#); fet_endchar; -fet_beginchar ("Mensural brevis notehead", "s-1mensural"); +fet_beginchar ("Mensural brevis notehead", "sM1mensural"); draw_mensural_brevis (staff_space#); fet_endchar; diff --git a/mf/parmesan-rests.mf b/mf/parmesan-rests.mf index 5aa392e3d2..ef69f69e81 100644 --- a/mf/parmesan-rests.mf +++ b/mf/parmesan-rests.mf @@ -38,7 +38,7 @@ def neomens_half_block_rest = enddef; -fet_beginchar ("Neo-mensural maxima rest", "-3neomensural"); +fet_beginchar ("Neo-mensural maxima rest", "M3neomensural"); set_char_box (0, 3 neomens_block_rest_x#, neomens_block_rest_y#, neomens_block_rest_y#); @@ -49,7 +49,7 @@ fet_beginchar ("Neo-mensural maxima rest", "-3neomensural"); fet_endchar; -fet_beginchar ("Neo-mensural longa rest", "-2neomensural"); +fet_beginchar ("Neo-mensural longa rest", "M2neomensural"); set_char_box (0, neomens_block_rest_x#, neomens_block_rest_y#, neomens_block_rest_y#); @@ -58,7 +58,7 @@ fet_beginchar ("Neo-mensural longa rest", "-2neomensural"); fet_endchar; -fet_beginchar ("Neo-mensural breve rest", "-1neomensural"); +fet_beginchar ("Neo-mensural breve rest", "M1neomensural"); set_char_box (0, neomens_block_rest_x#, 0, neomens_block_rest_y#); @@ -252,7 +252,7 @@ define_pixels (mens_block_rest_y, mens_half_block_rest_y, pen_width, pen_height); -fet_beginchar ("Mensural maxima rest", "-3mensural"); +fet_beginchar ("Mensural maxima rest", "M3mensural"); set_char_box (0, pen_width#, mens_block_rest_y#, 2 mens_block_rest_y#); @@ -265,7 +265,7 @@ fet_beginchar ("Mensural maxima rest", "-3mensural"); fet_endchar; -fet_beginchar ("Mensural longa rest", "-2mensural"); +fet_beginchar ("Mensural longa rest", "M2mensural"); set_char_box (0, pen_width#, mens_block_rest_y#, mens_block_rest_y#); @@ -278,7 +278,7 @@ fet_beginchar ("Mensural longa rest", "-2mensural"); fet_endchar; -fet_beginchar ("Mensural breve rest", "-1mensural"); +fet_beginchar ("Mensural breve rest", "M1mensural"); set_char_box (0, pen_width#, 0, mens_block_rest_y#); diff --git a/scm/framework-ps.scm b/scm/framework-ps.scm index 5d693358bf..7c5669fdb3 100644 --- a/scm/framework-ps.scm +++ b/scm/framework-ps.scm @@ -764,7 +764,7 @@ (ly:error (_ "\nThe PostScript backend does not support the system-by-system output. For that, use the EPS backend instead, - lilypond -b eps FILE + lilypond -dbackend=eps FILE If have cut & pasted a lilypond fragment from a webpage, be sure to only remove anything before