release commit
[lilypond.git] / ChangeLog
blob82ecabb76718eb6d6b8664f5940d5f1b7841df04
1 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * lily/relocate.cc (read_relocation_dir): Do not blindly
4         dereference DIR.
6 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
8         * lily/parser.yy: replace THIS by PARSER
10         * Documentation/index.html.in: add link to test-results.html page.
12         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
14         * scm/translation-functions.scm (format-bass-figure): translate
15         digits over 10 to the left
17         * scm/define-markup-commands.scm (translate-scaled): new markup.
19         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
20         7 glyph. 
22         * ly/engraver-init.ly: add Figured_bass_engraver
24         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
26         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
28         * lily/score-engraver.cc (announce_grob): only note START announces.
30         * lily/include/engraver-group.hh (Translator_group):
31         acknowledge_hash_table_ is now drul.
33         * lily/engraver.cc (announce_end_grob): new method.
35         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
37         * lily/translator-dispatch-list.cc (create): take start_end argument.
39         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
40         acknowledge_static_array_ to drul
42         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
44         * scm/define-grob-interfaces.scm
45         (bass-figure-alignment-interface): add bass-figure-alignment-interface
47         * scm/define-grobs.scm (all-grob-descriptions): add
48         BassFigureAlignmentPositioning
50         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
51         number stays up to date. Backportme.
53 2006-05-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
55         * Documentation/user/basic-notation.itely (Bar lines): Document
56         the "||:" bar type. 
58 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
60         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
62         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
63         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
64         build.
66         * Resurrect `scons lily' build.
68         * SConstruct (symlink_tree): Bugfix: link
69         music-drawing-routines.ps to file iso directory.
71         * lily/SConscript: Remove kpath-guile from LIBS.
73         * SConstruct (libdir_package_version): Typo.
74         (configure): Comment-out fontforge for lack of fontforge.pc .
75         Also add libdir* to environment.
77 2006-05-30  Graham Percival  <gpermus@gmail.com>
79         * Documentation/user/ various: minor additions from mailist and
80         editing.
82 2006-05-30  Paco <fravd@ya.com>
84         * Documentation/user/music-glossary.tely: numerous corrections and
85         some new translations.
87 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
89         * BackportmeStart.
90         
91         * buildscripts/output-distance.py
92         (ComparisonData.create_html_result_page): new routine: summarise
93         results in HTML page with images. 
94         (ComparisonData.create_text_result_page): create summary text files too.
96         * GNUmakefile.in (web-ext): package .signature files too. They
97         compress well. 
99         * scm/stencil.scm (write-system-signature): typo.
101         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
103         * scm/stencil.scm (write-system-signature): better escaping.
104         only write signature for music systems, not for markup systems.
106         * scm/framework-ps.scm (output-framework): dump-signatures support
107         for plain output.
109         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
111         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
112         for -dno-point-and-click
114         * lily/grob.cc (get_print_stencil): don't read
115         point_and_click_global to determine whether to set grob-cause.
117 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
119         * buildscripts/output-distance.py (main): new function.
120         (ComparisonData): new class.
122         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
123         careful with generating new LedgerLineSpanners.
125         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
127         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
128         context. This fixes double ledger lines in output. 
130         * lily/system.cc (get_paper_system): remove 3 layer limit.
132         * buildscripts/output-distance.py (SystemLink.distance): new
133         file. Compare signatures.
135         * python/safeeval.py (SafeEval.visitUnarySub): new file.
137         * lily/grob-array.cc (remove_duplicates): rename from
138         uniq(). Sort before calling uniq() so it actually works.
140 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
142         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
143         \version from lilypond file snippet.
144         (Lilypond_file_snippet.ly): oops. typo.
145         (find_toplevel_snippets): urgh. again.
147         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
148         prevent duplicated broken items in output.
150         * scm/framework-eps.scm (output-classic-framework): only dump if
151         dump-signatures is set.
153         * scm/lily.scm (define-scheme-options): add dump-signatures option.
155         * scm/stencil.scm (write-system-signature): new routine: write
156         python parseable signature of a separate paper system.
157         BackportmeEnd.
158         
159 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
161         * lily/stanza-number-engraver.cc (process_music): use is_markup()
162         iso is_string().
163         include header.
165 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
167         * translator-group.cc: send music events to engravers in
168         non-bottom contexts.
170         * tuplet-engraver.cc: process tuplet brackets in correct order.
172 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
174         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
175         arg 2 might point us to a new binary (patch by Karl Hammar)
176         
177 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
179         * VERSION (PACKAGE_NAME): release 2.9.6
181         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
183         * Documentation/user/*.itely: 2nd
184         attempt: replace funindex -> findex globally.
186 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
188         * input/no-notation/display-lily-tests.ly: fix \applyOutput
189         test. Add \break, \pageBreak, \pageTurn, etc, tests.
191         * scm/define-music-display-methods.scm: display methods for
192         breaks. Fix \applyOutput.
194 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
196         * Documentation/user/macros.itexi: comment out funindex expansion. 
198         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
199         everywhere.
201         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
202         Karl Hammar. Backportme.
204         * Documentation/user/advanced-notation.itely (Balloon help): idem.
206         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
208         * Documentation/user/programming-interface.itely (Running a
209         function on all layout objects): idem.
211         * Documentation/user/introduction.itely (Automated engraving):
212         update \applyOutput syntax
214         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
215         remove debugging hook.
217         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
218         expansion. 
220         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
222         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
223         TEXI2DVI_FLAGS to texi2dvi invocation. 
225 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
227         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
228         works. More work is done by iterator now, and engraver has been
229         very much simplified.
231         * lily/translator-group.cc: try_music is now invoked through a
232         listener
234         * lily/*-iterator.cc: Massive cleanups. Junked
235         try_music_in_children globally. Renamed try_music to report_event,
236         and made that method descend to a bottom context automatically.
238         * lily/event-iterator.cc: New file.
240         * lily/output-property-iterator.cc,
241         lily/old-lyric-combine-music-iterator.cc: Removed.
243         * python/convert-rules.py: Modified the syntax for \applyOutput.
245 2006-05-23  Graham Percival  <gpermus@gmail.com>
247         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
248         creation.
250         * Documentation/user/ various: stuff that might have helped
251         to fix the pdf creation, plus some minor doc additions.
253         * Documentation/user/changing-defaults.itely: remove @b from
254         @b{ @internasref{foo}}; this breaks texi2dvi -E.
256 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
258         * lily/beaming-pattern.cc (beamify): deal with negative start
259         moments for beaming patterns.
261 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
263         * lily/beaming-info.cc (beamify): new function: read beatLength
264         and beatGrouping from context. 
266         * input/regression/beam-beat-grouping.ly (Module): new file.
268         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
270         * lily/beam.cc (get_beam_segments): generate events for
271         max_connect_ case too.
272         (get_beam_segments): read Stem::max-beam-connect.
274         * input/regression/beam-single-stem.ly: new file.
276         * lily/stem.cc (set_beaming): use #f as signaling value for
277         beamcount 0.
279         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
281         * lily/beam.cc (set_beaming): read clip-edges property.
282         (calc_direction): don't suicide for single stem.
284         * lily/beaming-info.cc (best_splitpoint_index): take bool*
285         argument, remove 1<<15 hack. Remove clip_edges() 
287         * lily/hairpin.cc (print): only do padding for nonmusical bounds
289 2006-05-21  Graham Percival  <gpermus@gmail.com>
291         * Documentation/user/basic-notation.itely: reorg.
293         * Documentation/user/ various: minor fixes.
295 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
297         * lily/stencil-expression.cc (register_stencil_head): opps, append
298         to cdr of static SCM object.
300 2006-05-19  Graham Percival  <gpermus@gmail.com>
302         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
303         update framework for command index.  DOC WRITERS: use @funindex
304         instead of @cindex @code{}.
306         * Documentation/user/ various: replace @cindex @code{} => @funindex
308 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
310         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
311         case positions is set manually. 
313 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
314         
315         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
316         rules to Scheme.
318 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
320         * Documentation/user/changing-defaults.itely (Contexts explained):
321         use absolute dimension for @image.
323         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
324         out image for illustration too.
325         ($(outdir)/%.png): add more png <-> eps rules. 
327 2006-05-17  Graham Percival  <gpermus@gmail.com>
329         * Documentation/user/ various: remove trailing whitespace, cosmetic
330         change to reduce changes produced by diff.
332 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
334         * lily/main.cc (do_chroot_jail): correctness tweak.
336         * python/lilylib.py (system): import subprocess in system () only.
338         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
340         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
341         variable. Backportme.
343 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
344         
345         * lily/parser.yy: Change all syntax rules of type Music to SCM type
347 2006-05-17  Werner Lemberg  <wl@gnu.org>
349         * lily/lexer.ll (init_signature_has_table): Add
350         `scm-scm-music-music'.
352         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
353         (Generic_prefix_music_scm): Add rule for it.
355         * lily/quote-iterator.cc (Quote_iterator::process): Handle
356         `quoted-transposition' property.
358         * ly/music-functions-init.ly (transposedCueDuring): New function.
360         * scm/define-music-properties.scm (all-music-properties): Updated.
362         * Documenation/topdocs/NEWS.itely: Document it.
364 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
366         * python/lilylib.py (system): move import subprocess to system()
367         definition. 
369         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
371         * VERSION (PATCH_LEVEL): release 2.9.5
372         
373         * Documentation/topdocs/INSTALL.texi (Top): update versions and
374         build instructions. 
376         * ly/engraver-init.ly: switch on hairpinToBarline by default.
378 2006-05-16  Graham Percival  <gpermus@gmail.com>
380         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
382         * Documentation/user/ various: minor fixes.
384 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
386         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
388 2006-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
390         * Documentation/user/advanced-notation.itely (Instrument names):
391         Modified obsolete instruction on how to move instrument names away
392         from the staves. Hmm, at second thought the bug probably has been
393         solved, so the full bug description should probably be removed.
395 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
397         * lily/dynamic-engraver.cc (typeset_all): hang ending on
398         currentCommandColumn. 
400         * lily/hairpin.cc (print): also add padding for non-neighbor
401         hairpin bounds.
403         * scm/define-context-properties.scm
404         (all-user-translation-properties): add hairpinToBarline
406         * input/regression/hairpin-to-barline.ly: new file.
408         * lily/context.cc (internal_send_stream_event): thinko fix.
410         * lily/tie.cc (set_default_control_points): robustness fix.
412         * python/musicxml.py (Part.interpret): don't complain about
413         incomplete measures.
415         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
416         new music if last_event_chord() returned None.
418         * python/musicxml.py (Part.interpret): skip back over chord notes.
420 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
421         
422         * lily/percent-repeat-engraver.cc, lily/parser.yy,
423         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
424         lily/slash-repeat-engraver.cc,
425         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
426         iterator sends PercentEvents
428         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
429         rework tuplets: send start/stop events to engraver
431         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
432         dispatchers event-source and events-below to Context
433         
434 2006-05-15  Graham Percival  <gpermus@gmail.com>
436         * Documentation/user/README.txt: update info for doc writers.
438         * Documentation/user/programming-interface.itely: integrate
439         Nicolas' fixes for chapter rewrite.
441         * Documentation/user/ various: minor fixes.
443 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
445         * lily/clef-engraver.cc: cleanup.
447         * Documentation/user/GNUmakefile: dist context-example.eps too.
449         * lily/key-engraver.cc (create_key): use
450         explicitKeySignatureVisibility for cancellation too. 
452         * lily/font-config.cc (init_fontconfig): don't close file if
453         f==NULL. 
455 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
457         * Documentation/topdocs/NEWS.tely: niente and rotation news
459 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
461         * lily/include/stencil.hh
462         * lily/stencil.cc (rotate): new function. Makes it possible
463         to rotate a stencil around a given offset.
465         * lily/grob.cc (get_print_stencil): add rotation support
467         * lily/stencil-interpret.cc (interpret_stencil_expression):
468         add rotation support
470         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
472         * scm/define-grob-properties.scm: add 'rotation property
474         * scm/define-markup-commands.scm: add rotate markup command
475         
476         * scm/output-ps.scm: add rotation support in PostScript backend
478         * scm/output-svg.scm: add rotation support in SVG backend
480 2006-05-13  Graham Percival  <gpermus@gmail.com>
482         * Documentation/user/music-glossary.itely: French correction.
484         * Documentation/user/programming-interface.itely: major
485         new docs, some reorg, some info from Nicolas.
487         * Documentation/user/ various: small fixes.
489 2006-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
491         * Documentation/user/programming-interface.itely (Markup
492         programmer interface): Remove duplicate text.
494 2006-05-12  Graham Percival  <gpermus@gmail.com>
496         * Documentation/user/context-example.eps: new file.
498         * Documentation/user/changing-defaults.itely: set up file to
499         use eps image.
501         * Documentation/user/programming-interface.itely: changes
502         from mailist.
504 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
506         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
508 2006-05-11  Graham Percival  <gpermus@gmail.com>
510         * Documentation/user/programming-interface.itely: first round of
511         editing and merging emails from Nicolas.
513         * Documentation/user/scheme-tutorial: minor edit.
515 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
517         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
518         XML attributes.
519         (Xml_node.message): use it.
521         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
522         oops. Add duration argument.
524 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
526         * lily/paper-column-engraver.cc (make_columns):
527         * scm/define-grobs.scm: Revert my previous change and set the default
528         in define-grobs.scm instead.
530 2006-05-09  Graham Percival  <gpermus@gmail.com>
531         
532         * Documentation/user/changing-defaults.itely: general editing,
533         info about \set and \override.
535         * Documentation/user/tweaking.itely, advanced-notation.itely:
536         fixes from Dave Luttinen, thanks!
538 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
540         * lily/paper-column-engraver.cc (make_columns): By default, a column
541         needs to be breakable.
543 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
545         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
546         Attributes methods
547         (musicxml_time_to_lily): idem
548         (musicxml_key_to_lily): idem
549         (instrument_drumtype_dict): dict for supported drumtypes.
550         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
551         moments and pending mm rests
552         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
553         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
554         (musicxml_voice_to_lily_voice): add mode change.
555         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
556         speed and less memory usage (factor 5 to 10).
557         (convert): write -defs.ly  and driver file separately so people
558         can script their own part extraction.
560         * python/musicxml.py (minidom_demarshal_node): new function:
561         separate minidom handling.
562         (lxml_demarshal_node): new function: support lxml.etree too.
563         (Xml_node.message): new function: verbose error message, with XML
564         path to offending node.
565         (Attributes.get_measure_length): sane interface to MusicXML attributes.
566         (Part_list.generate_id_instrument_dict): new method: collect
567         instrument names, to be able to set drum_type.
568         (Part.interpret): handle underfull measures
569         (Part.interpret): assign instrument names.
571         * python/musicexp.py (Output_printer.close): new method
572         (MusicWrapper.print_ly): new class: support other modes,
573         eg. \drummode
574         (BarCheck.print_ly): new class. Support bar checks, with comments
575         and fancy barchecks. 
576         (NoteEvent.__init__): also set drum_type for drum notes.
577         (MultiMeasureRest.lisp_expression): dump mm rests.
579         * lily/paper-column-engraver.cc (stop_translation_timestep): set
580         line-break-permission if forbidBreak is not set.
582 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
584         * scm/define-context-properties.scm:
585         * scm/define-grob-properties.scm:
586         * scm/define-grobs.scm:
587         * scm/define-music-display-methods.scm:
588         * scm/define-music-properties.scm:
589         * scm/define-music-types.scm:
590         * scm/music-functions.scm:
591         * ly/declarations-init.ly:
592         * lily/include/constrained-breaking.hh:
593         * lily/system.cc:
594         * lily/spaceable-grob.cc:
595         * lily/simple-spacer.cc:
596         * lily/paper-score.cc:
597         * lily/paper-column.cc:
598         * lily/paper-column-engraver.cc:
599         * lily/item.cc:
600         * lily/gourlay-breaking.cc:
601         * lily/constrained-breaking.cc:
602         * python/convertrules.py:
603         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
604         "page-break-penalty" and "line-break-permission".
605         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
606         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
608         * lily/bar-engraver.cc:
609         * lily/beam-engraver.cc:
610         * lily/forbid-break-engraver.cc:
611         * lily/ligature-engraver.cc:
612         * lily/paper-column-engraver.cc:
613         * lily/percent-repeat-engraver.cc:
614         * lily/score-engraver.cc:
615         * lily/score-engraver.hh:
616         * lily/paper-column-engraver.hh:
617         Inter-engraver communication regarding line breaks is done through context
618         properties (Score.forbidBreak) instead of function calls.
620 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
622         * VERSION (PACKAGE_NAME): release 2.9.4
624 2006-05-08  Graham Percival  <gpermus@gmail.com>
626         * Documentation/user/working.itely: proofreading from Dave
627         Luttinen, thanks.
629         * Doucmentation/user/README.txt: updated with manual style info.
631         * Documentation/user/ various: trim linewidth to 78 chars.
633 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
635         * scm/define-grob-properties.scm (all-internal-grob-properties):
636         remove chord-tremolo property.
638         * lily/beam.cc (get_beam_segments): don't use stem position as
639         base for broken ends.
641 2006-05-06  Graham Percival  <gpermus@gmail.com>
643         * Documentation/user/putting.itely: proofreading from Dave
644         Luttinen, thanks!
646         * Documentation/user/ various: more reorg and clarifications.
648 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
650         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
652         * ly/music-functions-init.ly: new function featherDurations
654         * lily/beam.cc: read grow-direction for feathered beaming.
656         * Documentation/topdocs/NEWS.tely (Top): typo.
658 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
660         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
661         tremolo beams.
663 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
664         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
665         used by music streams.
667         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
668         lily/stream-event.cc, lily/stream-event-scheme.cc,
669         lily/listener.cc, lily/scheme-listener.cc,
670         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
671         lily/include/stream-event.hh, lily/include/listener.hh,
672         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
673         Created data structures for music streams.
674         
675 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
677         * lily/beam.cc (get_beam_segments): new function. Reorganise the
678         construction of a beam. 
679         (print): rewrite. 
681         * flower/include/std-vector.hh (default_compare): use only one comparison.
683         * scm/define-markup-commands.scm (note-by-number): remove debug display.
684         (note-by-number): further attachment fixes.
686         * scm/lily-library.scm (ordered-cons): new function.
687         (interval-index): new function
689         * lily/note-head-scheme.cc (LY_DEFINE): new file.
691         * lily/note-head.cc (get_stem_attachment): new function.
693         * scm/define-markup-commands.scm (note-by-number): read 'style
694         property. 
696         * input/regression/markup-note.ly: show note-head style option.
698         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
699         triangle head.
701 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
703         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
705         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
707         * lily/include/constrained-breaking.hh: GCC 4 fix.
709 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
711         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
712         Replace it with functions get_line_forces and get_line_configuration.
713         (class Simple_spacer): Make data private.
714         Rewrite compression algorithm to be faster and simpler.
716         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
717         * lily/gourlay-breaking.cc (solve):
718         * lily/constrained_breaking.cc (space_line):
719         Change it to the new simple-spacer code.
721         * lily/paper-score.cc (get_paper_systems):
722         (Paper_score):
723         (process):
724         Delay breaking the systems until they are requested.
725         (find_break_indices):
726         Use vsize for indices.
727         (calc_breaking):
728         Move the "Calculating line breaks" message here.
730         * lily/system.cc (pre_processing):
731         Move the "Calculating line breaks" message away from here.
732         (break_into_pieces):
733         Allow multiple calls to this function in sequence (with touching-but-
734         not-overlapping breakpoints).
736         * lily/constrained-breaking.cc:
737         Replace most of the get_XXXX functions with get_line_details.
738         Only calculate the force for each line. Calculate configurations only
739         for the lines we will actually use.
740         Replace cols_ with lines_.
742 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
744         * mf/GNUmakefile (depth): remove FC_FIND.
746         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
748         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
750         * scm/framework-ps.scm (write-preamble): new function.
751         (write-preamble): load mac fonts via fondu, even if gs-font-load
752         is set.
754 2006-05-03  Werner Lemberg  <wl@gnu.org>
756         * mf/GNUmakefile (FC_FIND): Fix typo.
758 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
760         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
762 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
764         * stepmake/aclocal.m4: run python-config for crosscompiling
765         flags. 
767         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
768         -f png for HTML, TEXINFO formats. 
770         * input/tutorial/lbook-html-test.html: new file.
772         * lily/include/tie-formatting-problem.hh (class
773         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
774         [column, direction]. This fixes laissez vibrer ties.
776         * flower/include/tuple.hh (struct Tuple2): new file.
778         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
779         $(FCMATCH), only if $(NCSB_DIR) not set. 
781         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
783         * config.make.in (DOCUMENTATION): set FCMATCH.  
785         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
787 2006-05-03  Graham Percival  <gpermus@gmail.com>
789         * Documentation/user/ various: final round of reorg.
791         * Documentation/user/instrument-notation.itely: some more
792         fixes from Eduardo, thanks!
794 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
796         * VERSION (PACKAGE_NAME): release 2.9.3
798         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
800         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
802 2006-05-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
804         * scm/define-grob-properties.scm (all-user-grob-properties):
805         Correct typo, thanks to Eduardo.
807 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
809         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
811         * buildscripts/lilypond-words.py (F): indent fix.
813         * input/regression/tie-arpeggio-collision.ly: new file.
815         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
816         function: store outlines per column rank.
818         * lily/include/tie-configuration.hh (class Tie_configuration): add
819         column_ranks_ to specification and configuration, to distinguish
820         between ties for different heads in arpegiated chords.
822         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
824         * *.py: more 4 space indents.
826         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
828 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
830         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
832 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
834         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
836         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
838         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
840 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
842         * python/convertrules.py (conv): indent 4 for python files.
844 2006-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
846         * Documentation/user/changing-defaults.itely (Creating contexts):
847         Clarify \new semantics.
849 2006-04-28  Graham Percival  <gpermus@gmail.com>
851         * Documentation/user/ various: major new sections in the
852         Learning manual, slight reorg elsewhere.
854 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
856         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
858         * scm/framework-ps.scm (output-framework): remove PageMedia
860 2006-04-27  Graham Percival  <gpermus@gmail.com>
862         * Documentation/user/ tweaks.itely, working.itely: new
863         files, being more advanced "learning manual" chapters.
865         * Documentation/user/ tutorial, putting, lilypond: reorg.
867 2006-04-26  Graham Percival  <gpermus@gmail.com>
869         * input/regression/lyric-combine-polyphonic.ly: fixed test
870         (no more "can't find context `one'" error).
872 2006-04-25  Joe Neeman <joeneeman@gmail.com>
874         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
876         * input/regression/stem-tremolo.ly: add 2 more whole note examples
877         
878 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
880         * lily/relocate.cc (read_relocation_dir): new function.
882 2006-04-26  Graham Percival  <gpermus@gmail.com>
884         * Documentation/user/instrument-notation.itely: a few more fixes
885         from Eduardo, thanks!
887         * Documentation/user/README.txt: new file; contains info on
888         style that used to be in lilypond.tely.
890         * Documentation/user/ various: first round of doc reorg.
892         * Documentation/user/baer-flat-bw.png: remove alpha bit from
893         graphic; this probably causes problems on some pdf
894         viewers, notably Adobe Acrobat.
896 2006-04-24  Graham Percival  <gpermus@gmail.com>
898         * Documentation/user/instrument-notation.itely: many alterations
899         to Vocal music, from Eduardo Viera.
901 2006-04-23  Graham Percival  <gpermus@gmail.com>
903         * Documentation/user/instrument-notation.itely: fix \new
904         instead of \context problem.
906 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
908         * lily/relocate.cc (expand_environment_variables): new function.
909         (read_line): id.
910         (read_relocation_file): id.
912         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
914 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
916         * ly/engraver-init.ly: remove old comments from TabVoice
918 2006-04-20  Graham Percival  <gpermus@gmail.com>
920         * Documentation/user/instrument-notation.itely: added Erlend's
921         latest doc patch, thanks!
923 2006-04-19  Erlend Aasland <erlenda@gmail.com>
925         * lily/include/slur.hh:
926         * lily/slur.cc:
927         * lily/phrasing-slur-engraver.cc:
928         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
929         acknowledge_extra_object () from Phrasing_slur_engraver:: and
930         Slur_engraver:: and putting it in
931         Slur::auxiliary_acknowledge_extra_object ().
933         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
935         * lily/note-collision.cc: fix a comment
937 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
939         * stepmake/bin/add-html-footer.py: fix footer position in
940         generated html files: before </body> and </html> tags.
942 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
944         * scripts/GNUmakefile: revert last "fix", which rather broke make.
945         Earlier successive `make' commands finally compiled ok.
947         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
949 2006-04-18  Erlend Aasland <erlenda@gmail.com>
951         * lily/include/stem-tremolo.hh:
952         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
953         callers.
955         * lily/lookup.cc:
956         * lily/include/lookup.hh: add rotated_box ()
958 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
960         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
961         been generated. Fixes "can't get `--help'" bug after make clean.
963         * THANKS: alphabetize contributors.
965 2006-04-17  Graham Percival  <gpermus@gmail.com>
967         * Documentation/user/instrument-notation.itely: added Erlend's
968         tabs and banjo doc patch.  Thanks!
970 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
972         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
974         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
976         * scm/output-lib.scm: add some more predefined string tunings.
978         * Documentation/user/instrument-notation.itely: and doc them.
980 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
982         * ly/engraver.ly: Remove obsolete comments.
984         * ly/gregorian-init.ly: Define default layout block.
986         * input/puer-fragment.ly: Updated and extended.
988 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
990         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
991         pdf conversion behaviour.
993         * flower/file-name.cc (dir_name)
994         (get_working_directory): Move from relocate.cc.
996         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
997         
998         * lily/relocate.cc: Encapsulate sys/stat.h in
999         HAVE_STAT_H.
1001 2006-04-14  Graham Percival  <gpermus@gmail.com>
1003         * Documentation/user/ various: small updates from Cameron
1004         and Juergen, thanks!
1006         * Documentation/user/ various: small updates of my own.
1008         * THANKS: 2.7 -> 2.8.
1010 2006-04-11  Graham Percival  <gpermus@gmail.com>
1012         * scm/define-context-properties.scm: typo.
1014         * Documentation/user/ : many more small updates.
1016 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
1018         * scm/define-music-types.scm: disposed "docme".
1020 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
1022         * lily/hairpin.cc: make niente circles a bit smaller.
1024 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
1026         * mf/GNUmakefile: remove redundant mftrace check. Also remove
1027         get-pfa and get-*-fonts targets.
1029 2006-04-10  Graham Percival  <gpermus@gmail.com>
1031         * THANKS, Documentation/user/ basic-notation, advanced-notation,
1032         music-glossary, programming-interface: more minor fixes
1033         from mailist.
1035         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
1037         * scm/define-context-properties.scm: another old \property update.
1038         This time tested for compiling!
1040 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
1042         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
1044 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1046         * scm/define-context-properties.scm (all-user-translation-properties): 
1047         * Documentation/user/global.itely (Page formatting): Compile fix.
1049 2006-04-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1051         * Documentation/user/advanced-notation.itely (Polymetric
1052         notation): Update the example to use the "+" symbol and add link
1053         to input/test/compound-time.ly.
1055 2006-04-08  Graham Percival  <gpermus@gmail.com>
1057         * scm/define-grob-properties.scm: clarify docs for #'direction.
1059         * scm/define-context-properties.scm: update old \property override.
1061         * Documentation/user/ advanced-notation, global, lilypond-book:
1062         more minor doc updates.
1064 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
1066         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
1068         * scm/backend-library.scm (search-gs): oops.
1070 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1072         * scripts/lilypond-book.py (output): use base, not filename for href.
1074         * scm/backend-library.scm: only look for gs.
1076         * scripts/lilypond-book.py (output): fix printfilename.
1078         * lily/parser.yy (music_function_musicless_prefix): fold together
1079         definitions of signature (SCM*) (Music|post_event|chord_body_element)
1081         * lily/slur.cc (print): only set font-size if not set yet.
1083         * lily/slur-configuration.cc (add_score): improved layout of debug
1084         scoring output.
1086 2006-04-05  David Feuer  <David.Feuer@gmail.com>
1088         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
1089         (draw_circle): Hopefully fixed regression.
1090         Improved documentation for several procedures.
1091         
1092 2006-03-04  Werner Lemberg  <wl@gnu.org>
1094         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
1096 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1098         * scripts/musicxml2ly.py (bindir): add dynamic
1099         relocation. 
1101 2006-04-04  Graham Percival  <gpermus@gmail.com>
1103         * Documentation/user/ basic-notation, advanced-notation, putting,
1104         instrument-notation, invoking, lilypond, THANKS: another ream of small
1105         fixes from the Doc Helpers.
1107 2006-04-03  David Feuer  <David.Feuer@gmail.com>
1109         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
1111         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
1113         * Cleaned up interfaces between PostScript and Scheme, and moved
1114         computations from PostScript to Scheme:
1116         * music-drawing-routines.ps
1117         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
1118         with stroke_and_fill throughout.
1119         (euclidean_length, print_letter, draw_box): Deleted unused
1120         procedures.  If someone needs draw_box, implement it using
1121         draw_round_box; don't duplicate code.
1122         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
1123         Refactored/cleaned up interfaces.
1124         (mark_URI): Moved.
1126         * output-ps.scm: reordered arguments to PostScript functions to
1127         match new interfaces
1128         (glyph-string): Rewrote glyph-string.
1129         (grob-cause): Replaced string-append with format.
1130         (repeat-slash): Rewrote to do computation here.
1131         (round-filled-box): Rewrote to do computation here.
1133 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
1135         * stepmake/stepmake/generic-targets.make: add cvs-clean target
1137         * stepmake/stepmake/toplevel- targets.make: print help info about
1138         cvs-clean
1140 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
1142         * input/regression/hairpin-circled.ly: new file
1144 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
1146         * lily/hairpin.cc (print): add support for circled tip
1148         * scm/define-grob-properties.scm: add circled-tip parameter
1150         * scm/define-grobs.scm: init circled-tip to false
1151         
1152 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1154         * scm/music-functions.scm (quote-substitute): set
1155         iterators-ctor. 
1157 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1159         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
1160         BSTINPUTS. 
1162         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
1164         * scm/output-ps.scm (glyph-string): revert cid selectfont.
1166 2006-03-31  David Feuer  <david.feuer@gmail.com>
1167         
1168         * scm/framework-ps.scm:
1169         
1170         * scm/output-ps.scm: glyph-string now produces smaller, more
1171         readable, and probably faster PostScript.  Several findfont
1172         scalefont setfont instances changed to selectfont
1173         Hacked-up string-appends changed to formats.
1175         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
1176         
1177 2006-03-30  Graham Percival  <gpermus@gmail.com>
1179         * scm/lily-library.scm: make "no version" warning message more polite.
1181         * lily/music.cc: add double quotes to failed octave check.
1183         * Documentation/user/ advanced-notation, changing-defaults,
1184         instrument-notation, invoking, music-glossary: whole bunch of minor
1185         fixes from mailist.
1187 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1189         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
1190         $(buildscriptdir) iso. depth.
1192         * VERSION (PACKAGE_NAME): release 2.9.1
1194 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1196         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
1198         * VERSION (PATCH_LEVEL): bump version number.
1200         * flower/include/guile-compatibility.hh (scm_from_uint32): add
1201         scm_from_uint32 ()
1203         * lily/pango-font.cc (pango_item_string_stencil): use
1204         scm_from_uint32 ()
1206         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
1207         $(outdir)/emmentaler-%.svg): remove canary.
1209         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
1210         glyphnames if we have a ttf font.
1212 2006-03-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1214         * Documentation/user/advanced-notation.itely (Font selection):
1215         Corrected reference to the font-family-override.ly example.
1217 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
1218         
1219         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
1220         stem-tremolo object in the stem (or else the stem might not be
1221         long enough).
1223 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1225         * lily/ttf.cc (print_trailer): only print existing glyphs.
1227 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
1229         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
1230         position the tremolo based on the position of the notehead.
1232         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
1233         notes and update the texidoc line with the new positioning rules.
1234         
1235 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1237         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
1239         * scripts/lilypond-book.py (Module): set default for linewidth if
1240         preamble not found.
1242 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1244         * VERSION (PACKAGE_NAME): release 2.9.0.
1246         * input/regression/stem-tremolo-position.ly: new file.
1248         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
1250 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
1252         * lily/stem-tremolo.cc (print): position
1253         the tremolo depending only on the end of the stem
1254         and not on the notehead
1255         (raw_stencil): center, on the middle staff line, the
1256         flag that is closest to the end of the stem (previously
1257         the bottom flag)
1258         (calc_width): add this callback to shorten a tremolo when
1259         it is beamed or it is stemup with a flag
1260         (style): add this callback to make a tremolo rectangular when
1261         it is beamed or it is stemup with a flag
1262         (rotated_box): this is like Lookup::beam but makes a rotated
1263         rectangle instead of a parallelogram
1265         * lily/stem.cc (calc_stem_info): make sure the stem
1266         is long enough to fit the tremolo
1267         (calc-length): reduce the length of tremolo stems since the
1268         tremolo code is now capable of better positioning
1270         * scm/define-grobs.scm: make calc_width the default beam-width
1271         callback for stem-tremolo and add the style callback
1272                 
1273 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1275         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
1276         case. 
1278 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
1280         * lily/ttf.cc (make_index_to_charcode_map): restore old
1281         cmap. 
1283 2006-03-28  Werner Lemberg  <wl@gnu.org>
1285         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
1287 2006-03-28  Graham Percival  <gpermus@gmail.com>
1289         * THANKS: update for 2.9, add section for Documentation helpers.
1291         * Documentation/topdocs/NEWS.tely: compile fix.
1293         * Documentation/user/ basic-notation, global, advanced-notation,
1294         examples.itely: minor fixes from mailist.
1296 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
1298         * mf/feta-bolletjes.mf: match width of solfa notes with normal
1299         note heads. 
1301         * lily/ttf.cc (print_trailer): use it.
1303         * lily/pango-font.cc (get_unicode_name): new function.
1305         * lily/ttf.cc (make_index_to_charcode_map): move function from
1306         open-type-font.cc
1307         (print_trailer): substitute uniXXXX name if applicable. 
1309         * lily/pango-font.cc (get_index_to_charcode_map): new function.
1310         (pango_item_string_stencil): use it to generate uniXXXX names.
1312         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
1313         note heads, for uniform widths in shape note output.
1314         (overdone_heads): hmm. remove them again.
1316         * scripts/lilypond-book.py (output): add links to filenames.
1318         * Documentation/topdocs/INSTALL.texi (Top): update versions.
1320         * lily/note-collision.cc (get_clash_groups): only consider when
1321         Note_column::dir <> CENTER. 
1323         * scripts/lilypond-book.py (get_option_parser): init output_name
1324         to ''. 
1326 2006-03-24  Graham Percival  <gpermus@gmail.com>
1328         * Documentation/topdocs/NEWS.tely: add @end itemize
1330         * Documentation/user/ global, advanced-notation: minor
1331         stuff from mailist.
1333 2006-03-23  Graham Percival  <gpermus@gmail.com>
1335         * Documentation/user/ lilypond.tely, music-glossary,
1336         preface: housekeeping; 2005->2006, remove "notes for 2.6"
1338 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1340         * mf/GNUmakefile: don't install .enc files.
1342         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
1344         * VERSION (PATCH_LEVEL): bump to 2.9.0
1346 2006-03-22  Graham Percival  <gpermus@gmail.com>
1348         * Documentation/user/advanced-notation.itely: minor fixes
1349         from mailist.
1351 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
1353         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
1355         * branch lilypond_2_8
1357 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
1359         * scripts/lilypond-book.py (samefile): new function, for windoze
1360         compatibility.
1362 2006-03-21  Graham Percival  <gpermus@gmail.com>
1364         * ly/engraver-init.ly: add info about StaffGroup.
1366 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
1368         * input/regression/stem-direction-context.ly: idem.
1370         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
1372         * THANKS: add Mats.
1374         * input/regression/page-layout-twopass.ly: comment out \markup so
1375         tweak-file is left.
1377         * lily/instrument-name-engraver.cc (finalize): add to instrument
1378         name global System. This also fixes chopped instrument names, but
1379         doesn't crash when there are slurs/beams.
1381         * lily/slur-configuration.cc (add_score): disallow negative slur
1382         scores.
1383         
1384 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1386         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
1388         * lily/instrument-name-engraver.cc (process_music): kludge: add
1389         InstrumentName spanner to axis group of left bound. Fixes chopped
1390         off instrument names in EPS images.
1392         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
1394         * scripts/abc2ly.py (option_parser): update to 2.7.40
1396 2006-03-20  Graham Percival  <gpermus@gmail.com>
1398         * THANKS: move small doc contributors to SUGGESTIONS.
1400         * Documentation/user/ basic-notation, advanced-notation,
1401         global: small changes from mailist.
1403 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1405         * Documentation/user/advanced-notation.itely (Text marks): update
1406         for new rehearsalMarkAlignSymbol convention.
1408         * VERSION (PATCH_LEVEL): bump version.
1410         * input/test/instrument-name-align.ly: new file.
1412         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
1414         * input/test/instrument-name-align.ly: new file. Document how to
1415         align instrument names.
1417         * lily/mark-engraver.cc: remove properties.
1419         * scm/define-context-properties.scm
1420         (all-user-translation-properties): remove align symbol properties
1421         for barnumber/reh. mark.
1423         * lily/break-align-interface.cc (self_align_callback): new
1424         interface, new function. Look at complete alignment. This handles
1425         tunable break alignments in case break-align-symbols are missing.
1427         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
1429         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
1431         * python/convertrules.py (conv): mark/bar number alignment rule.
1433         * lily/break-align-interface.cc (calc_positioning_done): also
1434         store offset from last visible break-alignment to its
1435         neighbor. This makes alignment on non-visible objects more reliable.
1437         * po/lilypond.pot (Module): ran po-replace.
1439         * input/regression/tie-single-manual.ly (Module): new file.
1441         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
1442         look at has_manual_position_.
1443         (from_ties): set has_manual_position_ if tie has staff-position set.
1445         * lily/tuplet-bracket.cc (calc_positions): idem.
1447         * lily/tuplet-number.cc (print): don't print tupletnumber if it
1448         doesn't span time.
1450 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1452         * scm/define-markup-commands.scm (smallCaps): new markup command
1453         for turning a text to small caps using smaller font size and upper
1454         casing.
1456 2006-03-17  Graham Percival  <gpermus@gmail.com>
1458         * Documentation/user/ examples, instrument-notation,
1459         advnaced-notation: minor fixes from mailist.
1461 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1463         * Documentation/user/tutorial.itely (First steps): change example
1464         to verbatim.  
1466 2006-03-17  Graham Percival  <gpermus@gmail.com>
1468         * Documentation/user/ examples, advanced: minor changes from mailist.
1470         * THANKS: add Geoff Horton, for documentation stuff.
1472 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1474         * python/lilylib.py (system): revert have_select kludge.
1476         * Documentation/user/tutorial.itely (Commenting input files):
1477         update version numbers in doc. 
1479         * scm/define-grob-interfaces.scm (multi-measure-interface): add
1480         bound-padding to multi-measure-interface
1482 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1484         * input/test/engraver-example.ily: update version number.
1486         * VERSION (PACKAGE_NAME): release 2.7.39
1488         * lily/note-spacing.cc (get_spacing): heighten threshold where
1489         accidentals/arpeggios influence previous spacing fully.
1491         * lily/rest.cc (y_offset_callback): only use direction if
1492         staff-position wasn't set before.
1494         * lily/bar-number-engraver.cc: add support for
1495         barNumberAlignSymbol. 
1496         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
1498         * lily/pointer-group-interface.cc (set_ordered): new function. 
1499         (add_unordered_grob): new function.
1501         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
1502         to ordered, unless the opposite has been proved.  This fixes
1503         random reordering of large object groups across linebreaks,
1504         eg. beams.
1506         * lily/main.cc (do_chroot_jail): printf format fix.
1508         * lily/tie-formatting-problem.cc (generate_configuration):
1509         multiply y-shift for dot with direction.
1511         * scm/define-markup-commands.scm (note-by-number): put (magstep
1512         size) in y-attach too.
1514         * Documentation/topdocs/NEWS.tely (Top): show override.
1516         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
1517         direction for stems.
1518         
1519 2006-03-15  Graham Percival  <gpermus@gmail.com>
1521         * Documentation/user/ changing-defaults, global: minor
1522         fixes from mailist.
1524 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1526         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
1528         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
1529         breakable items after uniformly stretched notes.
1531         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
1532         outline with outer edge of note heads. This prevents infinity
1533         problems with tied whole notes.
1535         * scripts/lilypond-book.py (do_file): use os.popen
1537         * python/convertrules.py (conv): add rule for Stem #'beamed-*
1539 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
1541         * Documentation/user/invoking.itely: Add ragged-right to bug report
1542         guidelines.
1544 2006-03-14  Graham Percival  <gpermus@gmail.com>
1546         * Documentation/user/global.itely: small fix from mailist.
1548 2006-03-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1550         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
1551         file descriptor returned by tempfile.mkstemp() when writing
1552         to tmpfile and closing it. Solves problem with unlink(tmpfile)
1553         on mingw.
1555 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1557         * po/fi.po: newline bugfix.
1559 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1561         * scm/paper.scm (paper-alist): Rounding fixes.
1563 2006-03-13  Graham Percival  <gpermus@gmail.com>
1565         * Documentation/user/ changing-defaults, instrument-notation,
1566         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
1568 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
1570         * po/fi.po: update.
1572 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1574         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
1575         mailto: to http:// 
1577         * python/lilylib.py (print_environment): move ps_page_count to
1578         lilypond-book.py
1580 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1582         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
1584         * scm/framework-ps.scm (embed-document): new function. Use to
1585         embed PFA files.
1587         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
1589 2006-03-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1591         * Documentation/user/instrument-notation.itely (Setting simple
1592         songs): Added \book{...} around the full example, so the separate
1593         markups are included in the printed example. 
1595 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1597         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
1598         tmphandle.
1600         * python/lilylib.py (system): rewrite system() using
1601         subprocess. Remove >& redirection trickery.
1603 2006-03-11  Graham Percival  <gpermus@gmail.com>
1605         * Documentation/user/ changing-defaults, global, scheme-tutorial,
1606         notation-appendices.itely: minor fixes from mailist.
1608 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1610         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
1611         unsplit man also needs images.
1613         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
1615         * VERSION (PACKAGE_NAME): 2.7.38 released.
1617 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1619         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
1620         log in output dir.
1622 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
1624         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
1625         respects the Score.skipTypesetting property.
1626         
1627 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1629         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
1630         Prolog. No %%EOF after CFF file.
1632 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
1633         
1634         * lily/constrained-breaking.cc (get_max_systems): used to return a
1635         much too big value
1636         (combine_demerits): use pointers to reduce copying data
1637         (calc_subproblem): idem
1638         (get_page_penalty): add page turn penalties
1639         
1640 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1642         * Documentation/user/invoking.itely (Invoking lilypond): better
1643         explanation of -e usage.
1645         * lily/main.cc (main_with_guile): don't append to
1646         init_scheme_code_string
1648         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
1650         * Documentation/user/invoking.itely: add note about MacOS X scripts.
1652         * scripts/convert-ly.py (do_options): don't print help for
1653         --show-rules rule.
1655         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
1656         @code and @example. Update from texinfo.tex from CVS.
1658 2006-03-08  Graham Percival  <gpermus@gmail.com>
1660         * Documentation/user/scheme-tutorial.itely: clarifies distances
1661         measured in staff-spaces.
1663 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1665         * lily/slur.cc (outside_slur_callback): only calculate offsets if
1666         consider[k] is true.
1668         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
1670         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
1671         consider columns that have originals.  Unifies spacing for mm
1672         rests around line breaks.
1674         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
1675         (set_text_rods): idem.
1676         (calculate_spacing_rods): new function: share code between
1677         set_text_rods and set_spacing_rods.
1678         (set_text_rods): take extents of bounds into account.  
1680 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1682         * Documentation/user/basic-notation.itely (Writing music in
1683         parallel): don't use relative.
1685 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1687         * ly/music-functions-init.ly (Module): add shiftDurations
1689         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
1691         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
1693         * ly/engraver-init.ly: init vocalName to nil.
1695 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
1697         * scm/music-functions.scm (music->make-music): bugfix,
1698         KeyChangeEvents are now handled correctly.
1700         * scripts/lilypond-book.py: Add --debug option.
1702 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1704         * python/lilylib.py: add tempfile.
1706 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1708         * VERSION (PACKAGE_NAME): release 2.7.37
1710         * python/lilylib.py (ps_page_count): remove make_ps_images().
1711         (ps_page_count): remove mkdir_p
1712         (system): remove cleanup_temp.
1713         (exit): remove lilypond_version_(check)
1714         (error_log): remove pseudo_filter_p
1715         remove read_pipe
1716         remove cp_to_dir
1717         remove identify
1719         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
1720         use __main__
1722         * lily/accidental-engraver.cc (make_standard_accidental): only add
1723         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
1725         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
1726         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
1727         Make incompatibilities.
1729         * scm/output-ps.scm (grob-cause): replace backslashes by /
1730         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
1732 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1734         * cygwin/GNUmakefile: Install fixes.
1736         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
1738         * lily/note-head.cc (head::get_balltype): Compile fix.
1740         * flower/file-name.cc (dos_to_posix): Flower string fix.
1742 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1744         * python/lilylib.py: pychecker cleanups.
1746         * scripts/lilypond-book.py
1747         (Lilypond_snippet.output_print_filename): pychecker cleanups
1749         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
1751         * python/lilylib.py (underscore): remove identify() , warranty()
1753         * ps/music-drawing-routines.ps: change Border routine for GSView
1754         compatibility.
1756         * lily/stem.cc (height): use quantize-positions.  This triggers
1757         set_stem_lengths, so scripts on beamed stems are handled correctly.
1759         * lily/side-position-interface.cc (aligned_side): check if edges
1760         of script are inside staff. Fixes accent of edge of the staff.
1762         * input/regression/staccato-pos.ly: more examples.
1764         * stepmake/aclocal.m4 (depth): fix bashism.
1766         * lily/lyric-combine-music-iterator.cc: move from
1767         new-lyric-combine-iterator.cc
1768         (process): add pending_grace_lyric_ member to delay lyrics on
1769         grace notes.
1771         * lily/system-start-text.cc (print): suicide if we don't have any
1772         elements. Fixes hara kiri'd instrument names.
1774         * scripts/mup2ly.py (Module): remove.
1776 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1778         * Documentation/user/global.itely (A single music expression):
1779         close @lilypond properly
1781         * lily/volta-bracket.cc (modify_edge_height): change from
1782         after_line_breaking_callback. Suicide last bracket if appropriate.
1784         * python/lilylib.py: strip getopt support
1786         * scripts/etf2ly.py (do_options): use optparse
1788         * scripts/midi2ly.py: optparse, strip lilylib copy. 
1790         * scripts/abc2ly.py (voices): use optparse.
1792         * stepmake/stepmake/generic-vars.make: new function absdir.
1794         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
1796         * scripts/lilypond-book.py (find_file): use global_options for
1797         include path
1799         * scm/ps-to-png.scm (ps-page-count): prevent null characters
1800         entering C code.
1802 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1804         * python/lilylib.py (get_global_option): ughness for extracting
1805         global options from lilylib.
1806         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
1808         * scripts/lilypond-book.py (get_option_parser): use optparse for
1809         option handling.  Put options in global_options variable.
1811 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
1813         * Documentation/index.html.in: clarify.
1815 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1817         * scm/layout-page-layout.scm (write-page-breaks): add a
1818         music-system-heights property to the page layout output.
1820         * scm/page.scm (make-page-stencil): take footer into account when
1821         computing the 'space-left page property
1822         (annotate-space-left): take footer into account when annonating
1823         space left.
1825 2006-02-28  Graham Percival  <gpermus@gmail.com>
1827         * Documentation/user/ advanced-notation, global: more (final)
1828         docs for music expressions, removed special fermatas.
1830 2006-02-27  Graham Percival  <gpermus@gmail.com>
1832         * Documentation/user/ basic-notation, global: minor changes
1833         from mailist.
1835 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1837         * scm/framework-ps.scm:         
1838         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
1839         layer for inf? and nan? from framework-ps to lily-library.
1841 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1843         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
1844         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
1846         * buildscripts/substitute-encoding.py (Module): remove file.
1848         * mf/GNUmakefile: more PFA strippage.
1850         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
1852         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
1853         generation
1855         * scm/framework-ps.scm: remove font name munging.
1857         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
1859 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1861         * scm/markup.scm (define-markup-command): change
1862         def-markup-command to define-markup-command
1864         * scm/music-functions.scm (define-music-function): change
1865         def-music-function to define-music-function.
1867         * python/convertrules.py (conv): rules for def-music-function
1868         and def-markup-commands
1870         * Documentation/user/programming-interface.itely,
1871         input/no-notation/display-lily-tests.ly,
1872         input/regression/lily-in-scheme.ly,
1873         input/regression/markup-user.ly,
1874         input/regression/music-function.ly, input/regression/tie-chord.ly,
1875         scm/fret-diagrams.scm, ly/music-functions-init.ly,
1876         ly/gregorian-init.ly: use new macro names (define-music-function,
1877         define-markup-command).
1879 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1881         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
1882         (output): add comments to lp-book latex output.
1884         * GNUmakefile.in (footifymail): use gmane address for webpage bug
1885         address.
1887 2006-02-23  Graham Percival  <gpermus@gmail.com>
1889         * Documentation/user/ tutorial, global: minor changes.
1891 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1893         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
1894         blocks (for make 3.80)
1896         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
1897         \notemode so that user should not have to explicitely type it.
1899         * scm/define-music-display-methods.scm: various
1900         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
1901         constructs)
1903         * input/no-notation/display-lily-tests.ly: new tests for
1904         \applyOutput and \applyContext
1906 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1908         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
1909         changed it slightly so that the number of systems returned by
1910         solve () will be the same as the last value passed to resize
1911         (). I've also added more documentation, removed casts, fixed style
1912         problems and put in some recovery if constraints aren't satisfied."
1914 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1916         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
1917         for emacs < 22 compatibility.
1918         (count-rexp): Use it.
1919         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
1920         substring juggling (Milan Zamazal).
1922 2006-02-23  Graham Percival  <gpermus@gmail.com>
1924         * Documentation/user/ basic-notation, advanced-notation,
1925         global.itely, invoking.itely, tutorial,itely:
1926         minor fixes from mailist.
1928         * scm/define-markup-commands.scm: improve docs of \filled-box.
1930 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
1932         * Documentation/index.html.in: changes concern the previous release.
1934         * input/regression/+.ly: cultivate typographical terminology.
1936 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1938         * scm/define-grob-interfaces.scm (parentheses-interface): add
1939         padding to parentheses-interface.
1941         * Documentation/user/GNUmakefile: remove $(CROSS) support from
1942         Documentation/user/GNUmakefile. Use --disable-documentation for that.
1944         * VERSION (PATCH_LEVEL): release 2.7.36
1946         * lily/slur.cc: add avoid-slur (ugh.)
1947         
1948         * lily/slur-configuration.cc (fit_factor): oops, skip point if
1949         intersection gets smaller. This fixes slurs over extreme points.
1951         * lily/melody-engraver.cc (stop_translation_timestep): ignore
1952         stems with neutral-direction set.
1954         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
1956         * lily/open-type-font.cc (load_table): format error.
1958         * lily/change-iterator.cc (process): format fix.
1960         * flower/include/international.hh (_f): idem.
1962         * flower/include/std-string.hh: add format printf attribute.
1964         * scm/define-grobs.scm (all-grob-descriptions): height of all
1965         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
1967         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
1968         ambitus lines.
1970         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
1972 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
1974         * input/regression/: upgraded syntax for some files.
1976         * THANKS: Add bughunters.
1978 2006-02-22  Graham Percival  <gpermus@gmail.com>
1980         * Documentation/user/ invoking.itely, advanced-notation.itely,
1981         global.itely: long-awaited "let's make chapter 10 not suck"
1982         update.  Rearrange chapter 10; now called "global issues",
1983         addresses file structure, etc.  Some info from other files
1984         moved into global.itely.
1986 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1988         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
1989         catch trill-span-event notes.
1991         * Documentation/user/examples.itely (Ancient notation templates): typo.
1992         (Jazz combo): typo.
1994         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
1996         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
1998         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
2000         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
2002         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
2003         froum Laissez_vibrer_engraver.
2005         * ly/declarations-init.ly (repeatTie): add \repeatTie
2007         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
2009         * scm/define-grob-properties.scm (all-user-grob-properties): add
2010         head-direction property.
2012         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
2013         from_lv_ties. Take head direction argument.
2015         * lily/semi-tie-column.cc: rename from
2016         laissez-vibrer-tie-column.cc. Rename class too.
2018         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
2019         class too.
2021         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
2023         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
2024         0 case.
2025         (find_breaks): idem.
2027 2006-02-21  Graham Percival  <gpermus@gmail.com>
2029         * Documentation/user/advanced-notation.itely: fixed make-moment]
2030         example.
2032         * Documentation/user/basic-notation.itely: more clarification to
2033         transpose.
2035 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2037         * lily/include/constrained-breaking.hh (class
2038         Constrained_breaking): new file.
2040         * lily/constrained-breaking.cc (resize): new file.
2042         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
2044         * Documentation/user/advanced-notation.itely (Clusters): insert
2045         end ignore too.
2047         * lily/tie-column.cc (calc_positioning_done): support for
2048         tie-score debugging
2050         * lily/tie-formatting-problem.cc
2051         (generate_extremal_tie_variations): factor out.
2052         (score_ties_configuration): annotate all tie 
2053         (print_ties_configuration): new routine.
2054         (generate_configuration): nudge extremal ties outside of the head
2055         Y extents.
2056         (score_ties_configuration): oops. convert to staff-space before
2057         determining position symmetry.
2059 2006-02-20  Graham Percival  <gpermus@gmail.com>
2061         * Documentation/user/*-notation.itely: misc minor editing,
2062         shifting doc sections around.
2064         * Documentation/user/*-notation-itely, global.itely,
2065         changing-defaults.itely: added new stuff from NEWS.
2067 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
2069         * po/fi.po: update.
2071 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2073         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
2074         lilypond --verbose for lp-book.
2076         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2077         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
2079         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
2080         $(buildscript-dir) iso. absolute depth.
2082         * buildscripts/genicon.py (dir): thinko.
2084         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
2086 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
2088         * scm/output-lib.scm: swap darkcyan/darkyellow
2090         * THANKS: Add bughunters.
2092 2006-02-19  Graham Percival  <gpermus@gmail.com>
2094         * Documentation/user/programming-interfaces.itely: fixed example.
2096         * Documentation/user/instrument-notation.itely: fix @{ @}.
2098         * scm/script.scm: add avoid-slur for \open.
2100 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2102         * lily/tie-formatting-problem.cc (score_configuration): use
2103         sliding score for min-length. 
2105         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
2106         spaghetti for icons.
2108         * buildscripts/genicon.py (program_name): new file.
2110         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
2111         in outline too.  
2112         (generate_configuration): for small ties, also look for collisions
2113         at Y + DIR*h + DELTA_Y.
2114         (get_variations): consider variation for dot positions too.
2116         * lily/side-position-interface.cc (aligned_side): take abs for
2117         quantized rounded position. Fixes tenuto below staff.
2119         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
2120         markers when necessary.
2122         * lily/program-option.cc (internal_set_option): add
2123         strict_infinity_checking option.
2125         * scm/output-lib.scm (cyan): swap yellow and cyan.
2127 2006-02-19  Graham Percival  <gpermus@gmail.com>
2129         * darwin.patch: trivial linenumber update.
2131         * Documentation/user/ {various}: `\context foo = named' changed
2132         to `\new foo = "name"' in docs.
2134 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2136         * scm/stencil.scm (annotate-y-interval): use it.
2138         * scm/lily-library.scm (interval-sane?): new function.
2140         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
2141         tfm_checksum stuff.
2143         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
2144         common refpoint.
2146         * flower/include/std-vector.hh (iterof): add iterof macro.
2148         * lily/enclosing-bracket.cc (width): new function.
2150         * lily/align-interface.cc (align_elements_to_extents): reinstate
2151         warning.
2153 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
2155         * Documentation/index.html.in: fix spelling: thankyous.
2157 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2159         * lily/lyric-hyphen.cc: typo.
2161 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2163         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
2164         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
2165         builds don't work. 
2167         * VERSION: release 2.7.35
2169         * lily/beam.cc (get_default_dir): oops. Take abs () for
2170         extremes[DOWN].
2171         (get_default_dir): use extreme position criterion only in absence
2172         of forced stem directions.
2174         * VERSION (PATCH_LEVEL): bump VERSION.
2176         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
2177         dependencies. Necessary for -jX builds.  
2179 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2181         * lily/relocate.cc (setup_paths): Yet another const fix.
2183 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2185         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
2187         * lily/relocate.cc (setup_paths): oops.
2189 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
2191         * Documentation/index.html.in: order links: html before PDF.
2193 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2195         * lily/tie-column-format.cc (Module): remove.
2197         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
2199         * lily/text-spanner.cc (print): idem.
2201         * lily/dynamic-text-spanner.cc (print): only print line if longer
2202         than dash-period.
2204         * lily/auto-change-iterator.cc (change_to): formatting.
2206         * lily/beam.cc (get_default_dir): take extreme note head as input
2207         for stem direction.
2209         * lily/tie.cc (get_default_dir): only look directions for visible
2210         stems. 
2212         * lily/side-position-interface.cc (aligned_side): oops. Don't
2213         mutiply with direction. This fixes quantized (staccato, tenuto)
2214         scripts below notes.
2216         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
2217         direction. Fixes c-lyrics-center-align.ly
2219 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2221         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
2222         constructor.
2224         * lily/std-string.cc:
2225         * lily/include/std-vector.hh (split_string): Move and rename from
2226         lily/include/misc.hh, lily/misc.cc.  Update callers.
2228 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2230         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
2232 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2234         * flower/test-file.cc: New file.
2236         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
2237         libraries.
2239         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
2241 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2243         * flower/include/file-storage.hh: remove file.
2245         * lily/include/midi-item.hh (class Midi_track): idem.
2247         * lily/include/source.hh (class Sources): idem.
2249         * lily/include/performance.hh (class Performance): use vector
2250         iso. Cons<>
2252         * flower/include/cons.hh (class Cons): remove file.
2254         * flower/include/flower-proto.hh: remove template cruft.
2256         * lily/include/font-metric.hh: use size_t not vsize for indices.
2258         * flower/include/flower-proto.hh (Module): remove std-vector.hh
2259         from proto.
2261         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
2263         * lily/include/paper-book.hh (class Paper_book):
2264         make get_system_specs() public.
2266         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
2267         the force=10000 case if we don't have a current-best. 
2269         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
2270         vsize 
2272         * flower/include/flower-proto.hh: remove outdated templates.
2274         * scm/page.scm: use annotate-spacing
2276 2006-02-15  Graham Percival  <gpermus@gmail.com>
2278         * scm/translation-functions.scm: circle patch from Erlend, thanks!
2280         * THANKS: moved Erlend Aasland to contributors.
2282 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2284         * config.hh.in: remove HAVE_PANGO_16
2286         * lily/tuplet-bracket.cc (calc_positions): multiply with
2287         staff-space for beam case. This fixes tuplets+beams on scaled
2288         staves.
2290         * config.hh.in: remove all Kpathsea related defines.
2292         * lily/dot-column.cc (side_position): reach stem via dots->
2293         head->stem. Inspect all stems for dot collisions. 
2295         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
2296         stem handling.
2298         * lily/bar-number-engraver.cc (process_music): document function
2299         of whichBar.
2301         * lily/score.cc (default_rendering): add pscore, not systems
2302         themselves.
2304         * lily/paper-book.cc (get_system_specs): separate generation of
2305         titles and systems.
2307         * flower/include/std-vector.hh: don't include config.hh
2309 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2311         * flower/include/std-vector.hh: Better wrapper compatibility with
2312         std::vector.
2314         * flower/include/flower-proto.hh: Remove cheap forward declaration
2315         attempts.
2317         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
2319 2006-02-14  Graham Percival  <gpermus@gmail.com>
2321         * Documentation/user/invoking.itely: add warning about command line.
2323 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2325         * lily/include/lily-proto.hh: add Prob, rm Page.
2327         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
2329         * VERSION: release 2.7.34
2331         * lily/relocate.cc (framework_relocation): show canary if
2332         GHOSTSCRIPT_VERSION undefined.
2334         * GNUmakefile.in: remove $(VERSION) symlink.
2336         * lily/relocate.cc (setup_paths): add + 
2338 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
2340         * Documentation/index.html.in: specify sizes for all big HTML pages.
2342 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2344         * config.hh.in: remove @FRAMEWORKDIR@
2346         * lily/system-start-text.cc (get_stencil): new file: separate out
2347         system-start-delimiter text support.
2349         * input/**ly: replace \context with \new where appropriate.
2350         
2351         * THANKS: add Don.
2353         * lily/slur-scoring.cc (get_base_attachments): use
2354         robust_relative_extent. This fixes problems with empty paper-columns. 
2356 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2358         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
2360         * scm/define-music-properties.scm (all-music-properties):
2361         create-new property.
2363         * lily/context-specced-music-iterator.cc (construct_children):
2364         inspect 'create-new property iso. magical $uniqueContextId context
2365         id.
2367         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
2369         * lily/context-key-manager.cc (Module): new file. Encapsulate
2370         object key generation.
2372         * lily/include/context-key-manager.hh (Module): new file.
2374 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2376         * scm/define-grobs.scm (all-grob-descriptions): center instrument
2377         names vertically
2379         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
2380         options.
2381         (reloc_b): excise --enable-framework-dir
2383         * lily/relocate.cc (framework_relocation): use getenv
2384         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
2386 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2388         * flower/include/std-string.hh: 
2389         * flower/include/std-vector.hh: Finish std:: conversion; move
2390         flower extensions from std:: namespace.  Update users.
2392         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
2393         their expansion to vector<*>.  Update users.
2395 2006-02-10  Graham Percival  <gpermus@gmail.com>
2397         * Documentation/user/invoking.itely: add example to File structure.
2399         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
2400         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
2402 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2404         * ly/paper-defaults.ly: typo.
2406         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
2407         set_parent() for parentheses. This will make it show up in bbox
2408         calculations.
2410         * scm/output-lib.scm (parentheses-item::print): rewrite, using
2411         ly:grob-common* functions.
2413         * lily/grob-scheme.cc (LY_DEFINE):
2414         ly:grob-common-refpoint-of-array: new function 
2415         ly:grob-common-refpoint: new function 
2416         ly:grob-relative-coordinate: new function 
2418         * lily/instrument-name-engraver.cc (process_music): use
2419         Text_interface::is_markup(). This fixes \markup on instrument names.  
2421         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
2422         for ties and slurs.
2424         * lily/slur.cc (print): idem.
2426         * lily/tie.cc: add line-thickness for ties. 
2428 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2430         * scm/output-svg.scm: Document diversion from GNU coding standards
2431         as a workaround for a bug in Microsoft Internet Explorer.
2433 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2435         * lily/instrument-name-engraver.cc (process_music): use
2436         is_markup() iso. is_string()
2438         * Documentation/user/changing-defaults.itely (Module): add menu entry.
2440         * lily/percent-repeat-engraver.cc (process_music): only look at
2441         main_part_ for % repeats.
2443         * lily/stem-tremolo.cc (get_beam_translation): new function.
2444         (calc_slope): new function.
2445         (height): don't use real slope.
2447 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
2449         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
2450         new connect-to-neighbor, control-points and staff-padding
2451         properties to make ligature brackets showing up again.
2453 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2455         * VERSION: release 2.7.33
2457         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
2458         too many.
2460         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2461         remove applyOutput example.
2462         (Objects connected to the input): document \tweak, \parenthesize
2464         * lily/relocate.cc (prefix_relocation): allow "current"
2465         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
2466         changing VERSION in a lily tree less painful.
2468         * input/regression/parenthesize.ly: new file. 
2470         * scm/output-lib.scm (parenthesize-element): new function.
2472         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
2474         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
2476         * lily/accidental-engraver.cc (make_standard_accidental): reroute
2477         cause: accidentals are caused by note heads, not note events. 
2479 2006-02-08  Graham Percival  <gpermus@gmail.com>
2481         * darwin.patch: small patch from Erlend, thanks!
2483         * Documentation/user/basic-notation.itely: add stem-neutral example.
2485         * Documentation/user/putting.itely: clarifications.
2487 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2489         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
2490         note, add more guidelines to what should go into NEWS.
2492         * input/sakura-sakura.ly: document how to override font.
2494         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
2496 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2498         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
2500 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2502         * scripts/convert-ly.py (lilypond_version_re_str): Move from
2503         convertrules.  Add explicit grouping, needed for python2.2.
2505 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2507         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
2509 2006-02-07  Graham Percival  <gpermus@gmail.com>
2511         * Documentation/user/global.itely: fix line-width in (text) docs.
2513         * Documentation/user/lilypond-book.itely: same.
2515 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2517         * VERSION (PACKAGE_NAME): release 2.7.32
2519         * Documentation/topdocs/NEWS.tely (Top): document new variable
2520         naming.
2522         * flower/include/array.icc (Message): remove file.
2524         * flower/include/std-vector.hh: make sure vsize and VPOS are
2525         defined for binary_search_bounds().
2527         * flower/std-string.cc (std): add to_string(long unsigned).
2529         * configure.in (gui_b): excise std_string option.
2530         (gui_b): excise std_vector option.
2532         * flower/string.cc (Module): excise flower array & string
2534         * flower/include/std-string.hh: excise flower string.
2536         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
2538         * python/convertrules.py (lilypond_version_re_str): require
2539         only numbers and dots in \version string.
2541 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2543         * lily/system-start-delimiter.cc (print): allow style = text too.
2545         * lily/system-start-delimiter-engraver.cc
2546         (acknowledge_system_start_text): new function, also add add to
2547         support of system-start-text (instrument names). This fixes
2548         instrument names on piano staves.
2550         * lily/instrument-name-engraver.cc: rewrite. Use
2551         system-start-delimiter approach. This save memory and cpu.
2553         * scm/define-grobs.scm (all-grob-descriptions): remove
2554         instrument-name from break-alignment.
2556         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
2558 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2560         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
2561         jobserver going.
2563         * configure.in (std_vector): On by default.
2565         * lily/include/font-metric.hh:
2566         * lily/include/tfm-reader.hh: 
2567         * lily/include/spanner.hh: Use unsigned for indices and sizes.
2568         Update users.
2570         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
2572 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2574         * VERSION (PACKAGE_NAME): 2.7.31
2576         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
2577         EPS edge at 0, but take minimum with left-overshoot. This fixes
2578         cut off system start delims. 
2580         * lily/instrument-name-engraver.cc (stop_translation_timestep):
2581         hack: add to axis group if not added yet. This fixes hara kiri'd
2582         piano staves.
2584         * lily/hara-kiri-group-spanner.cc
2585         (force_hara_kiri_in_y_parent_callback): fix signatures.
2587         * lily/hairpin.cc (print): check next hairpin to see whether or
2588         not to be continuing.
2590 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
2592         * Remove trailing whitespace from makefiles.
2593         
2594         * flower/include/std-vector.hh: Add binary_search_bounds workaround
2595         for earlier gcc.
2597         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
2599         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
2601         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
2603         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
2605         * configure.in: Use it.
2607 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2609         * scm/music-functions.scm (pitch-of-note): new function.
2611         * ly/music-functions-init.ly: add \octave and \addquote
2613         * lily/parser.yy (music_function_chord_body): softcode \octave.
2614         (lilypond_header): softcode \addquote
2616 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2618         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
2619         array.hh, parray.hh at all.  Getting ready to flip the
2620         configure default.
2622         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
2624         * lily/source-file.cc (file::get_line): Help binary_search_bounds
2625         a bit.
2627         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
2629 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2631         * flower/include/array.hh: typo. 
2633 2006-02-02  Graham Percival  <gpermus@gmail.com>
2635         * Documentation/user/advanced-notation.itely: doc "\#" in text.
2637 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2639         * flower/include/pqueue.hh: Derive from std::vector.
2641         * flower/include/parray.hh: Conform to std::vector interface.
2642         Update users.
2644 2006-02-02  Graham Percival  <gpermus@gmail.com>
2646         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
2648 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2650         * flower/file-path.cc (is_file): remove if 0 section.
2652         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
2653         selecting afii61352.
2655 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2657         * flower/include/std-vector.hh (boundary): Oops, reverse.
2659         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
2660         remove superfluous `d'.
2662         * flower/include/std-vector.hh (boundary, top): Detach from class.
2663         Remove empty vector shell.
2665         * flower/include/array.hh (reverse, swap): Detach from class.
2666         Update users.
2667         
2668         * flower/include/std-vector.hh
2669         * flower/include/array.hh (concat): Globally change to insert ().
2671         
2672         * flower/include/std-vector.hh
2673         * flower/include/parray.hh
2674         * flower/include/array.hh (elem, elem_ref): Globally replace by
2675         at ().
2677 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2679         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
2681         * python/convertrules.py (FatalConversionError.sub_cxx_id):
2682         anticipate on identifier substitutions.
2684 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2686         * flower/include/std-vector.hh (insert): Remove, replace by
2687         std::vector interface.  Update callers.
2689         * flower/include/array.icc (insert): Change signature to
2690         match std::vector interface.
2691         
2692         * flower/include/array.icc (vector_sort): Bugfix.
2694 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2696         * lily/parser.yy (output_def_head_with_mode_switch): new
2697         production. Result: dashes and underscores may be used in the
2698         \paper block.
2700         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
2702         * python/convertrules.py (conv): oops. One slash too much.
2704 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2706         * flower/include/std-vector.hh (sort): Remove, replace by
2707         ::vector_sort.  Update callers.
2709         * flower/include/std-vector.hh (slice): Remove.  Update callers.
2710         (sort): Bugfix.
2712         * flower/test-std.cc (vector_sort): New test.
2714 2006-02-01  Graham Percival  <gpermus@gmail.com>
2716         * Documentation/user/putting.itely: fixes from Erik.
2718 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2720         * flower/test-std.cc: Add simple unit test for vector migration.
2722         * stepmake/stepmake/test*: Unit test support.
2724         * flower/include/std-vector.hh (del): Remove.  Use erase (),
2725         update callers.
2727         * flower/include/array.hh (begin, end): Add.
2728         (del, get): Remove.
2730 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2732         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
2733         std::string not String. 
2735         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
2736         iso UINT_MAX.
2738         * lily/prob.cc (Prob): copy type_ too.
2740         * lily/lily-guile.cc (mangle_cxx_identifier): new
2741         function. Class_bla::foo_bar_[px] ->
2742         ly:class-bla::foo-bar[?!]. Changes throughout
2744 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2746         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
2748         * lily/beam.cc (calc_direction): take dir from visible stem in
2749         degenerate case.
2751 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2753         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
2754         Fix -1, >=0 boundary checks for unsigned vsize.
2756         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
2757         loop for unsigned vsize.
2759         * configure.in (--enable-std-vector): New option.
2760         (--enable-std-string): On by default.
2762         * flower/include/std-vector.hh: New file.  Enable switch to
2763         std::vector, update client code.
2765 2006-01-30  Graham Percival  <gpermus@gmail.com>
2767         * scm/document-translation.scm: clarify "this context is also
2768         known as".  Thanks, Werner!
2770         * Documentation/user/putting.itely: small fixes from Don Blaheta.
2772         * Documentation/user/invoking.itely: small fix from Don.
2774 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2776         * scm/lily.scm (define-scheme-options): rename option
2777         preview-include-book-title to book-title-preview
2778         (define-scheme-options): move force-eps-font-include (from paper
2779         block) to eps-font-include -d option.
2781         * VERSION (PATCH_LEVEL): release 2.7.30
2783         * input/bach-schenker.ly (staffPiano): new file.
2785         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
2787         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
2788         credits to Nicolas.
2790         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
2792         * ps/lilyponddefs.ps: remove start-system, stop-system,
2793         start-page fluff. This saves putting { } code on the stack, fixing
2794         stack overflows when including EPS files.
2796 2006-01-29  Graham Percival  <gpermus@gmail.com>
2798         * Documentation/user/putting.itely: minor fixes (comments on -devel).
2800 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2802         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
2804 2006-01-28  Graham Percival  <gpermus@gmail.com>
2806         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
2808 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2810         * input/mutopia/claop.py: Update.
2812 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2814         * input/regression/completion-heads.ly (texidoc): fix.
2816         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
2818         * lily/tie-formatting-problem.cc
2819         (set_ties_config_standard_directions): use abs iso fabs for ints.
2821         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
2823         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
2824         little less than noteheight, to prevent overlaps in chords.
2826         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
2827         head, and fudge stem-attachment.
2829         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
2831         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
2833 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2835         * lily/main.cc (main): Debugging aid: catch exceptions.
2837         * flower/std-string.cc (to_string): Robustification.  Fixes midi
2838         output with std::string.
2840 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2842         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
2844 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
2846         * Fix -DSTRING_UTILS_INLINED.
2848 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2850         * VERSION (PATCH_LEVEL): release 2.7.29
2852         * lily/relocate.cc (setup_paths): mingw uses std string too.
2854         * lily/*.cc: various fixes for substr(ARG).
2856         * lily/sustain-pedal.cc (print): 
2858         * flower/file-name.cc (slashify): use std strings.
2860         * flower/string-convert.cc: remove publib.h
2862         * scm/define-markup-commands.scm (verbatim-file): new markup
2863         command \verbatim-file
2865         * Documentation/topdocs/NEWS.tely: fixup URLs
2867         * input/regression/alignment-vertical-manual-setting.ly (Module):
2868         new file.
2870         * lily/align-interface.cc (align_elements_to_extents): overwrite
2871         translations with numbers in alignment-offsets from left bound
2873         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
2874         (page-translate-systems): new function: take into account Y-offset.
2876         * Documentation/topdocs/NEWS.tely (Top): document new features.
2878         * input/regression/page-layout-manual-position.ly (Module): new
2879         file.
2881 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
2883         * flower/file-path.cc (path::parse_path): Oops.
2885         * Finish std::string interface.  For now, use std:: marker
2886         throughout for easy s/r.
2888 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2890         * Documentation/user/putting.itely (Score is a single musical
2891         expression): typo.
2892         (Score is a single musical expression): more typos.
2894         * scm/page.scm (annotate-space-left): thinko.
2895         (annotate-page): more thinkos.
2897 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2899         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
2900         for different \score blocks separately.
2901         (post-process-pages): put write-page-layout into paper block.
2903         * lily/output-def.cc (get_parser): new file.
2905         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
2906         file.
2908         * lily/include/output-def.hh (class Output_def): add parser_ member.
2910         * input/regression/page-layout-twopass.ly (Module): new file.
2912         * scm/lily.scm: remove cpp hack.
2914         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
2916 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2918         * GNUmakefile.in (c-clean): New target.
2920         * flower/include/std-string.hh: String/std::string compatibility:
2921         Use NPOS for `not found' (iso -1), use ssize for length () and pos
2922         type.
2924         * flower/rational.cc: 
2925         * flower/include/rational.hh: 
2927         * flower/offset.cc: 
2928         * flower/include/offset.hh: 
2930         * flower/interval.cc: 
2931         * flower/include/interval.hh: 
2933         * flower/string-convert.cc: 
2934         * flower/include/string-convert.hh: Use std::string [interface].
2935         Update callers.
2937 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
2939         * Documentation/index.html.in: clean up.
2941 2006-01-25  Graham Percival  <gpermus@gmail.com>
2943         * Documentation/user/putting.itely: another new untested doc section.
2945 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2947         * scm/layout-page-layout.scm (write-page-breaks): write
2948         \spacingTweaks #ALIST. Handle grace timing.
2950         * scm/: more imports.
2952         * scm/page.scm (make-page): add footer/header.
2953         (annotate-space-left): revise: only take page argument.
2954         (layout->page-init): new function.
2956         * scm/layout-page-layout.scm (write-page-breaks): preliminary
2957         version of the system/spacing/linebreak hack writing to the output
2959         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
2960         ly:make-prob.
2962         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
2963         ly:spanner-bound
2965 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2967         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
2969         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
2971         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
2972         handling to page.scm
2974         * lily/prob-scheme.cc (LY_DEFINE): new file.
2975         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
2977         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
2978         prob functions.
2980         * lily/music.cc (derived_mark): derive Music from Prob.
2982         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
2984         * lily/prob.cc (Module): Implement Prob (Property Object), object
2985         with shared and r/w property alists.  
2987         * lily/include/prob.hh (Module): new file. Declare Prob.
2989         * flower/string.cc: remove is_empty().
2991         * flower/include/string.hh (class String): remove String:: qualifier.
2993         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
2994         substitute appropriate functions.
2996         * flower/include/string.hh (class String): remove to_str0 and
2997         is_empty(). S&R everywhere.
2999 2006-01-23  Graham Percival  <gpermus@gmail.com>
3001         * Documentation/user/basic-notation.itely: add hairpin
3002         after-linebreak tweak to commonprop.
3004         * Documentation/user/putting.itely: added two new sections.
3006 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3008         * flower/international.cc: 
3009         * flower/include/international.hh: 
3011         * flower/getopt-long.cc: 
3012         * flower/include/getopt-long.hh: Use std::string [interface].
3013         Update callers.
3015         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
3017         * stepmake/stepmake/executable-rules.make: Add dependency on
3018         module libraries.
3020 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
3022         * flower/file-path.cc: 
3023         * flower/include/file-path.hh: Use std::string [interface].
3024         Update callers.
3026         * flower/direction.cc: 
3027         * flower/axis.cc: Unused.  Remove.
3029         * configure.in (--enable-std-string): New option.
3031         * flower/std-string.cc: 
3032         * flower/include/std-string.hh: New file.
3034         * flower/file-name.cc[STD_STRING]:
3035         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
3037 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3039         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
3041         * scm/define-markup-commands.scm (with-dimensions):
3042         with-dimensions markup command.
3044         * input/test/font-table.ly: use it.
3046         * lily/open-type-font.cc (glyph_list): new function.
3048         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
3050         * lily/ttf.cc: remove ly:font-glyph-list scheme function
3052 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3054         * ly/music-functions-init.ly (parallelMusic): new music function
3055         for parallel music entry.
3057         * scm/define-music-properties.scm (all-music-properties): new
3058         'void music property
3060         * scm/music-functions.scm (ly:music-message): make public, to be
3061         used in music function definitions
3063         * scm/lily-library.scm (collect-music-for-book): discard music
3064         when the 'void property is set.
3066 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3068         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
3070         * mf/GNUmakefile: idem.
3072         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
3074         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
3076         * Documentation/user/notation-appendices.itely (The Feta font):
3077         use it.
3079         * input/test/font-table.ly: new file. Generate font table within lily.
3081         * Documentation/user/notation-appendices.itely (The Feta font):
3082         use new font-table.ly file. 
3084         * stepmake/stepmake/install-out-targets.make
3085         (local-install-outfiles): only create directory if
3086         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
3088 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3090         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
3092         * VERSION (PACKAGE_NAME): release 2.7.28
3094         * scm/framework-ps.scm (write-preamble): use it to pick exactly
3095         the right font from a Mac dfont.
3096         (write-preamble): don't forget directory, only look at files.
3098         This fixes problems with TTF files in dfonts that don't match
3099         their PostScript names.
3100          
3101         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
3102         PS name from TTF font.
3104         * input/regression/tie-manual.ly: document new feature.
3106         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
3108         * VERSION (MY_PATCH_LEVEL): bump to .28
3110         * Documentation/user/basic-notation.itely (Ties): add tie examples
3111         refs.
3113         * lily/tie-formatting-problem.cc (score_ties_configuration):
3114         symmetry penalties for outer ties.
3116 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3118         * lily/tie-formatting-problem.cc (generate_configuration) 
3119         (set_manual_tie_configuration): skip non-pair manual
3120         tie-configuration, so you can set individual ties as
3122           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
3124         * input/regression/tie-chord.ly: use generateTiePattern to
3125         simplify file.
3127         * lily/tie-formatting-problem.cc (peak_around): new function.
3128         (score_configuration): use sliding criterion for staff line collisions. 
3129         (score_configuration): idem for dot collisions.
3130         (generate_configuration): use separate stem_gap for gap to stem.
3132         * lily/include/tie-formatting-problem.hh (struct Tie_details):
3133         separate penalty factors for x and y distance.
3134         (struct Tie_details): separate penalties for tip and center line collisions.
3136 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
3138         * lily/tie-formatting-problem.cc (generate_configuration): make
3139         large ties avoid stafflines in the horizontal section.
3140         (score_configuration): use softcoded penalties
3141         (score_aptitude): idem.
3143         * lily/tie-helper.cc (from_grob): softcode tie details
3145         * lily/staff-symbol-referencer.cc (on_staff_line): new function
3147         * lily/staff-symbol-referencer.cc (on_line): rename from
3148         on_staffline 
3150 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3152         * ly/music-functions-init.ly: remove duplicate tag.
3154         * lily/include/*.hh: GCC 4.1 fixes.
3156 006-01-16  Erlend Aasland  <erlenda@gmail.com>
3158         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
3160         * scm/define-music-types.scm: fix bug in desc. string
3161         for OverrideProperty
3163 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
3165         * scripts/lilypond-book.py: bugfix
3167         * scm/define-music-types.scm: fix typos.
3169 2006-01-14  Graham Percival  <gpermus@gmail.com>
3171         * Documentation/user/ basic-notation.itely, global.itely,
3172         advanced-notation.itely, instrument-notation.itely: small
3173         additions (bugs and commonly tweaked properties).
3175 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3177         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
3178         detection of mingw build.
3179         (MINGW_BUILD): opps.
3181 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3183         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
3184         i686-mingw32.
3186 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3188         * scm/music-functions.scm (skip->rest): add skip->rest
3190 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3192         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
3193         explicitly.
3195         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
3196         config dirs. Aids debugging. 
3197         (display_config): also display config files.
3199 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3201         * VERSION: release 2.7.27
3203         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
3204         for determining bar size.
3206         * lily/staff-symbol.cc (print): place lines at distance line-positions
3208         * scm/define-grob-properties.scm (all-user-grob-properties): add
3209         line-positions.
3211         * lily/staff-symbol.cc (height): new function.
3213         * input/regression/staff-line-positions.ly:  new file.
3215 2006-01-06  Graham Percival  <gpermus@gmail.com>
3217         * input/test/add-staccato.ly: remove reference to old file.
3219 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3221         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
3222         lilypond binary too.
3224 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3226         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
3228 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3230         * scripts/midi2ly.py: Bugfix: Declare datadir.
3232         * make/ly-rules.make:
3233         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
3234         that seems to be gone). Fixes make web.
3236         * The grand 2005-2006 replace.
3238         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
3240 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3242         * make/lilypond-vars.make: set LILYPOND_BINARY variable
3243         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
3244         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
3245         like -dgs-font-load.
3247         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
3248         remove absolute path to lilypond binary.
3249         
3250 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
3252         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
3254 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3256         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
3258         * mf/GNUmakefile: remove broken dvips map symlink.
3260 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
3262         * lily/main.cc: 
3263         * configure.in: Cosmetic fixes.
3265 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3267         * Documentation/user/music-glossary.tely (Pitch names): Added
3268         Spanish pitch names and durations, thanks to Ernesto Gancedo
3270 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3272         * scm/lily.scm (define-scheme-options): use quasi-quote for option
3273         init. Fixes verbose printing of .scm files.
3275         * stepmake/aclocal.m4: add spaces before - options.
3276         
3277 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3279         * lily/relocate.cc (setup_paths): Bugfix: do not store result
3280         of path search in local block variable.
3282 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3284         * configure.in (NCSB_DIR): --enable-ncsb-dir
3285         (LINK_GXX_STATICALLY): denko.
3287         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
3289         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
3290         use locate to find c059033l.pfb. 
3291         
3292 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3294         * lily/tie-formatting-problem.cc
3295         (problem::generate_base_chord_configuration): Use my_round (was
3296         round).
3298         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
3299         do not invoke mbrtowc.
3301         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
3303 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3305         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
3307 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
3309         * Documentation/user/invoking.itely (svg): revise.
3311 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3313         * lily/lexer.ll: use sourcefilename iso. renameinput.
3315 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3317         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
3318         <PostScriptName>.ttf instead of c059XXXttf.
3320         * lily/program-option.cc (LY_DEFINE): special support for
3321         --verbose, so it works before option init too.
3323         * mf/GNUmakefile (local-install): oops.
3325         * lily/lyric-hyphen.cc (print): oops.
3327         * buildscripts/pfx2ttf.fontforge: new file.
3328         
3329         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
3330         ($(outdir)/%.ttf): new rule. 
3332         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
3333         to LyricHyphen.
3335         * lily/lyric-hyphen.cc (print): multiply hyphen height by
3336         font-size
3338 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3340         * VERSION: release 2.7.26
3341         
3342         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
3344 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3346         * lily/font-config.cc (init_fontconfig): verbosity.
3348         * THANKS: add Muziekacademie Lede. 
3350         * scripts/musicxml2ly.py (print_voice_definitions): new function 
3351         (print_score_setup): new function
3352         (convert): read part definition to output staves properly.
3354         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
3355         Music_xml notes.
3357         * python/musicexp.py (Output_printer.__init__): use _ in data
3358         members.
3359         (Output_printer.unformatted_output): new function: no formatting,
3360         but count braces.
3361         (Duration.get_length): remove isinstance() checks for
3362         Output_printer everywhere.
3364         * input/regression/lyrics-bar.ly (texidoc): add
3365         Separating_line_group_engraver.
3367 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
3369         * lily/relocate.cc (framework_relocation): New function,
3370         factored from set_relocation ().
3371         (prefix_relocation): Rename from set_relocation ().
3372         (setup_paths): Use it.
3374 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3376         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
3377         numbers. Patch by Erlend Aasland.
3379 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3381         * lily/font-config.cc (init_fontconfig): print warning if cache
3382         file is not existant.
3384         * lily/main.cc: don't use #ifdef but #if
3386 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3388         * lily/grob-property.cc (internal_set_property): don't abort on
3389         calculation-in-progress.
3391         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
3393         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
3394         connect-to-neighbor property not connect-to-other
3396         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
3397         (LY_DEFINE): oops. don't forget protection.
3399         * flower/parse-afm.cc (Module): strip AFM handling completely.
3401         * lily/stencil-expression.cc: idem.
3403         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
3405         * lily/function-documentation.cc (ly_add_function_documentation):
3406         use static member iso. Protected_scm
3408         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
3410         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
3412 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3414         * lily/relocate.cc (set_env_dir): New function.
3415         (set_relocation): Use it to fix setting PANGO_PREFIX.
3417 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3419         * input/regression/stem-direction-context.ly: remove rest.
3421         * lily/melody-engraver.cc (process_music): restart for bar lines.
3422         (acknowledge_slur): restart for slurs.
3424 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
3426         * Documentation/user/invoking.itely: describe how to view SVG 
3427         output using Inkscape which replace embedded fonts with OTF fonts.
3429 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3431         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
3433 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3435         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
3436         comment.
3438 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3440         * VERSION (PACKAGE_NAME): release 2.7.25
3442         * Documentation/topdocs/NEWS.tely (Top): document new feature.
3444         * input/regression/stem-direction-context.ly: new file.
3446         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
3448         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
3449         on rest.
3451         * ly/engraver-init.ly: add Melody_engraver
3453         * lily/beam.cc (calc_direction): use default-direction
3454         iso. get_default_direction()
3456         * scm/define-grob-properties.scm (all-user-grob-properties): add
3457         default-direction property.
3459         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
3461         * lily/stem.cc (calc_default_direction): remove
3462         Stem::get_default_direction, use default-direction with callback
3463         instead.
3465         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
3467         * lily/melody-engraver.cc: new file. Acknowledge stems for
3468         interpolated stem directions. 
3470         * lily/melody-spanner.cc: new file. Interpolate stem directions.
3472         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
3474         * lily/slur-configuration.cc (fit_factor): more robust check for
3475         point in curve X-extent.
3477         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
3478         (outside_slur_callback): check for 'outside avoidance.
3480         * lily/slur-configuration.cc (score_extra_encompass): don't use
3481         bound->column() == avoid->column() for checking extents, as this
3482         doesn't work for accidentals. 
3484         * lily/slur-engraver.cc (acknowledge_extra_object): remove
3485         DynamicText hardcoding.
3487         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
3488         crash if bound stem is NULL
3490         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
3491         pedals.
3493 2005-12-22  Graham Percival  <gpermus@gmail.com>
3495         * scm/define-markup-commands.scm: typo.  @code{\raise}
3496         => @code{\\raise}.
3498         * darwin.patch: now used again, includes a
3499         required patch from fink.
3501 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
3503         * po/TODO: mention gtranslator along with kbabel.
3504         * po/fi.po: update translations.
3506 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3508         * lily/relocate.cc (setup_paths): Bugfix.
3510 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3512         * lily/slur-configuration.cc (score_extra_encompass): don't use
3513         "avoid" choice for avoid-slur.
3515         * stepmake/bin/install.py (dest): don't create existing dir.
3517 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3519         * stepmake/bin/install.py: Remove file before copying.
3521         * config.make.in: 
3522         * stepmake/aclocal.m4: Do not substitute INSTALL.
3524 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3526         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
3527         depend on link-tree.
3529         * lily/relocate.cc (setup_paths): only check path for non-absolute
3530         dir without directory part.
3532         * flower/file-name.cc (is_absolute):  new method.
3533         (is_absolute): check root_ too.
3535 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3537         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
3538         relocation code.  Oops, don't comment out too much.
3540         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
3541         iso itself.
3543         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
3544         compile.
3546 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3548         * .cvsignore: Add install-sh.
3550         * autogen.sh (srcdir): Typo.
3552 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3554         * autogen.sh (srcdir): urg. Touch install-sh.
3556         * stepmake/bin/install-sh (Module): remove.
3558         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
3560         * lily/include/relocate.hh: new file.
3562         * lily/relocate.cc: new file. Contain relocation logic.
3564         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
3565         (main): read LILYPOND_VERBOSE as the first thing.
3567         * stepmake/aclocal.m4: remove INSTALL variable.
3569         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
3570         separate target for making font symlinks.
3571         (documentation-dir): use $(if $(findstring )) for switching off
3572         Documentation.
3574         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
3575         something if DOCUMENTATION is no.
3577 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3579         * VERSION: release 2.7.24
3581         * lily/script-column-engraver.cc (stop_translation_timestep):
3582         delay adding to script-column.
3584         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
3586         * python/convertrules.py (conv): rule for number-visibility
3588         * lily/slur-configuration.cc (score_extra_encompass): different
3589         distance measure for avoid and inside avoidance.
3590         (score_extra_encompass): use 1/(distance+eps) as penalty.
3592         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
3593         encompass objects for generating slur curves.
3595         * lily/slur.cc: use details iso. slur-details property.
3597         * input/regression/slur-tuplet.ly: new file.
3599         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
3601         * flower/include/offset.hh (class Offset): new operator /=
3603         * lily/tuplet-number.cc (print): new file, new interface.
3605         * scm/define-grob-properties.scm (all-user-grob-properties):
3606         remove number-visibility property.
3608         * lily/tuplet-bracket.cc (calc_control_points): new function
3609         (calc_connect_to_neighbors): new function.
3610         (print): remove text handling for tuplet numberdef.
3612         * lily/tuplet-engraver.cc (struct Tuplet_description): create
3613         TupletNumbers too. 
3615         * lily/lily-guile.cc (robust_scm2booldrul): new function
3617         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
3619         * lily/tuplet-bracket.cc (calc_position_and_height): use
3620         staff-padding to control whether tuplet brackets are over staves.
3622         * lily/grob.cc (suicide): clear dim_caches_.
3624         * lily/dimension-cache.cc (clear): new function.
3626         * lily/grob.cc (extent): swap order of min-extent and extent
3627         calculations. This fixes hara kiri staves. 
3629 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3631         * lily/main.cc: Nitpick: relocation is not based on path, but on
3632         directory (location).
3634 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3636         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
3638         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
3640         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
3642         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
3644         * stepmake/stepmake/generic-vars.make (Module): idem.
3646         * stepmake/stepmake/executable-targets.make (default): use it.
3648         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
3650         * make/GNUmakefile: don't install make rules.
3652         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
3653         slashes.
3654         (prepend_env_path): more verbosity.
3656 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3658         * GNUmakefile.in: add dir argument for find command.
3660         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
3661         fixes weird line numbers for point & click.
3663         * lily/source-file.cc (get_counts): init line/column/char counts.
3665 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3667         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
3669 2005-12-16  Graham Percival  <gpermus@gmail.com>
3671         * Documentation/user/basic-notation.itely, advanced-notation.itely:
3672         minor fixes from Fredric.  Thanks!
3674 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3676         * ly/music-functions-init.ly: add \bar and \clef music function 
3678         * lily/lily-lexer.cc: idem.
3680         * lily/parser.yy (FIXME): remove BAR and CLEF.
3682 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3684         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
3686         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
3687         function arguments too
3689         * lily/main.cc (set_relocation): new function.
3691         * scripts/musicxml2ly.py (convert): add \version
3693         * lily/tie.cc: remove get_default_attachments()
3695         * VERSION (PACKAGE_NAME): release 2.7.23
3696         
3697         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
3698         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
3700         * Documentation/topdocs/NEWS.tely (Top): document new feature.
3702         * lily/tie-formatting-problem.cc (score_ties): new function
3703         (get_variations): new function. Try flipping dirs for collisions.
3704         (generate_optimal_chord_configuration): new function. 1-opt search
3705         for better configuration.
3707         * lily/tie-configuration.cc: new file.
3709         * lily/tie.cc: junk Tie::get_configuration()
3711         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
3712         (score_ties_configuration): new function.
3713         (generate_ties_configuration): new function.
3714         (generate_base_chord_configuration): new function.
3715         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
3716         (set_manual_tie_configuration): Move body from tie-column-format.cc 
3718         * input/regression/tie-dot.ly: new file.
3720         * lily/tie-formatting-problem.cc (score_configuration): score
3721         tie/dot collisions.
3723         * lily/tie-helper.cc (get_transformed_bezier): new function
3725         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
3727         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
3728         -undefined suppress iso. -framework Python 
3730         * scm/define-grobs.scm (all-grob-descriptions): set
3731         springs-and-rods (thanks Joe Neeman!)
3733 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3735         * input/no-notation/display-lily-tests.ly (test): 
3736         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
3737         changed from \tag #'(a b) to \tag #'a \tag #'b
3739 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3741         * Documentation/topdocs/NEWS.tely: strip out-www.
3743         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
3745         * config.make.in (AR): add AR and RANLIB
3747         * flower/libc-extension.cc: include cassert
3749         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
3750         darwin check.
3752 2005-12-11  Graham Percival  <gpermus@gmail.com>
3754         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
3756         * stepmake/stepmake/python-modules-vars.make: define
3757         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
3759         * THANKS: added Johannes Schindelin.
3761 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3763         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
3765         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
3766         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
3768         * lily/parser.yy: reorganize file layout.
3770         * ly/music-functions-init.ly: add tweak music function.
3772         * lily/grob-info.cc (ultimate_music_cause): new function:
3773         recursively lookup causes. 
3775         * lily/parser.yy (chord_body_element): allow music functions for
3776         post-events, allow music functions for chord elements. 
3778         * lily/font-config-scheme.cc (display_fontset): add cast.
3780         * python/convertrules.py (FatalConversionError.sub_syms): \tag
3781         #'(a b) -> \tag #'a \tag #'b rule.
3783         * python/musicexp.py (Output_printer.dump_version): new function
3785 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3787         * lily/parser.yy (FIXME): remove \tag
3788         (FIXME): remove tag_music() function.
3790         * lily/lily-lexer.cc: remove \tag
3792         * ly/music-functions-init.ly: define music-function "tag"
3794         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
3796 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3798         * VERSION (PATCH_LEVEL): release 2.7.22
3800         * input/regression/lyric-hyphen-retain.ly: renew.
3802         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
3803         grob
3805         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
3806         iso. minimum-length property for rods.
3808         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
3809         LyricSpace item to keep lyrics spaced apart.
3811         * ly/engraver-init.ly: remove Separating_line_group_engraver
3813         * Documentation/user/music-glossary.tely: do setfilename before
3814         music-glossary.
3816 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
3818         * Documentation/user/lilypond-book.itely: use `,´ after xref:
3819         See xref documentation, for example.
3821 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3823         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
3824         pending_skip iso. ly_voice[-1]
3825         (main): add if __main__ for debugging.
3827         * python/musicxml.py (Accidental.__init__): new class.
3829         * scripts/musicxml2ly.py (progress): new function
3830         (musicxml_key_to_lily): don't barf on modeless keys.
3831         (create_skip_music): new function.
3832         (musicxml_spanner_to_lily_event): new function. Handle beams too.
3833         (musicxml_note_to_lily_main_event): new function.
3835         * python/musicexp.py (Music.__init__): add comment field.
3836         (NestedMusic.append): new routine.
3837         (SequentialMusic.print_ly): print comment.
3838         (ArpeggioEvent.ly_expression): new class
3839         (BeamEvent.ly_expression): new class
3840         (NoteEvent.__init__): support for cautionary/forced accs.
3842         * lily/lookup.cc (slur): normal order for array loop.
3844         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
3845         to 0.0.
3847         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
3848         collapsed.
3850 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
3852         * scm/music-functions.scm: Make phrasing slurs follow voice direction
3854         * scripts/lilypond-book.py: Introduce option
3855             --preserve-line-breaks, for usage with srcltx
3857 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3859         * scm/output-lib.scm (print-circled-text-callback): draw circle
3860         around text using make-circle-markup.
3862         * Documentation/user/*: strip out-www from file names.
3864 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
3866         * Documentation/user/lilypond.tely (direntry): remove empty lines;
3867         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
3869 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3871         * Documentation/user/GNUmakefile: idem.
3873         * Documentation/user/macros.itexi: strip out-www
3875         * python/rational.py: python 2.3 compat.
3877         * VERSION (PATCH_LEVEL): release 2.7.21
3879         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
3880         option formatting, lilypond style.
3882         * python/musicexp.py: grab from Ikebana: a library for composing
3883         ly music expressions. 
3884         (Output_printer): class for advanced .ly printing.
3885         (eg. tupletting) 
3887         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
3888         convert to pythonesque structure.
3890         * python/rational.py: PD rational number class.
3892         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
3894 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
3896         * lily/part-combine-iterator.cc: Minor bugfix
3897         
3898         * THANKS: Update bughunters
3900 2005-12-02  Werner Lemberg  <wl@gnu.org>
3902         * mf/README: Document process for proper mf2pt1 conversion.
3904         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
3905         overlapping.
3907         * mf/feta-harmonica.mf: Removed.  Unused.
3909 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3911         * scripts/lilypond-book.py (do_file): fix thinkos.
3913 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3915         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
3916         ($(outdir)/parser.cc): 
3917         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
3919 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
3921         * ly/titling-init.ly (tagline): it should be a space between
3922         "Music engraving by LilyPond" and the version number.
3924 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3926         * VERSION (PACKAGE_NAME): release 2.7.20
3928 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3930         * scm/define-markup-commands.scm (pad-to-box): new markup command.
3932         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
3933         1.0.
3934         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
3936 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3938         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
3940         * kpath-guile/: remove directory
3942         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
3943         file. Encapsulate kpathsea using commandline tools.
3945         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
3946         kpathsea) module.
3948 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3950         * Documentation/user/advanced-notation.itely (Setting automatic
3951         beam behavior): Correct a few typos. Thanks to David Bobroff.
3953         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
3954         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
3956 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3958         * scripts/*.py: gmane address for bugs.
3960 2005-11-28 Pal Benko <benkop@freestart.hu>
3961         
3962         * make/ly-rules.make: add -f switch to mv
3964         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
3966         * lily/bar-line.cc: interpret it
3968 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3970         * configure.in (--disable-documentation): New switch.
3972         * GNUmakefile.in: Use it.
3974         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
3976 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3978         * scripts/lilypond-book.py (do_file): search chunks for
3979         \\begin{document}
3981         * GNUmakefile.in: add copy step in between so we can lose the
3982         out-www directories.
3984 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3986         * lily/pango-font.cc (pango_item_string_stencil): put
3987         geometry.width into glyph-string too.
3989 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3991         * scm/define-music-display-methods.scm (RevertProperty):
3992         (OverrideProperty): Use grob-property-path property, a list of
3993         symbols, instead of grob-property, which used to be a single
3994         symbol.
3995         (BassFigureEvent): a figure can be a plain number, not necessarily a
3996         markup.
3998 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4000         * VERSION: release 2.7.19
4001         
4002         * lily/figured-bass-engraver.cc (process_music): check
4003         figuredBassCenterContinuations first.
4005         * scm/translation-functions.scm (format-bass-figure): make double
4006         sharp larger. 
4008         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
4009         determine X-parent.
4011         * lily/system-start-delimiter-engraver.cc: move from
4012         Nested_system_start_delimiter_engraver, rename
4013         Nested_system_start_delimiter_engraver ->
4014         System_start_delimiter_engraver.
4016         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
4017         bracket type from hierarchy.
4019 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4021         * lily/rest.cc (y_offset_callback): read staff-position.
4023         * scm/define-grob-properties.scm (all-user-grob-properties): don't
4024         mark after-line-breaking-callback as internal.
4026         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
4028 2005-11-25  Werner Lemberg  <wl@gnu.org>
4030         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
4032 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4034         * stepmake/bin/add-html-footer.py (do_file): add google
4036         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
4037         staff if first_start_ is true.
4039 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4041         * scripts/midi2ly.py (split_track): add __repr__ members.
4042         (track_first_item): only return Item if not None. This fixes a
4043         problem when dumping a track that starts with an empty channel.
4045         * python/midi.c: doc module.
4047 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4049         * Documentation/user/global.itely (Creating MIDI files): Fix
4050         compilation problem.
4052 2005-11-22  Graham Percival  <gpermus@gmail.com>
4054         * Documentation/user/basic-notation.itely: clarify dynamic
4055         padding text.
4057         * Documentation/user/advanced-notation.itely: add unicode
4058         escape control example, whatever that is.  :)
4060         * Documentation/user/global.itely: added "removing dynamics
4061         from MIDI" code.
4063 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4065         * VERSION (PATCH_LEVEL): release 2.7.18
4067         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
4068         System_start_delimiter_engraver by
4069         Nested_system_start_delimiter_engraver.
4071         * lily/nested-system-start-delimiter-engraver.cc (struct
4072         Bracket_nesting_node): new class.
4073         (struct Bracket_nesting_group): new class
4074         (struct Bracket_nesting_staff): new class.
4075         (process_music): create hierarchy of grobs. This allows separate
4076         tuning of different SSDs. 
4078         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
4079         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
4081 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4083         * lily/side-position-interface.cc (aligned_side): multiply
4084         staff_radius by 2.
4086         * lily/script-engraver.cc (make_script_from_event): allow setting
4087         values to '()
4089 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4091         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
4093         * scm/define-grobs.scm (all-grob-descriptions): new grob
4094         NestedSystemStartDelimiter.
4096         * input/regression/system-start-heavy-bar.ly: new file.
4098         * lily/nested-system-start-delimiter-engraver.cc: new file.
4100         * lily/nested-system-start-delimiter.cc: new file.
4102         * input/regression/system-start-nesting.ly: new file.
4104         * scm/define-grobs.scm (all-grob-descriptions): use X side
4105         positioning for positioning braces for nested contexts.
4107         * lily/system-start-delimiter.cc (print): don't divide extent by
4108         staff_space.
4109         (print): use style iso. glyph.
4110         (staff_bracket): translate glyph inside routine already.
4112 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
4114         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
4115         names.
4117 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4119         * scm/define-context-properties.scm
4120         (all-user-translation-properties): rename figuredBassFormatter
4121         from newFiguredBassFormatter.
4123         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
4125         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
4127         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
4129         * lily/beam.cc (calc_beaming): new function.
4130         (calc_shorten): new function.
4132         * THANKS: add Edward Neeman.
4134         * input/regression/accidental-clef-change.ly: new file.
4136         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
4138         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
4140         * lily/clef-engraver.cc (inspect_clef_properties): reset
4141         localKeySignature for clef changes.
4143 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4145         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
4146         add dummy definition that works in Linux and add information in
4147         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
4149         * Documentation/user/changing-defaults.itely (Modifying context
4150         plug-ins): Add index for \with.
4152         * Documentation/user/music-glossary.tely (dal segno): Updated
4153         example to version >=2.6.
4155 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4157         * Documentation/user/instrument-notation.itely (Printing chord
4158         names): Reorder \chordmode and \repeat in one example.
4160 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4162         * VERSION: release 2.7.17
4163         
4164         * Documentation/topdocs/NEWS.tely (Top): add note about
4165         refactoring.
4167         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4168         new function. Search region of 3 positions for best tie.
4169         (score_configuration): new function.
4170         (score_aptitude): new function.
4171         (generate_configuration): new function.
4172         (get_configuration): new function.
4173         (Tie_formatting_problem): new function
4175         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
4177         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
4179         * THANKS: add Eduardo Vieira & Ralph Little
4181         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
4182         narrower.
4184         * lily/include/tie-formatting-problem.hh (class
4185         Tie_formatting_problem): add Tie_details to
4186         Tie_formatting_problem. Update calling conventions.
4188         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
4189         config.make.
4191         * Documentation/user/lilypond.tely: remove musedata2ly entry.
4193 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
4195         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
4196         scm/define-context-properties.scm: Maintenance bugfix: make
4197         ligature brackets work again by removing obsolete ligature
4198         primitive callback push/pop.
4200         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
4201         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
4202         value.
4204 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4206         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
4207         used and do not call it a path.
4208         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
4210 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4212         * lily/include/tie-formatting-problem.hh (class
4213         Tie_formatting_problem): new file.
4215         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
4217         * Documentation/misc/ChangeLog-2.3:  new file.
4219         * lily/audio-staff.cc (output): degarianize.
4221 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4223         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
4224         Unset PYTHONOPTIMIZE.  Fixes install if set.
4226 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4228         * python/convertrules.py (conv): add warning about drums. 
4230         * make/stepmake.make: include toplevel-version.make after config.make.
4232         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
4233         also allow python2.4
4235         * config.make.in (configure-srcdir): remove GXX GCC vars.
4237         * stepmake/aclocal.m4: don't do non-srcdir build with
4238         symlinks. Use inclusion, so the src directory name can be changed.
4240 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4242         * make/mutopia-vars.make:
4243         * make/ly-vars.make: Use src-wildcard iso wildcard for source
4244         files.
4246 2005-11-13  Werner Lemberg  <wl@gnu.org>
4248         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
4249         but the affected path.  This ensures that the (overlapping) outlines
4250         have the same direction, which is a necessary prerequisite for
4251         FontForge's algorithm to remove overlaps.
4252         Formatting.
4254         * mf/feta-haak.mf: Formatting.
4255         (draw_bracket): Slightly modify outline to avoid an unnecessary
4256         corner.
4257         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
4258         them from the affected paths.
4260 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4262         * mf/README: remove xpm / accordion notes.
4264         * lily/tie-column-format.cc (set_chord_outline): add dots into
4265         skyline extents. This fixes tie formatting if the left head has dots.
4267         * lily/tie.cc (get_configuration): only shift tie by a whole staff
4268         space inside the staff.
4269         (get_configuration): shift another position if necessary in case
4270         of left head tie  
4272 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4274         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
4275         buildscript-dir iso. $(depth)/buildscripts.
4277         * tex/GNUmakefile (local-uninstall): remove
4278         music-drawing-routines.ps juggling.
4280         * stepmake/stepmake/install-targets.make (local-install-files):
4281         prepend src-dir to install targets.
4283         * lily/system-start-delimiter-engraver.cc
4284         (acknowledge_system_start_delimiter): use
4285         add_offset_callback(). This fixes translation of nested
4286         staffgroups.
4288         * lily/grob-closure.cc (add_offset_callback): only encaps in
4289         simple_closure if it's a procedure.
4290         
4291         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
4292         from bar-line.
4294         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
4295         remove-empty where pertinent.
4297 2005-11-12  Graham Percival  <gpermus@gmail.com>
4299         * Documentation/user/instrument-notation.itely: added
4300         Cameron Horsburgh's multiple stanzas docs.  Thanks!
4302 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4304         * lily/GNUmakefile
4305         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
4306         make picture in builddir, not srcdir.
4308 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4310         * VERSION: release 2.7.16
4311         
4312         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
4313         shell arguments. 
4315 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4317         * Documentation/user/examples.itely (Piano templates): Minor
4318         modification to the Piano centered lyrics example.
4320 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4322         * scripts/lilypond-invoke-editor.scm (run-browser): look at
4323         $BROWSER.
4325         * Documentation/user/point-and-click.itely: simplify p&c
4326         instruction: don't configure firefox. Put lilypond-invoke-editor
4327         in front of the browser.
4329         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
4330         (run-browser): new function.
4332         * lily/parser.yy (Lily_lexer): recognize Book
4334         * lily/book.cc (clone): new function
4336         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
4338 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
4340         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
4341         Maintenance bugfix: reduce number of font related warnings by
4342         updating naming conventions for glyph-name.
4344 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4346         * scm/define-grobs.scm (all-grob-descriptions): add
4347         rhythmic-grob-interface to TabNoteHead.
4349         * scm/layout-beam.scm (check-quant-callbacks): remove
4350         set_stem_lengths()
4352 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
4354         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
4355         alignment of centered divisiones.
4357         * scm/scripts.scm (articulations): Maintenance bugfix:
4358         follow-into-staff -> quantize-position.
4360         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
4361         plica head in porrectus deminutus.
4363 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4365         * make/lilypond.fedora.spec.in (Group): add %clean section.
4367         * lily/tuplet-bracket.cc (print): change check: remove bracket if
4368         less then 1/5th of total length.  
4369         (print): use gap too.  Fixes tupletUp-single-bracket.ly
4371         * scm/music-functions.scm (glue-mm-rest-texts): also put other
4372         events into EventChord. This fixes textspanners on mm rests. Fixes
4373         spanner-rest.ly
4375         * lily/side-position-interface.cc (get_axis): read side-axis
4376         (set_axis): set side-axis.
4378         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
4379         properties everywhere.
4381         * lily/spacing-spanner.cc (breakable_column_spacing): add
4382         average-spacing-wishes. Take maximum if not set.
4383         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
4385         * scm/define-grobs.scm (all-grob-descriptions): add
4386         average-spacing-wishes.
4388         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
4389         offset callbacks. This fixes alignment for Fingering objects.
4391         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
4392         space for key - timesig combination. 
4394         * input/regression/script-stem-tremolo.ly (Module): new file.
4396         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
4397         to key sig.
4399         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
4400         Fixes: c-tremolo-script.ly.
4401         
4402         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
4404         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
4405         
4406         * scm/define-grobs.scm (all-grob-descriptions): remove
4407         self-X-offset. Fixes alignment of octavate-8.
4409         * scripts/lilypond-book.py (datadir): look in
4410         LILYPONDPREFIX/share/lilypond/current/
4412         * GNUmakefile.in: symlink current to <VERSION>. 
4414 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
4416         * lily/main.cc: eps listed as a backend.
4418 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4420         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
4422 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4424         * lily/include/score.hh (class Score): remove texts_ member.
4426         * lily/beam.cc (set_stem_lengths): force direction callback.
4427         (print): read quantized-positions, so we can force
4428         Beam::set_stem_lengths to occur.
4429         (rest_collision_callback): use common X parent. 
4431 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4433         * flower/file-path.cc (find): Bugfix: Return name of file found.
4435         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
4436         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
4437         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
4439 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4441         * flower/offset.cc: idem.
4443         * mf/*.mf: update email address.
4445         * lily/font-config-scheme.cc:  new file.
4447         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
4449         * lily/*:  cs.uu.nl -> xs4all.nl
4451         * VERSION (PATCH_LEVEL): release 2.7.15
4453         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
4454         spec files.
4456         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
4458 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4460         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
4462         * lily/staff-performer.cc (process_music): add audio
4463         elements. This makes MIDI instrument changes work once again.
4465         * lily/main.cc (LY_DEFINE): add gmane address.
4467         * lily/beam.cc: remove calc_positions()
4469         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
4470         original_ in private scope.
4471         (class Grob): drop pscore_ pointer, change to output_def pointer.
4472         (class Grob): cleanup class definition.
4474         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
4476 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4478         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
4479         absolute.  Better diagnostics.
4481         * GNUmakefile.in: Add bin/ to tree and populate with some links.
4482         This makes lilypond run from the build directory using argv0
4483         relocation (without any --prefix or LILYPONDPREFIX setting).
4485 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4487         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
4489         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
4490         with simple-closure.
4492         * lily/self-aligment-interface.cc (set_align_self): new function
4493         (set_center_parent): new function.
4495         * lily/side-position-interface.cc (set_axis): new function.
4497         * lily/new-fingering-engraver.cc (position_scripts): use drul for
4498         generic code. 
4500         * scm/define-grob-properties.scm (all-user-grob-properties):
4501         remove [XY]-offset-callbacks add [YX]-offset
4502         
4503 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4505         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
4506         entry for time signatures after breathing signs. Bug report by
4507         Scott Russell.
4509 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4511         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
4512         not absolute, make it absolute using PATH.
4514 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4516         * python/midi.c (initmidi): Fix type for mingw.
4518 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4520         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
4522         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
4523         cross compiling.
4525         * stepmake/aclocal.m4: Support python cross compiling.
4527         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
4528         Add mingw section.
4530 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4532         * scm/output-lib.scm (chain-grob-member-functions): replace
4533         chained-callback.cc
4535         * lily/chained-callback.cc (Module): remove file.
4537         * lily/rest-collision.cc (force_shift_callback_rest): change to
4538         chained callback.
4540         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
4542         * lily/grob.cc (y_parent_positioning): remove axis argument from
4543         parent_positioning callbacks.
4544         (Grob): junk init code
4545         (get_offset): use generic property callbacks for
4546         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
4547         (axis_parent_positioning): new function
4548         (axis_offset_symbol): new function
4549         (chain_offset_callback): new function
4550         (add_offset_callback): new function
4552         * lily/beam.cc (rest_collision_callback): change signature; this
4553         is now a chained callback.
4555         * lily/include/dimension-cache.hh (class Dimension_cache): remove
4556         callback administration.
4558         * lily/simple-closure.cc: new file. Smob type that allows "grob
4559         member functions",
4561             (ly:make-simple-closure FUNC A B)
4563         is evaluated as (FUNC grob A B). This allows chaining of callbacks
4564         in various ways.
4566         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
4567         callbacks.
4569         * lily/slur.cc (outside_slur_callback): take 2 arguments.
4571         * lily/rest.cc (polyphonic_offset_callback): remove.
4573         * lily/script-engraver.cc (try_music): remove bool* argument.
4575         * scm/script.scm (default-script-alist): set quantize-position
4576         appropriately.
4578         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
4580         * lily/side-position-interface.cc (aligned_side): move staff
4581         position quantization from
4582         Side_position_interface::quantised_position().
4583         (quantised_position): remove
4584         
4585 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4587         * input/regression/beam-quant-standard.ly: reindent, set
4588         debug-beam-quanting to #t.
4590         * lily/beam-concave.cc (calc_concaveness): set concaveness to
4591         10000 if this is a "hard" concave beam.
4593         * lily/beam.cc (calc_least_squares_positions): change from
4594         calc_least_squares_dy
4595         (set_stem_lengths): this is now a chained callback.
4597         * lily/context-property.cc (execute_general_pushpop_property):
4598         bugfix override with procedure should have effect.
4600         * scm/define-grob-properties.scm (all-internal-grob-properties):
4601         remove position-callbacks.
4603         * scm/define-grobs.scm (all-grob-descriptions): use
4604         ly:make-callback-chain for positions property.
4606         * scm/layout-beam.scm (check-quant-callbacks): return list of
4607         chained callbacks.
4609         * scm/lily.scm (type-p-name-alist): add callback-chain
4611         * lily/lily-guile.cc (type_check_assignment): type check failure
4612         is warning not message.
4614         * lily/grob-property.cc (try_callback): walk callback chain if
4615         appropriate.
4617         * lily/chained-callback.cc: new file. new smob type.
4619         * lily/lily-guile.cc (procedure_arity): new function.
4621 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4623         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
4625 2005-10-25  John Mandereau  <john.mandereau@free.fr>
4627         * Documentation/user/instrument-notation.itely (Figured bass):
4628         describe new features
4630 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4632         * lily/beam.cc (calc_least_squares_dy): use property callback.
4634         * lily/beam-concave.cc (calc_concaveness): use property callback.
4636         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
4638 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4640         * HACKING: Update.
4642 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4644         * scm/layout-page-layout.scm (page-headfoot): annotate
4645         pagetopspace too.
4647         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
4649         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
4650         doesn't take y-space.
4652         * scm/paper.scm (paper-alist): fix A7 dimensions. 
4654 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
4656         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
4657         src-wildcard, remove $(wildcard).
4659         * po/GNUmakefile (PO_FILES): 
4660         * ps/GNUmakefile (PS_FILES): 
4661         * tex/GNUmakefile (TEX_FILES): 
4662         * cygwin/GNUmakefile (POSTINSTALLS):
4663         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
4664         some wildcard calls.
4666 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4668         * THANKS: add Thomas Bushnell.
4670 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4672         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
4673         (lilypond-main): Redirect to gui-main if 'gui is set.
4675         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
4676         for alternative installations kludging s/share/lib/g
4677         LILYPONDPREFIX. 
4679         * SConstruct (libdir_package_version): Define.
4681         * python/SConscript: 
4682         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
4683         module in libdir.  
4685 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4687         * lily/main.cc: clarify --safe.
4689 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4691         * VERSION: release 2.7.14
4692         
4693         * Documentation/user/*.itely: remove minimumVerticalExtent.
4695         * scm/define-grobs.scm (all-grob-descriptions): remove
4696         RemoveEmptyVerticalGroup
4698         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
4700         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
4701         compile on MOSX
4703         * python/convertrules.py (conv): add rules.
4705         * lily/grob.cc: remove is_empty()
4707         * lily/grob-property.cc: remove add_to_list_property().
4709         * scripts/convert-ly.py (datadir): add prefix switching hack to
4710         .py too.
4712         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
4713         space-function tweak.
4715         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
4717         * scm/define-grob-properties.scm (all-user-grob-properties):
4718         remove callback property.
4720         * lily/include/grob.hh (class Grob): remove property_callbacks_
4721         member. Properties of procedure type are assumed to be callbacks.
4723         * lily/ligature-engraver.cc (override_stencil_callback):
4724         rewrite. Use noteHeadLigaturePrimitive as source.
4726         * scm/define-grob-properties.scm (all-internal-grob-properties):
4727         remove ligature-primitive-callback
4729         * lily/include/dimension-cache.hh (class Dimension_cache): make
4730         class, with Grob as friend.
4732         * lily/grob.cc: remove set_extent_callback(), set_extent() and
4733         has_extent_callback()
4735         * scm/translation-functions.scm (format-new-bass-figure): read
4736         figuredBassPlusDirection
4738         * scm/define-context-properties.scm
4739         (all-user-translation-properties): add figuredBassPlusDirection.
4741         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
4743         * lily/align-interface.cc (set_ordered): new function.
4745         * lily/grob.cc (flush_extent_cache): rewrite.
4747         * lily/dimension-cache.cc (Dimension_cache): cache extent as
4748         Interval pointer directly.
4750         * lily/main.cc (setup_paths): insert extra / .
4751         (setup_paths): junk cff entry.
4753         * lily/font-config.cc (init_fontconfig): only add type1 / otf
4754         directories.
4756         * lily/axis-group-engraver.cc (finalize): remove
4757         extraVerticalExtent, minimumVerticalExtent verticalExtent.
4759         * lily/grob.cc (Grob): don't set extent from ctor.
4760         (extent): use property callbacks. 
4762         * lily/axis-group-interface.cc: remove set_axes() function.
4764         * lily/grob-property.cc (del_property): new function.
4766 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4768         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
4769         
4770 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4772         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
4774 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4776         * mf/SConscript: Updates.
4778         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
4780         * stepmake/stepmake/*:
4781         * */GNUmakefile:
4782         * config.make.in:
4783         * GNUmakefile.in:
4784         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
4785         from any directory in build-dir.  Cleanups.
4787         * make/srcdir.make.in: Remove.
4789         * lily/main.cc (setup_paths): Fix and document build-dir hack.
4791         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
4792         main).
4794         * lily/SConscript: Remove ttftools.
4796         * SConstruct: Resurrect.
4798 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4800         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
4801         Y coordinate. 
4803         * lily/paper-book.cc (add_score_title): put Paper_score title into
4804         systems_ list.
4806         * scm/translation-functions.scm (format-new-bass-figure): also
4807         allow plus in combination with _
4809 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4811         * VERSION: 2.7.13 released.
4813         * lily/note-collision.cc (check_meshing_chords): don't wipe
4814         stencil, merely set transparent.
4816         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
4817         (Top): document #'callbacks.
4818         (Top): document nested \override.
4820         * input/regression/figured-bass.ly: update for slash and pluses.
4822         * input/regression/figured-bass-continuation-forbid.ly (Module):
4823         new file.
4825         * scm/translation-functions.scm (format-new-bass-figure): use
4826         slashed-digit if diminished is set.
4827         (format-new-bass-figure): add + if 'augmented is set.
4829         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
4831         * input/test/piano-staff-distance.ly: remove file.
4833         * Documentation/user/advanced-notation.itely (Formatting cue
4834         notes): use length-fraction for making stems/beams smaller.
4836         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
4837         modifications.
4839         * lily/new-figured-bass-engraver.cc: new property
4840         centerFiguredBassContinuations
4842         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4843         use callbacks.
4845         * lily/context-property.cc (execute_general_pushpop_property):
4846         robustness checks.
4848         * input/regression/override-nest.ly: new file.
4850         * python/convertrules.py (FatalConversionError.subber): conversion
4851         rule for #'callbacks
4853         * input/regression/override-nest.ly: new function.
4855         * lily/parser.yy (music_property_def): allow \override #'a #'b =
4856         #c too. 
4858         * lily/context-property.cc (lookup_nested_property): new function.
4859         (evict_from_alist): new function.
4860         (general_pushpop_property): new function.
4861         (execute_general_pushpop_property): rewrite. Support nested
4862         properties too.
4864 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4866         * lily/beam.cc: use length-fraction too.
4868         * scm/define-grob-properties.scm (all-user-grob-properties):
4869         remove property flag-width-function
4870         (all-user-grob-properties): remove space-function.
4872         * scm/layout-beam.scm: remove flag-width-function.
4874         * lily/beam.cc: remove flag-width-function
4876         * scm/layout-beam.scm: remove beam dir functions.
4878         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
4880         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
4881         for easier grace tweaks.
4883         * lily/beam.cc: remove dir-function.
4885         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
4887         * lily/grob.cc: remove spacing-procedure.
4889         * lily/note-head.cc (calc_stem_attachment): new function.
4890         (internal_print): use callback to get glyph-name.
4892         * lily/grob-property.cc (get_interfaces): new function.
4894         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
4896         * lily/stem.cc (calc_stem_end_position): new function.
4897         (calc_length): new function.
4898         document details for stem.
4899         remove Stem::get_direction()
4901         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
4903         * lily/grob-property.cc (set_callback): new function.
4905         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
4907         * lily/item-scheme.cc: new file.
4909         * lily/bar-line.cc (before_line_breaking): remove function.
4910         remove bar-size-procedure, break-glyph-function
4912         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
4914         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
4916         * lily/system-start-delimiter.cc (print): suicide from
4917         here. Remove after_line_breaking_callback.
4919         * lily/script-interface.cc (calc_direction): use callback for direction.
4921         * lily/side-position-interface.cc (aligned_side): don't use
4922         Side_position_interface::get_direction directly. Use callback. 
4924         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
4925         calculate stencil.
4926         (get_print_stencil): rename from get_stencil: create stencil with
4927         transparency, color and cause. 
4929         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
4931         * python/convertrules.py (conv): insert temporary warning rule.
4933         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
4935         * lily/grob-property.cc (try_callback): remove marker if applicable.
4937         * lily/grob.cc: elucidate doc about after/before-line-breaking
4939         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
4941         * lily/stem.cc (height): idem.
4943         * lily/stem-tremolo.cc: idem.
4945         * lily/slur.cc (height): don't use get_uncached_stencil()
4947         * lily/rest.cc (y_offset_callback): use offset callback
4948         iso. after-line-breaking callback.
4950         * lily/grob.cc: change after/before-line-breaking-callback to
4951         after/before-line-breaking dummy properties.
4953         * lily/include/grob.hh: remove Grob_status.
4955         * scm/define-context-properties.scm
4956         (all-user-translation-properties): remove verticalAlignmentChildCallback
4958         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
4959         (calc_direction): use callback
4960         (calc_positions): use callback.
4962         * lily/tie.cc (calc_direction): use callback. Only call parent
4963         positioning for more than one tie.
4965         * lily/tie-column.cc (calc_positioning_done): use callback
4967         * lily/slur-scoring.cc (calc_control_points): use callback
4969         * lily/slur.cc (calc_direction): use callback.
4971         * lily/note-collision.cc (force_shift_callback): remove.
4973         * lily/dot-column.cc (force_shift_callback): remove. Use
4974         other_axis_parent_positioning.
4976         * lily/grob.cc (other_axis_parent_positioning): new function.
4977         (same_axis_parent_positioning): new function
4979         * lily/align-interface.cc (alignment_callback): remove function.
4981         * lily/note-collision.cc (calc_positioning_done): use callback.
4983         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
4984         (calc_direction): idem.
4985         remove print function.
4987         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
4989         * lily/dot-column.cc (calc_positioning_done): use callback.
4991         * lily/break-align-interface.cc (calc_positioning_done): use callback.
4993         * lily/beam.cc (calc_direction): use pseudo-property for beam
4994         direction callback.
4995         (calc_positions): use callback 
4997         * lily/align-interface.cc (calc_positioning_done): use
4998         callback. Fold fixed  distance and normal alignment in one function.
5000         * lily/stem.cc (calc_stem_end_position): use callback.
5001         (calc_positioning_done): idem.
5002         (calc_direction): idem.
5003         (calc_stem_end_position): idem
5004         (calc_stem_info): idem.
5006         * lily/grob-property.cc (get_property_data): new function: 
5007         (try_callback): new function.
5009         * scm/define-grob-properties.scm (all-user-grob-properties): doc
5010         callbacks property.
5012         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
5014 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5016         * lily/tie.cc (get_position): robustness fix. Don't crash if a
5017         tie
5018         has no heads.
5019         
5020         * lily/include/*.hh (Module): compile fixes.
5022 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
5024         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
5025         as an argument for char-syntax: use (char-syntax (or nil 0)) 
5026         instead of (char-syntax nil), thanks to Milan Zamazal.
5028 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5030         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
5031         dist.
5033         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
5034         themselves.
5036 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5038         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
5039         add class_name() method.
5041         * lily/music-scheme.cc: remove ly:music-name.
5043 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5045         * cygwin/postinstall-lilypond.sh: Remove cruft.
5047         * cygwin/postremove-lilypond.sh: Remove.
5049         * cygwin/GNUmakefile (default): Remove postremove rules.
5051 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5053         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
5054         even header too.
5055         
5056         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
5057         MacOS 9 users.
5059         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
5060         consider break index for broken spanner.
5062         * scm/define-markup-commands.scm (wordwrap-string): remove \r
5063         characters from string before splitting.
5065 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5067         * scm/framework-ps.scm (output-preview-framework): use
5068         is-book-title to determine whether to chop off the booktitle.
5070         * lily/paper-book.cc (systems): init from book-title-properties
5071         (add_score_title): init score-title-properties.
5073         * ly/paper-defaults.ly: add {score,book}-title-properties.
5075         * scm/document-backend.scm (lookup-interface): error message if
5076         using unknown interface.
5078         * lily/volta-bracket.cc (after_line_breaking): new function. Set
5079         edge-height.
5081         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
5082         make_bracket.
5083         (make_bracket): new function.
5085         * scm/lily.scm (define-scheme-options): add paper-size option.
5087         * ly/declarations-init.ly (laissezVibrer): get paper size from
5088         -dpaper-size
5090         * scm/translation-functions.scm: use \fontsize for changing the
5091         fontsize.
5093         * scm/define-grobs.scm (all-grob-descriptions): set
5094         between-length-limit to 1.0
5096         * lily/tie-helper.cc: add between_length_limit_ detail property.
5098         * mf/feta-bolletjes.mf: typos.
5100         * lily/note-head.cc (internal_print): don't shadow idx
5101         parameter. This fixes wrong attachment for do shape heads.
5103 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5105         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
5107         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
5109         * scm/layout-slur.scm: rename from slur.scm
5111         * scm/layout-page-layout.scm: rename from page-layout.scm
5113         * scm/layout-beam.scm: rename from beam.scm
5115         * scm/define-grob-interfaces.scm (bass-figure-interface): add
5116         bass-figure-interface
5118         * lily/new-figured-bass-engraver.cc (process_music): add
5119         implicitBassFigures property.
5120         
5121         * scm/define-markup-commands.scm (pad-x): new markup.
5123         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
5124         minimumVerticalExtent on FiguredBass context.
5126         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
5127         case the continuation crosses a line break.
5129 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5131         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
5132         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
5133         absolute file name bug.  
5135 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5137         * VERSION (PACKAGE_NAME): release 2.7.12
5139         * input/regression/figured-bass-continuation-center.ly: new file.
5141         * input/regression/beam-outside-beamlets.ly: new file.
5143         * lily/beam.cc (set_beaming): don't clip edges.
5144         (connect_beams): don't clip edges.
5146         * lily/beaming-info.cc (clip_edges): new function.
5148         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
5150         * Documentation/user/instrument-notation.itely (Figured bass):
5151         demonstrate extenders, update seealso links.
5153         * scm/titling.scm (marked-up-headfoot): change tagline
5154         handling. tagline = ##f will blank the tagline as well.
5156 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5158         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
5160         * lily/new-figured-bass-engraver.cc (struct
5161         New_figured_bass_engraver): add new_music_found_ member.
5163         * lily/lilypond-version.cc (Lilypond_version): deal with
5164         incorrectly formatted version strings. 
5166         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
5167         New_figured_bass_engraver by default.
5169         * lily/ttf.cc (print_trailer): only define glyph names when
5170         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
5172 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5174         * lily/horizontal-bracket.cc (make_bracket): new function.
5176         * scm/define-grobs.scm (all-grob-descriptions): new grobs
5177         NewBassFigure, BassFigureBracket, BassFigureContinuation,
5178         BassFigureLine, BassFigureAlignment
5180         * lily/new-figured-bass-engraver.cc (process_music): new file.
5182         * lily/figured-bass-continuation.cc: new file.
5184         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
5185         new file.
5187 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5189         * scripts/lilypond-book.py: Bug fix, put the quote around the
5190         actual score for LaTeX documents.
5192         * scm/define-grobs.scm (all-grob-descriptions): Change
5193         collapse-height of the SystemStartBracket grob to 5.0, 
5194         so the bracket disappears for single stave score lines (similarly
5195         to SystemStartBraces). 
5197         * Documentation/user/advanced-notation.itely (Polymetric
5198         notation): Clarify the use of compressMusic.
5200         * Documentation/user/basic-notation.itely (Grace notes): Clarify
5201         that the grace spacer note in other staves need the same duration
5202         and document the stroke-style property.
5204 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5206         * Documentation/user/global.itely (Vertical spacing): document
5207         alignment-extra-space and fixed-alignment-extra-space.
5209         * Documentation/topdocs/NEWS.tely (Top): add entry.
5211         * input/regression/alignment-vertical-spacing.ly: new file.
5213         * python/convertrules.py (conv): add rule.
5215         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
5217         * lily/align-interface.cc (stretch_after_break): new
5218         function. Read fixed-alignment-extra-space property.
5219         (align_elements_to_extents): read alignment-extra-space property.
5221         * lily/lily-guile.cc (robust_scm2dir): new function.
5223         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
5224         (annotate-space-left): new function. Annotate space left on page. 
5225         (annotate-y-interval): new function.
5226         (paper-system-annotate-last): new function. Annotate bottom-space.
5228         * mf/feta-beugel.mf (y): 
5230 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5232         * VERSION (PACKAGE_NAME):  release 2.7.11
5234         * scm/lily-library.scm (interval-translate): new function
5235         (interval-center): new function. 
5237         * scm/page-layout.scm (paper-system-annotate): new function. Add
5238         arrows for dimensions.
5240         * scm/stencil.scm (dimension-arrows): new function.
5242         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
5244         * input/regression/page-spacing.ly: add annotatespacing
5246         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
5247         (LY_DEFINE): new function ly:paper-system-set-property!
5249         * Documentation/user/global.itely (Paper size): explain how to add
5250         sizes.
5252         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
5253         correspond to GS's definition.
5255         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
5256         tuplet bracket.
5257         (print): only connect to next bracket if the next one is alive.
5258         (print): set padding to 0.0 if the bound is a breakable
5259         column. This makes tupletFullLength brackets reach up to the staff
5260         line if it doesn't connect to the next line.
5262 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5264         * lily/bar-number-engraver.cc: correct docs.
5266         * scm/output-lib.scm (first-bar-number-invisible): rename from
5267         default-bar-number-visibility
5269 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5271         * scm/define-music-properties.scm (all-music-properties): remove
5272         predicate property.
5274 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
5276         * po/fi.po: refresh.
5278 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5280         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
5281         superfluous s1.
5282         (disappear): bugfix.
5284         * lily/stem-tremolo.cc (raw_stencil): read slope property.
5286         * lily/include/paper-system.hh (class Paper_system): remove
5287         staff_extents_ member.
5289         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
5291         * lily/include/paper-system.hh (class Paper_system): remove
5292         number_ variable. Remove is_title_. Remove break_before_penalty_
5294         * lily/paper-book.cc (systems): use 'number property iso. number_
5295         member.
5297         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
5298         remove ly:paper-system-number.
5300         * scm/lily-library.scm (paper-system-title?): new function.
5302         * lily/book.cc (process): bugfix: flip ?: cases. 
5304         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5305         add outputProperty.
5307         * ly/music-functions-init.ly: add outputProperty music function.
5309         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
5311         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
5312         and next-padding.
5313         (optimal-page-breaks): rename from ly:optimal-page-breaks.
5315         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
5317         * lily/paper-system.cc (internal_get_property): new function.
5319         * Documentation/user/global.itely (Vertical spacing): refer to
5320         page-spacing.ly
5322         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
5323         pagetopspace
5325         * input/regression/page-spacing.ly: new file.
5327         * input/regression/page-top-space.ly: new file.
5329         * lily/spacing-spanner.cc: cmath -> math.h
5331         * lily/paper-system.cc (read_left_bound): new function. Read
5332         line-break-system-details from left bound to determine extents.
5334         * Documentation/user/programming-interface.itely (Using LilyPond
5335         syntax inside Scheme): change applyxxx -> applyXxx.
5337         * ly/music-functions-init.ly: add outputProperty music function.
5339         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
5341         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
5343         * python/convertrules.py (conv): rule
5345         * ly/music-functions-init.ly: applyxxx -> applyXxx
5347         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
5348         TabVoice to Voice.
5350 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5352         * flower/include/real.hh: include <math.h> iso. <cmath>
5354         * flower/include/offset.hh: include real.hh
5356 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5358         * Documentation/user/changing-defaults.itely (Difficult tweaks):
5359         fix example, now that 'interfaces is no longer directly available.
5361         * lily/book.cc (process): don't crash if paper == NULL.
5363         * po/fr.po: update.
5365 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5367         * scm/define-music-types.scm (music-descriptions): set length and
5368         start-callback for QuoteMusic
5370 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5372         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
5373         arguments. Fixes compilation error with gcc 3.3.
5375 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5377         * VERSION: release 2.7.10
5379         * stepmake/stepmake/python-module-rules.make
5380         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
5382         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
5383         real.hh
5385 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5387         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
5388         -Werror. Otherwise GCC barfs over various optimizations.
5390         * scm/define-grob-properties.scm (all-internal-grob-properties):
5391         add note-head property
5393         * Documentation/user/instrument-notation.itely (Laissez vibrer
5394         ties): new node.
5396         * input/regression/laissez-vibrer-ties.ly: new file.
5398         * lily/laissez-vibrer-engraver.cc: new file.    
5400         * lily/include/tie-column-format.hh: new file.
5402         * lily/tie-column-format.cc: new file. 
5404         * lily/tie-column.cc (set_manual_tie_configuration): new function.
5406         * lily/laissez-vibrer-tie.cc: new file.
5408         * lily/include/laissez-vibrer-tie.hh: new file.
5410         * ly/engraver-init.ly: add Laissez_vibrer_engraver
5412         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
5414         * scm/define-grobs.scm (all-grob-descriptions): add
5415         LaissezVibrerTie, LaissezVibrerTieColumn
5417         * lily/tie-column.cc (set_tie_config_directions): new function
5418         (final_shape_adjustment): new function.
5419         (shift_small_ties): new function.
5421         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
5423         * lily/include/tie.hh (struct Tie_details): add x_gap_
5424         (struct Tie_configuration): add head_position_
5426         * lily/tie-column.cc (set_chord_outline): new function.
5428         * mf/cmr.enc.in:  remove file.
5430 2005-09-11  Graham Percival  <gpermus@gmail.com>
5432         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
5434 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5436         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
5437         reduce aliasing effects.
5439         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
5440         box in skyline.
5442 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5444         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
5446         * flower/include/real.hh: std::fabs too.
5448 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5450         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
5452         * lily, flower: Include C++ iso C headers.  Import namespace std
5453         throughout.
5455         * lily/side-position-interface.cc: 
5456         * lily/scm-hash.cc: 
5457         * lily/note-head.cc: 
5458         * lily/include/includable-lexer.hh: 
5459         * flower/include/string-data.icc: Remove using std::*.
5461         * lily, flower: Include C++ iso C headers.  Import namespace std
5462         throughout.
5464         * lily/side-position-interface.cc: 
5465         * lily/scm-hash.cc: 
5466         * lily/note-head.cc: 
5467         * lily/include/includable-lexer.hh: 
5468         * flower/include/string-data.icc: Remove using std::*.
5470         * Documentation/user/instrument-notation.itely (Entering lyrics):
5471         Multiple latin-1->utf-8 conversion fix.
5473         * Documentation/user/*tely: Update Emacs cookie to utf-8.
5475 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5477         * lily/tie.cc (get_configuration): also avoid dots for non-space
5478         situations.
5480 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5482         * Documentation/user/instrument-notation.itely: Bugfix.
5484 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5486         * tex/GNUmakefile: don't install texinfo.tex
5488         * tex/ : cleanup: remove unused files.
5490         * lily/general-scheme.cc: remove my_{isinf,isnan}.
5492         * flower/include/real.hh: using std::{isnan,isinf}
5493         
5494         * VERSION (PATCH_LEVEL): release 2.7.9
5496 2005-09-05  Graham Percival  <gpermus@gmail.com>
5498         * Documentation/user/ instrument-notation.itely,
5499         advanced-notation.itely: minor tweaks.
5501         * input/test/script-chart.ly: add item padding.
5503 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5505         * flower/offset.cc: use math.h iso. <cmath>
5507         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
5508         of IE users.
5510         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
5511         (widen-left-stencil-edges): new function. Fix alignment problems
5512         with LaTeX includegraphics.
5514         * lily/text-interface.cc (interpret_markup): use abort().
5516 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5518         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
5520         * lily/tie.cc (get_configuration): update bezier shape as we
5521         change Y positions.
5522         (get_configuration): don't move large ties if we're outside of the
5523         staff.
5525 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5527         * scm/define-markup-commands.scm (strut): swap X and Y dims.
5528         
5529 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5531         * .cvsignore: Add auto-generated configure files and then some.
5533 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5535         * scm/define-grobs.scm (DynamicLineSpanner): Add
5536         X-extent-callback.  Fixes hairpin-slur collision.
5538 2005-08-31  Graham Percival  <gpermus@gmail.com>
5540         * Documentation/user/advanced-notation.itely,
5541         basic-notation.itely: minor changes.
5543 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5545         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
5546         \linebreak between each .eps file if \betweenLilyPondSystem is
5547         undefined. 
5549         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
5550         music): Document the \linebreak
5552         * Documentation/user/lilypond-book.itely,
5553         input/tutorial/lbook-latex-test.tex,
5554         Documentation/user/examples.itely: Remove \usepackage{graphics}
5556 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5558         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
5560         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
5561         compat bugfix.
5563         * scripts/lilypond-book.py (PREAMBLE_LY): define
5564         inside-lilypond-book
5565         (modify_preamble): new function. Insert \RequirePackage{graphics}
5566         when no {graphics found in preamble.  
5568 2005-08030  Graham Percival  <gpermus@gmail.com>
5570         * Documentation/user/basic-notation.itely, global.itely,
5571         tutorial.itely: misc small changes.
5573 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5575         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
5576         VERSION.
5578 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5580         * lily/tie-column.cc (new_directions): put Tie down on center
5581         staff line. 
5583         * lily/script-interface.cc (before_line_breaking): use
5584         Grob::programming_error
5586         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
5588         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
5589         of splitext.
5591 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5593         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
5595 2005-08-29  Werner Lemberg  <wl@gnu.org>
5597         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
5598         the `*.scale.pfa' files to avoid warnings.
5600 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5602         * lily/tempo-performer.cc (process_music): idem.
5604         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
5606 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5608         * Documentation/user/advanced-notation.itely (Text markup): not a
5609         fragment.
5611         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
5613         * lily/staff-performer.cc (initialize): add tempo/name to
5614         audio_staff_
5617 2005-08-26  Graham Percival  <gpermus@gmail.com>
5619         * Documentation/user/advanced.itely: add text-only example.
5621         * Documentation/user/invoking.itely: add index entries for
5622         convert-ly.
5624         * Documentation/user/ tutorial.itely, basic-notation.itely:
5625         small fixes suggested by Steve D.  Thanks!
5627 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5629         * input/regression/markup-bidi-pango.ly: new file.
5631         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
5632         standard. Remove #ifdef. Remove memleak.
5633         (text_stencil): use text_dir to decide how to composite items.
5634         (text_stencil): determine uniform text direction for the entire
5635         string.
5637         * scripts/lilypond-book.py (output_name): remove
5638         latex_filter_cmd. Non-portable to non-Unix systems. 
5639         (get_latex_textwidth): use File.write and os.unlink() instead.
5641         * THANKS: add Vicente & Trevor.
5643         * lily/grob.cc (discretionary_processing): look up origin for
5644         programming_error too. 
5646         * input/regression/tie-broken.ly: new file.
5648         * lily/tie-column.cc (set_chord_outlines): set outline for line
5649         break case too.
5650         
5651 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5653         * lily/pango-font.cc (text_stencil): don't translate glyphs in
5654         unscaled transform, just translate stencils.
5656         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
5657         MIDI.
5659         * scm/define-markup-commands.scm (wordwrap-string): use
5660         text-direction
5661         (wordwrap-stencils): idem.
5662         (line): idem.
5663         (fill-line): idem.
5664         (wordwrap-stencils): translate last line to right for
5665         text-direction = LEFT.
5667         * scm/define-grob-properties.scm (all-user-grob-properties): add
5668         text-direction.
5670 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5672         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
5673         when copying a Lily_parser object.
5675 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5677         * scm/define-markup-commands.scm (null): add null markup.
5679 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5681         * lily/item.cc: Add documentation of center-invisible
5683 2005-08-24  Graham Percival  <gpermus@gmail.com>
5685         * Documentation/user/advanced-notation.itely: add info about
5686         raising text.
5688         * Documentation/user/programming-interface.itely: fix example
5689         involving raised text.
5691 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5693         * lily/beam.cc (print): fix X start/end points of isolated
5694         beamlets.
5696         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
5698         * lily/multi-measure-rest.cc (set_text_rods): new function.
5700         * lily/vertical-align-engraver.cc (process_music): call
5701         Align_interface::set_axis(). This forces #'elements to be ordered,
5702         preventing random vertical reordering of staves.
5704         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
5705         add avoid-slur property. 
5707         * Documentation/user/basic-notation.itely (Measure repeats): add
5708         countPercentRepeats example.
5710         * Documentation/user/advanced-notation.itely (Other text markup
5711         issues): remove remark about normal-font.  We have \normal-text
5713         * input/regression/tie-chord.ly: add note about remaining bugs.
5715         * lily/tie.cc (print): try Tie_column::set_directions () if
5716         control-points not yet defined.
5718 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5720         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
5721         extent. This fixes braces falling out of the EPS bbox.
5723         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
5724         exactly to bbox.
5726 2005-08-23  Graham Percival  <gpermus@gmail.com>
5728         * {various} : change #up->#UP and #down->#DOWN.
5730         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
5732         * Documentation/user/advanced-notation.itely: clarify
5733         what objects handles text on a multimeasure rest.
5735 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5737         * VERSION (PATCH_LEVEL): release 2.7.7
5739 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5741         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
5743         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
5745         * input/regression/*.ly: formatting clean-up. Default layout
5746         before music expression.
5748         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
5749         romanze28-2 example.
5751         * scm/ps-to-png.scm: remove dir-re function.
5752         (make-ps-images): generate page names, instead of globbing them.
5753         This brings down LilyPond memory usage for make web by a factor
5754         10. 
5756         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
5757         don't use glob. With 3000 files, globbing
5758         Documentation/user/out-www/ can take too much time. 
5759         
5760         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
5762         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
5764         * input/regression/tie-manual.ly: new file
5766         * input/regression/tie-chord.ly: update.
5768         * flower/include/interval.hh (struct Interval_t): 
5770         * lily/tie.cc (distance): new function 
5771         (height): new function.
5772         (init): new function
5773         (Tie_details): new struct.
5775         * lily/skyline.cc (skyline_height): new function.
5777         * lily/tie-column.cc (set_chord_outlines): new function.
5778         (new_directions): read tie-configuration
5780         * lily/skyline.cc: fix ASCII art.
5781         
5782 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5784         * python/convertrules.py (string_or_scheme): Fix spelling error
5786 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5787         
5788         * lily/tie-column.cc (set_directions): set directions only once.
5789         (add_configuration): new function.
5791         * lily/tie.cc (set_control_points): new function
5793         * lily/tie-column.cc (new_directions): new function.
5795         * ly/music-functions-init.ly: set 'pitch property
5796         iso. trill-pitch. This makes \relative work with \pitchedTrill
5798         * lily/tie.cc (get_configuration): new function. Don't generate
5799         control points, rather, generate configuration.
5800         remove head-pair property.
5802         * lily/include/tie.hh (struct Tie_configuration): new struct.
5804 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
5806         * Documentation/topdocs/NEWS.tely: clarify.
5808 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5810         * lily/tie.cc: remove minimum-length
5812         * scm/define-grob-properties.scm (all-user-grob-properties):
5813         remove staffline-clearance, y-offset 
5815         * input/regression/tie-dots.ly (Module): remove.
5817         * lily/tie.cc (get_control_points): rewrite. Put short ties in
5818         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
5820         * input/regression/tie-single.ly: new file.
5822 2005-08-21  Graham Percival  <gpermus@gmail.com>
5824         * ly/bagpipe.ly: fix compile problem.
5826 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5828         * lily/midi-item.cc (name): new method.
5830         * lily/staff-performer.cc (acknowledge_audio_element): use
5831         signature of baseclass.
5833         * lily/engraver-group.cc (do_announces): move recursion call out
5834         of while loop. 
5836         * lily/drum-note-performer.cc (class Drum_note_performer): use
5837         process_music everywhere.
5839         * ly/performer-init.ly: add default children everywhere.
5841         * lily/paper-book.cc (output): call paper-book-write-midis
5842         directly: always write MIDI, even if no \layout {} block. 
5844 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5846         * VERSION (PACKAGE_NAME): release 2.7.6
5848         * lily/percent-repeat-engraver.cc (try_music): don't print warning
5849         about not being able to handle repeat.
5851 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5853         * Documentation/user/examples.itely (Piano templates):
5854         * lily/include/performer-group.hh: Remove last traces of
5855         Performer_group_performer.  Fixes make web.
5857 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5859         * Documentation/user/examples.itely (Piano templates): change
5860         Engraver_group_engraver -> Engraver_group
5862         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
5863         scm_stand_in_procs is not weak_any.
5865         * lily/volta-bracket.cc (print): don't use strcmp().
5867         * lily/volta-engraver.cc (process_music): use
5868         Text_interface::is_markup() for setting the 'text property of the
5869         volta bracket.
5871         * input/mutopia/claop.py (accents): update syntax to 2.6
5873         * scm/define-context-properties.scm
5874         (all-user-translation-properties): add countPercentRepeats.
5876         * Documentation/user/basic-notation.itely (Measure repeats): add
5877         isolated percent example.
5879 2005-08-18  Graham Percival  <gpermus@gmail.com>
5881         * input/ {various}: change direction #1, #-1 to
5882         #up/#down or \fooUp, \fooDown.
5884         * Documentation/user/music-glossary.tely: #-1 to #down.
5886         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
5887         to #up, #-1 to #down.
5889 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5891         * lily/include/engraver-group.hh: rename.
5893         * lily/include/performer-group.hh: rename.
5895 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5897         * input/test/script-abbreviations.ly: Removed some old LaTeX
5898         left overs.
5900 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5902         * python/convertrules.py (conv): inside-slur -> avoid-slur.
5903         Remove functions.  Remove if 1: constructs, reindent.
5905         * scripts/convert-ly.py (add_version): Add functions from
5906         convertrules.py
5908         * scm/script.scm (default-script-alist):
5909         s/priority/script-priority.  Fixes script stacking.  Backportme.
5910         (Fermata): Very low priority.
5912 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5914         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
5916         * input/regression/slur-script.ly: remove padding tweaks. Add
5917         comment strings.
5919         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
5920         time sigs and related stuff.
5922         * scm/define-grob-properties.scm (all-user-grob-properties): add
5923         @code{} tags to property description.
5925         * lily/include/line-group-group-engraver.hh (Module): remove file.
5927         * python/convertrules.py (conv): add rule for
5928         Engraver_group_engraver -> Engraver_group.
5930         * lily/include/performer-group-performer.hh: analogous.
5932         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
5934         * lily/context-def.cc (instantiate): check for
5935         Engraver_group_engraver and Performer_group_performer not
5936         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
5938 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5940         * input/les-nereides.ly: Remove three fingering tweaks, update
5941         remaining one.
5943         * input/regression/slur-script-inside.ly: Update, fix doc.
5945         * scm/script.scm: Update to avoid-slur.
5947         * scm/define-grob-properties.scm (avoid-slur): New property.
5949         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
5950         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
5951         outside_slur_callback if avoid-slur != #'inside.
5953         * scm/define-grobs.scm (Fingering, Textscript): No
5954         inside-slur/outside-slur preference.
5955         (DynamicLineSpanner): Always outside slur.
5957         * input/regression/slur-script.ly: More tests.
5959 2005-08-17  Graham Percival  <gpermus@gmail.com>
5961         * Documentation/user/lilypond-book: fix notime entry.
5963         * Documentation/user/advanced-notation.itely: add info on
5964         getting an I rehearsal mark.
5966         * Documentation/user/putting.itely: reinstate "I", re-enforce
5967         the fact that \override numbers are the result of
5968         experimentation and personal taste.
5970         * Documentation/user/invoking.itely: update convert-ly bugs.
5972 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5974         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
5975         to #t.
5977         * lily/timing-translator.cc (initialize): don't initialize timing.
5979         * input/regression/stem-spacing.ly (Module): remove file.
5981         * input/regression/spacing-stick-out.ly: specify Score context for
5982         \override
5984         * input/regression/clefs.ly: remove spurious {}s 
5986 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
5988         * Documentation/topdocs/NEWS.tely,
5989         input/regression/repeat-percent-count.ly: clarify a bit.
5991 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5993         * input/no-notation/display-lily-tests.ly: delete
5994         display-lily-init call.
5996         * ly/music-functions-init.ly (displayLilyMusic): move
5997         display-lily-init call at top level, so that the user should not
5998         have to call it.
6000         * scm/define-music-display-methods.scm (note-name->lily-string):
6001         retrieve note names directly from pitchnames using new function `rassoc'.
6002         (display-lily-init): note names list construction removed.
6004 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6006         * THANKS: spello.
6008         * lily/lily-parser.cc (get_header): copy module, instead of
6009         returning it.
6011         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
6012         counters.
6014         * Documentation/user/basic-notation.itely (Measure repeats): add
6015         links to Counter grobs.
6017         * scm/define-grobs.scm (all-grob-descriptions): add
6018         DoublePercentRepeatCounter
6019         (all-grob-descriptions): add PercentRepeatCounter
6021         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
6022         also create counter grobs.
6024         * lily/separation-item.cc (extremal_break_aligned_grob): don't
6025         return grob without space-alist.
6027         * input/proportional.ly: tune staff-padding.
6029         * input/regression/repeat-percent-count.ly: new file. 
6031 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6033         * input/no-notation/display-lily-tests.ly: moved from
6034         input/regression/ to input/no-notation. Be sure to call
6035         `display-lily-init' before trying to use the display function.
6037 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6039         * scripts/lilypond-book.py (option_definitions): Don't localize
6040         the empty string. Fixes bug when --psfonts was used with
6041         non-English locale.
6043 2005-08-15  Graham Percival  <gpermus@gmail.com>
6045         * lily/tuplet-bracket.cc: simple build fix.
6047         * Documentation/user/putting.itely: use "we" instead of "I".
6049         * Documentation/user/basic-notation.itely: cautionary accidentals
6050         work with naturals, too.
6052 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6054         * lily/tuplet-bracket.cc (calc_position_and_height): add
6055         staff-padding support.
6057         * input/proportional.ly: set staff-padding.
6058         
6059         * VERSION (PATCH_LEVEL): release 2.7.5
6061         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
6062         fixes. Remove tweaks.
6064         * input/regression/tuplet-slope.ly: add a test case.
6066         * lily/tuplet-bracket.cc (calc_position_and_height): revert
6067         erroneous fix. Add spanner bounds to offset array with relative X
6068         positions.
6070         * ly/engraver-init.ly: add Rest_engraver only once.
6072         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
6073         (*parser*) lookup if (*parser*) != #f.
6075 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6077         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
6078         Cut-and paste update.
6080         * input/regression/slur-script.ly: Add example of reverting
6081         inside-slur for fingering.
6083         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
6084         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
6086         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
6087         outside_slur_callback if inside-slur == #f (as opposed to unset).
6089 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6091         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
6092         encoding files are already removed.
6094 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6096         * Documentation/user/advanced-notation.itely (Instrument names):
6097         Document a workaround for instrument names that collide with
6098         system start braces/brackets.
6100 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6102         * lily/rest-collision.cc (do_shift): spello.
6104         * input/proportional.ly: use #'used property. Set break-overshoot
6105         property.
6107         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
6109         * lily/paper-column.cc: add #'used property
6111         * lily/mark-engraver.cc (stop_translation_timestep): set grob
6112         array for staves found.
6114         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
6115         array for stavesFound.
6117         * lily/staff-spacing.cc (next_note_correction): add fixed and
6118         space to calling convention. This fixes spacing of accidentals
6119         after barlines.
6121         * input/regression/spacing-accidental-stretch.ly: add barline -
6122         accidental case.
6124         * scm/framework-ps.scm (page-header): add version number to
6125         creator
6126         (eps-header): idem.
6128         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
6129         
6130 2005-08-13  Graham Percival  <gpermus@gmail.com>
6132         * Documentation/user/global.itely: add "fit as much as
6133         possible onto this page" example (Vertical spacing).
6135 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6137         * *: Nitpick run.
6139         * buildscripts/fixcc.py: Fixes.
6141 2005-08-12  Graham Percival  <gpermus@gmail.com>
6143         * Documentation/user/advanced-notation.itely: add markup
6144         example to Text spanners.
6146 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6148         * Documentation/user/basic-notation.itely (Ties): Add example of
6149         tying a tremolo to a chord. Thanks to Steve Doonan. 
6151         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
6152         properties and move tieMelismaBusy to the list of written
6153         properties. 
6155 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
6157         * po/TODO: suggest to use a dedicated tool like kbabel.
6159         * po/fi.po: update using kbabel.
6161 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6163         * *: Remove obsolete files.  Nitpick run.
6165         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
6167 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6169         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
6170         too.
6172         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
6174         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
6175         whitespace as symbol separator.
6177         * lily/side-position-interface.cc: Add slur-padding.
6179         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
6180         quite a large fix, and it never worked in a stable release; so not
6181         really a regression.
6183         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
6184         Update cut and paste code from Slur_engraver.
6186         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
6187         Add.
6189         * scm/define-grobs.scm (DynamicLineSpanner): Add
6190         dynamic-line-spanner-interface.
6191         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
6193 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6195         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
6196         to_boolean () so that non-set 'inside-slur means false.
6198         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
6199         slur has control-points.  Skip script without direction.  Always
6200         do_shift if script inside slur, even if slur not contained in
6201         script y-extent.  Increment k in loop.
6203 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6205         * scm/define-markup-commands.scm: Improved regexp to search for
6206         EPS bounding boxes and corrected call to ly:warning.
6208 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6210         * Documentation/user/programming-interface.itely (Displaying music
6211         expressions): doc for \displayLilyMusic. Also some precisions in
6212         "Markup construction in Scheme"
6214 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6216         * scm/define-markup-commands.scm (normal-text): Added 2 new
6217         markup commands, \normal-text and \medium (the latter thanks to
6218         Bruce Fairchild). 
6220 2005-08-08  Graham Percival  <gpermus@gmail.com>
6222         * Documentation/user/programming-interface.itely: fix @{ @}.
6224         * scm/define-markup-commands.scm: add linewidth info to
6225         \justify and \wordwrap, add "upright is the opposite of italic".
6227         * Documentation/user/advanced-notation.itely: shaped->shape,
6228         add (cons (markup "foo")) type of example to text markup,
6229         reword multi-measure rests section.
6231         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
6232         comment.  No actual code was touched.
6234         * Documentation/user/invoking.itely: add more info about
6235         \include.  Thanks, Bruce!
6237         * THANKS: add Bruce Fairchild, alphabetise.
6239         * Documentation/user/global.itely: document \score{\header{}}
6240         behavior.
6242         * Documentation/user/basic-notation.itely: reword multi-measure
6243         rest discussion in Rests.
6245 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6247         * Documentation/user/programming-interface.itely (Markup
6248         construction in Scheme): Corrected example and tried to clarify
6249         the implicit \line in the table.
6251 2005-08-07  Graham Percival  <gpermus@gmail.com>
6253         * Documentation/user/instrument-notation.itely: moved
6254         some bagpipe info back into the bagpipe section.  Somehow
6255         it ended up in the "other vocal issues" section?!  :o_O
6257 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6259         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
6260         directories, not paths).
6262 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6264         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
6265         plain emmentaler/aybabtu.  Backportme.
6267         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
6268         missing dir correction.
6270 2005-08-05  Graham Percival  <gperlist@shaw.ca>
6272         * scm/define-markup-commands: fix reversed justify/wordwrap
6273         doc strings.
6275 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
6277         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
6278         lily/gregorian-ligature-engaver.cc,
6279         lily/include/ligature-engraver.hh,
6280         lily/include/coherent-ligature-engraver.hh,
6281         lily/include/gregorian-ligature-engraver.hh: make these classes
6282         truely abstract.  This should fix some internal oddities such as
6283         duplicate as well as dead translator/property declarations, and
6284         also some dead code.
6286         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
6287         bugfix: avoid message "junking empty ligature" on ligature
6288         brackets by collecting dummy grobs.
6290 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6292         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
6294         * input/proportional.ly (staffKind): bugfix.
6295         (staffKind): updates by Trevor Baca.
6297         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
6298         default layout. 
6300         * lily/tuplet-bracket.cc (print): check whether edge-text is a
6301         pair.
6303         * lily/beam.cc (rest_collision_callback): call position_beam() if
6304         necessary.
6306         * VERSION: release 2.7.4
6308         * input/regression/spacing-uniform-stretching.ly: new file.
6310         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
6312         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
6313         contributor.
6315         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
6317         * input/proportional.ly: new file.
6319         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
6320         columns is empty
6322         * lily/tuplet-engraver.cc (finalize): new function. Reset right
6323         bounds to currentCommandColumn for the last step.
6324         (start_translation_timestep): if tupletFullLength is set, set
6325         bound to Paper Column
6327         * input/regression/tuplet-full-length.ly (indent): new file.
6329         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
6330         clique of loose columns, eg. a set of grace notes in strict
6331         notespacing.
6333         * input/regression/spacing-strict-spacing-grace.ly: new file.
6335         * lily/key-signature-interface.cc: change property name to
6336         alteration-alist
6338         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
6339         keyAccidentalOrder
6341         * python/convertrules.py (conv): keyAccidentalOrder ->
6342         keyAlterationOrder
6344         * lily/key-engraver.cc (create_key): always print a cancellation
6345         for going to C-major/A-minor, regardless of printKeyCancellation.
6346         (create_key): remove typecheck for visibility. This fixes key
6347         signature not being printed.
6349         * lily/spacing-determine-loose-columns.cc: new file.
6351         * input/regression/spacing-strict-notespacing.ly: new file.
6353         * lily/spacing-spanner.cc (generate_springs): rename from
6354         do_measure. 
6355         (generate_pair_spacing): new function.
6356         (init, generate_pair_spacing): set between-cols for floating
6357         nonmusical columns.
6359         * lily/spaceable-grob.cc (get_spring): new function. 
6361         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
6362         relative to the right edge of the prefatory matter.
6364         * lily/beam.cc (print): read break-overshoot to determine where to
6365         stop/start broken beams.
6367         * input/regression/spanner-break-overshoot.ly: new file.
6369 2005-08-04  Graham Percival  <gperlist@shaw.ca>
6371         * ly/bagpipe.ly: updated.
6373         * Documentat/user/instrument.itely: un-comment out bagpipe example.
6375 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6377         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
6378         support: now (de)crescs avoid slurs as well.
6380         * Documentation/user/instrument-notation.itely (Bagpipe example):
6381         comment out non-functioning bagpipe example.
6382         (Bagpipe definitions): idem.
6384         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
6385         (Top): add proportionalNotationDuration example.
6387         * input/regression/spacing-proportional.ly: new file.
6389         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
6390         synched to a beam.
6392         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
6393         fixes beams with a single stem (eg. beams across linebreaks.)
6395         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
6397         * flower/rational.cc (operator +): prevent overflow. This fixes
6398         heavily nested tuplets.
6400         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
6401         have to protect even those unlikely to be corrupted data members.  
6403 2005-08-04  Graham Percival  <gperlist@shaw.ca>
6405         * ly/bagpipe.ly: new file.
6407         * THANKS: added Sven Axelsson.
6409 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6411         * lily/spacing-engraver.cc (stop_translation_timestep): directly
6412         copy proportionalNotationDuration into currentMusicalColumn if
6413         set.
6415         * lily/spacing-spanner.cc (musical_column_spacing): if
6416         uniform-stretching set, fixed space is 0.0
6418         * input/regression/spacing-multi-tuplet.ly: show
6419         uniform-stretching property.
6421         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
6423         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
6424         (struct Spacing_options): new struct.
6426         * lily/spacing-basic.cc: new file.
6428         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
6429         delta_t doesn't have to be smaller than shortest_playing_len
6431 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6433         * input/regression/markup-arrows.ly:  new file.
6435         * lily/tuplet-bracket.cc: document new behavior.
6437         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
6438         with line breaks.
6440         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
6442         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
6443         default 
6445         * lily/tuplet-bracket.cc: add edge-text property.
6446         add break-overshoot.
6447         (print): read break-overshoot.
6448         (print): read edge-text, add stencils.
6450         * mf/feta-arrow.mf: new file.
6452         * mf/feta-generic.mf: add feta-arrow.
6454 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6456         * Documentation/user/lilypond-book.itely (An example of a
6457         musicological document): Added flag -o to dvips for people who use
6458         the default setting in teTeX where output is sent to the printer. 
6460         * Documentation/user/global.itely (Vertical spacing): Added
6461         reference to the Axis_group_engraver which documents the *Extent
6462         properties.
6464 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6466         * Documentation/user/basic-notation.itely (Tuplets): add note
6467         about nested tuplets. Remove BUG. 
6469         * input/regression/tuplet-nest.ly: update: remove manual hack. 
6471         * lily/tuplet-bracket.cc (print): use robust_scm2drul
6472         (print): manually call print() for subtuplets.
6473         (calc_position_and_height): add subtuplets to the
6474         support. Vertically shift outer tuplet 
6476         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
6477         remove-first for Lyrics, ChordNames and FiguredBass
6479         * scm/define-grob-properties.scm (all-internal-grob-properties):
6480         use ly:grob-array? iso. grob-list?
6481         (all-internal-grob-properties): add tuplets grob-array.
6483         * lily/tuplet-bracket.cc (add_tuplet_bracket):
6484         new function
6486 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6488         * input/test/time-signature-staff.ly: new file.
6490         * ly/declarations-init.ly (center): escape to Scheme. Fixes
6491         spurious #<Music FingerEvent> errors. Backportme.
6493 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6495         * Documentation/user/programming-interface.itely (Markup
6496         construction in Scheme): Corrected markup syntax in the
6497         translation table.
6499 2005-08-03  Graham Percival  <gperlist@shaw.ca>
6501         * Documentation/user/instrument-notation.itely: small update
6502         to bagpipe notation docs; thanks Sven!
6504         * Documentation/user/basic-notation.itely: add link about trills.
6506 2005-08-02  Graham Percival  <gperlist@shaw.ca>
6508         * Documentation/user/music-glossary: remove accidentally committed
6509         fink patch.
6511 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
6513         * lily/lily-parser.cc (get_header): new function. Enable multiple
6514         \header definitions.
6516         * lily/parser.yy (lilypond_header_body): use get_header.
6518         * ly/init.ly:
6519         * scm/lily-library.scm (print-score-with-defaults): renamed
6520         $globalheader to $defaultheader
6521             
6522         * Documentation/user/global.itely (Creating titles): added short
6523         explanation that multiple headers are useable.
6526 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6528         * lily/module-scheme.cc (LY_DEFINE): new file. 
6530         * Documentation/user/advanced-notation.itely (Font selection): add
6531         doco for make-pango-font-tree.
6533 2005-07-31  Graham Percival  <gperlist@shaw.ca>
6535         * Documentation/user/music-glossary: more languages
6536         for tenuto.
6538         * Docuemntation/user/instrument-notation.itely: minor
6539         update for bagpipe example.
6541 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6543         * input/regression/+.ly (TODO): add some text.
6545 2005-07-28  Graham Percival  <gperlist@shaw.ca>
6547         * Documentation/user/invoking.itely: \score begins with music.
6549         * Documentation/user/ basic-notation.itely,
6550         instrument-notation.itely: minor changes.
6552         * Documentation/user/music-glossary.itely: began tenuto entry.
6554 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6556         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
6558         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
6560 2005-07-27  Graham Percival  <gperlist@shaw.ca>
6562         * Documentation/user/examples.itely: remove bagpipe template.
6564         * Documentation/user/instrument-notation.itely: add bagpipe
6565         section, maybe fix quotes in lyrics.  I hate text encoding.
6566         Clarify chord durations, more bagpipe stuff.
6568 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6570         * lily/accidental-engraver.cc: formatting fixes.
6572         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
6573         grob-array.
6575         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
6577         * lily/note-column.cc (arpeggio): new function.
6579         * lily/note-spacing.cc (get_spacing): also take arpeggio into
6580         account for spacing.
6582 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6584         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
6585         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
6586         mingw build.
6587         
6588 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6590         * scm/lily.scm (lilypond-all): clear anonymous modules after
6591         processing files.
6593 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6595         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
6596         SCM_I_CONSP
6598         * VERSION: 2.7.3 released
6600         * Documentation/user/invoking.itely (Invoking lilypond): add
6601         LILYPOND_GC_YIELD documentation.
6603         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
6604         scm_from_real / scm_make_real.
6606         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
6607         higher. This increases memory footprint, but provides overall
6608         speedup of 15 to 20%. 
6610         * lily/include/translator.hh (class Translator): remove
6611         PRECOMPUTED_VIRTUAL everywhere.
6613         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
6615         * lily/context.cc (now_mom): non-recursive now_mom() 
6617         * lily/include/profile.hh: new file.
6619         * lily/profile.cc: new file.
6621         * lily/grob.cc (Grob::Grob): look properties up directly.
6623         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
6624         lookups.
6626         * lily/include/box.hh (class Box): smob Box type.
6628         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
6630         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
6631         protect() and unprotect(). Use throughout.
6633 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6635         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
6637         * scm/define-music-display-methods.scm (markup->lily-string):
6638         markup elements can also be strings (without simple-markup
6639         appended)
6641 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6643         * lily/context.cc (where_defined): also assign value in
6644         where_defined().
6646         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
6647         (curve_coordinate): new function
6649         * lily/simple-spacer.cc (add_columns): only add rods between
6650         column i and begin/end if keep-inside-line is set (this repleces
6651         allow-outside-line as default)
6653 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6655         * lily/tuplet-engraver.cc (start_translation_timestep): only read
6656         tupletSpannerDuration if applicable.
6658         * lily/font-size-engraver.cc (process_music): read fontSize only
6659         once per timestep.
6661         * lily/engraver*cc: use throughout.
6662         
6663         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
6665         * lily/translator.cc (add_acknowledger): new file. Directly jump
6666         into an Engraver::acknowledge_xxx () method based on a grobs
6667         interface-list.
6669         * lily/include/translator-dispatch-list.hh (class
6670         Engraver_dispatch_list): new struct, new file.
6672         * scm/define-context-properties.scm
6673         (all-internal-translation-properties): remove acceptHashTable,
6674         acknowledgeHashTable
6676         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
6678         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
6679         change acknowledgeHashTable to C++ member. 
6681         * lily/rest-collision.cc (do_shift): use extract_grob_set().
6683 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6685         * scm/display-lily.scm: new file. Define a `display-lily-music'
6686         function, that displays the music expression given as an argument,
6687         using LilyPond notation.
6689         * scm/define-music-display-methods.scm: new file. Implementation
6690         of display methods for each music type.
6692         * ly/music-functions-init.ly (displayLilyMusic): new function for
6693         displaying music with LilyPond notation.
6695         * input/regression/display-lily-tests.ly: new regression test file
6696         for `display-lily-music'.
6698         * scm/markup.scm: remove obsolete debugging code (for printing
6699         markups with LilyPond notation).
6701         * scm/define-music-types.scm (music-name-to-property-table):
6702         * scm/clef.scm (supported-clefs): export, in order to be accessible
6703         from the (scm display-lily) module.
6705 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6707         * Documentation/topdocs/NEWS.tely (Top): Typo.
6709 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
6711         * Documentation/index.html.in, Documentation/texinfo.css,
6712           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
6713           Documentation/bibliography/index.html.in,
6714           Documentation/bibliography/html-long.bst: revert css-width patch,
6715           it does not work with IE6.
6717 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6719         * Documentation/texinfo.css: revert 760px hack. 
6721         * VERSION: release 2.7.2
6723         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
6725         * Documentation/user/basic-notation.itely (Barnumber check): add
6726         section.
6728         * scm/music-functions.scm (skip-to-last): new function. Show only
6729         last showLastLength part of the \score.
6731         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
6733         * python/convertrules.py (conv): add ly:x-moment rule
6735         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
6737         * Documentation/topdocs/NEWS.tely (Top): add new feature.
6739         * Documentation/user/instrument-notation.itely (Flexibility in
6740         alignment): options in subsections.
6742         * lily/lyric-engraver.cc (process_music): don't typeset text for _
6743         syllable text. Instead, assume that the previous lyric text is a
6744         melismated text.
6746         * Documentation/index.html.in: revert 800x600 change.
6748 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6750         * lily/main.cc (main): Remove invalid handle kludge.
6752         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
6753         (lambda): add gui define.
6755 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6757         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
6759         * Documentation/user/instrument-notation.itely (Musica ficta
6760         accidentals): add section Musica ficta accidentals
6762         * lily/accidental-engraver.cc (make_suggested_accidental): new
6763         function.
6764         (make_standard_accidental): move into new function.
6765         (create_accidental): new function.
6767         * scm/define-grobs.scm (all-grob-descriptions): new Grob
6768         AccidentalSuggestion
6770         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
6772         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
6773         undefined.
6775         * Documentation/user/global.itely (Page formatting): document
6776         horizontalshift.
6778         * scm/page-layout.scm (default-page-music-height):
6779         horizontalshift: new variable, shift all systems by
6780         horizontalshift to the right, to make space for instrument names.
6782         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
6784         * lily/input-scheme.cc (LY_DEFINE): take format commands.
6786 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6788         * lily/note-column.cc (dir): idem.
6790         * lily/spacing-spanner.cc (Module): idem.
6792         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
6794         * lily/include/paper-column.hh (class Paper_column): add
6795         non-static get_rank() member.
6797         * VERSION: release 2.7.1
6798         
6799         * scm/framework-null.scm: new file, used for benchmarking.
6801 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
6803         * Documentation/topdocs/INSTALL.texi, configure.in: fix
6804         version dependencies for fontforge and gs.
6806         * Documentation/index.html.in, Documentation/texinfo.css,
6807         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
6808         Documentation/bibliography/index.html.in, 
6809         Documentation/bibliography/html-long.bst: optimize width of
6810         html for a 800x600 screen (width:760), increases printability
6811         when 'fit to page' is not set and readability in wide screens.
6813         * stepmake/bin/add-html-footer.py: add missing </p>.
6815 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6817         * scm/define-markup-commands.scm (beam): use polygon in beam
6818         command.
6820         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
6821         all acknowledged grobs, and do potentially expensive merge and
6822         write in one go.
6824         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
6826         * configure.in (reloc_b): add --enable-static-gxx to statically
6827         link to libstdc++
6829         * lily/GNUmakefile (static-gxx-libs): new target
6830         static-gxx-libs. Create symlink to libstdc++.a
6832         * lily/new-lyric-combine-music-iterator.cc: rename to
6833         Lyric_combine_music_iterator
6835         * lily/lyric-combine-music-iterator.cc
6836         (Old_lyric_combine_music_iterator): rename to
6837         Old_lyric_combine_music_iterator
6839         * lily/*-engraver.cc (various): remove double use of
6840         PRECOMPUTED_VIRTUAL function: only use
6841         start_translation_timestep() and stop_translation_timestep(), not
6842         both.
6844         * lily/break-substitution.cc (fast_substitute_grob_array): do
6845         fast_substitute_grob_array for all unordered grob_arrays.
6846         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
6847         (substitute_grob_array): optimize.
6849         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
6851         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
6853         * lily/parser.yy: revert $globalheader patch.
6854         
6855         * lily/include/translator.icc
6856         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
6857         Translator methods, without _static helper.
6859         * lily/grob-smob.cc (derived_mark): rename from
6860         do_derived_mark(). Return void.
6862         * scm/define-context-properties.scm
6863         (all-internal-translation-properties): remove tweakCount/tweakRank.
6865         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
6866         predefined break-visibilities.
6868         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
6869         booleans for break-visibility.
6871         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
6873         * python/convertrules.py (conv): rule for Timing_translator. 
6875         * lily/include/translator.icc: new file. 
6877         * lily/paper-column-engraver.cc (process_music): new
6878         file. Separate Paper_column factory from Score_engraver.
6880         * lily/vertically-spaced-context-engraver.cc: administer
6881         spaceable-staves property of System.
6883         * lily/translator-group-ctors.cc: new file.
6885         * lily/context-property.cc (make_grob_from_properties): construct
6886         the right Grob class programmatically, looking at the class entry
6887         for the meta property.
6889         * lily/break-align-engraver.cc (stop_translation_timestep): call
6890         Break_align_interface::add_element() directly.
6892         * lily/context.cc (measure_position): measure_position() is now a
6893         normal function.
6895         * lily/include/translator.hh (class Translator): rename
6896         process_acknowledged_grobs() to process_acknowledged() and move to
6897         Translator.
6899         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
6900         field for each grob description.
6902         * lily/include/translator-group.hh (class Translator_group):
6903         change to base class. Separate class from Translator. This gets
6904         rid of virtual inheritance for Engravers/Performers.
6906         * lily/staff-performer.cc (class Staff_performer): derive
6907         Staff_performer from Performer, not Performer_group_performer 
6909         * Lily/translator-group.cc (precomputed_recurse_over_translators):
6910         new function.
6911         (precompute_method_bindings): new function. Precompute lists of
6912         Translators, so we only call methods (process_music,
6913         start_translation_timestep, etc.) for Translators needing
6914         it. Also: dispose of pointer-to-member-function calls.
6916         * lily/engraver-group-engraver.cc: remove engraver_each,
6917         recurse_down_engravers ()
6919         * lily/note-head.cc (internal_print): only call
6920         glyph-name-procedure if style != default. 
6922 2005-07-16  Graham Percival  <gperlist@shaw.ca>
6924         * ly/titling-init.ly: add printallheaders option.
6926         * Documentation/user/global.itely: document printallheaders.
6928 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6930         * lily/system.cc (do_derived_mark): don't mark from object_alist_
6931         anymore, but do it centrally.  
6933         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6934         hammer hack.
6936         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
6938         * scm/output-lib.scm: remove hammer-print-function.
6940         * lily/include/pointer-group-interface.hh (extract_grob_set): new
6941         macro. Declare a Link_array<Grob> and fill it from a grob.
6942         (extract_item_set): idem for item.
6944         * lily/break-substitution.cc: add header.
6945         (fast_substitute_grob_array): rewrite for Grob_arrays.
6946         (substitute_grob_array): idem.
6948         * lily/group-interface.cc (add_thing): remove file.
6950         * flower/include/parray.hh (class Link_array): slice() is const.
6952         * lily/include/grob-array.hh: new file.
6954         * lily/grob-array.cc (spanner): new file.
6956         * lily/beam-quanting.cc (fill): read details property from beam.
6958         * lily/beam.cc: support details property.
6960         * total speedups below: approx 10%.
6962         * lily/include/beam.hh: new struct, softcode beam quanting parameters
6964         * lily/include/grob.hh (class Grob): add interfaces_ member.
6966         * lily/bezier.cc (init_polynomial_cache): new function: cache
6967         binom(3,j) t^j (1-t)^{3-j}
6968         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
6970         * lily/*.cc: substitution throughout.
6972         * lily/grob-property.cc (internal_get_object): new routine.
6973         (internal_set_object): idem. Store grob refrences in separate
6974         alist. This saves processing time, since properties aren't
6975         break-substituted, and the per grob namespace is smaller, both for
6976         grobs and non-grob properties.
6978         * scm/define-grob-properties.scm (all-internal-grob-properties):
6979         remove center-element.
6981         * lily/grob.cc: remove tweak-count, tweak-rank.
6983 2005-07-15  Graham Percival  <gperlist@shaw.ca>
6985         * Documentation/user/lilypond-book.itely: fixes example.
6987 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6989         * Documentation/user/global.itely (Creating titles):    
6990         * Documentation/user/examples.itely (All headers): change the
6991         place of \header in \score blocks (after music block) to make
6992         examples compile (cf. changes on parser.yy on 2005-07-10)
6994 2005-07-13  Graham Percival  <gperlist@shaw.ca>
6996         * python/convertrules.py: add exc -> ecc rule.
6998         * scripts/convert-ly.py: add location of convertrules.py
6999         in a comment.
7001         * Documentation/user/changing-defaults.itely: fix language.
7003 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7005         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
7007 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7009         * scm/output-socket.scm (grob-bbox): don't use inf? 
7011         * flower/include/rational.hh: add operator bool() 
7013         * scm/define-music-types.scm (music-descriptions): remove
7014         internal-class-name properties.
7016         * lily/include/event.hh: remove file.
7018         * lily/include/music-constructor.hh: remove file.
7020         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
7021         in 'types property.
7023         * lily/music.cc (duration_length_callback): new function.
7025         * lily/event.cc: remove file.
7027         * lily/music-constructor.cc: remove file.
7029         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
7031         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
7032         (get_context_key): idem.
7034         * scm/lily.scm (lambda): new option object-keys (default to #f)
7036         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
7038         * scm/output-gnome.scm: remove beam routine.
7040         * scm/output-ps.scm (scm): idem.
7042         * scm/output-svg.scm: remove beam.
7044         * ps/music-drawing-routines.ps: remove draw_beam.
7046         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
7048         * flower/include/guile-compatibility.hh (scm_from_locale_string):
7049         add scm_from_locale_string compatibility glue. 
7051 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
7053         * scripts/lilypond-book.py: Prevent occuring error when
7054         'lilypond-book --output=foo/ somefile.ly' is executed multiple
7055         times and target file shoud be overwritten.  (Error message said
7056         'input file and output file is same'.)
7058 2005-07-13  Graham Percival  <gperlist@shaw.ca>
7060         * input/regression/slur-extreme.ly,
7061         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
7062         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
7063         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
7064         "excentricity" to "eccentricity".
7066         * Documentation/user/converters.itely: fix URL for Noteedit and
7067         Rosegarden.
7069         * THANKS: added Yoshinobu Ishizaki.
7071 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7073         * scm/define-markup-commands.scm (justify-field): add. 
7075         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
7077 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7079         * lily/lookup.cc (filled_box): express filled_box with
7080         round_filled_box
7082         * scm/midi.scm (paper-book-write-midis): new function. Write all
7083         performances in numbered MIDI files.
7085         * lily/performance-scheme.cc (LY_DEFINE): new file.
7086         (LY_DEFINE): new function ly:performance-write.
7088         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
7089         new function.
7090         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
7092         * scm/framework-*.scm: use port arguments throughout.
7094         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
7096         * lily/paper-outputter.cc (Paper_outputter): take port argument.
7098         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
7100         * scm/framework-texstr.scm (output-framework): 
7102         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
7104         * scm/output-lib.scm (tablature-stem-attachment-function):
7105         tablature stem attachment fix. 
7107 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7109         * lily/bezier.cc: hardcode binomial coefficients of order 3.
7111         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
7113         * scm/define-music-types.scm (music-descriptions): don't use
7114         Music_wrapper type.
7116         * lily/paper-column.cc (print): print moment too.
7118         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
7119         remove compatibility cruft.
7121         * lily/parser.yy (score_body): \score can only begin with Music. 
7123         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
7124         make-score. Take music argument only. Move parser interaction to
7125         Scheme.
7127         * scm/lily-library.scm (scorify-music): new function.
7129         * python/lilylib.py (datadir): remove 2.1 compat kludge.
7130         (datadir): remove resource import.
7131         (print_environment): remove get_bbox()
7132         (cp_to_dir): remove pre 1.5.2 compat glue.
7134 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7136         * lily/include/simple-spacer.hh (Module): idem.
7138         * lily/include/spring.hh (struct Spring): store inverse
7139         strength. This prevents division by zero.
7141         * VERSION: release 2.7.0
7142         
7143         * lily/include/music.hh (class Music): remove Music::duration_log()
7145         * lily/stem-engraver.cc (make_stem): take duration log from event.
7147         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
7149 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7151         * scm/lily.scm (ly:load): load autochange.scm
7153         * Documentation/user/tutorial.itely (Running LilyPond for the
7154         first time): remove reference to DVI/TeX
7156         * scm/define-markup-commands.scm (text): add \text markup command.
7158         * configure.in (reloc_b): bump requirement to Python 2.2.
7160         * lily/include/dots.hh (class Dots): make has_interface() static.
7162         * python/convertrules.py (conv): add rule for ly:grob-default-font
7164         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
7165         alphabetical order.
7167         * input/regression/trill-spanner-pitched.ly: new file.
7169         * lily/font-interface-scheme.cc (LY_DEFINE): function
7170         ly:grob-default-font (changed from get-default-font).
7172         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
7174         * lily/note-head.cc (internal_print): if style is not a symbol,
7175         set style to 'default. 
7176         (internal_print): no style suffix if glyph-name-procedure not
7177         set. Default to quarter head.
7179         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
7181         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
7183         * ly/music-functions-init.ly: \pitchedTrill
7185         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
7187         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
7189         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
7191         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
7193         * po/fr.po: update
7195         * po/de.po: update.
7197 2005-07-06  Graham Percival  <gperlist@shaw.ca>
7199         * Documentation/user/changing-defaults.itely: add link
7200         to grob-iterface.
7202         * Documentation/user/advanced-notation.itely: add material
7203         to Setting automatic beam behaviour.  Thanks, Joe!
7205         * Documentation/user/lilypond.itely: change encoding to utf-8.
7207 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7209         * Documentation/user/advanced-notation.itely (Setting automatic
7210         beam behavior): Correct the documentation of
7211         revert-auto-beam-setting (backportme)
7213 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7215         * lily/ly-module.cc (ly_make_anonymous_module): define
7216         %module-public-interface of module. 
7218         * lily/lily-parser.cc (print_smob): allow printing of parser smob
7219         without lexer.
7221 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7223         * input/regression/fret-diagrams.ly: stretch example.
7225 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7227         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
7228         Fodor).
7230 2005-06-30  Graham Percival  <gperlist@shaw.ca>
7232         * Documentation/topdocs/AUTHORS.texi: update personal web address.
7234         * Documentation/user/examples.itely, lilypond-book.itely:
7235         change \RequirePackage to \usepackage.
7237         * Documentation/user/global.itely: document copyright and tagline.
7239 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7241         * Documentation/user/basic-notation.itely (Transpose): remove link
7242         to nonexistent UntransposableMusic.
7244         * scm/output-svg.scm: remove old definitions.
7246         * scripts/lilypond-book.py (do_file): search for kpsewhich before
7247         invoking.
7249         * python/lilylib.py (search_exe_path): new function.
7251 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7253         * python/lilylib.py (mkdir_p): remove setup_environment()
7254         (backportme)
7256         * buildscripts/mutopia-index.py (headertext): trim text.
7258         * Documentation/topdocs/NEWS.tely (Top): refresh.
7260         * scm/define-markup-commands.scm (wordwrap-string): new function:
7261         split string in paras and words.
7262         (wordwrap-markups): new function.
7263         (wordwrap-stencils): new function. 
7264         (justify): use it.
7265         (wordwrap): use it.
7266         (wordwrap-string): use it
7267         (justify-string): use it.
7269         * scm/lily-library.scm (regexp-split): new function.
7271         * scm/define-markup-commands.scm: remove encoded-simple. 
7272         remove font-markup.
7273         (fontsize): remove old version  of fontsize.
7274         (wordwrap): new markup function. Wrap into paragraphs.
7276         * VERSION: Branch lilypond_2_6
7277         (MINOR_VERSION): go to 2.7.0
7279 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7281         * po/zh_TW.po: update from translation project.
7283 2005-06-28  Graham Percival  <gperlist@shaw.ca>
7285         * scm/midi.scm: compile fix.
7287 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7289         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
7290         patch. Now, the tempfile module is loaded too, not only used.
7292 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
7294         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
7295         0.05 - 1.00 to 0.25 - 1.00
7297         * scm/midi.scm: moved the default-instrument-equalizer procedure
7298         to just under the insturment-equalizer-alist it takes as an
7299         argument.
7301 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7303         * Documentation/user/advanced-notation.itely (Font selection):
7304         remove CMR note.
7306         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
7308 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7310         * THANKS: Add UTF-8 marker.
7312         * Documentation/user/point-and-click.itely (http): Update: use
7313         lilypond-invoke-editor.  Fix: instruct to use user.js.
7315 2005-06-27  Graham Percival  <gperlist@shaw.ca>
7317         * ly/titling-init.ly: implements printpagenumber, increases
7318         space between dedication and title (to avoid collisions with
7319         "g" and "q" in dedication), and nicer logic about copyright
7320         and instrument fields being printed on the first page.
7321         Thanks Vincent!
7323         * Documentation/user/global.itely: document printpagenumber.
7325 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7327         * Documentation/topdocs/NEWS.tely: Update to 2.6.
7329 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7331         * THANKS: update to 2.6
7333         * VERSION: 2.6.0 released.
7335 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7337         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
7338         rule, errorneously removed probably because of misleading comment.
7340 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7342         * python/lilylib.py (datadir): py2exe comments.
7344         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
7346         * configure.in (reloc_b): make fontconfig REQUIRED.
7348 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
7350         * po/fi.po: add latest translations.
7352 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7354         * ChangeLog: recode utf-8
7356         * Documentation/pictures/lilypond.xpm (Module): edited photo as
7357         logo.
7359         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
7361         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
7363         * python/convertrules.py (do_conversion): don't print program_name
7364         from within a module
7366         * configure.in (reloc_b): bump fontforge requirement to 20050624.
7368         * python/convertrules.py (conv): add 2.6.0 dummy rule.
7370 2005-06-23  Graham Percival  <gperlist@shaw.ca>
7372         * Documentation/user/lilypond-book.itely,
7373         Documentation/user/examples.itely: add \RequirePackage{graphics}.
7375         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
7376         fixes baseline-skip.  Thanks Vincent!
7378         * Documentation/user/advanced-notation.itely, global.itely:
7379         moved "Selecting font sizes" to global, since it deals with
7380         notation font size, not text fonts.
7382 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7384         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
7385         to fonts.
7387 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7389         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
7390         workaround since /dev/stdin doesn't work on Cygwin. Using a
7391         temporary file in the current directory since latex doesn't
7392         understand the path name to the default TMP in Cygwin (at least on
7393         win XP).
7394         
7395         * Documentation/user/global.itely (Creating titles): Correct
7396         misprint in example. Thanks to Rob Vlasaty.
7398 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7400         * VERSION (PATCH_LEVEL): release 2.5.32
7402         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
7403         variable in lily module
7405         * scm/framework-ps.scm (output-classic-framework): error message
7406         regarding the classic framework.
7408         * Documentation/user/henle-flat-gray.png (Module): new file.
7410         * Documentation/user/baer-flat-gray.png (Module): new file.
7412         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
7413         whiteout for markups.
7415         * buildscripts/substitute-encoding.py (note_glyph): include _ in
7416         regex too. This fixes change clef appearance in PDF. 
7418         * ttftool/include/*: remove.
7420         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
7422         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
7424         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
7426         * ttftool/*: remove ttftool subdirectory.
7428         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
7430         * lily/ttf.cc (print_header): new file. Convert to type42, using
7431         FreeType to parse the TTF. 
7433         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
7434         and post table may differ. Pass around post_nglyphs as well.
7436 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7438         * ly/music-functions-init.ly (musicMap): new music function
7439         musicMap. 
7440         
7441 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7443         * make/mutopia-rules.make: anti-alias-factor = 2
7445         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
7446         page switch.
7448         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
7449         anti-alias-factor for lilypond-book runs.
7451         * scm/ps-to-png.scm (scale-down-image): new function.
7452         (my-system): new function.
7453         (make-ps-images): blow up GS resolution by anti-alias-factor,
7454         scale down image by anti-alias-factor.  This improves appearance
7455         of bitmaps
7456         (make-ps-images): remove showpage. Fixes spurious empty png at
7457         end.
7459         * scm/framework-ps.scm (write-preamble): downcase filename before
7460         string-matching. Should fix .TTF files (as opposed to ttf files)  
7462         * Documentation/user/tutorial.itely (Running LilyPond for the
7463         first time): separate subsections for windows, macos and unix.  
7465         * Documentation/user/invoking.itely (Updating files with
7466         convert-ly): add MacOS X note.
7468 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7470         * Documentation/user/introduction.itely (Engraving): don't include
7471         file optical-spacing, add directly.
7473         * lily/paper-outputter.cc (file): open file in binary mode. This
7474         fixes OTF embedding on windows.
7476 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7478         * scm/framework-ps.scm (write-preamble): remove debugging output.
7480         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
7482         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
7483         outdir.
7484         (install-fc-cache): install font cache in installation directories.
7486 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7488         * scm/editor.scm (editor-command-template-alist): Use char iso
7489         column, except for Emacs.
7490         (get-editor-command): Substitute char too (Bertalan Fodor).
7492 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7494         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
7495         quoted ~s.  This should fix PNG output on Windows; single quotes
7496         are regular characters on Windows.
7498 2005-06-16  Graham Percival  <gperlist@shaw.ca>
7500         * Documentation/user/basic-notation.itely: include ChoirStaff
7501         in System start delimiters.
7503         * Documentation/user/putting.itely: new doc section on
7504         fixing overlapping notation.
7506 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7508         * Documentation/user/global.itely (Paper size): \paper is in
7509         \book, not \score.
7511         * make/mutopia-rules.make: -ddelete-intermediate-files
7513         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
7515 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7517         * ChangeLog: Recode utf-8.
7519         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
7520         datadir with .py modules.
7522 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
7524         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
7526 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7528         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
7529         
7530         * scm/framework-ps.scm (write-preamble): remove status check.
7532         * Documentation/user/invoking.itely (Updating files with
7533         convert-ly): remove -o option.
7535         * VERSION (PACKAGE_NAME): release 2.5.31
7537         * scm/framework-ps.scm (write-preamble): use ly:system.
7538         (write-preamble): verbosity.
7540         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
7542         * python/convertrules.py: new file. Store conversion rules
7543         separately.
7545 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7547         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
7549 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7551         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
7552         \musicDisplay 
7554         * Documentation/user/instrument-notation.itely (More stanzas): Add
7555         reference to StanzaNumber.
7557 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7559         * THANKS: separate section for website translators.
7561 2005-06-14  Graham Percival  <gperlist@shaw.ca>
7563         * Documentation/topdocs/INSTALL.texi: update vim info;
7564         thanks Simon Bailey!
7566         * Documentation/user/advanced-notation.itely: included
7567         color names.
7569         * Documentation/user/advanced-notation.itely,
7570         Documentation/usr/notation-appendices.itely: moved
7571         color names into an appendix.
7573 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7574         
7575         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
7577         * scm/lily.scm (lambda): initialize program options from here.
7579         * scm/framework-*.scm: add header info.
7581         * lily/main.cc (parse_argv): only set output format to pdf if no
7582         other format specified.
7584         * scm/backend-library.scm (postprocess-output): process
7585         'delete-intermediate-files after running convert-to-*. This fixes
7586         PNG generation when 'delete-intermediate-files is set.
7587         
7588 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
7591         links on website. 
7593 2005-06-13  Graham Percival  <gperlist@shaw.ca>
7595         * Documentation/topdocs/INSTALL.texi,
7596         Documentation/user/lilypond-book.itely: typos.
7598 2005-06-12  Pal Benko  <benkop@freestart.hu>
7600         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
7601         added between program name and switch; -b changed to -f not
7602         to generate pdf
7604 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7606         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
7607         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
7609         * input/sakura-sakura.ly: add \midi.
7611         * buildscripts/mutopia-index.py (find): use /usr/bin/find
7612         iso. python find. 
7614         * ttftool/test.c (main): cosmetics.
7616         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
7618         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
7619         create a ttf2ps binary.
7621         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
7623         * scm/backend-library.scm (postscript->png): set rename-page-1 to
7624         true.
7626 2005-06-11  Graham Percival <gperlist@shaw.ca>
7628         * Documentation/user/lilypond-book.itely: add warning about
7629         the font warnings in dvips.
7631 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7633         * THANKS: typo
7635         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
7637         * GNUmakefile.in: remove links for .map, .enc
7638         don't fail if out/ doesn't exist yet.
7640 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7642         * ttftool/util.c (surely_read): return nbytes
7644         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
7646         * VERSION (PACKAGE_NAME): release 2.5.30
7648         * flower/string-convert.cc (precision_string): >? fix.
7650         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
7651         (make-ps-images): add verbose -q too.
7653         * lily/default-actions.cc (Module): new file. default
7654         {book,score}-print functions.
7656         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
7657         pass results via parseStringResult, lookup via ly:parser-lookup.  
7659         * lily/lily-parser.cc (Lily_parser): only clone lexer in
7660         constructors.
7661         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
7662         (parse_string): idem.
7664         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
7666         * lily/main.cc (main_with_guile): copy be_verbose_global into
7667         ly_set_option()
7669 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7671         * scm/backend-library.scm (postscript->pdf):
7672         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
7673         verbose mode.  Search for several names of gs executable.
7675 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7677         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
7678         directly. This fixes a massive memory leak, provided you use CVS
7679         GUILE.
7681 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
7683         * ly/property-init.ly: Added tieDashed.
7685         * THANKS: Added some bughunters for 2.5.
7687 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7689         * lily/program-option.cc: add debug-gc option.
7691         * lily/include/lily-guile-macros.hh: don't protect exported module
7692         objects.
7694         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
7696         * scm/backend-library.scm (postscript->pdf): use
7697         delete-intermediate-files iso. running-from-gui? 
7699         * ttftool/util.c (surely_read): robustness. Allow read() to return
7700         less bytes than requested, as per posix standards.
7702         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
7703         program option.
7705         * ttftool/include/ttftool.h ("C"): rename verbosity to
7706         ttf_verbosity. Add to public interface.
7708         * scm/music-functions.scm (unfold-repeats): remove debugging display.
7710         * lily/program-option.cc: rename from scm-option.cc
7712         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
7713         (get_help_string): Print pretty help string.
7715         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
7716         to snippet preamble.
7718         * lily/scm-option.cc: remove command-line-settings option. Fold
7719         all command-line options plus default settings in a generic
7720         interface. 
7722         * flower/getopt-long.cc (table_string): indent 2nd lines of help
7723         texts too.
7725 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7727         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
7728         or EXT_ components non-empty.
7730 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7732         * scm/lily.scm (running-from-gui?): Export.
7734         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
7735         output in .ly source directory.
7737 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7739         * ttftool/util.c (surely_lseek): more verbosity.
7741         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
7742         compile.
7744         * lily/parser.yy (Repeated_music): remove >? 
7746         * scm/backend-library.scm (postscript->pdf): Support for
7747         -dgs-font-load=1
7749         * scm/framework-ps.scm (write-preamble): make font loading
7750         switchable to GS via --define-default gs-font-load=1
7752 2005-06-09  Graham Percival  <gperlist@shaw.ca>
7754         * Documentation/user/global.itely: added \layout docs.
7756 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7758         * lily/lily-parser-scheme.cc: add unistd.h
7760 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7762         * scm/editor.scm: add char argument.
7764         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
7766         * ttftool/util.c (syserror): use errno for better error reporting.
7768         * lily/source-file.cc (get_counts): new function. Calc column,
7769         line and char count in one go.
7771         * lily/binary-source-file.cc (quote_input): rename to quote_input
7773         * lily/input.cc (set): new function.
7775 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7777         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
7778         directory part of file name to search directory.
7780         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
7781         search path and chdir to DIR if --outname=DIR used.
7783         * lily/main.cc (prepend_env_path): Bugfix: Check directory
7784         existence before appending original path.
7786 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7788         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
7789         file" massage.
7791         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
7792         texinfo.tex is always used.
7793         
7794 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7796         * flower/include/axis.hh: rename from axes.hh
7798         * lily/include/text-interface.hh (Module): rename from text-item.hh
7800         * VERSION (PATCH_LEVEL): release 2.5.29
7802         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
7804         * scm/framework-ps.scm (font-file-as-ps-string): new function.
7805         (handle-macfont): new function. Call fondu for Native mac fonts.
7807         * scm/define-markup-commands.scm (fill-line): handle text-widths =
7808         '() case.
7810 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7812         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
7813         multi-page.  Fix .eps regular expression.
7815 2005-06-07  Graham Percival  <gperlist@shaw.ca>
7817         * Documentation/user/putting.itely: add info on modifying templates.
7819         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
7820         misc small changes.
7822 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7824         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
7826         * scripts/lilypond-ps2png.scm
7828         * VERSION (PACKAGE_NAME): release 2.5.28
7830 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7832         * lily/main.cc (prepend_env_path): Do not append /, that does not
7833         work.  Localedir lives in datadir, not in prefix.
7835         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
7836         hack for windows.
7838         * flower/include/file-cookie.hh: Compile fix.
7840 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7842         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
7844         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
7845         system primitives.
7846         (gulp-port): using read-string!/partial. We don't want to read an
7847         entire PS file  (GUILE 1.6 limits strings to 16M) 
7849         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
7850         properties. Add font-interface. 
7852         * scm/define-grob-properties.scm (all-user-grob-properties):
7853         remove old bracket properties.
7855         * scm/x11-color.scm: reformat. 
7857         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
7858         LedgerLineSpanner if new StaffSymbol is found. 
7860         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
7861         staff-symbol for finishing staff. 
7863         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
7865         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
7866         change black to currentColor everywhere. This fixes color support
7867         in SVG.
7869 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
7871         * input/regression/fret-diagrams.ly: new file to test fret diagram
7872         capability
7874         * scm/output-tex.scm: remove white-dot and white-text
7876         * scm/output-ps.scm: remove white-dot and white-text
7878         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
7879         using ly:stencil-in-color instead
7880         (draw-dots) : remove call to white-dot
7882 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7884         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
7885         support.
7887         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
7889         * flower/include/file-cookie.hh: new file. lily_cookie extension 
7891         * flower/file-cookie.cc: new file. lily_cookie extension.
7892         
7893 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7895         * scm/editor.scm (editor-command-template-alist): Add syn
7896         editor (Jaap [de Vos]).
7898 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
7900         * scripts/lilypond-ps2png.scm:
7901         * scm/ps-to-png.scm: New file.
7903         * scm/backend-library.scm (postscript->png): Use it.
7905         * scripts/lilypond-ps-to-png.py: Remove file.
7907         * python/lilylib.py (get_bbox, make_ps_images): Remove.
7909 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7911         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
7913         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
7914         start on grace moment. Fixes autobeam-grace.ly.
7916         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
7917         process anything unless we're at the end of a pending beam. Fixes
7918         syncopated 8ths beamed across a beat.
7920 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7922         * scm/editor.scm (editor-command-template-alist): Start emacs if
7923         emacslient fails.
7925         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
7927         * flower/file-path.cc (is_file, is_dir): Export.
7929         * lily/main.cc (prepend_env_path, set_env_file): Use them.
7931 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7933         * lily/easy-notation.cc: Added include cctype to correct
7934         compilation error.
7936 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7938         * scm/backend-library.scm (postscript->pdf): set resolution to
7939         1200, so bitmap fonts aren't that ugly. 
7941         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
7943         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
7944         parent if we have a notehead. Fixes incorrect offsets when
7945         Paper_column is very wide in the X direction.
7947         * input/regression/font-family-override.ly (Module): new file.
7949         * scm/font.scm (make-pango-font-tree): new function.
7951         * lily/beam.cc (before_line_breaking): remove warning about less
7952         than 2 visible stems. We still get a warning when there is only
7953         one stem.
7955 2005-06-01  Werner Lemberg  <wl@gnu.org>
7957         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
7958         correctly.
7960 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7962         * lily/slur-scoring.cc (generate_avoid_offsets): new
7963         function. Generate avoid offsets once per slur.
7965         * lily/slur.cc (add_extra_encompass): add dependency to
7966         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
7968         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
7969         too. Fixes inf error with added bass notes.
7971         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
7972         argument anymore.
7974         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
7976         * input/tutorial/lbook-latex-test.tex: add line length test.
7978         * scripts/lilypond-book.py (set_default_options): new
7979         function. Call this before dissecting snippets, so linewidth
7980         settings reach the snippets.
7982 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7984         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
7986 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7988         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
7990 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7992         * stepmake/aclocal.m4: More autopackage friendliness.
7994 2005-05-31  Graham Percival  <gperlist@shaw.ca>
7996         * Documentation/index.html.in: remove link to LSR.
7998         * Documentation/user/global.itely: remove duplicate
7999         "dedication" \header{} section.
8001 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8003         * VERSION (PACKAGE_NAME): release 2.5.27.
8005         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
8006         too. Plugs memory leak.
8008         * make/lilypond.fedora.spec.in (Group): remove
8009         lilypond-pdfpc-helper.
8011         * scripts/GNUmakefile (SEXECUTABLES): remove
8012         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
8014         * scm/font.scm (make-century-schoolbook-tree): add Mono as
8015         'typewriter family.
8017         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
8018         memory leak.
8020         * lily/parser.yy (score_body): don't clone Score, that's done in
8021         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
8023         * lily/score-engraver.cc (derived_mark): new function.
8024         (initialize): unprotect Paper_score. This fixes a memory leak.
8026         * lily/score-performer.cc (derived_mark): new function.
8028         * lily/score-translator.cc (get_output): use SCM for get_output() call.
8030         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
8031         spurious warning.
8033         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
8034         serif.
8036 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8038         * configure.in (reloc_b): Add --enable-relocation.
8040 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8042         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
8044         * input/regression/alignment-order.ly: add Staff example.
8046 2005-05-31  John Mandereau   <john.mandereau@free.fr>
8048         * po/fr.po: update.
8050 2005-05-31  Graham Percival  <gperlist@shaw.ca>
8052         * Documentation/index.html.in: add link to LSR.
8054 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8056         * scm/define-stencil-commands.scm (Module): new file. Register all
8057         allowed stencil expression heads in a central place.
8059         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
8060         ly:make-stencil
8062         * lily/stencil-expression.cc (all_stencil_heads): registering
8063         stencil expressions.
8065         * lily/stencil-interpret.cc: new file. Stencil expression
8066         interpreting.
8068         * input/xiao-haizi-guai-guai.ly: move file back.
8070 2005-05-30  Graham Percival  <gperlist@shaw.ca>
8072         * Documentation/user/advanced.itely, converters.itely,
8073         instrument-notation.itely, lilypond-book.itely: misc small
8074         changes.
8076 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8078         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
8080         * make/lilypond.fedora.spec.in: Fix source url.
8082         * cygwin: Update from mingw patches.
8084         * scm/editor.scm (editor-command-template-alist): Use jedit
8085         -reuseview (Bertalan), add uedit (Patrick Huberts).
8087         * input/xiao-hai-zi-guai-guai.ly: Rename from
8088         xiao-haizi-guai-guai.ly.
8090         * input/*: Reindent, do not use TAB.
8092         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
8093         white background.
8095 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
8097         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
8098         numerical overflow error.
8100 2005-05-29 Laura Conrad <lconrad@laymusic.org>
8101         
8102         * abc2ly.py: fix to syntax error in multi-part output.
8104 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8106         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
8107         with disappearing span bars when alignAboveContext is active
8109         * lily/property-iterator.cc (check_grob): use is-grob?
8110         object-property. Fixes crash-key-sig-font-size.ly. 
8112 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8114         * lily/bar-line.cc (print): don't round barlines; this produces
8115         odd aliasing effects in Acroread.
8117         * lily/timing-engraver.cc (process_music): robustness fix.
8119         * lily/context-def.cc (filter_engravers): bugfix.
8121 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8123         * lily/lilypond.rc.in: Add ly-icon.
8125         * lily/GNUmakefile: 
8126         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
8127         rules.
8129 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8131         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
8133         * ps/music-drawing-routines.ps: 
8135         * scm/output-ps.scm: remove draw ez_ball.
8137         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
8138         EasyNotation context definition.
8140         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
8141         Text_interface and color for making easy note heads.
8143         * lily/stencil.cc (with_color): new function.
8145         * ps/music-drawing-routines.ps: remove draw_zigzag_line
8147         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
8148         output routine. Zigzag now works in SVG too.
8150         * scm/output-tex.scm (filledbox): idem.
8152         * scm/output-svg.scm (filledbox): idem.
8154         * scm/output-ps.scm (lily-def): remove horizontal-line. 
8156         * lily/lookup.cc (horizontal_line): use draw-line. 
8158         * lily/system-start-delimiter.cc: remove old staff bracket code.
8160         * mf/feta-haak.mf: further tweaks.
8162         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
8164         * mf/feta-generic.mf: include feta-haak.
8166         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
8168         * scm/framework-ps.scm (write-preamble): only load fonts if their
8169         filename is a string. 
8171 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8173         * scm/output-svg.scm (circle): support circle.
8174         (bracket): stub for bracket.
8176         * scripts/lilypond-book.py (main): make sure --psfonts warning is
8177         correct.
8179 2005-05-26  Graham Percival  <gperlist@shaw.ca>
8181         * Documentation/user/lilypond.tely, advanced-notation.itely,
8182         basic-notation.itely, instrument-notation.itely, global.itely,
8183         introduction.itely, tutorial.itely: rearranging, editing,
8184         clean-up.
8186         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
8187         for compiling on FreeBSD.
8189 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8191         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
8192         otf files.
8194         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
8195         bugfixes.
8197         * VERSION: 2.5.26 released.
8199         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
8201 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
8203         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
8204         if printpagenumber is false.
8206 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8208         * lily/font-config.cc (init_fontconfig): comment out FontConfig
8209         cache warning.
8211         * lily/tie.cc (print): support dotted ties.
8212         
8213 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8215         * scm/define-grobs.scm (all-grob-descriptions): switch off
8216         debugging
8217         (all-grob-descriptions): Arpeggio has Y-extent.
8219         * scm/define-music-properties.scm (all-music-properties): document
8220         length-callback and start-callback as "read-only".
8222         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
8223         length-callback after creation. 
8225         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
8226         compressmusic -> compressMusic.
8228         * ly/music-functions-init.ly (oldaddlyrics): idem.
8230         * lily/parser.yy: NewLyricCombineMusic ->
8231         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
8233 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
8235         * ly/Welcome_to_LilyPond.ly: typo.
8237 2005-05-24  Graham Percival  <gperlist@shaw.ca>
8239         * Documentation/user/lilypond.tely: move changing-defaults to be
8240         before global issues.
8242         * Documentation/user/basic-notation.itely: move Transpose section
8243         here from advanced/Other.
8245         * Documentation/user/changing-defaults.itely,
8246         advanced-notation.itely: move Fonts to advanced, edit.
8248 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8250         * lily/parser.yy (bare_int): remove rule.  From now on, we require
8251         # before negative integers.
8253 2005-05-23  Graham Percival  <gperlist@shaw.ca>
8255         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
8257         * Documentation/user/lilypond.tely: change Unified index to
8258         LilyPond index.
8260         * Documentation/user/advanced-notation.itely,
8261         instrument-notation.itely: editing.
8263 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
8265         * scm/lily.scm (lilypond-all): Bugfix: return failed.
8267         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
8269 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8271         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
8272         ly:port-move.  Needs to be stderr-specific on mingw.
8273         Run fixcc.
8275 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8277         * lily/general-scheme.cc (ly:port-move): Remove.
8279         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
8280         windows.
8282         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
8283         variables.  This eliminates the need for a gs.bat wrapper, which
8284         opens a console.
8286         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
8287         * scm/lily.scm (running-from-gui?): 
8288         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
8289         artifact of not compiling with -mwindows.
8291         * scm/editor.scm: Define PLATFORM.
8293 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8295         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
8296         can start to cut & paste lilypond-book fragments.  
8298         * scm/define-music-types.scm (music-descriptions): remove
8299         UntransposableMusic
8301 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8303         * scm/output-ps.scm (glyph-string): remove / before CIDs.
8305 2005-05-20  Graham Percival  <gperlist@shaw.ca>
8307         * Documentation/user/instrument-notation.itely: remove *Engraver.
8309         * Documentation/user/advanced-notation.itely: edit, rearrange.
8311 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8313         * scm/output-ps.scm (glyph-string): take cid? argument. Use
8314         findresource iso. findfont for CID CFF fonts.
8316         * VERSION (PACKAGE_NAME): release 2.5.25
8318         * ly/Welcome_to_LilyPond.ly: add  \version
8320 2005-05-20  Graham Percival  <gperlist@shaw.ca>
8322         * Documentation/user/programming-interface.itely: move
8323         \displayMusic into its own section.
8325         * Documentation/user/basic-notation.itely: finish editing.
8327 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8329         * flower/file-path.cc (find): don't throw away file_name.dir, but
8330         append to it. Fixes \include with directories.
8332         * flower/include/file-path.hh (class File_path): don't derive from
8333         Array<String>.
8335         * flower/include/file-name.hh (class File_name): remove to_str0()
8337         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
8338         Hara_kiri_engraver in separate file.
8340         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
8341         translation went wrong. Fixes vertically translated slurs.
8343 2005-05-19  Graham Percival  <gperlist@shaw.ca>
8345         * Documentation/user/basic-notaton.itely: editing.
8347 2005-05-18  Graham Percival  <gperlist@shaw.ca>
8349         * Documentation/user/macros.itexi, basic-notation.itely:
8350         add @commonprop (commonly used properties) macro.
8352 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8354         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
8356         * scripts/lilypond-book.py (invokes_lilypond): new function
8357         (main): only run fontextract if invokes_lilypond() is true.
8359         * lily/function-documentation.cc (ly_add_function_documentation):
8360         duh, use !=
8362         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
8364         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
8366         * scm/lily.scm (running-from-gui?): lowercase Darwin.
8368         * lily/function-documentation.cc (ly_add_function_documentation):
8369         use scm_hash_table_p() for checking.
8371 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8373         * Documentation/user/advanced-notation.itely (Text scripts):
8374         Change nonexisting @internalsref{Text markup} to @ref{Text
8375         markup}.  Change @internalsref{Text script} to
8376         @internalsref{TextScript}.
8378         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
8380 2005-05-17  Graham Percival  <gperlist@shaw.ca>
8382         * Documentation/user/tutorial.itely, basic-notation.itely,
8383         changing-defaults.itely: remove duplicate cindex entries
8384         that appear on the same page.
8386         * scm/define-grobs.scm: change default padding for TextSpanner.
8388         * Documentation/topdocs/AUTHORS.texi: update email address.
8390         * Documentation/user/global.itely: add info about \include.
8392 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8394         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
8395         when running-from-gui.
8397         * scm/editor.scm (get-editor): Add platform defaults.
8399         * scm/backend-library.scm (postscript->pdf): Typo.
8401 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8403         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
8405         * lily/font-config.cc (init_fontconfig): add warning about cache.
8407 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8409         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
8411 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8413         * lily/horizontal-bracket.cc (print): Take care of the direction
8414         property so brackets above the stave point downwards. 
8416         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
8417         for HorizontalBracket so it doesn't end up within the stave.
8419 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8421         * lily/GNUmakefile (default): Typo.
8423         * scm/lily.scm (PLATFORM): Export.
8425         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
8426         load-font-via-GS, ttftool or fopencookie is broken on windows.
8427         
8428         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
8429         -dSAFER, that is broken on windows.
8431 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8433         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
8434         for FlexLexer.h
8436         * scripts/lilypond-invoke-editor.scm: remove stray -
8438 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8440         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
8441         Fixes deprecation warning.
8443         * flower/include/string.icc (to_string): Only inline if
8444         -DSTRING_UTILS_INLINED.
8446         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
8447         name.  Remove windows comment.
8449         * scm/editor.scm (slashify): New function.
8450         (get-editor-command): Use it.
8451         (get-command-template): Do not alter editor command if
8452         environment value includes `%(file)s' magic.
8454         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
8455         (dissect-uri): Use it.
8456         (unquote-uri): Bugfix.
8458 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8460         * scm/framework-ps.scm (write-preamble): add TTF rule.
8462         * Documentation/topdocs/README.texi (Top): remove note about
8463         xdelta.
8465         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
8466         requirement.
8468         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
8469         function. Figure out where FlexLexer.h lives
8471         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
8472         
8473 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8475         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
8476         with Windows root in file name.
8478         * scm/backend-library.scm (ly:system): Only redirect output (using
8479         system and shell, ugh) if /dev/null is writable.
8481         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
8482         windows icon.
8484         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
8485         on Mingw.
8487         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
8488         click.
8490         * flower/file-path.cc (is_dir, is_file): New function.  Actually
8491         use result of stat when available.
8493         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
8494         absolute file name and root.
8496         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
8498         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
8500         * flower/file-name.cc (slashify): Bugfix, do substitute if no
8501         slashes in file name.
8503 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8505         * Documentation/user/preface.itely (Preface): Run
8506         texinfo-all-menus-update.
8508         * scm/editor.scm (get-editor-command): Bugfix: allow full
8509         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
8511         * Documentation/pictures/lilypond-48.xpm: New file.
8513         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
8515         * ly/Welcome_to_LilyPond.ly: New file.
8517         * lily/main.cc (main): Only identify if we have a terminal.
8519         * scm/backend-library.scm (postscript->png)
8520         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
8521         non-/bin/sh).
8523 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
8525         * Documentation/topdocs/AUTHORS.texi: polish, update.
8527 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8529         * Documentation/user/preface.itely (Notes for version 2.6): new
8530         notes for 2.6
8532         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
8533         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
8534         is not fully contained" warnings.
8536         * lily/slur-scoring.cc (get_bound_info): remove warning.
8538         * lily/staff-symbol-engraver.cc (process_music): start initial
8539         spanner in process_music(). This fixes overrides of StaffSymbol
8540         properties.
8542         * scm/framework-pdf.scm (Module): remove.
8544         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
8546         * lily/ambitus-engraver.cc: formatting cleanups.
8548         * mf/feta-solfa.mf (Module): remove.
8550         * ChangeLog: more details about contributions.
8552 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8554         * lily/align-interface.cc (align_elements_to_extents): warn if
8555         called too early. Fixes: disappearing-staff-lines.ly
8557         * VERSION (PACKAGE_NAME): release 2.5.24
8559 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8561         * stepmake/aclocal.m4: Typo.
8563         * flower/string.cc (substitute): Take two strings or two
8564         characters.  Update callers.
8566 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8568         * flower/file-name.cc (File_name): Slashify.
8570         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
8572         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
8574         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
8576         * configure.in (gui_b): Use it.
8578         * lily/lilypond.rc.in: New file.
8580         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
8582 2005-05-12  Graham Percival  <gperlist@shaw.ca>
8584         * Documentation/user/advanced-notation.itely: edit of Text
8585         section; clarify text scripts vs. text markup.
8587 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8589         * lily/multi-measure-rest-engraver.cc
8590         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
8591         separation items on start. Fixes mm rests in start of score.
8593         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
8594         don't access StaffSymbol if not there.
8595         Fixes: crash-staff-symbol-engraver.ly.
8597         * lily/instrument-name-engraver.cc (class
8598         Instrument_name_engraver): data member first_. Create
8599         InstrumentName on start. 
8601 2005-05-12  Graham Percival  <gperlist@shaw.ca>
8603         * Documentation/user/instrument-notation.itely: add guitar
8604         position.
8606         * Documentation/user/introduction.itely,
8607         Documentation/user/lilypond.tely,
8608         Documentation/user/tutorial.itely: begin pruning
8609         unused (duplicated) cindex entries and misc cleanup.
8611 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8613         * input/test/volta-chord-names.ly: Bring the explanation up to
8614         date.
8616 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
8618         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
8619         Specify `@documentencoding utf-8' for html, ignore warnings.
8621 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
8623         * THANKS: Added bughunters.
8625 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
8627         * lily/main.cc: update help string for `lilypond -H'.
8629         * po/fi.po: update.
8630         
8631 2005-05-10  Graham Percival  <gperlist@shaw.ca>
8633         * Documentation/user/advanced-notation.itely: minor fixes.
8635 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8637         * scm/editor.scm: New module.
8639         * scm/lily.scm (gui-main): Use it.
8641         * scm/framework-gnome.scm (spawn-editor): Use it.
8643         * scripts/lilypond-invoke-editor.scm: Use it in new script.
8645 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8647         * scm/framework-ps.scm (load-font-via-GS):  new function.
8649         * lily/pango-font.cc (pango_item_string_stencil): add support for
8650         CID keyed font.
8652         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
8654 2005-05-10  Graham Percival  <gperlist@shaw.ca>
8656         * Documentation/user/basic-notation.itely: add @ref.
8658         * Documentation/user/advanced-notation.itely: add example
8659         of 5/8 beaming.
8661 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8663         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
8665         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
8666         going through ps2pdf wrappers.
8668 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
8670         * Documentation/user/instrument-notation.itely: petrucci note
8671         heads: updated docu
8673         * input/regression/note-head-style.ly: updated regression test;
8674         indentation fixes
8676         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
8677         heads as default
8679         * mf/parmesan-heads.mf: minor editing; use musicological names
8680         (rather than optical description) as note head names
8682         * scm/output-lib.scm: complete petrucci heads
8684 2005-05-09  Pal Benko  <benkop@freestart.hu>
8686         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
8687         heads, but bigger)
8689 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8691         * lily/main.cc (main_with_guile): Remove no files check.
8693         * lily/main.cc (ly:usage): Export to Scheme.
8695         * scm/lily.scm (no-files-handler): New function.
8697         * scm/lily.scm (lilypond-main): Use it.
8699         * configure.in (gui_b): Add mbrtowc checking.
8700         Resurrect [utf8/]wchar.h checking.
8702 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8704         * Documentation/user/advanced-notation.itely (Metronome marks):
8705         Add link to the program reference for MetronomeMark
8707         * Documentation/user/lilypond-book.itely (An example of a
8708         musicological document): Correct the example using psfonts 
8710 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
8712         * po/fi.po: update after a lesson how to update entries against
8713         source.
8714         
8715         * po/TODO: document the lesson.
8717 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8719         * configure.in (gui_b): remove wcrtomb checking.
8721         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
8722         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
8724 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8726         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
8727         keep Scheme expressions and strings unmodified when doing the
8728         conversion to postfix notation for slurs and beams. Should
8729         hopefully solve most related conversion problems. 
8731         * Documentation/user/lilypond-book.itely : Clarify and correct how
8732         to call dvips with -h psfonts.
8734 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8736         * Documentation/user/instrument-notation.itely (Entering lyrics):
8737         Typo.  Fixes build.
8739 2005-05-09  Graham Percival  <gperlist@shaw.ca>
8741         * Documentation/user/lilypond-book.itely: document PSFONTS file.
8743         * Documentation/user/lilypond.tely, lilypond-book.itely,
8744         tutorial.itely: change references to 2.5.x to 2.6.x.
8746         * Documentation/user/instrument-notation.itely: clarified \addlyrics
8747         vs \lyricmode.
8749         * Documentation/user/invoking.itely: remove old info about
8750         lilypond-profile.
8752         * Documentation/topdocs/INSTALL.texi: remove old info about
8753         lilypond-profile, add warning about needing international fonts
8754         to build docs.
8756 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8758         * lily/include/grob-info.hh (class Grob_info): make data member
8759         private. Changes throughout.
8761         * input/regression/alignment-order.ly: new file. 
8763         * lily/vertical-align-engraver.cc (acknowledge_grob): read
8764         alignAboveContext and alignBelowContext
8766 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8768         * lily/pfb.cc (LY_DEFINE): add cast.
8770         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
8771         matches .otf
8772         (write-preamble): warn about unknown fonts.
8774         * lily/pfb.cc (Module): new function ly:otf->cff
8776         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
8777         (get_otf_table): new function.
8779 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8781         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
8782         iso. ps2png.
8784 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
8786         * po/fi.po: apply second round of update.
8788 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8790         * scm/x11-color.scm (make-x11-color-handler): don't use
8791         #\sp. Apparently doesn't work on all platforms. 
8793 2005-05-06  Graham Percival  <gperlist@shaw.ca>
8795         * Documentation/user/advanced-notation.itely, putting.itely,
8796         tutorial.itely, global.itely, introduction.itely: really minor fixes.
8798 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8800         * VERSION (PACKAGE_NAME): release 2.5.23
8802 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8804         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
8805         convert to utf-8.
8807         * THANKS: Add translators for this release, convert to utf-8.
8809         * mf/GNUmakefile (MFTRACE_FLAGS):
8810         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
8811         outdir as option (WAS: hardcoded).
8813 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8815         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
8816         finished_span_
8818         * THANKS: add Hans Forbrich.
8820         * Documentation/topdocs/NEWS.tely (Top): document new feature.
8822         * Documentation/user/basic-notation.itely (Staff symbol): document
8823         start/stop staff. Reference to ossia.ly
8825         * input/test/ossia.ly: new example using stop and startStaff.
8827         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
8828         in other words, don't create "|" barline at start of the score.
8829         (start_translation_timestep): don't set whichBar for start of score.
8831         * input/regression/staff-halfway.ly: use new functionality.
8833         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
8834         start and stop staff based on events.
8836         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
8838         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
8840 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8842         * Documentation/user/programming-interface.itely (How markups work
8843         internally ): remove \encoding reference.
8845 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8847         * scripts/convert-ly.py: Attempt to do a smarter update of 
8848         text markups from versions < 1.9.0 with arbitrary nesting.
8850 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
8852         * po/fi.po: convert to utf-8, and update.
8854 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8856         * make/lilypond.suse.spec.in: update from suse 2.4 package.
8858         * lily/*.cc: more <? >? to min/max changes
8860         * lily/include/interpretation-context-handle.hh: rename
8861         Interpretation_context_handle to Context_handle.
8863 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
8865         * input/regression/GNUmakefile (local_delete): use `find` together 
8866         with `xargs` to avoid too long argument-lists in cmd line.
8868 2005-05-04  Graham Percival  <gperlist@shaw.ca>
8870         * Documentation/user/introduction.itely: updates "About this manual".
8872         * Documentation/user/advanced-notation.itely,
8873         invoking.itely: minor fixes.
8875 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8877         * COPYING: add font exception. Update FSF address. 
8879         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
8880         should be taken without child context.
8882         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
8884         * scm/define-markup-commands.scm (triangle): new command, as
8885         robust replacement for unicode Delta/Triangle.
8887 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8889         * ps/music-drawing-routines.ps: add fillp argument.
8891         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
8893         * lily/font-config.cc (init_fontconfig): don't add cff/
8895         * VERSION (PACKAGE_NAME): release 2.5.22
8897         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
8899         * lily/grace-engraver.cc (consider_change_grace_settings): use
8900         is_alias(). Fixes problem with CueVoice grace notes. 
8902         * lily/simultaneous-music-iterator.cc (construct_children): call
8903         Music_iterator::quit() for iterators that start out invalid. This
8904         fixes indefinitely continuing contexts.
8906         * buildscripts/substitute-encoding.py: new file
8908         * Documentation/user/basic-notation.itely (Basic polyphony): fix
8909         missing @end 
8911         * scripts/lilypond-book.py (write_if_updated): print file name.
8913         * Documentation/user/basic-notation.itely (Explicitly
8914         instantiating voices): idem.
8916         * Documentation/user/advanced-notation.itely (Text spanners):
8917         remove stray { } 
8919         * lily/context.cc (default_child_context_name): the default child
8920         is now first in accepts_list_.
8922         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
8923         \defaultchild to all relevant contexts.  This fixes:
8924         drums-pitch.ly.
8926         (Probably also fixes similar problems with ancient
8927         transcriptions getting CueVoices instead of the desired voices.)
8929         * lily/context-def.cc (get_default_child): new function.
8930         (get_accepted): place default child in front of list.
8932         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
8934         * lily/include/context-def.hh (struct Context_def): add
8935         default_accept_
8937 2005-05-03  Graham Percival  <gperlist@shaw.ca>
8939         * scm/define-grobs.scm: remove "remove-first" line, since
8940         the absent property is set to #f anyway.
8942         * Documentation/user/basic-notation.itely,
8943         advanced-notation.itely, instrument-notation.itely: minor
8944         fixes.
8946         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
8948         * Documentation/user/advanced-notation.itely,
8949         changing-defaults.itely: consolidate Text stuff in
8950         advanced notation.
8952         * Documentation/user/global.itely: better docs for \header.
8954         * Documentation/user/putting.itely: new chapter; placeholder
8955         for future expansion.
8957         * Documentation/user/examples.itely: moved "suggestions for
8958         writing LP files" section into putting.itely.
8960         * Documentation/user/lilypond.itely: added new chapter,
8961         fixed the short table of contents.
8963 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8965         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
8966         infinity for unfeasible beams.
8968         * make/lilypond.fedora.spec.in (Group): idem.
8970         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
8972         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
8974         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
8975         fonts directly.
8977         * buildscripts/gen-emmentaler-scripts.py (i): idem.
8979         * mf/GNUmakefile: remove all CFF rules.
8981         * scm/framework-ps.scm (ps-embed-cff): reinstate.
8983         * lily/open-type-font-scheme.cc (LY_DEFINE):
8984         new function ly:otf-font-table-data.
8985         (LY_DEFINE): new function otf-font?
8987 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8989         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
8990         ($(outdir)/Fontmap.lily): idem.
8992         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
8993         for PFAEmmentaler-XXX.pfa. 
8995         * Documentation/user/music-glossary.tely (accidental): NL
8996         translation of accidental.
8998 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9000         * flower/include/international.hh: Bugfix: include "string.hh".
9002         * lily/include/mingw-compatibility.hh: New file.
9004         * flower/include/libc-extension.hh (memrev): Rename from strrev.
9006         * configure.in: Search for mingw wcrtomb library.
9008 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9010         * scripts/convert-ly.py: Bug fix
9012         * Documentation/user/changing-defaults.itely (Common tweaks):
9013         Added example where the context has to be specified explicitly
9014         (MetronomeMark). 
9016 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9018         * scripts/lilypond-book.py (ly_options): set timing to #f for
9019         notime option.
9021         * scripts/convert-ly.py (conv): typo.
9023         * flower/*.cc: remove <? and >?
9024         
9025         * lily/*.cc: remove <? and >?
9027         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
9028         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
9029         editor.
9031 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9033         * lily/part-combine-engraver.cc: add space to variable list.
9035 2005-04-30  Graham Percival  <gperlist@shaw.ca>
9037         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
9038         remove-first to false (matches docs)
9040         * Documentation/user/advanced-notation.itely: corrected docs
9041         concerning remove-first.
9043 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9045         * lily/part-combine-engraver.cc: make sure that the relevant
9046         properties are included in the documentation.
9048 2005-04-28  Graham Percival  <gperlist@shaw.ca>
9050         * Documentation/user/lilypond-book.itely: Bernard's docs
9051         for \betweenLilyPondSystem.
9053 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9055         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
9056         remarks.
9058 2005-04-28  Pal Benko  <benkop@freestart.hu>
9060         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
9061         only on vertical lines of flexa shape, and use a constant
9062         thickness value for horizontal lines (patch slightly modified by
9063         Jürgen Reuter)
9065         * lily/include/mensural-ligature.hh: make 2 comments clearer
9067 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
9069         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
9070         to need_extra_horizontal_space; bugfix: use class scope to avoid
9071         global namespace pollution
9073         * Documentation/user/instrument-notation.itely (ligatures): added
9074         comment on possible future syntax change and how to work around
9076         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
9077         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
9078         intervals (fixes agnus dei example)
9080         * Documentation/user/instrument-notation.itely (white mensural
9081         ligatures): selected a more illustrative example
9083 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
9085         * Documentation/index.html.in: specify utf-8 charset in meta content.
9087 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9089         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
9090         empty 2nd page for single page.
9092         * scm/lily.scm: remove p&c definitions.
9094         * po/zh_TW.po (Module): new translation.
9096         * lily/lily-guile.cc (ly_chain_assoc): remove.
9098         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
9099         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
9101 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9103         * lily/beaming-info.cc: remove infinity_i
9105         * scripts/abc2ly.py (out_filename): fix thinko with \version.
9107 2005-04-26  Graham Percival  <gperlist@shaw.ca>
9109         * Documentation/user/basic-notation.itely,
9110         instrument-notation.itely, advanced-notation.itely,
9111         changing-defaults.itely: minor fixes.  Added docs
9112         for colors to advanced-notation.itely.
9114         * Documentation/user/advanced-notation.itely: fixed compile
9115         problem and added Bernard's x11-color doc patch.
9117 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9119         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
9120         alright this time round.
9122 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9124         * Documentation/topdocs/INSTALL.texi (Top): idem.
9126         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
9128         * VERSION (MAJOR_VERSION): release 2.5.21
9130         * scm/output-ps.scm (grob-cause): bugfix.
9132 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9134         * cygwin/*: Update.
9136         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
9137         stuff.
9139         * scm/output-ps.scm (grob-cause): Bugfix.
9141         * scm/lily.scm (ly:load): Remove x11-color.
9143         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
9144         quote executable, fixes getting version from program --with
9145         --options.
9146         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
9147         $ac_exeect.
9149         * Documentation/user/GNUmakefile: Only build music-glossary with
9150         rendered lilypond snippets during web.
9152 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9154         * po/de.po: update.
9156         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
9158 2005-04-22  Laura Conrad <lconrad@laymusic.org>
9160         * scripts/abc2ly:
9161         second title line append with punctuation dash character;
9162         encode abc2ly python strings in utf-8
9163        
9164 2005-04-21  Laura Conrad <lconrad@laymusic.org>
9166         * scripts/abc2ly fix chords (again)
9168 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
9170         * scm/x11-color.scm: new file
9171         All x11 color names can be accessed with:
9172         #(x11-color 'ColorName),
9173         #(x11-color "ColorName") or:
9174         #(x11-color "color name")
9175         If the x11 color name is not recognised then it defaults
9176         to black
9178         * scm/lily.scm: amended to call scm/x11-color.scm
9180 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9182         * Documentation/user/invoking.itely (Reporting bugs): comment out
9183         reference to online PNG bug repository.
9185 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9187         * lily/translator-scheme.cc (ly:translator-property): Remove.
9188         Update callers.
9190         * lily/context-scheme.cc (ly:context-now): Move from translator.
9191         Update callers.
9193 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9195         * input/regression/grid-lines.ly (skips): refine example.
9197         * scm/define-context-properties.scm
9198         (all-user-translation-properties): doc autoBeamCheck
9200         * input/regression/grid-lines.ly (Module): new file.
9202         * lily/grid-point-engraver.cc (Module): new file.
9204         * lily/grid-line.cc (Module): new file.
9206         * lily/grid-line-span-engraver.cc (Module): new file.
9208         * lily/grid-line-interface.cc (Module): new file.
9210 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9212         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
9213         missing parameter, actualy cdr through list.  Actually return a
9214         list with ENTRY removed (was '()).
9216         * scripts/convert-ly.py: Update.  Print warning if file cannot be
9217         opened.
9218         (do_conversion): Fix printing of continuation comma.
9220         * Documentation/user/advanced-notation.itely (Beam formatting):
9221         Remove refbugs about compound time and mixed duration.
9223         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
9224         modulo moments explicitely.
9226         * lily/moment.cc (operator %): New function.
9228         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
9230         * lily/translator-scheme.cc (ly:translator-now,
9231         ly:translator-property): New function.
9233         * scm/auto-beam.scm (default-auto-beam-check): New function.
9235         * lily/auto-beam-engraver.cc (test_moment): Use it.
9237         * flower/rational.cc (operator %): Bugfix.
9239 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
9241         * scripts/abc2ly: Bugfix
9243 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9245         * python/fontextract.py (write_extracted_fonts): bugfix, too many
9246         %'s on EndFont comment.
9248         * lily/ledger-line-spanner.cc: some more words of explanation.
9250 2005-04-20  John Williams <williams@tni.com>  
9251         
9252         * scripts/lilypond-book.py: htmlquote bugfix.
9253         Allow snippets to be given distinct filenames.
9254         Allow the default alt text to be overridden.
9256 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
9258         * ly/performer-init.ly: Bugfix
9260         * THANKS: Added bughunters.
9262 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9264         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
9266         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
9267         position (was: use modulo measure length).
9269         * configure.in (no gui_b): Remove optional gtk+ requirement.
9271 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9273         * Documentation/user/basic-notation.itely (Pitches): add
9274         LedgerLineSpanner.
9276         * lily/dynamic-engraver.cc (process_music): set right bound to
9277         script if present. Else, do not set.
9278         (acknowledge_grob): only set right bound of finished spanner to
9279         note column if no other bound is set.
9281         * python/lilylib.py (make_ps_images): switch back to png16m.
9282         
9283 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9285         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
9286         writing up to date file.  Add dvips usage suggestion.
9288         * scripts/convert-ly.py: Fix error message.
9289         Print usage if no files on command line.
9290         (usage): Add example usage.
9292         * input/test/compound-time.ly: New file.
9294         * input/test/circle.ly: New file.
9296         * Documentation/topdocs/NEWS.tely: Use them.
9298         * input/test/boxed-stencil.ly: Remove \score.
9300         * buildscripts/mf-to-table.py (base): Add .log dependency.
9302         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
9303         pfa's.  Add .log dependency
9305         * scm/define-markup-commands.scm (lower): New command.
9307         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
9308         make it default.
9310 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9312         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
9313         also to finished cresc as right bound. This fixes:
9314         skip-string-decresc.ly
9316         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
9317         relative_coordinate if extent is empty.
9319         * lily/stem.cc (width_callback): determine correct extent if flag
9320         is not there. This fixes slur-no-flag.ly
9322         * lily/grace-engraver.cc (consider_change_grace_settings): new
9323         function.
9324         (initialize): also consider_change_grace_settings() on
9325         initialization. Fixes large grace notes at start of score.
9327         * lily/break-align-interface.cc (do_alignment): don't translate if
9328         total_extent is empty.
9330         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
9332 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9334         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
9335         with slash.
9337 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9339         * stepmake/aclocal.m4: Remove tfm_path.
9341 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9343         * scm/music-functions.scm (markup-expression->make-markup): fix
9344         bug with cons arguments of markup commands.
9345         (music->make-music): fix music expression property list building
9347 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9349         * aclocal.m4: Massage package names.
9351         * SCons updates.
9353 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9355         * VERSION (PACKAGE_NAME): release 2.5.20
9357         * lily/stem.cc (calc_stem_info): add minimum Y extent of
9358         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
9360         * lily/percent-repeat-engraver.cc (try_music): add measure before
9361         next_moment to future processing moment. Fixes:
9362         percent-repeat-mm-rest.ly
9363         (process_music): don't add moment for 2nd time.
9365         * input/regression/repeat-percent.ly: add mmrests as extra test.
9367         * lily/axis-group-engraver.cc (acknowledge_grob): read
9368         keepAliveInterfaces to decide what to kill.
9370         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
9371         percent-repeat-interface to keepAliveInterfaces. This fixes
9372         percent-repeat-harakiri.
9374 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9376         * SCons updates.
9378 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9380         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
9382         * aclocal.m4: remove --enable-tfm-path configure option
9384         * input/test/ancient-font.ly (lowerStaff): clef name errors.
9386         * scm/backend-library.scm (postscript->png): newline after
9387         finishing command.
9389         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
9390         (LY_DEFINE): ly:paper-score-paper-systems: new function 
9392         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
9394         * lily/score.cc (default_rendering): use Music_output too.
9396         * input/test/chord-names-languages.ly (Module): rename file.
9398         * lily/text-spanner.cc: add bound-padding.
9400         * lily/paper-book.cc (systems): accept Paper_score
9401         iso. Paper_system vector. 
9403         * input/regression/line-arrows.ly: new file.
9405         * lily/paper-score.cc (process): run get_paper_systems() only once.
9407         * lily/line-spanner.cc (line_stencil): add arrows.
9409 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
9411         * lily/line-interface.cc (make_arrow): new function. 
9412         (arrows): idem.
9414 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
9416         * input/test/chord-names-german.ly: update for italian/french
9417         chords.
9418         
9419         * Documentation/user/instrument-notation.itely (Printing chord
9420         names): update.
9422 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9424         * lily/include/paper-score.hh (class Paper_score): remove unused
9425         prototypes.
9427         * lily/book.cc (process): add -COUNT to midi output.
9429         * lily/score.cc (book_rendering): remove outname argument
9430         (book_rendering): return list of Music_outputs. 
9432         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
9434         * lily/book.cc (process): loop over Music_outputs returned from
9435         Score::book_rendering().
9437         * lily/*.cc (width_callback): remove spurious "unused" warnings
9438         for assert (axis==[XY]_AXIS); 
9440         * lily/include/music-output.hh (class Music_output): smobify class.
9442         * lily/include/paper-score.hh (class Paper_score): make members
9443         private.
9445         * lily/performance.cc (process): return #f iso. #<undefined>. This
9446         prevents #<undefined> leaking into GUILE-userspace.
9448 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9450         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
9452 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
9454         * scm/chord-name.scm : support for italian and french
9455         chords names.
9457         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
9458         a space defined by chordPrefixSpacer when the root name is
9459         direclty followed by a prefix.
9461         * ly/engraver-init.ly : chordPrefixSpacer       
9462         * scm/define-context-properties.scm : chordPrefixSpacer
9463         * ly/property-init.ly : italianChords, frenchChords 
9465 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9467         * mf/feta-din.mf: Remove.
9469         * mf/GNUmakefile (fontdir): Bugfix.
9471         * mf/SConstruct: Some updates.
9473         * SConstruct: Require pkg-config.
9474         (test_program): Bugfix for double digit version compares, use
9475         integer (not string-) compare.
9476         Optionally require gs 8.14.
9478         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
9480         * lily/*: s/ifdef HAVE_*/if have/.
9482         * SConstruct (test_lib): New function.  Update pkg-config and some
9483         other requirements.
9485         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
9486         freetype, pangof2t.
9488 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9490         * po/lilypond.pot, ...: Update using bison-CVS.
9492         * python/lilylib.py (make_ps_images): Fixo.
9494 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9496         * python/lilylib.py (make_ps_images): typo.
9498         * configure.in (gui_b): make bison optional.
9500         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
9502 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
9504         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
9505         with one parameter can be defined in a LaTeX file when processed
9506         by lilypond-book this will be evaluated between the systems of
9507         a multi-system score. The parameter is the number of systems processed.
9509 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9511         * python/lilylib.py (make_ps_images): Escape newline.
9513         * Documentation/user/music-glossary.tely: Run
9514         texinfo-all-menus-update.
9516 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9518         * scm/lily-library.scm (old-relative-not-used-message)
9519         (version-not-seen-message): Add input-file-name-location to message.
9521         * lily/parser.yy (lilypond): Add token aliases.
9523         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
9524         not confuse with alteration.
9525         (alteration): Add.
9527 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9529         * python/lilylib.py (make_ps_images): use -dEPSCrop
9531         * VERSION (PACKAGE_NAME): release 2.5.19 
9533         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
9534         only put xrefs in info documentation.
9536         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
9537         .pdf rule to tex-rules.make.
9539         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
9540         from -systems.* output.
9542         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
9543         directly, remove -$(PAGESIZE) target.
9545         * input/test/embedded-postscript.ly: update.
9547 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9549         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
9551         * Documentation/user/changing-defaults.itely (Font selection):
9552         document font-name.
9554         * input/regression/font-name.ly: show Pango fonts for
9555         font-name. Update example. 
9557         * lily/pango-select.cc (properties_to_pango_description): don't
9558         convert symbol font-size to number, but use to lookup.
9560         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
9562         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
9563         (NAME . FILE-NAME) tuples for font descriptions. 
9564         (write-preamble): display BeginFont DSC comments.
9566         * python/fontextract.py (write_extracted_fonts): new file. Extract
9567         font resources from a PS file.
9569         * scripts/lilypond-book.py (option_definitions): --psfonts option.
9570         (Compile_error.process_include): do_file returns chunks.
9572         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
9574         * make/lysdoc-targets.make: .texi is .PRECIOUS
9576         * scripts/lilypond-book.py (write_if_updated): new function.
9578 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9580         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
9582 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9584         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
9586         * input/regression/markup-syntax.ly: remove \score.
9588         * scm/define-markup-commands.scm (draw-circle): add fill argument
9590         * scm/stencil.scm (make-circle-stencil): add fill argument
9592         * ps/music-drawing-routines.ps: add fill argument.
9594         * ly/performer-init.ly: add CueVoice to MIDI too.
9596         * ps/music-drawing-routines.ps: new routine BeginEPSF /
9597         EndEPSF.
9599         * input/regression/markup-eps.ly: new file.
9601         * scm/framework-ps.scm (write-preamble): change order: vars should
9602         be inited before procedures.
9604         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
9605         for EPS files.
9607         * scm/define-markup-commands.scm (epsfile): add epsfile command.
9609 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9611         * configure.in (gui_b): add check for ghostscript 8.15
9613 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9615         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
9616         start of line. Fixes cresc-after-newline.ly
9618         * lily/source-file.cc (file_line_column_string): use get_column().
9620 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9622         * lily/source-file.cc (get_column): utf-8 support for column numbers.
9624 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9626         * lily/*: use message () iso progress_indication () for messages.
9627         Revise/uniformise user messages.
9629         * flower/warn.cc (progress_indication): New function.
9630         (message): Use it.  Fixes newline problems.
9632         * config.make.in (webdir): Sort out install dirs.
9634         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
9636         * python/lilylib.py (command_name): Bugfix.
9637         (make_ps_images):
9639 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
9641         * lily/main.cc: --help says what types of backends are availabe
9643 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9645         Fix ./VERSION dependency, and without need to reconfigure.
9647         * lily/main.cc (setup_paths): Update.
9649         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
9651         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
9653         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
9654         Add \line for some simplistic cases.
9656         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
9658 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9660         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
9661         to compile LY files (useful for adding eg. "-I" args)
9662         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
9663         2Gnome command for gnome backend.
9664         (LilyPond-command-formatgnome): call the 2Gnome command. key
9665         binding: C-c C-g
9667 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9669         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
9670         depend on all PNG images.
9672 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9674         * GNUmakefile.in: Bugfix: also link .map files.
9676 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9678         * scm/music-functions.scm (music->make-music): generate 
9679         a (make-music ...) sexpr from a music expression.
9680         (display-scheme-music): use guile pretty printer to display the
9681         make-music sexpr.
9683 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9685         * ly/engraver-init.ly: reindent.
9686         Add CueVoice.
9688         * scm/music-functions.scm (music-pretty-string): handle moments
9689         too.
9690         (music-pretty-string): only print non-empty lists.
9691         (cue-substitute): create CueVoice context, which has smaller type.
9693         * lily/moment-scheme.cc (LY_DEFINE): new methods
9694         ly:moment-grace-{numerator,denominator}
9696         * lily/context-handle.cc: remove quit() method. 
9698         * lily/font-config.cc (init_fontconfig): be verbose about font path.
9699         (init_fontconfig): success is 0, not !0
9701 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9703         * mf/feta-nummer-code.mf (code): add plus glyph.
9705         * lily/tie.cc (print): idem.
9707         * lily/slur.cc (print): don't use thickness property for
9708         slur shape-thickness.
9710         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
9711         while adding stencils.
9713         * scm/define-markup-commands.scm (with-color): with-color markup
9714         command.
9715         (whiteout): new markup command 
9716         (filled-box): new markup command
9718 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9720         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
9721         test for PDF docs.
9723         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
9724         PFAAybabtu-Regular.  Fixes feta font in PDFs.
9725         
9726         Notes for tetex-3.0 make web:
9727            psclean.map: s/uhv8a/uhvr8a/
9728            config.ps add:
9729                 p +psfonts_t1.map
9730                 p +psclean.map
9731                 p +typeface.map
9733 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9735         * scm/music-functions.scm (music-pretty-string): fix bug with
9736         string argument.
9738 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
9740         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
9742 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9744         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
9745         only process options if they're there.
9746         (write_file_map): add version-seen? to snippet-map.ly
9748 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
9750         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
9751         formatting cleanups.
9753         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
9754         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
9756 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9758         * scm/framework-ps.scm (ps-font-command): don't hash, just use
9759         name directly.
9761         * lily/main.cc (setup_paths): either add mf/out to search path or 
9762         fonts/{otf,type1,etc}
9763         
9764         * lily/font-config.cc (init_fontconfig): either add mf/out to
9765         FontConfig or fonts/{otf,type1,etc}
9767         * GNUmakefile.in: don't put mf/ link in share/ dir.
9769         * lily/staff-spacing.cc: move same-direction-correction to
9770         note-spacing-interface
9772         * scm/lily.scm (lilypond-main): use variable argument count for
9773         exception handler.
9775         * lily/font-config.cc (init_fontconfig): add operator pacification
9776         message.
9778         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
9780         * buildscripts/gen-emmentaler-scripts.py (i): generate
9781         PFAEmmentaler as well.
9783         * scm/framework-ps.scm (munge-lily-font-name): new function
9784         (write-preamble): hack: insert PFA equivalent of CFF into
9785         .PS. This makes LilyPond output printable on normal PS printers
9786         again.
9788         * buildscripts/gen-emmentaler-scripts.py (i): generate
9789         PFAEmmentaler.pfa aswell.
9791 2005-04-06  John Williams <williams@tni.com>  
9792         
9793         * scripts/lilypond-book.py: refactor the compose_ly procedure.
9794         
9795 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9797         * scm/page-layout.scm (default-page-make-stencil): always combine
9798         the header stencil, even if empty. This prevents the body text to
9799         reach up to the margins.
9801         * po/rw.po (Module): new file, for Kinyarwanda.
9803         * input/test/spacing-optical.ly (Module): new file.
9805         * lily/staff-spacing.cc: add same-direction-correction
9807 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9809         * Documentation/user/introduction.itely (Engraving): Comment-out
9810         non-existent file.
9812 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9814         * scm/define-grob-properties.scm (all-user-grob-properties): add
9815         same-direction-correction
9817         * VERSION: release 2.5.18
9819 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
9821         * lily/grob.cc (mark_smob): Check pscore->layout_ before
9822         dereferencing.  Fixes make web.
9824         * lily/midi-stream.cc: Handle unwritable midi file.  Include
9825         errno.h.
9827         * Documentation/user/: Fix links.
9829 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9831         * lily/text-interface.cc (Module): rename from text-item.cc
9833         * input/regression/apply-output.ly (texidoc): function naming fix.
9835         * lily/time-signature-performer.cc (derived_mark): new function.
9837         * lily/lily-parser-scheme.cc:  print mapped file name for progress
9839         * scripts/lilypond-book.py (find_linestarts): new function.
9840         (find_toplevel_snippets): keep track of line numbers.
9842         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
9843         all key changes.
9845         * ly/declarations-init.ly (partCombineListener): use
9846         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
9848         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
9850 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9852         * lily/text-item.cc: Fix link.
9854         * Documentation/user/changing-defaults.itely (Changing defaults):
9855         Fix programs reference links.
9857         * Documentation/user/music-glossary.tely: Convert to utf-8.
9859 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9861         * make/lilypond-vars.make: remove TEXMF from variables.
9862         remove DEB_BUILD pk font variables.
9863         remove GUILE_LOAD_PATH
9864         remove TeX memory vars.
9866 2005-04-04  Werner Lemberg  <wl@gnu.org>
9868         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
9870 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9872         * ps/lilyponddefs.ps: remove reencode-font
9874         * lily/simple-spacer.cc (add_columns): also compare
9875         directly. Column rank doesn't distinguish between broken and
9876         unbroken columns. This fixes large spaces before time sig changes.
9878         * Documentation/user/point-and-click.itely: document ly:set-option.
9880         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
9881         point_and_click_global is set.
9883         * lily/scm-option.cc (LY_DEFINE): add point-and-click
9884         ly:set-option argument.
9886 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9888         * GNUmakefile.in: Include symlinks in webball.
9890         * Documentation/user/GNUmakefile (source-links): Add symlinks to
9891         source dir for split and non-split manuals.
9893         * Documentation/user/*y: Fix @uref/@inputfile links for
9894         split/non-split HTML documents.
9896         * Documentation/user/GNUmakefile (local-WWW): Do not generate
9897         .ps.gz.
9898         
9899 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9901         * GNUmakefile.in: Add newline.
9903 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
9905         * tex/lilyponddefs.tex: use color instead of xcolor
9906         * scm/output-tex.scm: minor editing
9908 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9910         * scm/music-functions.scm (display-scheme-music): pretty printer
9911         for music expressions.
9913 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9915         * buildscripts/install-info-html.sh (index_file): Fix link.
9917 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9919         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
9921         * Documentation/index.html.in: Add size estimates with some big pages.
9923         * Documentation/user/tutorial.itely (Running LilyPond for the
9924         first time): Add/replace some @rglos links.  TODO: add more
9925         @rglos links in tutorial, test non-intrusiveness (.css).
9927         * stepmake/bin/add-html-footer.py (do_file): Remove info's
9928         annoying's indication of referencing external document.
9930         * Documentation/user/GNUmakefile: Split version of glossary too.
9931         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
9932         links, not only for html.
9934         * Documentation/user/introduction.itely: Fix some links for other
9935         than html, do not use `here' as link name.
9937 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9939         * scm/documentation-generate.scm (string-append): Fix @usermanref,
9940         @glossaryref.
9942 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9944         * scm/page-layout.scm (default-page-make-stencil): only add header
9945         if existing and not empty. Fixes spurious programming error.
9947         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
9949 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
9951         * scm/output-tex.scm: implement {re,}setcolor
9952         * tex/lilyponddefs.tex: use color package
9954 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9956         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
9957         additions to website.
9959         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
9961         * Documentation/user/macros.itexi: Fix @usermanref html links in
9962         split documents: use @inforef.
9964 2005-03-30  Graham Percival  <gperlist@shaw.ca>
9966         * Documentation/user/programming-interface.itely: minor fix.
9968         * Documentation/user/advanced-notation.itely: added info to
9969         Metronome markings.
9971 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9973         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
9974         use box-stencil.  Remove y-padding argument.
9975         (make-stencil-circler): New function.
9977         * buildscripts/lilypond-words.py (F): 
9978         * elisp/SConscript (a): 
9979         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
9980         * vim/SConscript (a): 
9981         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
9983         * lily/general-scheme.cc: Build fix.
9985         * scm/markup.scm:
9986         * input/regression/markup-scheme.ly: 
9987         * input/regression/markup-syntax.ly: Drop 'new-' from name.
9989         * scm/stencil.scm (make-circle-stencil): New function.
9991         * scm/define-markup-commands.scm (draw-circle): Use it.  New
9992         name (was cicle).  Update callers.
9993         (circle): New markup command, similar to box.
9995         * scm/stencil.scm (circle-stencil): New function.
9997 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
9999         * configure.in: Detect libutf8/wchar.h variant.
10001         * stepmake/aclocal.m4: Modify shared size test.
10003 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10005         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
10007 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10009         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
10010         
10011         * VERSION (PACKAGE_NAME):  release 2.5.17
10013 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10015         * scm/backend-library.scm (postscript->png): Fix comment and png
10016         message.
10018         * GNUmakefile.in (link-tree): Fix locales.
10020 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10022         * lily/stencil-scheme.cc (LY_DEFINE): change to
10023         ly:stencil-aligned-to, non mutating.
10025         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
10027         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
10029         * lily/quote-iterator.cc (derived_mark): call
10030         Music_wrapper_iterator::derived_mark() too.
10032         * lily/grace-engraver.cc (derived_mark): change signature, add
10033         const.
10035 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10037         * SConstruct (symlink): 
10038         * GNUmakefile.in (link-tree): Add scripts to prefix.
10040         * lily/general-scheme.cc (ly:effective-prefix): New function.
10042         * scm/backend-library.scm (postscript->png): Use it.
10044 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10046         * lily/paper-score.cc (process): don't delete grobs after
10047         producing stencils. 
10049         * scm/part-combiner.scm (determine-split-list): switch off
10050         debugging info.
10052         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
10053         if available.
10055         * scm/define-context-properties.scm
10056         (all-user-translation-properties): add stringNumberOrientations.
10058         * lily/new-fingering-engraver.cc (position_scripts): make generic,
10059         so fingering and string-numbers are separately controlled.
10061 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10063         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
10064         not use debugging.
10066 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10068         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
10070         * config.hh.in: add HAVE_FONTCONFIG.
10072         * Documentation/user/instrument-notation.itely (String number
10073         indications): new node.
10075         * input/regression/new-markup-syntax.ly (texidoc): add circle.
10077         * lily/new-fingering-engraver.cc (add_string): new function. 
10078         (acknowledge_grob): accept string-number-event as well.
10080         * scm/define-markup-commands.scm (circle): new markup command.
10082         * scm/output-lib.scm (print-circled-text-callback): new function.
10084         * lily/GNUmakefile: move ifeq after include stepmake.make.
10086 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10088         * config.make.in (HAVE_LIBKPATHSEA_SO):
10089         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
10091         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
10092         add KPATHSEA_LIBS.
10094         * debian/watch: 
10095         * debian/control: Update.
10097 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10099         * input/test/title-markup.ly (spaceTest): remove.
10101         * input/test/embedded-tex.ly (Module): remove.
10103         * input/test/music-box.ly: use 'name property, not ly:music-name.
10105         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
10107         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
10109 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10111         * Documentation/topdocs/INSTALL.texi (Top): Remove information
10112         about xdeltas.  Add information about CVS.
10114         * scm/lily.scm (lilypond-main): Fix invocation of handler,
10115         gracefully handle failed files.
10117         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
10119         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
10120         small fixes.
10122         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
10123         No unnecessarily specific i18n messages.  Remove stray `1'.
10125 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10127         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
10128         documentencoding
10130         * scm/documentation-lib.scm (texi-file-head): set utf-8
10131         documentencoding.
10133         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
10134         Delta, not the Symbol one. 
10136         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
10137         for the .map file.
10139         * Documentation/topdocs/INSTALL.texi (Top): add running
10140         requirement as compilation requirement.
10142 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10144         * buildscripts/mutopia-index.py (headertext): add h1 header and
10145         utf-8 charset meta field.
10147         * input/GNUmakefile: prune example list.
10149         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
10150         options.
10152         * lily/slur-scoring.cc (get_base_attachments): only look at stem
10153         extent for visible stems.
10155         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
10157 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10159         * Documentation/topdocs/INSTALL.texi (Top): Updates.
10161         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
10163 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10165         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
10166         pass inf/nan into slur scoring.
10168         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
10169         page.
10171         * scripts/abc2ly.py (dump_voices): use alphabet().
10173 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
10174         
10175         * mf/GNUmakefile (depth): use $(FONTFORGE). 
10177 2005-03-27 Matthias Neeracher <neeracher@mac.com>
10178         
10179         * flower/include/virtual-methods.hh: simplify. Patch by
10181 2005-03-25  John Williams <williams@tni.com>  
10183         * scripts/lilypond-book.py (main): add png for HTML too, guess
10184         only if necessary. 
10186 2005-03-25  Graham Percival  <gperlist@shaw.ca>
10188         * Documentation/topdocs/INSTALL.texi: now recommends
10189         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
10191         * Documentation/user/basic-notation.itely,
10192         Documentation/user/tutoria.itely: warn about
10193         only one (phrasing) slur at once.
10195 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10197         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
10199 2005-03-23  Graham Percival  <gperlist@shaw.ca>
10201         * Documentation/user/basic-notation.itely: fixed info about
10202         ending a (de)cresc.
10204         * Documentation/user/lilypond-book.itely: fixed
10205         lilypond-book filter example and warned about not doing
10206         --filter and --process at the same time.
10208 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10210         * lily/parser.yy (bass_number),
10211         Documentation/user/instrument-notation.itely (Figured bass): 
10212         Add the possibility to use text markup in figured bass. 
10214 2005-03-19  Graham Percival  <gperlist@shaw.ca>
10216         * Documentation/user/global.itely: added info about naming
10217         identifiers and breakbefore.
10219         * Documentation/user/invoking.itely: added info about batch
10220         processing files with convert-ly, removed references to TeX
10221         in the jail section.
10223         * Documentation/user/examples.itely: possibly fixed piano
10224         dynamics.
10226         * Documentation/user/advanced-notation.itely: added info
10227         about removing other types of Staff.
10229         * Documentation/user/instrument-notation.itely: possibly
10230         fixed piano staff line switch.
10232         * Documentation/user/changing-defaults.itely: added info
10233         about using normal font in titles.
10235 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10237         * VERSION (PATCH_LEVEL): release 2.5.16
10239         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
10240         explicitly.
10242 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10244         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
10245         whitespace.
10247         * python/lilylib.py (make_ps_images):
10248         * scm/backend-library.scm (postscript->pdf, postscript->png):
10249         Quote file name.  Use format rather than string-append juggling.
10251 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10253         * python/lilylib.py (make_ps_images): add x to -g argument. 
10255         * lily/key-performer.cc (create_audio_elements): don't use
10256         scm_eval_string. Check for minor 3rd directly.
10257   
10258         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
10259         (sarabandeCelloGlobal): key is D minor, not F major.
10261 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10263         Fix truncated --png output (Peter Danenberg).
10264         
10265         * python/lilylib.py (make_ps_images):
10266         * scripts/ps2png.py (copyright): Grok --papersize option.
10268         * scm/backend-library.scm (postscript->png): Add parameter
10269         PAPERSIZE.  Update callers.
10271         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
10272         Fixes symbol placement.
10274         * lily/spanner.cc: 
10275         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
10276         <libc-extension.hh>).
10278 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10280         * Nitpick run.
10282         * buildscripts/fixcc.py: Update.
10284         Builddir run fixes.
10286         * HACKING (datadir): Add VERSION.
10288         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
10289         higher up.
10291 2005-03-15  Werner Lemberg  <wl@gnu.org>
10293         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
10294         diagonal stem doesn't become thinner.
10296 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10298         * buildscripts/fixcc.py: Fixes (Werner).
10300 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10302         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
10303         Emmentaler/Aybabtu.
10305         * GNUmakefile.in: fix lilypond-words path.
10307         * po/tr.po: update to 2.3.21
10309         * lily/new-fingering-engraver.cc (position_scripts): take priority
10310         from head position.
10312         * input/regression/finger-chords-order.ly (texidoc): new file.
10314 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10316         * make/ly-rules.make: 
10317         * stepmake/aclocal.m4: 
10318         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
10320         * buildscripts/fixcc.py (rules): Leave space after operator.
10322 2005-03-14  Werner Lemberg  <wl@gnu.org>
10324         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
10325         top of the glyph with smooth curve.
10327 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10329         * Documentation/user/global.itely (Page layout): remove
10330         printpagenumber.
10332 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
10334         * input/regression/mensural-ligatures.ly: new file (with examples
10335         compiled by Pal Benko).
10337         * Documentation/user/instrument-notation.itely: Bugfix: yet some
10338         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
10339         musicglyph access.  Many small beautifications in ancient
10340         examples.
10342         * input/test/divisiones.ly: fixed indentation; small
10343         beautifications
10345         * ly/engraver-init.ly: added FIXME comment
10347         * scripts/lilypond-book.py,
10348         Documentation/user/lilypond-book.itely: added music fragment
10349         option "packed" to lilypond-book
10351         * Documentation/user/instrument-notation.itely: Bugfix: added
10352         missing LedgerLineSpanner color setting in several places.  Added
10353         music fragment option "packed" to VaticanaContext example.
10355 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10357         * scm/define-grobs.scm (all-grob-descriptions): switch off
10358         Hyphen_spanner::set_spacing_rods 
10360         * lily/lyric-hyphen.cc (print): add padding between syllable and
10361         hyphen.
10362         (print): shorten hyphen in tight situations (determine using
10363         minimum-length)
10365         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
10366         0.4pt.
10368 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10370         * ly/titling-init.ly (bookTitleMarkup): Refinements.
10372         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
10373         header/footer markings for regression-test.
10375         * scm/backend-library.scm (output-scopes, header-to-file): Move
10376         from framework-tex.scm.
10378         * scm/framework-ps.scm (output-framework)
10379         (output-preview-framework):
10380         * scm/framework-eps.scm (output-classic-framework)
10381         (output-framework): Use it.  Fixes collated files.
10383 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10385         * input/sakura-sakura.ly: 
10386         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
10388         * buildscripts/guile-gnome.sh: Update.
10390         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
10392         * mf/aybabtu.pe.in: Capitalize Aybabtu.
10394 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10396         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
10397         culprit: always exit the loop if we find a rod, even if it has
10398         distance < 0. 
10400         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
10401         algorithm.
10403         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
10404         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
10406         * scm/output-svg.scm (dashed-line): new  function body.
10407         
10408         * GNUmakefile.in: create .htaccess.
10410 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10412         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
10414 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10416         * VERSION (PACKAGE_NAME): release 2.5.15
10418         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
10420         * scm/framework-svg.scm (output-framework): put scaling in
10421         document header. Apply scaling only once.
10422         (output-framework): dump page size in px, not mm. 
10424         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
10425         from font-size.
10427         * lily/paper-outputter-scheme.cc (LY_DEFINE):
10428         ly:outputter-output-scheme, new function.
10430         * scm/output-svg.scm (pango-description-to-svg-font): new function
10432 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10434         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
10435         target.
10437         * input/typography-demo.ly: new file.
10439 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10441         * Documentation/user/global.itely (File structure): Add markup blocks
10442         to toplevel expressions.
10443         (Multiple movements, Creating titles): Add markup blocks.
10445         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
10446         <libc-extension.hh>).
10448         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
10450         * flower
10451         * lily
10452         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
10454 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10456         * lily/accidental.cc: special bboxes for natural. 
10458         * mf/feta-toevallig.mf: make stems heavier.
10460         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
10461         texts as well.
10463         * mf/feta-klef.mf: revise. 
10465         * mf/feta-schrift.mf: make thinning of accent less pronounced.
10467         * mf/feta-klef.mf: add rounded curve at top. 
10468         make thinnib a little heavier.
10470 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10472         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
10474         * buildscripts/fixcc.py: New file.
10476         * input/regression/utf8.ly: Update Debian font description.
10478 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10480         * stepmake/aclocal.m4: Fix test.
10482 2005-03-09  Graham Percival  <gperlist@shaw.ca>
10484         * Documentation/user/invoking.itely: added Sebastino Vigna's
10485         docs for the --jail option.
10487 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10489         * lily/stem.cc (print): only produce stemlets if there are no
10490         noteheads on this stem.
10492         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
10493         don't crash on stemlet (visible stem without heads).
10495         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
10496         unbroken situations. 
10498         * scm/output-lib.scm (center-invisible): new function.
10500         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
10501         wishes to determine loose column space.
10503         * lily/font-config.cc (init_fontconfig): add
10504         fonts/{otf,type1,cff}  to path.
10506         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
10508         * mf/GNUmakefile (Module): install all fonts under otf/
10510         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
10511         replace /fonts/otf/ by /ps/ 
10513         
10514 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10516         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
10518         * lily/book.cc (process): Oops, add score_.header_.
10520         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
10522         * lily/parser.yy: Handle toplevel and book texts as score.
10524         * scm/page-layout.scm (default-page-make-stencil):
10525         Bugfix: (page-properties rename.
10527         * scm/backend-library.scm (ly:system): Typo.
10529 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10531         * stepmake/stepmake/executable-targets.make (installexe): don't
10532         strip installed executables
10534         * lily/font-select.cc (get_font_by_design_size): revert
10535         pango_description_string as well.
10537         * lily/system.cc (set_loose_columns): put loose column just left
10538         of next column.
10540         * lily/include/group-interface.hh (extract_grob_array): rename
10541         from Pointer_group_interface__extract_grobs
10543         * input/regression/ledger-line-minimum.ly (texidoc): new file.
10545         * lily/ledger-line-spanner.cc (set_spacing_rods): new
10546         function. Keep ledgered note heads at a minimum distance.
10547         Introduce minimum-length-fraction
10548         (print): introduce length-fraction property.
10550 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10552         * tex/GNUmakefile: remove latin1.enc rules.
10554 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10556         * scm/titling.scm: Typo.
10558         * input/regression/score-text.ly: Really add.
10560         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
10562 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10564         * lily/open-type-font-scheme.cc:  new file.
10566 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10568         * scm/titling.scm (layout-extract-page-properties): Rename from
10569         page-properties.  Update callers.
10571         * lily/lexer.ll (Lily_lexer):
10572         * lily/parser.yy: Junk lyric_markup state.
10574         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
10576         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
10577         Add texts parameter.
10579 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10581         * lily/lexer.ll (lyric_markup): New mode.
10582         (Lily_lexer::push_lyric_markup_state): New method.
10583         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
10585         * lily/parser.yy (book_body):
10586         (toplevel_expression): Grok \markup texts.
10588         * lily/score-scheme.cc (ly:music-scorify): 
10589         * scm/lily-library.scm (collect-music-for-book): Take texts
10590         parameter.
10592         * lily/score.cc (texts_): New member.
10594         * lily/paper-book.cc (systems): Format score texts.
10596         * score-text.ly: New file.
10598         * ttftool/SConscript:
10599         * kpath-guile/SConscript: New file.
10601         * lily/SConscript:
10602         * SConstruct: Update.
10604 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10606         * VERSION (PACKAGE_NAME): release 2.5.14
10608 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10610         * lily/main.cc: Add dummy xgettext markers.
10612 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10614         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
10615         requirements
10617         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
10618         executable is < 40k
10620         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
10621         hack.
10623 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10625         * flower/libc-extension.cc:
10626         * flower/include/libc-extension.hh: [Open]BSD simply cast
10627         cookie/funopen declarations.
10629         * stepmake/aclocal.m4: Check for libkpathsea.so.
10631         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
10632         dl_kpse_find_file.
10634 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10636         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
10637         (open_library): alternative for static library.
10639 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10641         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
10643         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
10645         Drop run-time dependency on teTeX.
10647         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
10649         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
10650         KPATHSEA_LIBS in LIBS.
10651         (STEPMAKE_DLOPEN): New function.
10653         * lily/font-config.cc (init_fontconfig): Use dir for directory,
10654         not path.
10656         * flower/file-path.cc (directories): Rename from paths, as this
10657         return an array of directories (a single path).
10659 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10661         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
10663         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
10664         new ly:kpathsea-find-file
10666         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
10668         * kpath-guile/GNUmakefile: new file
10670         * buildscripts/gen-emmentaler-scripts.py (i): generate
10671         emmentaler-X.fontname as well.
10673         * buildscripts/ps-embed-cff.py: new script
10675         * scm/lily-library.scm: remove ps-embed-cff.
10677         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
10678         font loading. 
10680         * scm/font.scm (add-music-fonts): load dynamics/numbers through
10681         fontconfig as well.
10683         * lily/font-config.cc (init_fontconfig): add cff/ too.
10685         * ly/generate-embedded-cff.ly: capitalize.
10687         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
10688         so as to register the pango font.
10690         * lily/font-config.cc (init_fontconfig): add
10691         prefix/{otf,type1,mf/out} to fontconfig path.
10693         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
10694         overrides all. 
10696         * configure.in (gui_b): remove ec mftrace check
10698         * config.hh.in: use lilypond-Major.Minor as data directory.
10700         * scm/framework-ps.scm (dump-page): use output-units for landscape.
10702         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
10703         name.
10705 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10707         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
10708         error messages.
10710         * flower/libc-extension.cc:
10711         * flower/include/libc-extension.hh: [Open]BSD fixes for
10712         cookie/funopen declarations.
10714 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10716         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
10717         emmentaler.
10719         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
10720         lcrm10.
10722         * scm/define-markup-commands.scm (fontsize): new markup
10723         command. Also set baseline-skip
10725 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
10726         
10727         * lily/main.cc (do_chroot_jail): paranoia security for webserver
10728         use.
10730 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10732         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
10734         * lily/pdf.cc: remove PDF related files
10736 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10738         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
10739         <hamamatsu@gmx.de>
10741 2005-03-05  Graham Percival  <gperlist@shaw.ca>
10743         * Documentation/user/advanced-notation.itely: first draft
10744         of reorg done.
10746         * Documentation/user/global.itely: fixed (sub)section
10747         bits of MIDI.
10749 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10751         * cygwin/mknetrel (extras): Bufix (Bertalan).
10753         * Documentation/user/basic-notation.itely (Chords): @ref fix.
10754         * Documentation/user/instrument-notation.itely (Introducing chord
10755         names): Compile fix: must have unique name.
10757 2005-03-02  Graham Percival  <gperlist@shaw.ca>
10759         * Documentation/user/instrument-notation.itely: reorg.
10761 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10763         * scm/output-gnome.scm:
10764         * scm/output-svg.scm: Fix font scaling.
10766 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10768         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
10769         what link to use best.
10771         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
10772         * Documentation/user/tutorial.itely (Automatic and manual beams):
10773         Fix @ref.
10775         * lily/tweak-registration.cc (replace_grob_tweak): New function.
10776         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
10777         * scm/framework-gnome.scm (tweak): Use it.
10779 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10781         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
10783         * scm/output-ps.scm (white-text): reinstate white-text
10785 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10787         * scm/output-ps.scm (offset-add): Remove.
10789         * scm/lily-library.scm (offset-flip-y): New function.
10790         * scm/framework-gnome.scm (tweak): Use it.
10792         * scm/output-gnome.scm (grob-cause): Add parameter.
10794         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
10795         * scm/output-ps.scm (url-link): Move.
10796         (white-text): Warn user about brokenness.
10798         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
10799         wrt ghostscript.
10801 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10803         * lily/slash-repeat-engraver.cc (try_music): always make slashes
10804         if body length smaller than measure length.
10806         * scm/define-markup-commands.scm (with-url): oops. use Y extent
10807         for Y.
10809         * ly/titling-init.ly (tagline): put default tagline in \paper
10811 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10813         * lily/kpath.cc: 
10814         * lily/pdf.cc (Pdf_file): Use more generic error messages.
10816         * scm/lily-library.scm (version-not-seen-message): New function.
10817         * ly/init.ly: Use it.
10819         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
10820         breaks as progess.
10822         * scripts/lilypond-book.py (do_process_cmd): Do not lump
10823         whitespace with l10n message.
10825         * scm/framework-tex.scm (convert-to-ps):
10826         (convert-to-dvi): Do not use overly specific l10n messages.
10828         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
10830         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
10831         merge stderr with stdout.  
10833 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10835         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
10836         Neeracher).
10838 2005-02-29  Graham Percival  <gperlist@shaw.ca>
10840         * Documentation/user/instrument-notation.teily: moved
10841         \arpeggio to Basic.
10843         * Documentation/user/advanced-notation.itely: Articulation to
10844         Basic, a bunch of stuff from Basic moved to Advanced.
10846         * Documentation/user/basic.itely: swapped various sections,
10847         reorganized Basic.
10849 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10851         * flower/memory-stream.cc: 
10852         * flower/libc-extension.cc: Remove obsolete #undefs.
10854         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
10855         more carefully.
10857 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10859         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
10860         dependency.
10862         * VERSION (PACKAGE_NAME): release 2.5.13
10864         * GNUmakefile.in (web-ext): don't ship ps.gz
10866         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
10867         stdout
10869 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10871         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
10872         without libintl.  Now it compiles too.
10874 2005-02-28  Graham Percival  <gperlist@shaw.ca>
10876         * Documentation/user/basic-notation.itely,
10877         instument-notation.itely, advanced-notation.itely:
10878         split up contents of notation.itely.
10880         * Documentation/user/notation.itely: file removed.
10882         * Documentation/user/invoking.itely, converters.itely:
10883         moved convert-ly info to invoking.itely.
10885         * Documentation/user/global.itely, changing-defaults.itely,
10886         sound-output.itexi: moved global settings, file layout, and
10887         sound into global.itely.
10889         * Documentation/user/sound-output.itexi: file removed.
10891         * Documentation/user/lilypond.tely: removed links to
10892         notation.itely and sound.itely.
10894 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10896         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
10898         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
10900         * THANKS: add sponsor.
10902         * scm/define-markup-commands.scm (with-url): new markup command.
10904         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
10905         tagline.
10906         
10907         * scm/output-tex.scm (url-link): stub.
10909         * scm/output-ps.scm (url-link): new function.
10911         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
10912         ly:set-point-and-click
10914 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10916         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
10917         based on pdf-viewer setting.
10919         * scm/framework-ps.scm (write-preamble): Find and set preferred
10920         pdf-viewer.
10922 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10924         * Documentation/user/point-and-click.itely: update for PDF point &
10925         click.
10927         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
10928         editors based on EDITOR setting.
10930 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10932         * scm/*: Oops, more grand 2005 replace bits.
10934 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10936         * ps/music-drawing-routines.ps: new routine: insert PDF mark
10938         * scm/output-ps.scm (grob-cause): point & click support for
10939         PostScript
10941 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10943         * lily/input-scheme.cc (LY_DEFINE): rename to
10944         ly:input-file-line-column
10946 2005-02-26  Graham Percival  <gperlist@shaw.ca>
10948         * Documentation/user/examples.itely: small fix from Steve Doonan.
10950         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
10952         * THANKS: added Yuval Harel.
10954         * Documentation/user/{various}: inserted two spaces after a period.
10956         * Documentation/user/lilypond.tely: added framework for reorg.
10958         * Documentation/user/basic-notation.itely, instrument-notation.itely,
10959         advanced-notation.itely, global.itely: new files, placeholder for
10960         future reorg.
10962 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
10964         * Documentation/user/notation.itely: revamped Polyphony section
10965         
10966 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10968         * Documentation/user/lilypond-book.itely (Music fragment options):
10969         doc fontload.
10971         * Documentation/user/changing-defaults.itely (Text encoding): add
10972         fontload option to utf8 include
10974         * scripts/lilypond-book.py (compose_ly): add fontload option
10976         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
10977         force-eps-font-include option.
10979         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
10980         black triangle
10982         * Documentation/user/invoking.itely (Editor support): remove
10983         lilypond-latex section.
10985         * scripts/lilypond-latex.py (Module): remove script.
10987         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
10988         overwrite .log. 
10990         * lily/main.cc: remove -m, --no-layout
10992         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
10993         to define. We don't want to override fprintf everywhere.
10995 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
10997         * cygwin/lilypond.hint: 
10998         * cygwin/README.in: Update dependencies.
11000         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
11001         Bugfix: do not pollute CPPFLAGS, LIBS.
11003         * cygwin/mknetrel (extras): Cross compile fixes.
11005         * ttftool/util.c: 
11006         * ttftool/ttfps.c: 
11007         * ttftool/ps.c: #include libc-extension.hh
11009         * flower/include/libc-extension.hh:
11010         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
11011         wrapper using funopen.
11012         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
11013         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
11015         * config.hh.in:
11016         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
11017         (AC_CHECK_HEADERS): Add libio.h
11019         * scripts/convert-ly.py: Uniformize, internationalize.
11020         (2.5.2): Remove fatal encoding rule.
11021         (2.5.13): Handle latin1 encoding gracefully.
11023 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
11025         * HACKING: Fix line breaks.
11027 2005-02-23  Werner Lemberg  <wl@gnu.org>
11029         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
11030         contains those two files.
11032 2005-02-21  Werner Lemberg  <wl@gnu.org>
11034         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
11035         to improve overlap removal process.
11037         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
11038         left and right ending.  This ensures better overlapping.
11039         Update all callers.
11040         ("lineprall"): Don't use draw_gridline to get better overlapping.
11042 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11044         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
11046         * Documentation/topdocs/NEWS.tely (Top): oops.
11048 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
11050         * HACKING: new file.
11052         * input/regression/utf8.ly (portuguese): added a portuguese example
11053         to show latin1 accents.
11055 2005-02-21  Pal Benko  <benkop@freestart.hu>
11057         * lily/mensural-ligature-engraver.cc:
11058         * lily/mensural-ligature.cc:
11059         * lily/include/mensural-ligature.hh: new algorithm implemented
11061         * scm/define-grob-properties.scm: join-left killed (add-join may
11062         be used); join-left-amount changed to join-right-amount
11064 2005-02-21  Graham Percival  <gperlist@shaw.ca>
11066         * Documentation/user/notation.itely: small but urgent fix.
11068 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
11070         * lily/duration-scheme.cc: bugfix: correct parameters to
11071         SCM_ASSERT_TYPE.
11073         * THANKS: added Pal.
11075         * Documentation/user/notation.itely: bugfix: unTeXified
11076         $\\backslash$.  Bugfix: yet another glyph renaming victim:
11077         "timesig.*x/y" -> "timesig.*xy".
11079 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11080         
11081         * VERSION (PACKAGE_NAME): release 2.5.12
11083 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11085         * ly/engraver-init.ly: set tieWaitForNote to #t by default
11087         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
11089         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
11091         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
11093 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11095         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
11096         latin1..utf-8.
11098         * input/regression/stanza-number.ly:
11099         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
11101         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
11103 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11105         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
11106         NEWS. Refer to website for older news.  
11108         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
11109         .HTML. This should be done for specific servers only.
11111         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
11112         .ly image examples.
11114         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
11115         in layer 0 too.
11117         * scm/define-context-properties.scm
11118         (all-user-translation-properties): add tieWaitForNote
11120         * scm/define-grobs.scm (all-grob-descriptions): add
11121         Tie_column::before_line_breaking
11123         * lily/tie.cc (get_column_rank): new function
11125         * lily/tie-column.cc (before_line_breaking): new function.
11126         (werner_directions): take into account ties that start on
11127         different columns.  
11129         * lily/score-engraver.cc (set_columns): move add_column() so we
11130         have column rank available.
11132         * lily/tie.cc (get_column_rank): new function.
11134         * input/regression/utf8.ly (japanese): add japanese lyrics.
11136         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
11138         * THANKS: add Steve D
11140         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
11141         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
11143 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
11145         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
11146         to show harmonic notes
11147         * scm/define-markup-commands.scm: in \markup-by-number
11148         "dots-dot" -> "dots.dot" to show dotted notes
11150 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11152         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
11154         * flower/memory-stream.cc (writer): new file.
11156         * configure.in: add endian test.
11158 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
11160         * Documentation/user/examples.itely: small
11161         simplification/beautification
11163         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
11164         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
11165         notation manual.
11167         * lily/mensural-ligature.cc: bugfix: another few victims of the
11168         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
11170         * ly/gregorian-init.ly: commit some experimental code for hi-level
11171         ligature input language lying around here for several months.
11173         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
11174         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
11176         * lily/vaticana-ligature-engraver.cc: bugfix: another few
11177         "x-y-z"->"x.y.s-z" fixes.
11179 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11181         * scm/framework-pdf.scm (scm): new file
11183         * lily/include/pdf.hh (class Pdf_file): new file.
11185         * lily/pdf.cc (write_trailer): new file.
11187 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
11189         * input/regression/color.ly: new file
11191         * lily/stencil.cc (interpret_stencil_expression):
11192         when a color expression is encountered: save current color,
11193         process the rest of the expression, and restore previous color.
11195         * lily/system.cc (get_line): check all grobs for color property and
11196         prepare the stencil scheme expressions for further processing.
11197         Fix layer-loop.
11199         * scm/define-grob-properties.scm: introduce the color property.
11201         * scm/output-lib.scm: color helper functions.
11203         * scm/output-ps.scm: introduce setcolor/resetcolor.
11205 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
11207         * ly/*.ly, input/regression/*.ly: Added missing \version
11208         statements in some files.
11210 2005-02-15  Graham Percival  <gperlist@shaw.ca>
11212         * Documentation/user/notation.itely: minor editing.
11214         * Documentation/user/converters.itely: updated convert-ly bugs.
11216         * Documentation/user/lilypond-book.itely: add info about using
11217         feta characters in latex.
11219 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11221         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
11223 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11225         * scm/define-grob-properties.scm (all-user-grob-properties):
11226         removed 'dashed property.
11228 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11230         * scm/lily.scm (define-safe-public): new macro for defining
11231         variables that can be used in --safe mode. Use it in *.scm
11232         instead of manually setting safe-objects in safe-lily.scm.
11234 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11235         
11236         * lily/slur.cc: Slur-dash patch by Bertalan.
11238         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
11240         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
11242 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11244         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
11246 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11248         * mf/GNUmakefile: teTeX-3.0 install fix.
11250         * Cygwin patch from Bertalan.
11252         * stepmake/stepmake/metafont-rules.make: Remove bashism.
11254 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
11256         * GNUmakefile.in: 
11257         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
11259         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
11260         2.0.x compatibility.
11262 2005-02-08  Werner Lemberg  <wl@gnu.org>
11264         * mf/feta-din-code.mf: Format; clean up code.
11265         Replace `---' with `--' plus explicit path directions.
11266         (linethickness#, stafflinethickness#): Remove.
11267         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
11268         ("dynamic s"): Improve shape.
11269         ("dynamic p"): Improve shape.
11270         Replace `draw' with better outline approximation.
11271         ("dynamic r"): Improve shape.
11272         Don't call `fill' and `draw' at the same time.
11274 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
11276         * SConstruct (symlink):
11277         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
11278         build fix: add enc symlink.
11280         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
11282         Support for DESTDIR besides prefix=/foo
11284         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
11286         * stepmake/stepmake/*.make:
11287         * */GNUmakefile:
11288         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
11290         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
11292         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
11293         mawk in fontforge (date) test.
11295 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11297         * scm/font.scm (make-century-schoolbook-tree): add NCS as
11298         font-family=roman. Add Luxi Sans as sans
11300 2005-02-07  Graham Percival  <gperlist@shaw.ca>
11302         * Documentation/user/notation.itely: add warning about
11303         percent repeats and Voice contexts.
11305         * Documentation/user/lilypond-book.itely: clarified the
11306         necessity of dvips -u arguments.
11308 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
11310         * THANKS: Added a bunch of bug hunters.
11312 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11314         * scm/framework-ps.scm (output-preview-framework): bugfix.
11316         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
11317         o/ for chord modifier..
11319         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
11321         * lily/drum-note-performer.cc:  remove unused (thanks Michael
11322         Welsh Duggan). 
11324 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11326         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
11328         * ly/titling-init.ly: Do not also print intstrument in header on
11329         first page.  Do not print page number on first and only page.
11331 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11333         * input/regression/*.ly: remove old-relative everywhere
11335         * lily/music-sequence.cc (simultaneous_relative_callback): do
11336         what-if analysis on copy, not on original. Fixes old-relative
11337         compatibility.
11339         * scm/backend-library.scm (postscript->png): space before
11340         --verbose.
11341         
11342 2005-02-05  Werner Lemberg  <wl@gnu.org>
11344         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
11345         is defined.
11347         * mf/feta-alphabet.mf: Define `staffsize#'.
11348         Include `feta-params.mf'.
11349         s/staffheight/design_size/.
11351         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
11353         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
11355         * mf/feta-nummer-code.mf: Reformatted.
11356         (draw_six): Use outline intersection to avoid a self-intersecting
11357         path.
11358         ("Numeral comma"): Fix serious outline glitches.  This slightly
11359         changes the glyph shape.
11360         ("Numeral dash"): Use `draw_rounded_block'.
11361         ("Numeral dot"): Use `drawdot'.
11362         ("Numeral 1"): Assure identical tangent directions for the
11363         intersection points of paths.  The glyph shape improvement is only
11364         visible at very high magnifications.
11365         ("Numeral 2"): Use `solve' macro to make the lower right part of
11366         the glyph outline touch the x axis exactly.  This changes the
11367         glyph shape.
11368         Minor fixes for better overlap removal support.
11369         ("Numeral 4"): Make lefter corner `rounder'.
11370         ("Numeral 5"): Assure identical tangent directions for the
11371         intersection points of paths.  This improves the glyph shape at
11372         high magnifications.
11373         ("Numeral 7"): Use `solve' macro to make the upper right part of
11374         the glyph outline touch the metrics box exactly.  This changes the
11375         glyph shape.
11376         Avoid corner in the upper left part of the glyph (causing a minor
11377         shape change).
11379         * mf/feta-ital-*.mf: Removed.  Unused.
11381 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11383         * VERSION (PATCH_LEVEL): release 2.5.11
11385         * input/regression/fill-line-test.ly: new file.
11387         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
11388         emmentaler name, eg. emmentaler-23. 
11390 2005-02-04  Christian Hitz  <chhitz@gmx.net>
11392         * scm/scm/define-markup-commands.scm (fill-line): rework for better
11393         alignment with centered texts
11395         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
11396         list of paddings
11398 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11400         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
11402         * lily/note-column.cc (translate_rests): call flush_extent_cache()
11403         of parents when translating rests. Fixes: c-chord-rest.ly 
11405         * lily/include/dimension-cache.hh (struct Dimension_cache): add
11406         dimension_callback_ member.
11408         * lily/grob.cc (flush_extent_cache): new function. Force recompute
11409         of extents.
11411 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11413         * all but lily/*: The grand 2004/2005 replace.
11415 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11417         * lily/*: add space after ,  
11419         * scm/music-functions.scm (has-request-chord): don't use
11420         ly:music-name anywhere. Fixes <<\\>> notation. 
11422         * scm/define-markup-commands.scm (box): use font-size for
11423         padding. Fixes boxed-rehearsal-marks.ly
11425         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
11426         identifier definition too, so foo = \lyrics { ...   } bar = #1
11427         doesn't complain about "bar" being LYRICS_STRING.
11429         * lily/paper-def.cc (find_pango_font): new routine; Store
11430         pango_fonts in hash tab too. This is necessary for retrieving
11431         Pango_fonts::physical_font_tab() later on.
11433         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
11434         crash if psname is null.
11436         * lily/lily-guile.cc (ly_hash2alist): new function
11438         * Documentation/user/changing-defaults.itely (Text encoding):
11439         rewrite. 
11441         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
11442         -> font_filename mapping.
11444         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
11445         ly_pango_font_physical_fonts
11447         * scm/framework-ps.scm (supplies-or-needs): extract names from
11448         physical Pango_fonts.
11450         * utf8.ly: new file.
11452 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11454         * Documentation/user/changing-defaults.itely (Page layout): add
11455         doco about systemSeparatorMarkup.
11457         * scm/page-layout.scm (default-page-make-stencil): add-to-page
11458         function.
11459         (default-page-make-stencil): insert system separators.
11461         * scm/define-markup-commands.scm (hcenter): add
11462         (beam): add.
11464 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11466         * scm/output-ps.scm (ez-ball): reinstate ez notation.
11468 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11470         * lily/main.cc: Spell backend consistently.  Sort options.
11472 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11474         * scripts/lilypond-book.py (Module): revert @include.
11475         
11476 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
11478         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
11479         Bugfix: @include .tex (not .texi).  Small cleanups.
11481         * stepmake/bin/add-html-footer.py (i18n): New function.
11483 2005-01-31  Werner Lemberg  <wl@gnu.org>
11485         * mf/feta-nummer.mf: Removed.  Unused.
11487 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11489         * lily/ : 2004 -> 2005 s&r
11491         * scm/file-cache.scm (cached-file-contents): add file. Read each
11492         file only once.
11494         * scm/font.scm (add-pango-fonts): change order. Medium weight is
11495         now default.
11497         * VERSION: release 2.5.10
11498         
11499         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
11501         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
11503         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
11504         that both X and Y extents of bbox are non-nil.
11506 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11508         * scm/chord-name.scm (alteration->text-accidental-markup): change
11509         - to . 
11511         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
11513         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
11515         * Documentation/user/invoking.itely (Invoking lilypond): add note
11516         about EPS backend.
11518         * scm/framework-eps.scm: new file: create per-system/per-page EPS
11519         files for inclusion in lilypond-book document.
11521         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
11523         * input/tutorial/lbook-texi-test.texi: new file.
11525         * scm/safe-lily.scm (safe-objects): add
11526         {begin,end}-of-line-(in)?visible as safe.
11528 2005-01-30  Graham Percival  <gperlist@shaw.ca>
11530         * Documentation/user/changing-defaults.itely: fixed example
11531         of (dynamics).
11533 2005-01-29  Graham Percival  <gperlist@shaw.ca>
11535         * lily/main.cc: fix info about -o=FILE.
11537 2005-01-29  Werner Lemberg  <wl@gnu.org>
11539         * mf/feta-toevallig.mf ("Natural"): Completely changed the
11540         construction to assure smooth transition from straight to curved
11541         lines.
11543 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11545         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
11546         stencils.
11548         * ps/lilyponddefs.ps: add start-page, start-system doesn't
11549         translate to top of page. Fixes alignment problems of
11550         lilypond-generated EPS files.
11552 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11554         * scm/part-combiner.scm (analyse-spanner-states): trigger on
11555         crescendo-end as well, since Decrescendo maybe ended with Stop
11556         Crescendo.). Fixes: partcombine-diminuendo.ly
11558         * scm/script.scm (default-script-alist): swap portato symbols.
11560         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
11562         * lily/paper-outputter-scheme.cc (LY_DEFINE):
11563         ly:outputter-port. New function.
11565         * scm/framework-ps.scm (output-classic-framework): dump a
11566         -systems.texi too
11567         (output-classic-framework): dump multiple systems on an "infinite"
11568         page EPS including fonts. 
11570         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
11571         .eps files for both texi and tex formats. Use PNG coming from
11572         lilypond.
11573         
11574 2005-01-28  Graham Percival  <gperlist@shaw.ca>
11576         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
11578         * scripts/lilypond-latex.py: fix info about -o=FILE.
11580 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11582         * ly/generate-embedded-cff.ly: write .cff.ps files.
11584         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
11586         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
11587         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
11589 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11591         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
11593 2005-01-28  Werner Lemberg  <wl@gnu.org>
11595         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
11596         macros.
11597         (draw_bulb): Improved.
11599         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
11600         metapost bug.
11601         (draw_pedal_P): Use soft_end_penstroke.
11602         (draw_pedal_d): Use soft_start_penstroke.
11604         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
11605         path.
11606         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
11607         doesn't change the glyph shape.
11609         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
11610         changing the shape) to avoid fontforge warnings.
11612         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
11613         soft_end_penstroke and fix glyph shape.
11615 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11617         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
11619 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11621         * scm/define-markup-commands.scm (line): filter out empty stencils
11622         from line command.
11624         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
11625         amount.
11627 2005-01-27  Graham Percival  <gperlist@shaw.ca>
11629         * Documentation/user/notation.itely: added info about what
11630         \voiceFoo does.  Also rewrote warning about marks at
11631         a line break.
11633         * Documentation/user/changing-defaults.itely: added info
11634         about putting dynamics in parenthesis and brackets.
11636 2005-01-27  Werner Lemberg  <wl@gnu.org>
11638         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
11640 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11642         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
11643         portato-direction.ly
11645         * lily/beam.cc (consider_auto_knees): add beam height to
11646         threshold. Fixes: knee-multiple-beam.ly
11648         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
11649         pedal line spanners. Fixes: instrument-center-pedal.ly
11651         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
11652         if encountering barline. Fixes: auto-beam-repeat.ly
11654 2005-01-26  Werner Lemberg  <wl@gnu.org>
11656         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
11657         overlapping.
11659         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
11660         with inflections for the 1/2 sharp glyph.
11662         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
11663         connection between `t' and `r'.
11664         Unify bulb with the rest of `r' to avoid grazing outlines which
11665         confuses the overlap removal algorithm of fontforge.
11667         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
11668         inflections.
11669         (draw_cross): Fix shape to have uniform thickness in corners.
11671         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
11672         to avoid an uneven number of self-intersections; this confuses
11673         fontforge.
11674         Fix a slight bug in the shape at left bottom (which is visible only
11675         at high magnifications).
11676         `Center' the stem horizontally to avoid overlapping.
11678 2005-01-24  Werner Lemberg  <wl@gnu.org>
11680         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
11681         to `asis'.
11682         (fet_begingroup): Save group name in string `feta_group'.
11683         (fet_endgroup): Updated.
11684         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
11686         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
11688         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
11689         in metapost.
11691 2005-01-24  Graham Percival  <gperlist@shaw.ca>
11693         * Documentation/user/notation.itely: really minor editing.
11695 2005-01-22  Graham Percival  <gperlist@shaw.ca>
11697         * Documentation/user/examples.itely: minor editing.
11699         * Documentation/user/changing-defaults.itely: minor editing.
11701         * Documentation/user/notation.itely: clarified info on polyphony
11702         and \addlyrics.
11704 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11706         * scm/output-gnome.scm: 
11707         * scm/output-svg.scm:
11708         * scm/lily-library.scm (font-name-style): Update font name
11709         kludging for fontconfig use.
11711 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
11713         * scm/define-markup-commands.scm: Document right-align and
11714         larger markup commands. Remove "TODO" from the topmost comment
11715         "each markup function should have a doc string." More consistent
11716         use of new-lines.
11718 2005-01-22  Graham Percival  <gperlist@shaw.ca>
11720         * Documentation/user/changing-defaults: removed info about
11721         copyright symbol, since it's likely to change soon.
11722         Added info about betweensystemspace.
11724         * Documentation/user/notation.itely: minor fixes.
11726         * Documentation/user/lilypond.tely,
11727         Documentation/user/music-glossary.tely: changed copyright
11728         date to 2005 instead of 2004.
11730         * input/test/volta-chord-names.ly: added old example back.
11732 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11734         * mf/feta-beugel.mf: use design size 20 (not 15).
11736         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
11737         change name to aybabtu completely
11739 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11741         * buildscripts/gen-emmentaler-scripts.py (outdir): add
11742         design_size to fontname
11744 2005-01-19  Werner Lemberg  <wl@gnu.org>
11746         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
11747         mf/feta-schrift.mf: s/p/pat/ if a path variable.
11749         * mf/feta-autometric.mf (set_char_box): Add code which emits
11750         specials for mf2pt1 if run with metapost.
11751         (to_bp): New macro for mf2pt1.
11753 2005-01-18  Graham Percival  <gperlist@shaw.ca>
11755         * Documentation/user/changing-defaults: added info on
11756         creating a copyright symbol.
11758 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11760         * VERSION: release 2.5.9
11761         
11762 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
11764         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
11766         * Documentation/user/notation.itely: Document
11767         score-override-auto-beam-setting Fix documentation for
11768         revert-auto-beam-setting.
11770 2005-01-18  Werner Lemberg  <wl@gnu.org>
11772         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
11773         (procset): New function to define a procset resource.
11774         (ps-embed-pfa): New function to define a font resource.
11775         (setup): New function to define a `Setup' environment.
11776         (preamble): Use new functions.
11778         * ps/lilypond.defs (init-lilypond-parameters): New function to
11779         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
11781 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11783         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
11785 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
11787         * scm/define-markup-commands.scm: Change number->markletter-string
11788         to take two arguments (vector number). Add number->mark-alphabet-vector
11789         and markalphabet markup command.
11791         * scm/translation-functions.scm: Add format-mark-box-alphabet,
11792         format-mark-alphabet, format-mark-box-barnumbers and
11793         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
11795 2005-01-17  Graham Percival  <gperlist@shaw.ca>
11797         * Documentation/user/examples.itely: add SATB automatic piano
11798         reduction template.
11800         * Documentation/user/notation.itely: added info about changing
11801         partcombine texts.  Also adds examples of alternate lyrics.
11803         * Documentation/user/changing-defaults.itely: added warning
11804         about \RemoveEmptyStaffContext overriding previous changes.
11806 2005-01-17  Werner Lemberg  <wl@gnu.org>
11808         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
11809         feta-alphabet*.
11811 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11813         * python/lilylib.py (make_ps_images): don't do final showpage for
11814         multi-page documents.
11815         
11816         * VERSION (MY_PATCH_LEVEL): release 2.5.8
11818 2005-01-16  Graham Percival  <gperlist@shaw.ca>
11820         * Documentation/user/lilypond.tely: changed order of appendices;
11821         unified index should be last.
11823         * Documentation/user/notation.itely: add example of key signatures
11824         and info about Staff.printKeyCancellation.
11826 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11828         * lily/include/repeated-music.hh (class Repeated_music): change
11829         into "namespace" class.
11831         * lily/event.cc: remove Key_change_event.
11833         * lily/include/transposed-music.hh (class Transposed_music): remove.
11835         * lily/transposed-music.cc: remove
11837         * lily/include/relative-music.hh: remove.
11839         * lily/include/music-sequence.hh (struct Music_sequence): change
11840         into "namespace" class.
11842         * lily/untransposable-music.cc (Module): remove
11844         * lily/include/un-relativable-music.hh (Module): remove
11846         * lily/include/untransposable-music.hh (Module): remove
11848         * lily/include/music-list.hh (Module): remove file
11850         * lily/un-relativable-music.cc: remove file.
11852 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11854         * lily/parser.yy: Compile fix.
11856 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11858         * lily/include/music.hh (class Music): unvirtualize transpose().
11860         * lily/sequential-music.cc: remove file.
11862         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
11864         * lily/slur-scoring.cc (get_best_curve): only switch on
11865         DEBUG_SLUR_SCORING for non NDEBUG builds.
11867         * lily/include/music.hh (class Music): replace Music::start_mom()
11868         by start-callback property
11870         * lily/include/grace-music.hh: remove file. 
11872         * lily/stem.cc (height): robustness fix.
11874         * lily/time-scaled-music.cc: remove file.
11876         * lily/include/music.hh (class Music): include SCM init argument.
11877         (class Music): replace Music::get_length() virtual by
11878         length-callback property everywhere.
11880         * scripts/convert-ly.py (conv): add  # to \property scalar value.
11882         * mf/GNUmakefile: don't install *list.ly
11884 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11886         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
11888 2005-01-12  Werner Lemberg  <wl@gnu.org>
11890         This patch addresses the following problems in the feta sources
11891         files which contribute to the fetaXX fonts.
11893         . Many fixes for rasterization at low resolutions (consistent use of
11894           `vround' and `hround', integer shift values for paths, applying
11895           `eps' for mirrored paths, use of `define_whole_pixels' and
11896           friends, etc.) -- while this probably looks like a waste of time
11897           it has revealed deficiencies in some glyph shapes.  See comment at
11898           the end of feta-params.mf how vertical symmetry is achieved.
11900         . The `---' operator has been replaced everywhere with `--'; this
11901           both improves and considerably reduces the font size after
11902           conversion with mf2pt1.
11904         These change aren't explicitly mentioned below since virtually all
11905         glyphs are affected.
11907         Other notable differences:
11909         . Glyphs from feta-accordion.mf now have charboxes around the
11910           outline.
11912         . Fixed incorrect charbox for `accDot'.
11914         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
11916         . Fixed position of the bow in the `upprall' glyph and its siblings.
11918         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
11919           dependent on the staff line thickness to avoid touching the middle
11920           staff line at smaller sizes.
11922         . Largely extended output for feta-testXX: Where useful, glyphs
11923         are shown both between and on staff lines.
11926         * mf/feta-params.mf (staff_space_rounded,
11927         stafflinethickness_rounded, linethickness_rounded,
11928         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
11929         Update all code which uses them where appropriate.
11930         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
11931         New variables used to control rasterization at low resolutions.  Set
11932         to zero if feta code is processed with metapost.
11934         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
11935         (draw_rounded_block, draw_square_block): Updated to use `--' only.
11936         (flare_path): Updated.
11937         Make it work with `filldraw' (but only circular pens).
11938         (hfloor, vfloor, hceiling, vceiling): New macros.
11940         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
11941         Use `draw' again in mf mode to have good pixel dropout control.
11942         Fix intersection points of horizontal lines with circle.
11943         ("accDot"): Fix parameters for set_char_box.
11944         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
11945         control.
11947         * mf/feta-banier.mf: Updated.
11949         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
11950         testing.
11951         (undraw_inside_ellipse): Remove `center' argument.  Update all
11952         callers.
11953         (draw_brevis): New macro, called by "Brevis notehead".
11954         (draw_whole_triangle_head): New macro, called by "Whole
11955         trianglehead".
11956         (draw_small_triangle_head): Use `filldraw'.
11958         * mf/feta-eindelijk.mf: Remove useless global group.
11959         Updated.
11961         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
11962         `filldraw'.
11964         * mf/feta-pendaal.mf: Updated.
11966         * mf/feta-puntje.mf: Updated.
11968         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
11969         less points.
11970         ("Flageolet"): Use `draw' again in mf mode to have good pixel
11971         dropout control.
11972         ("Varied Coda"): Use `draw_block'.
11973         (draw_comma): Fix typo.
11974         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
11975         pixel dropout control.
11977         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
11978         position of bow.
11980         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
11981         sizes.
11983         * mf/feta-toevallig.mf (remember_pic): New variable, used for
11984         testing.
11985         (draw_meta_sharp): Much simplified.
11986         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
11988         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
11990 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11992         * Documentation/user/notation.itely (Ancient rests): Fix typo
11993         (thanks Anthony)
11995 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11997         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
11999         * lily/main.cc (setup_paths): Add cff.
12001         * mf/GNUmakefile (foe): Include actual target %.cff.
12002         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
12004 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12006         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
12007         suffix for main_input_b_.
12009         * scm/music-functions.scm (toplevel-music-functions):
12010         precompute music lengths for music expressions.  
12012 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12014         * lily/include/input.hh (class Input): new `end_' slot for end of
12015         input. Renamed defined_str0_ to start_.
12017         * lily/input.cc (Input): Add Input::Input (Input const &) and
12018         remove Input::Input (Source_file*, char const *). Use the new
12019         slots.
12020         (set_location): method used by bison to propagate input
12021         locations (YYLLOC_DEFAULT).
12022         (end_line_number, end_column_number, step_forward): new methods
12023         
12024         * lily/input-scheme.cc (ly:input-both-locations): new function,
12025         similar to ly:input-location, but also return the end line and
12026         column.
12028         * lily/include/includable-lexer.hh: 
12029         * lily/includable-lexer.cc: 
12030         * lily/include/lily-lexer.hh (class Lily_lexer): 
12031         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
12032         Includable_lexer to Lily_lexer, in order to update lexloc (the
12033         yylloc), a new slot of Lily_lexer.
12034         (here_input, LexerError): simplify by using the lexloc slot (aka
12035         yylloc)
12037         * lily/lexer.ll: #define yylloc to use input locations (it may
12038         be useless here?). Fixed the #embedded_scm rule (step the location
12039         forward in order to skip the sharp sign before parsing the scheme
12040         expression)
12042         * lily/include/lily-parser.hh (class Lily_parser): 
12043         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
12044         here_input()
12045         (parser_error): overload for more precise locations of errors.
12047         * lily/parser.yy (YYLTYPE): set location type to Input
12048         (YYLLOC_DEFAULT): use Input::set_location()
12049         (yylex): add the YYLTYPE* location parameter.
12050         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
12051         Give an Input parameter to THIS->parser-error() for more accurate
12052         messages.
12054 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12056         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
12058         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
12059         on BEAMQUANTING for non-NDEBUG builds.
12061         * lily/stem.cc (head_count): performance: avoid String::String()
12062         inside oft called function.
12064 2005-01-09  Graham Percival  <gperlist@shaw.ca>
12066         * Documentation/user/examles.itely: attempted fix for broken
12067         string quartet template.
12069         * Documentation/user/notation.itely: remove unnecessary broken
12070         link.
12072 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12074         * VERSION (PACKAGE_NAME): release 2.5.7
12076 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12078         * config.make.in (METAFONT): Append -progname=mf, fixes use with
12079         mf-nowin for teTeX-3.0.  Backportme.
12081         * scm/output-svg.scm (utf8-string): New function.
12083         * scm/output-gnome.scm (utf8-string): New function.
12084         (otf-name-mangling): Remove.
12086         * lily/pango-font.cc (Pango_font): Use font string iso font
12087         filename for utf8-text.
12089         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
12090         name.
12092 2005-01-08  Graham Percival  <gperlist@shaw.ca>
12094         * Documentation/user/notation.itely: add info about
12095         Staff.extraNatural = ##f in Pitches section.  Also
12096         fixed some minor issues in the Vocal music section.
12098 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12100         * scm/output-ps.scm (white-text): comment out Helvetica font,
12101         which is broken for my GS install.
12103         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
12104         which provides a tighter bbox.
12106         * scm/define-grobs.scm (all-grob-descriptions): remove all
12107         extra-offsets from definitions.
12109 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
12111         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
12112         add tuning for 4-string bass and some common 4/5-string banjo
12113         tunings.  New function (four-string-banjo) turns a 5-string tuning
12114         into a 4-string tuning.  New function
12115         (fret-number-tablature-format-banjo) computes correct fret numbers
12116         on 5-string banjos.
12118         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
12119         Add beam correction to TabVoice.
12121         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
12122         using bold font; makes tabs more readable.
12124 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12126         * lily/font-select.cc (get_font_by_design_size): don't make
12127         Modified_font_metric; this causes trouble, since we don't know the
12128         font magnification from inside Pango_font::text_stencil()
12130         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
12132         * Documentation/user/notation.itely (The Lyrics context): comment out
12133         broken {Small ensembles} link.
12135         * scm/framework-svg.scm (output-framework): change calling convention.
12137         * lily/object-key-dumper-scheme.cc: new file.
12139         * lily/object-key-undumper-scheme.cc: new file.
12141         * lily/tweak-registration-scheme.cc: new file.
12143         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
12145         * Documentation/user/examples.itely (String quartet): uncomment
12146         broken example.
12148         * lily/font-config.cc: new file.
12150 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12152         * scm/output-svg.scm: 
12153         * scm/output-gnome.scm: s/bigcheese/emmentaler.
12155         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
12157 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12159         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
12160         Add headers.
12162         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
12164 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12166         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
12168         * lily/include/main.hh: lose _b hungarian suffixes for global
12169         variables.
12171         * lily/include/lily-guile-macros.hh: new file.
12173         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
12175         * lily/general-scheme.cc: new file. 
12177         * lily/font-select.cc (get_font_by_design_size): retrieve
12178         PangoFont for (designsize . "pango-descr") entries.
12180         * lily/lily-parser-scheme.cc: new file.
12182         * lily/output-def-scheme.cc: new file.
12184         * lily/paper-book-scheme.cc: new file.
12186         * lily/duration-scheme.cc (LY_DEFINE): new file.
12188         * lily/pitch-scheme.cc:  new file.
12190         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
12192 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12194         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
12196 2005-01-06  Graham Percival  <gperlist@shaw.ca>
12198         * Documentation/user/notation.itely: minor editing.
12200         * Documentation/user/changing-defaults: minor editing.
12202         * Documentation/user/examples.itely: add template for
12203         string quartet part extraction; demonstrates tag.
12205 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
12207         * Documentation/user/notation.itely: documents
12208         format-mark-box-letters and format-mark-box-numbers
12210         * scm/define-context-properties.scm: change comment.
12212 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12214         * scm/framework-ps.scm (output-classic-framework): new function:
12215         dump systems as separate .eps files (without fonts) and write a
12216         single collecting .tex file.
12218 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12220         * Documentation/user/notation.itely (Setting simple songs):
12221         Correct several errors in the equivalent formulation of
12222         \addlyrics. 
12223         (The Lyrics context): Corrected link to the SATB example.
12225 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12227         * scm/lily.scm (completize-formats): new function
12228         (postprocess-output): new function
12230         * lily/paper-book.cc (classic_output): change calling
12231         convention. Give basename as first argument. 
12232         remove Paper_book::post_processing().
12234         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
12236 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12238         * lily/paper-outputter.cc (LY_DEFINE): new function
12239         ly:outputter-close.
12241         * lily/main.cc: change --format,-f to --backend,-b
12243         * lily/include/main.hh: rename format to backend.
12245         * scm/translation-functions.scm (format-mark-box-numbers): add.
12246         patch by Erlend Aasland
12248 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12250         * lily/pango-font.cc (text_stencil): dump string as
12251         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
12253 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12255         * configure.in (gui_b): Remove handy developer-only
12256         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
12257         CVS source installations (but break other non-default but correct
12258         PKG_CONFIG_PATH setups), as this is no longer developer-only.
12260         * SConstruct: 
12261         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
12262         compatibility (backportme).
12264         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
12266 2005-01-03  Werner Lemberg  <wl@gnu.org>
12268         Prepare glyph shapes for mf2pt1 conversion.
12270         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
12271         (accDiscant, accFreebase, accStdbase): Replace `draw' with
12272         `penstroke'.
12273         (accDot): Use `drawdot'.
12274         (accBayanbase): Replace `draw' with `draw_gridline'.
12275         (print_penpos): Moved to feta-macros.mf.
12276         (accOldEE): Replace `filldraw' with `penstroke'.
12277         Replace `draw' with `penstroke' and `drawdot'.
12279         * mf/feta-banier.mf: Code clean-up.
12280         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
12281         `fill'.
12283         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
12285         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
12286         paremeter to control drawing of labels.  Update all callers.
12288         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
12289         (new_bulb): Return a bulb as a single path.  To do that, it now
12290         takes some more parameters.  Updated all callers.
12291         (draw_gclef): Major clean-up.  `draw' has been replaced with
12292         `penstroke', unnecessary outlines have been removed.
12293         Remove (unused) gnome-canvas code.
12295         * mf/feta-macros.mf (print_penpos): New macro (from
12296         feta-accordion.mf).
12297         Other minor fixes.
12299         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
12300         ("Pedal dot"): Use `drawdot'.
12301         (draw_pedal_P): Add parameter to control drawing of labels.  Update
12302         all callers.
12303         Fix shape at top.
12304         (draw_pedal_e): Add parameter to control drawing of labels.  Update
12305         all callers.
12306         (draw_pedal_d): Add parameter to control drawing of labels.  Update
12307         all callers.
12308         Revert drawing direction.
12310         * mf/feta-schrift.mf (draw_fermata): Use single path.
12311         (draw_short_fermata): Replace `filldraw' with `fill'.
12312         (draw_long_fermata, draw_very_long_fermata): Replace calls to
12313         `draw_rounded_block' with a single path.
12314         ("Thumb"): Draw full circle instead of mirroring segments.
12315         (draw_accent): New macro.
12316         ("> accent", "espr"): Use it.
12317         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
12318         ("open (unstopped)"): Draw full circle instead of mirroring
12319         segments.
12320         (draw_vee): Removed.
12321         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
12322         ("Downbow"): Replace calls to `draw_rounded_block' with a single
12323         path.
12324         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
12325         partial pieces drawn with `fill' -- these do still overlap with the
12326         stem of the `t' but just once, not multiple times so that fontforge
12327         can handle it gracefully.
12328         Change other parts of the glyph so that fontforge's overlapping
12329         algorithm reliably works.
12330         (draw_heel): Replace `draw' with `fill'.
12331         (draw_toe): Use `draw_accent' instead of `draw_vee'.
12332         ("Flageolet"): Replace `draw' with `penstroke'.
12333         ("Segno"): Replace `filldraw' with `penstroke'.
12334         Replace `draw' with `drawdot'.
12335         ("Coda"): Replace `fill' with `penstroke', using a single path.
12336         ("Varied Coda"): Use less overlapping paths.
12337         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
12338         single path.
12340         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
12341         group to better control the `labels' command.
12342         Rename argument to `offset' and use it actually.  Update all
12343         callers.
12344         Replace `filldraw' with `fill'.
12345         ("mordent", "prallmordent", "upmordent", "downmordent",
12346         "lineprall"): Replace `draw' with `draw_gridline'.
12347         ("upprall", "downprall"): Replace `draw' with `fill'.
12349         * mf/feta-timesig.mf: Formatting.
12351         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
12352         to...
12353         ("Flat"): Here.
12354         (draw_paren): Move code to draw labels to...
12355         ("Right Parenthesis"): Here.
12357 2005-01-02  Graham Percival <gperlist@shaw.ca>
12359         * Documentation/user/notation.itely: add example of \setTextDecresc
12360         and \setTextDim.
12362 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
12364         * scm/define-markup-commands.scm :  fix glyph-strings of
12365         accidentals and \note-by-number
12367 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12369         * VERSION: 2.5.6 released.
12370         
12371         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
12373         * input/regression/new-markup-scheme.ly: oops. font-family=music
12374         -> font-encoding fetaMusic.  
12376         * lily/main.cc: put default to PS.
12378         * lily/tfm.cc: idem.
12380         * lily/afm.cc: idem.
12382         * lily/include/modified-font-metric.hh (struct
12383         Modified_font_metric): remove coding_scheme() method.
12385         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
12387         * scripts/convert-ly.py (conv): crash on encountering \encoding.
12389         * input/les-nereides.ly: convert to utf8
12391         * lily/modified-font-metric.cc (text_dimension): idem.
12393         * lily/parser.yy (TODO): idem.
12395         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
12397         * lily/lexer.ll: remove encoding
12399         * scm/framework-ps.scm (output-variables): separately scale the
12400         page to mm 
12402         * lily/pango-font.cc (Pango_font): fix scaling.
12404         * lily/font-metric.cc (design_size): design_size returns a
12405         dimension now as well.
12407 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12409         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
12410         brace generation. 
12412         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
12414 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12416         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
12417         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
12419 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12421         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
12422         in first run as well.
12424         * scm/paper.scm (layout-set-staff-size): use text-font-size in
12425         dimension less points (ie. 12 = 12 point)
12427         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
12429         * lily/all-font-metrics.cc (find_pango_font): set description_
12431         * lily/pango-font.cc (text_stencil): export size as well.
12432         (text_stencil): fix scaling and extents box.
12434 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12436         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
12438         * Documentation/user/invoking.itely (Invoking lilypond): document
12439         texstr
12441         * scripts/convert-ly.py (conv): add ancient rules.
12443         * scm/clef.scm (c0-pitch-alist): replace - with .
12445         * scripts/lilypond-book.py (process_snippets): add texstr support.
12447         * scm/framework-texstr.scm (header): change extension to .textmetrics
12449         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
12450         -f tex.
12452         * lily/text-metrics.cc: new file.
12453         (try_load_text_metrics): new function
12455         * lily/include/text-metrics.hh: new file.
12457 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12459         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
12460         ly_scheme_function to ly_lily_module_constant.
12462         * lily/modified-font-metric.cc (text_dimension): try
12463         lookup_tex_text_dimension() first.
12465         * lily/tfm.cc: new function ly:load-text-dimensions
12467 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12469         * scm/output-texstr.scm (text): use \lilygetmetrics
12471         * scm/framework-texstr.scm (header): dump in new format.
12473         * tex/lilypond-tex-metrics: new file.
12474         
12475 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12477         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
12478         mapping.
12479         (index_to_charcode): New method.
12481         * scm/output-ps.scm (glyph-string): 
12482         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
12484 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12486         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
12487         implement fully, need FONT to get to charcode.
12489         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
12491         * scm: Cleanups.
12493         * Documentation/user/changing-defaults.itely: Fix internalsrefs
12494         {Tunable context properties},
12495         {All layout objects},
12496         {Music definitions}.
12498 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12500         * VERSION: release 2.5.5
12501         
12502         * lily/main.cc: use TeX as default output format.
12504         * flower/file-path.cc (find): try to open directly as well, so we
12505         find absolute path files. 
12507         * lily/pango-select.cc: new file.
12509         * scm/framework-ps.scm: remove all encoding code. 
12510         load pfb/pfa for PangoFont too.
12511         
12512         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
12514 2004-12-22  Werner Lemberg  <wl@gnu.org>
12516         Prepare glyph shapes for mf2pt1 conversion.
12518         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
12520         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
12521         (define_triangle_shape): Use it to replace `draw' with `fill' and
12522         `unfill'.  Update all callers.
12523         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
12524         (draw_cross): Ditto.
12525         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
12526         Use penrazor for better conversion with mf2pt1.
12527         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
12528         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
12529         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
12530         draw_la_head, draw_ti_head): Replace `filldraw' with
12531         `fill'.  Update all callers.
12533 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12535         * lily/paper-book.cc (output): revert: only allow a single output
12536         format.
12538         * lily/include/pango-font.hh: new file.
12540         * lily/pango-font.cc: new file.
12542         * lily/font-metric.cc (text_stencil): new routine
12544         * lily/all-font-metrics.cc (find_pango_font): new routine.
12546         * lily/include/font-metric.hh (struct Font_metric): add
12547         text_stencil()
12549         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
12551 2004-12-22  Werner Lemberg  <wl@gnu.org>
12553         Prepare glyph shapes for mf2pt1 conversion.
12555         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
12557         * mf/feta-toevallig.mf: Formatting.
12558         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
12559         ("Natural"): Fix paths to allow better postprocessing.
12560         (draw_meta_flat): Use `z3l' as additional point in path to get
12561         better conversion with mf2pt1.
12562         Other minor cleanups.
12563         ("3/4 Flat"): Add auxiliary points and modify path to replace
12564         `draw' with `fill'.
12565         ("Double Sharp"): Mirror path segments instead of picture elements
12566         to get a single outline.
12567         Modify path to replace `filldraw' with `fill'.
12569 2004-12-22  Graham Percival  <gperlist@shaw.ca>
12571         * input/test/unfold-all-repeats.ly: added file back.
12573         * Documentation/user/notation.itely,
12574         Documentation/user/programming-interface.itely
12575         Documentation/user/changing-defaults.itely: fixed misc broken
12576         links to input/test/ files.
12578 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
12580         * tex/texinfo.tex: Update.  We should not be distributing this,
12581         but since we do, use latest version.
12583         * Documentation/user/macros.itexi: Comment-out \fetaflat,
12584         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
12585         macros for feta glyphs.
12587 2004-12-22  Graham Percival  <gperlist@shaw.ca>
12589         * Documentation/user/changing-defaults.itely: fix index for set.
12591         * Documentation/user/converters.itely: added convert-ly bugs list
12592         from CVS.
12594 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12596         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
12597         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
12598         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
12599         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
12601         * mf/GNUmakefile (pfa_warning): Use less broken check.
12603         * python/lilylib.py (setup_environment): Remove cruft from
12604         GS_FONTPATH.
12606         * configure.in: Bump mftrace requirement to 1.1.1.
12608 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12610         * scm/output-svg.scm (beam): Use polygon.
12612         * scm/lily-library.scm: Bugfix.
12614         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
12616         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
12618 2004-12-19  Werner Lemberg  <wl@gnu.org>
12620         Prepare glyph shapes for mf2pt1 conversion.
12622         * mf/feta-eindelijk: Some formatting.
12623         (multi_rest_x, multi_beam_height): Removed.  Unused.
12624         ("Quarter rest"): Use `intersectiontimes' to create a single
12625         outline.
12626         (rest_crook): Removed.  Unused.
12627         (draw_rest_bulb): Return path (without filling).  Update callers.
12628         Simplified.
12629         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
12630         "128th rest"): Simplify `pat'.
12631         Create single outline.
12633 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12635         * mf/GNUmakefile (ALL_GEN_FILES):
12636         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
12638         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
12639         function.
12641 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12643         * scm/output-texstr.scm (placebox): add routine
12645         * VERSION (PACKAGE_NAME): release 2.5.4
12647         * scm/framework-texstr.scm (output-framework): new file.  
12649         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
12650         processing.
12652         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
12654         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
12655         rule.
12657         * configure.in (gui_b): bump mftrace requirement to 1.1.0
12659         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
12661         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
12663 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12665         * scm/framework-svg.scm (dump-page): Implement landscape.
12667 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12669         * lily/main.cc (setup_paths): Add svg to search path.
12671         * scm/output-svg.scm:
12672         * scm/framework-svg.scm: Add pageSet.  Update.
12673         (dump-fonts): New function.
12674         (output-framework): Use it.
12676         * mf/GNUmakefile: 
12677         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
12679 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12681         * tex/lilyponddefs.tex: comment out new ifpdf code.
12683 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12685         * GNUmakefile.in: 
12686         * SConstruct (symlink): Replace afm by otf.
12688         * scm/framework-gnome.scm (gnome-main): Remove invocation of
12689         ly:pango-add-afm-decoder.
12691         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
12693 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12695         * scm/output-ps.scm (new-text): don't access t glyph for getting
12696         space dimension.
12698         * ly/init.ly: warn about \version
12700         * lily/lexer.ll: set version-seen?
12702 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12704         * scm/output-svg.scm (string->entities): Update.
12706 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12708         * lily/main.cc (setup_paths): replace afm by otf for path. 
12710         * lily/pangofc-afm-decoder.cc: remove.
12712         * lily/include/pangofc-afm-decoder.hh: remove.
12714         * scm/framework-scm.scm (output-framework): new file.
12716         * mf/GNUmakefile: remove SAUTER_FONTS.
12717         remove SVG/sodipodi hacks.
12719         * scm/lily-library.scm (stderr): move stderr.
12721         * mf/GNUmakefile: remove AFM support.
12723         * buildscripts/mf-to-table.py (base): remove AFM support.
12725         * lily/open-type-font.cc (design_size): use design_size
12727 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
12729         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
12731 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12733         * mf/GNUmakefile: Generate combined aybabtu info.
12734         * mf/aybabtu.pe.in (i): Load it.
12736         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
12737         are not symbols.
12739         * lily/include/open-type-font.hh (count): New method.
12741         * mf/aybabtu.pe.in: Typo.
12743         * Documentation/user/out/lilypond-internals.nexi (Scheme
12744         functions): Typo.
12746         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
12748 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12750         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
12751         subfonts.
12753         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
12755         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
12756         (tex-font-command-raw): new function.
12758         * lily/include/virtual-font-metric.hh (Module): remove file
12760         * lily/virtual-font-metric.cc (Module): remove file.
12761         
12763         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
12764         (get_indexed_char): read bbox from lily table if present.
12766 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12768         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
12769         aybabtu.subfonts
12771         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
12772         global glyphname. Enables more than 64 glyphs in the OTF.
12774 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12776         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
12777         braces.
12779         * lily/open-type-font.cc (design_size): Use 12 as default for
12780         design size.
12782         * mf/aybabtu.pe.in: New file.  Merge all our braces.
12784         * mf/GNUmakefile: Generate aybabtu.
12786         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
12788 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12790         * scm/lily-library.scm (char->unicode-index): Remove.
12792         * scm/output-gnome.scm (text): Bugfix for plain string input.
12793         Updates.
12795         * scm/output-svg.scm (svg-font): Add weight to font selection.
12797 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12799         * Documentation/topdocs/INSTALL.texi (Top): Point to
12800         buildscripts/out/clean-fonts instead of
12801         buildscripts/clean-fonts.sh. 
12803 2004-12-13  Graham Percival  <gperlist@shaw.ca>
12805         * input/regression/figured-bass.ly: attempt to clarify text.
12807         * Documentation/user/notation.tely: add cindex for tag, attempt to
12808         add figured bass example.
12810         * Documentation/user/changing-defaults: basic editing.
12812 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12814         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
12816         * lily/open-type-font.cc (LY_DEFINE): new function
12817         ly:font-sub-fonts
12819         * lily/include/font-metric.hh (struct Font_metric): new method
12820         sub_fonts()
12822         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
12823         . with - in add.stem.
12824         
12825 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12827         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
12828         and fetaDynamic.
12830         * lily/rest.cc (glyph_name): Change - to . .
12832         * scm/output-gnome.scm (text): Hello world, again.
12834         * scm/output-svg.scm (named-glyph): New function.  Hello world!
12836         * lily/modified-font-metric.cc (index_to_charcode): New method.
12838         * lily/include/font-metric.hh (index_to_charcode): New function.
12840         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
12841         new function.
12842         (ly:font-glyph-to-index): Remove.
12844 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12846         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
12848         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
12850         * lily/open-type-font.cc (load_scheme_table): new function
12852         * lily/dots.cc (print): replace - 
12854         * lily/open-type-font.cc (attachment_point): new function.
12855         (load_table): read LILC table
12857         * buildscripts/gen-bigcheese-scripts.py (Module): new
12858         file. Generate FF scripts.
12860         * mf/feta-din10.mf: idem.
12862         * mf/feta-nummer10.mf: remove mf files.
12864         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
12866 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12868         * lily/lily-guile.cc: Use scm_from_locale_stringn.
12870         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
12871         compatibility.
12873 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12875         * lily/open-type-font.cc (get_indexed_char): scale metrics by
12876         design-size and units_per_EM.
12878         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
12880 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12882         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
12883         does not crash fontforge.
12885         * scm/lily-library.scm (char->unicode-index): Hack to map onto
12886         PUA.
12888 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12890         * scm/framework-ps.scm (ps-embed-cff): new function.
12892         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
12894 2004-12-12  Werner Lemberg  <wl@gnu.org>
12896         * mf/bigcheese.pe.in: Add PUA mapping.
12897         Don't create Type 42 but bare CFF font.
12899 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12901         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
12902         within canvas boundaries.
12904         * mf/merge.pe.in: Set font names, version, license GPL.
12906         * make/substitute.make: Add FONTFORGE.
12908         * config.make.in (FONTFORGE): Add.
12910         * configure.in (gui_b): Use PATH_PROG for fontforge.
12912 2004-12-11  Graham Percival  <gperlist@shaw.ca>
12914         * scm/define-markup-commands.scm: add baseline-skip to info
12915         about \column.
12917 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12919         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
12921         * scm/output-gnome.scm (named-glyph): Use it.
12923         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
12925         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
12926         (upper_string, lower_string, reverse_string): Remove.
12928         * configure.in (fontforge): Reinstate version check.
12930         * ly/engraver-init.ly: Fix clef glyph names.
12932         * lily/time-signature.cc (special_time_signature): Fix fraction
12933         glyph names.
12935 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12937         * mf/merge.pe: new file.
12939         * lily/freetype.cc: new file.
12941         * lily/include/open-type-font.hh (class Open_type_font): new file.
12943         * lily/include/freetype.hh: new file.
12945         * lily/open-type-font.cc: new file.
12947         * lily/all-font-metrics.cc (find_otf): new function.
12949 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12951         * lily/time-signature.cc (special_time_signature): Fix.
12953         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
12954         GTK2 before checking for pango.  Fixes -fgnome.
12956         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
12957         Scheme name.
12959         * scm/define-markup-commands.scm:
12960         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
12962         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
12964         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
12965         date versions.  Fixes configure.
12966         (STEPMAKE_CHECK_VERSION): Support optional actual program version
12967         argument.
12969 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12971         * buildscripts/mf-to-table.py (write_ps_encoding): write real
12972         names in .enc
12974         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
12976 2004-12-09  Graham Percival  <gperlist@shaw.ca>
12978         * Documentation/user/changing-defaults.itely: add info about
12979         make-dynamic-script
12981         * Documentation/user/notation.itely: add link in dynamics to
12982         section about make-dynamic-script.
12984 2004-12-09  Christian hitz  <chhitz@gmx.net>
12986         * lily/lily-guile.cc: change MACOS_X to __APPLE__
12988 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12990         * buildscripts/mf-to-table.py (parse_logfile): use . for
12991         concatting name and group.
12992         (parse_logfile): use M for Minus (negative.)
12994         * lily/include/type-swallow-translator.hh
12995         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
12997         * lily/*.cc: cosmetics around = sign.
12999         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
13000         lyric spacing on the penultimate column.
13002 2004-12-05  Christian Hitz  <chhitz@gmx.net>
13004         * configure.in:
13005         * lily/accidental-placement.cc:
13006         * lily/bar-line.cc:
13007         * lily/beam-concave.cc:
13008         * lily/beam-quanting.cc:
13009         * lily/beam.cc:
13010         * lily/bezier-bow.cc:
13011         * lily/bezier.cc:
13012         * lily/break-align-interface.cc:
13013         * lily/custos.cc:
13014         * lily/dimension-cache.cc:
13015         * lily/dot-column.cc:
13016         * lily/font-metric.cc:
13017         * lily/font-select.cc:
13018         * lily/gourlay-breaking.cc:
13019         * lily/grob-property.cc:
13020         * lily/grob.cc:
13021         * lily/lily-guile.cc:
13022         * lily/line-spanner.cc:
13023         * lily/lookup.cc:
13024         * lily/lyric-extender.cc:
13025         * lily/lyric-hyphen.cc:
13026         * lily/mensural-ligature.cc:
13027         * lily/midi-def.cc:
13028         * lily/misc.cc:
13029         * lily/note-collision.cc:
13030         * lily/note-column.cc:
13031         * lily/note-head.cc:
13032         * lily/paper-outputter.cc:
13033         * lily/percent-repeat-item.cc:
13034         * lily/rest-collision.cc:
13035         * lily/side-position-interface.cc:
13036         * lily/simple-spacer.cc:
13037         * lily/slur-configuration.cc:
13038         * lily/slur-scoring.cc:
13039         * lily/slur.cc:
13040         * lily/spaceable-grob.cc:
13041         * lily/spacing-spanner.cc:
13042         * lily/spanner.cc:
13043         * lily/staff-symbol-referencer.cc:
13044         * lily/stem.cc:
13045         * lily/stencil.cc:
13046         * lily/system-start-delimiter.cc:
13047         * lily/system.cc:
13048         * lily/text-item.cc:
13049         * lily/tie.cc:
13050         * lily/tuplet-bracket.cc:
13051         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
13052         <cmath> beacause isinf/isnan is undefined in <cmath>
13054 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13056         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
13058 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13060         * VERSION: release 2.5.3
13061         
13062 2004-11-29  Arno Waschk <arno@arnowaschk.de>
13064         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
13066 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13068         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
13070         * lily/note-head.cc (internal_print): always try the "s" head if
13071         u/d not found.
13073         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
13075 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13077         * mf/parmesan-heads.mf (overdone_heads): typos.
13079 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13081         * lily/parser.yy (markup): in markups, { .. } without command
13082         before are also flattened, ie \line must be explicitely used.
13084         * Documentation/user/changing-defaults.itely:
13085         * Documentation/user/notation.itely: 
13086         * input/wilhelmus.ly: 
13087         * input/regression/instrument-name-markup.ly: 
13088         * input/regression/markup-score.ly: 
13089         * input/regression/new-markup-scheme.ly: 
13090         * input/regression/new-markup-syntax.ly: 
13091         * input/test/coriolan-margin.ly: use \line in markups where
13092         appropriate
13093         
13094 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13096         * scm/new-markup.scm (map-markup-command-list): helper function
13097         used in parser.yy to map markup commands on a markup list.
13099         * lily/parser.yy: get rid off < > in markups by treating { } as
13100         real lists.
13102         * lily/lexer.ll: remove < > from markup lexer mode.
13104         * scripts/convert-ly.py (conv): add rule for converting 
13105         \markup < > to \markup { }
13107         * ly/titling-init.ly: 
13108         * input/test/coriolan-margin.ly: 
13109         * input/regression/new-markup-syntax.ly: 
13110         * input/regression/new-markup-scheme.ly: 
13111         * input/regression/multi-measure-rest-text.ly: 
13112         * input/regression/markup-stack.ly: 
13113         * input/regression/markup-score.ly: 
13114         * input/regression/instrument-name-markup.ly: 
13115         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
13116         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
13117         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
13118         * input/wilhelmus.ly: 
13119         * Documentation/user/notation.itely: 
13120         * Documentation/user/music-glossary.tely: 
13121         * Documentation/user/changing-defaults.itely: change < > to { } in
13122         markups
13124 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13126         * lily/accidental-placement.cc (position_accidentals): shortcut if
13127         no accidentals to place.
13129 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13131         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
13132         typo s/ly:dimension ?/ly:dimension?/
13134         * input/regression/lily-in-scheme.ly: 
13135         * input/regression/music-function.ly: 
13136         * ly/spanners-init.ly (assertBeamSlope): 
13137         * scm/music-functions.scm (def-grace-function): add the paper
13138         argument to music function definitions.
13140 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13142         * lily/moment.cc (LY_DEFINE):
13143         ly:moment-main-{denominator,numberator}, new function.
13145         * lily/score-engraver.cc (typeset_all): assign to column on basis
13146         of axis-group-parent-X setting.
13148         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
13149         add_element() on basis of axis-group-parent-Y setting.
13151         * lily/grob.cc: add axis-group-parent-{XY} properties.
13153         * input/regression/spacing-stick-out.ly: new file.
13155         * lily/simple-spacer.cc (add_columns): use binary search for
13156         setting column rods. Changes O(n^2) to O(n log(n)) for
13157         constructing spacing problem from columns.
13158         (add_columns): read allow-outside-line to make sure no texts stick
13159         out.
13160         (solve): Simple_spacer::is_active() only determines
13161         satisfies_constraints_ for non-ragged typesetting.
13163         * lily/simultaneous-music.cc (to_relative_octave): only set
13164         old_relative_used if return pitch actually changed.
13166         * scm/define-context-properties.scm
13167         (all-user-translation-properties): change to match implementation.
13169         * python/lilylib.py: Replace re.match by re.search and adds "-c
13170         showpage" to the gs command line (Johannes Schindelin)
13172         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
13173         before processing. Prevents crash when inf is in the extent.
13175         * scm/define-markup-commands.scm (note-by-number): add "s" to
13176         "noteheads-" glyphname.
13178         * lily/parser.yy (Generic_prefix_music): supply parser argument to
13179         music function as well.
13180         
13181 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13183         * VERSION: release 2.5.2
13185         * Documentation/user/changing-defaults.itely (Creating titles):
13186         add breakbefore variable.
13188         * lily/paper-book.cc (set_system_penalty): new function. Set
13189         penalty_ based on breakBefore setting
13191         * lily/context-specced-music-iterator.cc (construct_children):
13192         interpret special context id $uniqueContextId 
13194         * lily/context.cc (create_unique_context): new method. Move
13195         creation of unique (\new) contexts into interpreting phase. This
13196         makes
13198           foo= \new Staff ..
13199           << \foo \foo >>
13201         produce 2 staves.
13202         
13204         * scm/define-music-properties.scm (all-music-properties): add
13205         quoted-voice-direction
13207         * ly/music-functions-init.ly: killCues function.
13209         * scm/music-functions.scm (cue-substitute): move creation of voice
13210         contexts further to the back. 
13212 2004-11-25  Werner Lemberg  <wl@gnu.org>
13214         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
13215         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
13217 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
13219         * buildscripts/guile-gnome.sh: Fixed typo.
13221 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13223         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
13225         * scripts/abc2ly.py (dump_slyrics): add ord(). 
13227         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
13228         to regular engraver. 
13230 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13232         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
13234 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13236         * scm/define-markup-commands.scm (fill-line): Typo.
13238         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
13239         and newer.
13241 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
13243         * ly/dynamic-scripts-init.ly: Fixed typo.
13245 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13247         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
13248         note-head, to have different attachment points for up and down.
13250         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
13252         * mf/feta-generic.mf (else): remove solfa.
13254         * mf/feta-bolletjes.mf (tishape): remove unicode test.
13256         * scm/define-context-properties.scm
13257         (all-user-translation-properties): add shapeNoteStyles property.
13259         * lily/shape-note-heads-engraver.cc (process_music): new file.
13261         * lily/event.cc (transpose): call Event::transpose() for
13262         transposing the tonic.
13264 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
13266         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
13267         Unicode/OpenType and AFM.
13269         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
13271 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13273         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
13275         * lily/context.cc (Context): unprotect key from ctor.
13277         * scm/stencil.scm (stack-lines): return empty-stencil if argument
13278         is '()
13279         (stack-stencils): idem.
13281         * Documentation/user/changing-defaults.itely (Creating titles):
13282         document new title layout options.
13284         * lily/parser.yy (lilypond_header_body): copy previous
13285         $globalheader if present.
13287         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
13288         ly:module-copy
13289         
13290         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
13292         * scm/titling.scm: remove old titling functions
13294         * lily/stencil.cc (translate): remove absolute dimension.
13296         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
13297         via markup.
13299         * scm/page-layout.scm (marked-up-headfoot): create header/footer
13300         field from user-supplied markup
13302         * scm/define-markup-commands.scm (on-the-fly): new markup
13303         command. Enter SCM markup procedure directly in Scheme.
13304         (fromproperty): new markup command. Read markup from props argument.
13306         * scm/titling.scm (marked-up-title): create title via
13307         user-specified markup. 
13309         * scm/define-markup-commands.scm (column): remove empty stencils
13310         from column.
13312         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
13313         not have side-effect of creating variable stub.
13315         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
13317 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
13319         * scm/encoding.scm (coding-alist): 
13320         * scm/font.scm (add-ec-fonts):
13321         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
13322         Extended-TeX-Font-Encoding---Latin.
13324         * lily/side-position-interface.cc (general_side_position): Add
13325         actual offset to error message (avoid constant error messages).
13327         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
13328         block.
13330         * lily/font-select.cc (select_encoded_font)
13331         (get_font_by_mag_step, get_font_by_design_size): 
13332         * lily/modified-font-metric.cc (Modified_font_metric): 
13333         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
13335         * scm/encoding.scm (coding-alist): Add fetaDynamic.
13336         (read-encoding-file): Bugfix: do not require space after bracket.
13338         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
13339         these do not exist.
13341 2004-11-20  Graham Percival  <gperlist@shaw.ca>
13343         * Documentation/user/notation.itely: added info about typesetting
13344         boxed bar numbers.
13346 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13348         * flower/interval.cc (T_to_string): gcc4 fixes.
13350         * scm/define-markup-commands.scm (fill-line): use
13351         stack-stencils. This fixes problems with putting already centered
13352         stencils in a line.
13354         * VERSION: release 2.5.1
13356         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
13358 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13360         * input/example-[1-3].ly: simplify.
13362         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
13364         * scm/output-ps.scm (new-text): new function. Use glyphshow to
13365         show glyphs.
13367         * scm/encoding.scm (decode-byte-string): new function.
13369         * scripts/convert-ly.py (conv): add warning about
13370         set-global-staff-size.
13372         * Doxyfile: add. 
13374         * scripts/convert-ly.py (conv): add raggedlastbottom rule
13375         (conv): warn for TextSpanner split.
13376         (conv): warn for textheight.
13378 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
13380         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
13381         building the documentation, info with images are installed.
13382         (final-install): Fix description.  Mention sourcing of login
13383         scripts (instead of running).
13385 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
13387         * Debian lmodern support.  Note that LilyPond will issue warnings
13388         
13389             no such encoding: "FontSpecific"
13391           The font selection mechanism wants to get the encoding from the
13392           font itself, but the idea of lmodern is that it is usable with
13393           different encodings, ie, Lily should get the encoding from the
13394           font tree, rather than the font itself.  This would require some
13395           more work.
13396         
13397         * configure.in: Test for and accept lmodern if EC fonts not found.
13399         * scm/framework-tex.scm (font-load-command): TeX font name
13400         mangling for latin1 encoded cork-lm fonts.
13401         (convert-to-ps): Load lm.map if available.
13403         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
13404         available.
13406         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
13408         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
13409         available.
13411         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
13412         path for absolute file name, that is silly.
13414         * lily/score-engraver.cc (initialize): 
13416         * Documentation/user/GNUmakefile (local-install-info): Invoke
13417         install-info --remove first.
13419         * #include cleanup (Andreas Scherer).
13421 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
13423         * input/test/script-abbreviations.ly: fix typos.
13425 2004-11-17  Werner Lemberg  <wl@gnu.org>
13427         * python/lilylib.py (options_help_str): Support pretty-printing of
13428         newlines in fourth element of option description.
13430         * scripts/lilypond-book.py (option_definitions): Use new lilylib
13431         feature.
13432         Sort options.
13434         * Documentation/user/lilypond-book.itely: Finish update.
13436 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
13438         * Documentation/user/macros.itexi: Add comment about \command.
13440         * Documentation/user/lilypond.tely:
13441         * Documentation/user/lilypond-book.itely: Fix names of lilypond
13442         and lilypond-book nodes, so that `info lilypond' visits the manual
13443         at top level, and `info lilypond-book' visits the lilypond-book
13444         section.
13446         * Documentation/user/GNUmakefile (local-install-info): Fix rules
13447         and packager messages.
13449         * lily/pangofc-afm-decoder.cc: Update test.
13451 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
13453         * scm/lily-library.scm (char->unicode-index): New function.
13455         * scm/output-gnome.scm: 
13456         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
13458         * Proper naming of file name throughout; s/filename/file[-_]name/.
13460         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
13462         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
13464 2004-11-16  Werner Lemberg  <wl@gnu.org>
13466         * scripts/lilypond-book.py: The Lord has commanded me to use only
13467         tabs for indentation.  Your humble servant obeys.
13469 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
13471         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
13472         including font, if LilyPond-feta font is only feta font in path.
13474         * scm/output-gnome.scm (text): Revert to file name of font if font
13475         has no name.  Fixes ec font selection.
13476         (char): Bugfix: do not utf8 twice.  Fixes clefs.
13478         * scm/framework-svg.scm:
13479         * scm/output-svg.scm: New file.  TODO: figure out how to
13480         do character by index in font.
13482         * scm/output-sodipodi.scm: Remove.
13484         * scm/output-ps.scm (stem): Remove.
13486 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
13488         * scm/output-gnome.scm (beam): New function.
13489         (slur): Round corners.
13490         (round-filled-box): Round corners.
13492 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13494         * scm/output-gnome.scm (beam): add function.
13495         (draw-line): new routine.
13496         (dashed-line): stub; call draw-line
13497         (polygon): new routine.
13499 2004-11-15  Werner Lemberg  <wl@gnu.org>
13501         * Documentation/user/lilypond-book.itely: Revise section on
13502         lilypond-book options.
13503         Other minor fixes.
13505         * scripts/lilypond-book.py: Change indentation to 4.
13506         Minor formatting.
13508 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13510         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
13511         grobs that have tweaks specced.
13512         
13513 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
13515         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
13517 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13519         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
13520         actual char #, not 0 based index.
13522         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
13524         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
13525         Warning: do make -C mf clean.
13527         * lily/context-property.cc: Compile fix.
13529         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
13530         Grok ec-fonts, braces and dynamics.
13532         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
13534 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13536         * lily/include/tweak-registration.hh: new file.
13538         * lily/tweak-registration.cc: new file.
13540         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
13541         saving tweaks.
13543         * scm/output-gnome.scm (text): comment dribble.
13545 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
13547         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
13549         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
13550         path-def before using.  Fixes muchtomany slurs in wrong places
13551         bug.
13553 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13555         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
13557         * lily/include/object-key-undumper.hh (Module): new file.
13559         * lily/object-key-undumper.cc (Module): New file. Deserialize
13560         keys. SCM bindings
13562         * lily/object-key-dumper.cc (Object_key_dumper): idem.
13563         Provide SCM bindings.
13565         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
13566         new file. Serialize object keys.
13567         
13568         * lily/object-key.cc (dump): new function.
13569         (as_scheme): new virtual function
13570         (undump): new function
13571         (undumpers): new table.
13573         * lily/include/global-context.hh (Context): take \score key upon init.
13575         * lily/object-key-dumper.cc (serialize_key): new file.
13577         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
13579         * lily/lily-lexer.cc: remove \quote.
13581         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
13583         * lily/context.cc (Context): take key argument in ctor.
13584         (create_context): new function
13586         * lily/grob.cc (Grob): take key argument in ctor.  
13588         * lily/lilypond-key.cc (do_compare): new file.
13590         * lily/object-key.cc (Object_key): new file.
13592         * lily/include/object-key.hh (class Object_key): new file.
13594         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
13596 2004-11-13  Graham Percival  <gperlist@shaw.ca>
13598         * Documentation/user/lilypond-book.itely: add small warning about
13599         noindent default in lilypond-book.
13601         * Documentation/user/converters.itely: add examples for convert-ly.
13603         * Documentation/user/examples.itely: change version string in templates
13604         to 2.4.0.
13606 2004-11-12  Karl Hammar  <karl@aspodata.se>
13608         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
13609         cmdline, use xargs instead (backportme)
13611 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
13612         
13613         * Documentation/user/: Numerous fixes in the user manual.
13615 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13617         * lily/parser.yy (re_rhythmed_music): search music expression for
13618         context-id, surround by \new Voice if not found. Fixes:
13619         addlyrics-second-staff.ly
13621         * VERSION: 2.5.0 released.
13622         
13623 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
13625         * Documentation/index.html.in: Fix url to one big page.  (backportme)
13627         * Documentation/user/GNUmakefile: Separate rules for split and
13628         unsplit html documents.  Remove perl massaging.  (backportme)
13630 2004-11-11  Graham Percival  <gperlist@shaw.ca>
13632         * Documentation/user/lilypond-book.itely: add short warning about
13633         \lilypond{} in LaTeX docs.
13635 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
13637         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
13638         found.  (backportme)
13640         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
13641         version requirement.  (backportme)
13643         * configure.in: Be explicit about old versions of
13644         ec-fonts-mtraced.  (backportme)
13646         * lily/context-selector.cc (set_tweaks): New function.
13647         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
13648         web with -DTWEAK.
13650         * Documentation/user/introduction.itely (Automated engraving):
13651         Remove fragment option.  Fixes web.
13653         * lily/context-property.cc (make_item_from_properties):
13654         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
13655         #ifdef.
13657         * scm/define-context-properties.scm
13658         (all-internal-translation-properties): Add tweakRank and tweakCount.
13660         * lily/grob.cc: 
13661         * scm/define-grob-properties.scm (all-internal-grob-properties):
13662         Add tweak-rank and tweak-count.
13664 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13666         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
13667         New function.
13668         (text): Use them.
13670         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
13671         animated/opaque grob dragging tweaks.
13673         * buildscripts/guile-gnome.sh: Update.
13675 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13677         * scm/define-grobs.scm (all-grob-descriptions): Added
13678         line-interface to the LigatureBracket object.
13680 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13682         * scm/framework-gnome.scm (item-event): Support non-animated mouse
13683         dragging tweaks.
13685         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
13687         * lily/context-selector.cc (store_context): New function.
13689         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
13690         (store_grob): New function.
13691         (identify_grob): Add Moment parameter.
13693         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
13694         exists.
13696         * scm/framework-gnome.scm (save-tweaks): Write as alist.
13698 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13700         * scm/framework-gnome.scm (item-event): Print grob id.
13701         (save-tweaks): New function.
13702         (tweak): New funtion.
13703         (item-event): Use it, bound to arrow keys.
13705         * lily/context-property.cc (make_item_from_properties): Register grob.
13706         * lily/context.cc (add_context): Register context.
13708         * lily/include/context-selector.hh:
13709         * lily/include/grob-selector.hh:
13710         * lily/context-selector.cc:
13711         * lily/grob-selector.cc: New file.
13713 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13715         * lily/slur.cc: add 'positions to interface
13717         * lily/main.cc: reinstate PS as standard output format. 
13719         * scm/framework-tex.scm (output-preview-framework): print systems
13720         up to first non title system.
13722         * lily/grace-engraver.cc (start_translation_timestep): split
13723         scm_cadddr
13724         
13725 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13727         * lily/quote-iterator.cc (Module): remove old quote-iterator
13729         * scm/define-music-types.scm (music-descriptions): move
13730         NewQuoteMusic over QuoteMusic
13732         * Documentation/user/notation.itely (Formatting cue notes): use
13733         \cueDuring.
13735         * lily/new-quote-iterator.cc (quote_ok): new function.
13737         * input/regression/quote-cue-during.ly: new file.
13739         * input/regression/quote-grace.ly: new file.
13741         * scm/define-context-properties.scm (Module): change definition of
13742         graceSettings
13744         * lily/context-property.cc (Module): rename from
13745         translator-property.cc
13747         * lily/context.cc (context_name_symbol): new function
13749         * lily/grace-engraver.cc: new file. Set properties for grobs based
13750         on the grace-ness of now_moment().
13752         * scm/music-functions.scm (add-grace-property): use list
13753         iso. vector for graceSettings
13754         remove set-{start,stop}-grace-properties. 
13756         * lily/new-quote-iterator.cc (construct_children): set
13757         quote_outlet_ if no quoted-context-{id,type} specified.
13759         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
13761         * lily/parser.yy (command_element): remove \quote.
13763         * ly/music-functions-init.ly (location): add quoteDuring music
13764         function. 
13766         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
13767         optional semicolon. (backportme)
13769 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13771         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
13772         need to link to GUILE et al.
13774 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13776         * scm/define-music-properties.scm (all-music-properties): add
13777         quoted-context-type, quoted-context-id.
13779         * scm/lily.scm (type-check-list): new function.
13780         
13781         * scm/lily-library.scm: new file. Generic library routines.
13783         * lily/parser.yy (Generic_prefix_music): move typechecking out of
13784         parser.
13786         * ly/music-functions-init.ly: add quoteDuring function.
13788         * lily/include/music-iterator.hh (class Music_iterator): rename
13789         set_translator -> set_context
13791         * lily/parser.yy (Generic_prefix_music_scm): add
13792         MUSIC_FUNCTION_SCM_SCM_MUSIC
13794         * scm/lily.scm (sanitize-command-option): new function. (backportme)
13796         * scm/framework-tex.scm (header): sanitize TeX paper size.
13797         (backportme)
13799 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13801         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
13803         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
13805         * scm/framework-tex.scm (font-load-command): Use T1 if no
13806         font-encoding set.  (backportme)
13808         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
13809         exists before converting.  (backportme)
13811         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
13812         exists before converting.  (backportme)
13813         (convert-to-ps): Remove .ps file if it exists before
13814         converting.  (backportme)
13816         * lily/lexer.ll: Remove extra progress newline, use present tense.
13818         * scm/paper.scm (paper-alist): public.
13819         * scm/framework-tex.scm (convert-to-ps):
13820         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
13821         command line.
13823 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13825         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
13827         * lily/recording-group-engraver.cc (derived_mark): mark
13828         now_events_. (backportme)
13830 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13832         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
13834         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
13835         invoking latex. (backportme.)
13837         * lily/stem.cc (off_callback): center stems for all rest stems.
13839 2004-11-05  Werner Lemberg  <wl@gnu.org>
13841         * Documentation/user/lilypond.tely: Add more guidelines for writing
13842         lilypond texinfo documents.
13844 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
13846         * Documentation/index.html.in: remove <hr>.
13848         * THANKS: change 2.3 to 2.4.
13850 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
13852         * scm/output-gnome.scm: More fontconfig comment.
13854 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
13856         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
13857         <package> directory in $(builddir)/share according with
13858         PACKAGE_NAME defined in the VERSION file.
13860 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13862         * lily/beam.cc (rest_collision_callback): use local beam
13863         multiplicity.
13865         * input/regression/stem-stemlet.ly: new file.
13867         * lily/stem.cc (add_head): store rests as well.
13869         * scm/define-grob-properties.scm (all-user-grob-properties): add
13870         stemlet-length
13872         * lily/stem.cc: store rests as well.
13873         
13874         * input/regression/new-slur.ly: mention forcing.
13876 2004-11-04  Werner Lemberg  <wl@gnu.org>
13878         * Documentation/user/*: A new round of layout fixes and document
13879         structure cleanup.
13881 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
13883         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
13885 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13887         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
13889 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
13891         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
13893         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
13895         * lily/main.cc (main): Invoke identify.
13897         * scm/lily.scm (postscript->pdf): Remove progress newline.
13898         Write progress to stderr.
13900         * lily/paper-book.cc (output): Remove progress newline.
13902         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
13903         gettext on user messages, and remove whitespace.
13905         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
13907         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
13908         argv[0] (Thomas Scharkowski).
13910         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
13911         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
13912         for ec-fonts-mtraced.
13914         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
13915         --srcdir build (Bertalan).
13917         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
13918         headers and library too (Laura Conrad).
13920         * Documentation/topdocs/INSTALL.texi (Top): Mention development
13921         package for guile too (Laura Conrad).
13923         * lily/main.cc (usage): Typo.
13925 2004-11-02  Werner Lemberg  <wl@gnu.org>
13927         * Documentation/user/notation.ly: More fixes to improve appearance.
13929         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
13930         better output for multicolumn tables.
13932 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13934         * lily/main.cc (dir_info): Fixed typo in the printouts.
13936 2004-11-01  Werner Lemberg  <wl@gnu.org>
13938         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
13939         of output.
13940         Set `per_line' to 2; replace hard-coded value with it.
13942         * Documentation/user/*: Many fixes to improve appearance of
13943         printed manual.
13945 2004-11-01  Werner Lemberg  <wl@gnu.org>
13947         * Documentation/user/changing-defaults.itely,
13948         Documentation/user/notation.ly,
13949         Documentation/user/programming-interface.itely: Use @/.
13950         Fix formatting of some lilypond snippets and tables.
13952         * scripts/lilypond-book.py (compose_ly): Provide useful default
13953         for LINEWIDTH in `override'.
13955 2004-10-31  Graham Percival  <gperlist@shaw.ca>
13957         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
13959 2004-10-31  Werner Lemberg  <wl@gnu.org>
13961         Resetting @exampleindent to `5' gives ugly results with texinfo's
13962         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
13963         (if not quoting) to change @exampleindent only locally.
13965         * scripts/lilypond-book.py (NOQUOTE): New variable.
13966         (output) [LATEX]: Remove AFTER and BEFORE.
13967         [TEXINFO]: Remove AFTER and BEFORE.
13968         Fix QUOTE and VERBATIM pattern.
13969         Add NOQUOTE pattern.
13970         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
13971         and BEFORE.
13972         [output_texinfo]: Use NOQUOTE.
13974 2004-10-31  Graham Percival  <gperlist@shaw.ca>
13976         * Documentation/user/changing-defaults.itely: clarify paper
13977         size commands with correct info.
13979         * Documentation/user/lilypond-book.itely: add more docs for
13980         filename extensions.
13982 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13984         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
13985         (PATCH_LEVEL): start 2.5.0.
13987 #Local variables:
13988 #coding: utf-8
13989 #End: