Bugfix.
[lilypond/patrick.git] / ChangeLog
blob5500f1c87e7cc021d33b2fc5fb0fdf6bc097c017
1 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * Documentation/user/instrument-notation.itely: Bugfix.
5 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7         * tex/GNUmakefile: don't install texinfo.tex
9         * tex/ : cleanup: remove unused files.
11         * lily/general-scheme.cc: remove my_{isinf,isnan}.
13         * flower/include/real.hh: using std::{isnan,isinf}
14         
15         * VERSION (PATCH_LEVEL): release 2.7.9
17 2005-09-05  Graham Percival  <gpermus@gmail.com>
19         * Documentation/user/ instrument-notation.itely,
20         advanced-notation.itely: minor tweaks.
22         * input/test/script-chart.ly: add item padding.
24 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
26         * flower/offset.cc: use math.h iso. <cmath>
28         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
29         of IE users.
31         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
32         (widen-left-stencil-edges): new function. Fix alignment problems
33         with LaTeX includegraphics.
35         * lily/text-interface.cc (interpret_markup): use abort().
37 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
39         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
41         * lily/tie.cc (get_configuration): update bezier shape as we
42         change Y positions.
43         (get_configuration): don't move large ties if we're outside of the
44         staff.
46 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
48         * scm/define-markup-commands.scm (strut): swap X and Y dims.
49         
50 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
52         * .cvsignore: Add auto-generated configure files and then some.
54 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
56         * scm/define-grobs.scm (DynamicLineSpanner): Add
57         X-extent-callback.  Fixes hairpin-slur collision.
59 2005-08-31  Graham Percival  <gpermus@gmail.com>
61         * Documentation/user/advanced-notation.itely,
62         basic-notation.itely: minor changes.
64 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
66         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
67         \linebreak between each .eps file if \betweenLilyPondSystem is
68         undefined. 
70         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
71         music): Document the \linebreak
73         * Documentation/user/lilypond-book.itely,
74         input/tutorial/lbook-latex-test.tex,
75         Documentation/user/examples.itely: Remove \usepackage{graphics}
77 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
79         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
81         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
82         compat bugfix.
84         * scripts/lilypond-book.py (PREAMBLE_LY): define
85         inside-lilypond-book
86         (modify_preamble): new function. Insert \RequirePackage{graphics}
87         when no {graphics found in preamble.  
89 2005-08030  Graham Percival  <gpermus@gmail.com>
91         * Documentation/user/basic-notation.itely, global.itely,
92         tutorial.itely: misc small changes.
94 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
96         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
97         VERSION.
99 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
101         * lily/tie-column.cc (new_directions): put Tie down on center
102         staff line. 
104         * lily/script-interface.cc (before_line_breaking): use
105         Grob::programming_error
107         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
109         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
110         of splitext.
112 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
114         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
116 2005-08-29  Werner Lemberg  <wl@gnu.org>
118         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
119         the `*.scale.pfa' files to avoid warnings.
121 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
123         * lily/tempo-performer.cc (process_music): idem.
125         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
127 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
129         * Documentation/user/advanced-notation.itely (Text markup): not a
130         fragment.
132         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
134         * lily/staff-performer.cc (initialize): add tempo/name to
135         audio_staff_
138 2005-08-26  Graham Percival  <gpermus@gmail.com>
140         * Documentation/user/advanced.itely: add text-only example.
142         * Documentation/user/invoking.itely: add index entries for
143         convert-ly.
145         * Documentation/user/ tutorial.itely, basic-notation.itely:
146         small fixes suggested by Steve D.  Thanks!
148 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
150         * input/regression/markup-bidi-pango.ly: new file.
152         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
153         standard. Remove #ifdef. Remove memleak.
154         (text_stencil): use text_dir to decide how to composite items.
155         (text_stencil): determine uniform text direction for the entire
156         string.
158         * scripts/lilypond-book.py (output_name): remove
159         latex_filter_cmd. Non-portable to non-Unix systems. 
160         (get_latex_textwidth): use File.write and os.unlink() instead.
162         * THANKS: add Vicente & Trevor.
164         * lily/grob.cc (discretionary_processing): look up origin for
165         programming_error too. 
167         * input/regression/tie-broken.ly: new file.
169         * lily/tie-column.cc (set_chord_outlines): set outline for line
170         break case too.
171         
172 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
174         * lily/pango-font.cc (text_stencil): don't translate glyphs in
175         unscaled transform, just translate stencils.
177         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
178         MIDI.
180         * scm/define-markup-commands.scm (wordwrap-string): use
181         text-direction
182         (wordwrap-stencils): idem.
183         (line): idem.
184         (fill-line): idem.
185         (wordwrap-stencils): translate last line to right for
186         text-direction = LEFT.
188         * scm/define-grob-properties.scm (all-user-grob-properties): add
189         text-direction.
191 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
193         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
194         when copying a Lily_parser object.
196 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
198         * scm/define-markup-commands.scm (null): add null markup.
200 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
202         * lily/item.cc: Add documentation of center-invisible
204 2005-08-24  Graham Percival  <gpermus@gmail.com>
206         * Documentation/user/advanced-notation.itely: add info about
207         raising text.
209         * Documentation/user/programming-interface.itely: fix example
210         involving raised text.
212 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
214         * lily/beam.cc (print): fix X start/end points of isolated
215         beamlets.
217         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
219         * lily/multi-measure-rest.cc (set_text_rods): new function.
221         * lily/vertical-align-engraver.cc (process_music): call
222         Align_interface::set_axis(). This forces #'elements to be ordered,
223         preventing random vertical reordering of staves.
225         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
226         add avoid-slur property. 
228         * Documentation/user/basic-notation.itely (Measure repeats): add
229         countPercentRepeats example.
231         * Documentation/user/advanced-notation.itely (Other text markup
232         issues): remove remark about normal-font.  We have \normal-text
234         * input/regression/tie-chord.ly: add note about remaining bugs.
236         * lily/tie.cc (print): try Tie_column::set_directions () if
237         control-points not yet defined.
239 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
241         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
242         extent. This fixes braces falling out of the EPS bbox.
244         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
245         exactly to bbox.
247 2005-08-23  Graham Percival  <gpermus@gmail.com>
249         * {various} : change #up->#UP and #down->#DOWN.
251         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
253         * Documentation/user/advanced-notation.itely: clarify
254         what objects handles text on a multimeasure rest.
256 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
258         * VERSION (PATCH_LEVEL): release 2.7.7
260 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
262         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
264         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
266         * input/regression/*.ly: formatting clean-up. Default layout
267         before music expression.
269         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
270         romanze28-2 example.
272         * scm/ps-to-png.scm: remove dir-re function.
273         (make-ps-images): generate page names, instead of globbing them.
274         This brings down LilyPond memory usage for make web by a factor
275         10. (backportme?) 
277         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
278         don't use glob. With 3000 files, globbing
279         Documentation/user/out-www/ can take too much time. (backportme?)
280         
281         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
283         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
285         * input/regression/tie-manual.ly: new file
287         * input/regression/tie-chord.ly: update.
289         * flower/include/interval.hh (struct Interval_t): 
291         * lily/tie.cc (distance): new function 
292         (height): new function.
293         (init): new function
294         (Tie_details): new struct.
296         * lily/skyline.cc (skyline_height): new function.
298         * lily/tie-column.cc (set_chord_outlines): new function.
299         (new_directions): read tie-configuration
301         * lily/skyline.cc: fix ASCII art.
302         
303 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
305         * python/convertrules.py (string_or_scheme): Fix spelling error
307 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
308         
309         * lily/tie-column.cc (set_directions): set directions only once.
310         (add_configuration): new function.
312         * lily/tie.cc (set_control_points): new function
314         * lily/tie-column.cc (new_directions): new function.
316         * ly/music-functions-init.ly: set 'pitch property
317         iso. trill-pitch. This makes \relative work with \pitchedTrill
319         * lily/tie.cc (get_configuration): new function. Don't generate
320         control points, rather, generate configuration.
321         remove head-pair property.
323         * lily/include/tie.hh (struct Tie_configuration): new struct.
325 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
327         * Documentation/topdocs/NEWS.tely: clarify.
329 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
331         * lily/tie.cc: remove minimum-length
333         * scm/define-grob-properties.scm (all-user-grob-properties):
334         remove staffline-clearance, y-offset 
336         * input/regression/tie-dots.ly (Module): remove.
338         * lily/tie.cc (get_control_points): rewrite. Put short ties in
339         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
341         * input/regression/tie-single.ly: new file.
343 2005-08-21  Graham Percival  <gpermus@gmail.com>
345         * ly/bagpipe.ly: fix compile problem.
347 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
349         * lily/midi-item.cc (name): new method.
351         * lily/staff-performer.cc (acknowledge_audio_element): use
352         signature of baseclass.
354         * lily/engraver-group.cc (do_announces): move recursion call out
355         of while loop. 
357         * lily/drum-note-performer.cc (class Drum_note_performer): use
358         process_music everywhere.
360         * ly/performer-init.ly: add default children everywhere.
362         * lily/paper-book.cc (output): call paper-book-write-midis
363         directly: always write MIDI, even if no \layout {} block. 
365 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
367         * VERSION (PACKAGE_NAME): release 2.7.6
369         * lily/percent-repeat-engraver.cc (try_music): don't print warning
370         about not being able to handle repeat.
372 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
374         * Documentation/user/examples.itely (Piano templates):
375         * lily/include/performer-group.hh: Remove last traces of
376         Performer_group_performer.  Fixes make web.
378 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
380         * Documentation/user/examples.itely (Piano templates): change
381         Engraver_group_engraver -> Engraver_group
383         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
384         scm_stand_in_procs is not weak_any.
386         * lily/volta-bracket.cc (print): don't use strcmp().
388         * lily/volta-engraver.cc (process_music): use
389         Text_interface::is_markup() for setting the 'text property of the
390         volta bracket.
392         * input/mutopia/claop.py (accents): update syntax to 2.6
394         * scm/define-context-properties.scm
395         (all-user-translation-properties): add countPercentRepeats.
397         * Documentation/user/basic-notation.itely (Measure repeats): add
398         isolated percent example.
400 2005-08-18  Graham Percival  <gpermus@gmail.com>
402         * input/ {various}: change direction #1, #-1 to
403         #up/#down or \fooUp, \fooDown.
405         * Documentation/user/music-glossary.tely: #-1 to #down.
407         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
408         to #up, #-1 to #down.
410 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
412         * lily/include/engraver-group.hh: rename.
414         * lily/include/performer-group.hh: rename.
416 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
418         * input/test/script-abbreviations.ly: Removed some old LaTeX
419         left overs.
421 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
423         * python/convertrules.py (conv): inside-slur -> avoid-slur.
424         Remove functions.  Remove if 1: constructs, reindent.
426         * scripts/convert-ly.py (add_version): Add functions from
427         convertrules.py
429         * scm/script.scm (default-script-alist):
430         s/priority/script-priority.  Fixes script stacking.  Backportme.
431         (Fermata): Very low priority.
433 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
435         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
437         * input/regression/slur-script.ly: remove padding tweaks. Add
438         comment strings.
440         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
441         time sigs and related stuff.
443         * scm/define-grob-properties.scm (all-user-grob-properties): add
444         @code{} tags to property description.
446         * lily/include/line-group-group-engraver.hh (Module): remove file.
448         * python/convertrules.py (conv): add rule for
449         Engraver_group_engraver -> Engraver_group.
451         * lily/include/performer-group-performer.hh: analogous.
453         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
455         * lily/context-def.cc (instantiate): check for
456         Engraver_group_engraver and Performer_group_performer not
457         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
459 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
461         * input/les-nereides.ly: Remove three fingering tweaks, update
462         remaining one.
464         * input/regression/slur-script-inside.ly: Update, fix doc.
466         * scm/script.scm: Update to avoid-slur.
468         * scm/define-grob-properties.scm (avoid-slur): New property.
470         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
471         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
472         outside_slur_callback if avoid-slur != #'inside.
474         * scm/define-grobs.scm (Fingering, Textscript): No
475         inside-slur/outside-slur preference.
476         (DynamicLineSpanner): Always outside slur.
478         * input/regression/slur-script.ly: More tests.
480 2005-08-17  Graham Percival  <gpermus@gmail.com>
482         * Documentation/user/lilypond-book: fix notime entry.
484         * Documentation/user/advanced-notation.itely: add info on
485         getting an I rehearsal mark.
487         * Documentation/user/putting.itely: reinstate "I", re-enforce
488         the fact that \override numbers are the result of
489         experimentation and personal taste.
491         * Documentation/user/invoking.itely: update convert-ly bugs.
493 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
495         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
496         to #t.
498         * lily/timing-translator.cc (initialize): don't initialize timing.
500         * input/regression/stem-spacing.ly (Module): remove file.
502         * input/regression/spacing-stick-out.ly: specify Score context for
503         \override
505         * input/regression/clefs.ly: remove spurious {}s 
507 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
509         * Documentation/topdocs/NEWS.tely,
510         input/regression/repeat-percent-count.ly: clarify a bit.
512 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
514         * input/no-notation/display-lily-tests.ly: delete
515         display-lily-init call.
517         * ly/music-functions-init.ly (displayLilyMusic): move
518         display-lily-init call at top level, so that the user should not
519         have to call it.
521         * scm/define-music-display-methods.scm (note-name->lily-string):
522         retrieve note names directly from pitchnames using new function `rassoc'.
523         (display-lily-init): note names list construction removed.
525 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
527         * THANKS: spello.
529         * lily/lily-parser.cc (get_header): copy module, instead of
530         returning it.
532         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
533         counters.
535         * Documentation/user/basic-notation.itely (Measure repeats): add
536         links to Counter grobs.
538         * scm/define-grobs.scm (all-grob-descriptions): add
539         DoublePercentRepeatCounter
540         (all-grob-descriptions): add PercentRepeatCounter
542         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
543         also create counter grobs.
545         * lily/separation-item.cc (extremal_break_aligned_grob): don't
546         return grob without space-alist.
548         * input/proportional.ly: tune staff-padding.
550         * input/regression/repeat-percent-count.ly: new file. 
552 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
554         * input/no-notation/display-lily-tests.ly: moved from
555         input/regression/ to input/no-notation. Be sure to call
556         `display-lily-init' before trying to use the display function.
558 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
560         * scripts/lilypond-book.py (option_definitions): Don't localize
561         the empty string. Fixes bug when --psfonts was used with
562         non-English locale.
564 2005-08-15  Graham Percival  <gpermus@gmail.com>
566         * lily/tuplet-bracket.cc: simple build fix.
568         * Documentation/user/putting.itely: use "we" instead of "I".
570         * Documentation/user/basic-notation.itely: cautionary accidentals
571         work with naturals, too.
573 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
575         * lily/tuplet-bracket.cc (calc_position_and_height): add
576         staff-padding support.
578         * input/proportional.ly: set staff-padding.
579         
580         * VERSION (PATCH_LEVEL): release 2.7.5
582         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
583         fixes. Remove tweaks.
585         * input/regression/tuplet-slope.ly: add a test case.
587         * lily/tuplet-bracket.cc (calc_position_and_height): revert
588         erroneous fix. Add spanner bounds to offset array with relative X
589         positions.
591         * ly/engraver-init.ly: add Rest_engraver only once.
593         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
594         (*parser*) lookup if (*parser*) != #f.
596 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
598         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
599         Cut-and paste update.
601         * input/regression/slur-script.ly: Add example of reverting
602         inside-slur for fingering.
604         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
605         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
607         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
608         outside_slur_callback if inside-slur == #f (as opposed to unset).
610 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
612         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
613         encoding files are already removed.
615 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
617         * Documentation/user/advanced-notation.itely (Instrument names):
618         Document a workaround for instrument names that collide with
619         system start braces/brackets.
621 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
623         * lily/rest-collision.cc (do_shift): spello.
625         * input/proportional.ly: use #'used property. Set break-overshoot
626         property.
628         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
630         * lily/paper-column.cc: add #'used property
632         * lily/mark-engraver.cc (stop_translation_timestep): set grob
633         array for staves found.
635         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
636         array for stavesFound.
638         * lily/staff-spacing.cc (next_note_correction): add fixed and
639         space to calling convention. This fixes spacing of accidentals
640         after barlines.
642         * input/regression/spacing-accidental-stretch.ly: add barline -
643         accidental case.
645         * scm/framework-ps.scm (page-header): add version number to
646         creator
647         (eps-header): idem.
649         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
650         
651 2005-08-13  Graham Percival  <gpermus@gmail.com>
653         * Documentation/user/global.itely: add "fit as much as
654         possible onto this page" example (Vertical spacing).
656 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
658         * *: Nitpick run.
660         * buildscripts/fixcc.py: Fixes.
662 2005-08-12  Graham Percival  <gpermus@gmail.com>
664         * Documentation/user/advanced-notation.itely: add markup
665         example to Text spanners.
667 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
669         * Documentation/user/basic-notation.itely (Ties): Add example of
670         tying a tremolo to a chord. Thanks to Steve Doonan. 
672         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
673         properties and move tieMelismaBusy to the list of written
674         properties. 
676 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
678         * po/TODO: suggest to use a dedicated tool like kbabel.
680         * po/fi.po: update using kbabel.
682 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
684         * *: Remove obsolete files.  Nitpick run.
686         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
688 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
690         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
691         too.
693         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
695         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
696         whitespace as symbol separator.
698         * lily/side-position-interface.cc: Add slur-padding.
700         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
701         quite a large fix, and it never worked in a stable release; so not
702         really a regression.
704         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
705         Update cut and paste code from Slur_engraver.
707         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
708         Add.
710         * scm/define-grobs.scm (DynamicLineSpanner): Add
711         dynamic-line-spanner-interface.
712         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
714 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
716         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
717         to_boolean () so that non-set 'inside-slur means false.
719         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
720         slur has control-points.  Skip script without direction.  Always
721         do_shift if script inside slur, even if slur not contained in
722         script y-extent.  Increment k in loop.
724 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
726         * scm/define-markup-commands.scm: Improved regexp to search for
727         EPS bounding boxes and corrected call to ly:warning.
729 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
731         * Documentation/user/programming-interface.itely (Displaying music
732         expressions): doc for \displayLilyMusic. Also some precisions in
733         "Markup construction in Scheme"
735 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
737         * scm/define-markup-commands.scm (normal-text): Added 2 new
738         markup commands, \normal-text and \medium (the latter thanks to
739         Bruce Fairchild). 
741 2005-08-08  Graham Percival  <gpermus@gmail.com>
743         * Documentation/user/programming-interface.itely: fix @{ @}.
745         * scm/define-markup-commands.scm: add linewidth info to
746         \justify and \wordwrap, add "upright is the opposite of italic".
748         * Documentation/user/advanced-notation.itely: shaped->shape,
749         add (cons (markup "foo")) type of example to text markup,
750         reword multi-measure rests section.
752         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
753         comment.  No actual code was touched.
755         * Documentation/user/invoking.itely: add more info about
756         \include.  Thanks, Bruce!
758         * THANKS: add Bruce Fairchild, alphabetise.
760         * Documentation/user/global.itely: document \score{\header{}}
761         behavior.
763         * Documentation/user/basic-notation.itely: reword multi-measure
764         rest discussion in Rests.
766 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
768         * Documentation/user/programming-interface.itely (Markup
769         construction in Scheme): Corrected example and tried to clarify
770         the implicit \line in the table.
772 2005-08-07  Graham Percival  <gpermus@gmail.com>
774         * Documentation/user/instrument-notation.itely: moved
775         some bagpipe info back into the bagpipe section.  Somehow
776         it ended up in the "other vocal issues" section?!  :o_O
778 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
780         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
781         directories, not paths).
783 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
785         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
786         plain emmentaler/aybabtu.  Backportme.
788         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
789         missing dir correction.
791 2005-08-05  Graham Percival  <gperlist@shaw.ca>
793         * scm/define-markup-commands: fix reversed justify/wordwrap
794         doc strings.
796 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
798         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
799         lily/gregorian-ligature-engaver.cc,
800         lily/include/ligature-engraver.hh,
801         lily/include/coherent-ligature-engraver.hh,
802         lily/include/gregorian-ligature-engraver.hh: make these classes
803         truely abstract.  This should fix some internal oddities such as
804         duplicate as well as dead translator/property declarations, and
805         also some dead code.
807         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
808         bugfix: avoid message "junking empty ligature" on ligature
809         brackets by collecting dummy grobs.
811 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
813         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
815         * input/proportional.ly (staffKind): bugfix.
816         (staffKind): updates by Trevor Baca.
818         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
819         default layout. 
821         * lily/tuplet-bracket.cc (print): check whether edge-text is a
822         pair.
824         * lily/beam.cc (rest_collision_callback): call position_beam() if
825         necessary.
827         * VERSION: release 2.7.4
829         * input/regression/spacing-uniform-stretching.ly: new file.
831         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
833         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
834         contributor.
836         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
838         * input/proportional.ly: new file.
840         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
841         columns is empty
843         * lily/tuplet-engraver.cc (finalize): new function. Reset right
844         bounds to currentCommandColumn for the last step.
845         (start_translation_timestep): if tupletFullLength is set, set
846         bound to Paper Column
848         * input/regression/tuplet-full-length.ly (indent): new file.
850         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
851         clique of loose columns, eg. a set of grace notes in strict
852         notespacing.
854         * input/regression/spacing-strict-spacing-grace.ly: new file.
856         * lily/key-signature-interface.cc: change property name to
857         alteration-alist
859         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
860         keyAccidentalOrder
862         * python/convertrules.py (conv): keyAccidentalOrder ->
863         keyAlterationOrder
865         * lily/key-engraver.cc (create_key): always print a cancellation
866         for going to C-major/A-minor, regardless of printKeyCancellation.
867         (create_key): remove typecheck for visibility. This fixes key
868         signature not being printed.
870         * lily/spacing-determine-loose-columns.cc: new file.
872         * input/regression/spacing-strict-notespacing.ly: new file.
874         * lily/spacing-spanner.cc (generate_springs): rename from
875         do_measure. 
876         (generate_pair_spacing): new function.
877         (init, generate_pair_spacing): set between-cols for floating
878         nonmusical columns.
880         * lily/spaceable-grob.cc (get_spring): new function. 
882         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
883         relative to the right edge of the prefatory matter.
885         * lily/beam.cc (print): read break-overshoot to determine where to
886         stop/start broken beams.
888         * input/regression/spanner-break-overshoot.ly: new file.
890 2005-08-04  Graham Percival  <gperlist@shaw.ca>
892         * ly/bagpipe.ly: updated.
894         * Documentat/user/instrument.itely: un-comment out bagpipe example.
896 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
898         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
899         support: now (de)crescs avoid slurs as well.
901         * Documentation/user/instrument-notation.itely (Bagpipe example):
902         comment out non-functioning bagpipe example.
903         (Bagpipe definitions): idem.
905         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
906         (Top): add proportionalNotationDuration example.
908         * input/regression/spacing-proportional.ly: new file.
910         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
911         synched to a beam.
913         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
914         fixes beams with a single stem (eg. beams across linebreaks.)
916         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
918         * flower/rational.cc (operator +): prevent overflow. This fixes
919         heavily nested tuplets.
921         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
922         have to protect even those unlikely to be corrupted data members.  
924 2005-08-04  Graham Percival  <gperlist@shaw.ca>
926         * ly/bagpipe.ly: new file.
928         * THANKS: added Sven Axelsson.
930 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
932         * lily/spacing-engraver.cc (stop_translation_timestep): directly
933         copy proportionalNotationDuration into currentMusicalColumn if
934         set.
936         * lily/spacing-spanner.cc (musical_column_spacing): if
937         uniform-stretching set, fixed space is 0.0
939         * input/regression/spacing-multi-tuplet.ly: show
940         uniform-stretching property.
942         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
944         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
945         (struct Spacing_options): new struct.
947         * lily/spacing-basic.cc: new file.
949         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
950         delta_t doesn't have to be smaller than shortest_playing_len
952 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
954         * input/regression/markup-arrows.ly:  new file.
956         * lily/tuplet-bracket.cc: document new behavior.
958         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
959         with line breaks.
961         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
963         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
964         default 
966         * lily/tuplet-bracket.cc: add edge-text property.
967         add break-overshoot.
968         (print): read break-overshoot.
969         (print): read edge-text, add stencils.
971         * mf/feta-arrow.mf: new file.
973         * mf/feta-generic.mf: add feta-arrow.
975 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
977         * Documentation/user/lilypond-book.itely (An example of a
978         musicological document): Added flag -o to dvips for people who use
979         the default setting in teTeX where output is sent to the printer. 
981         * Documentation/user/global.itely (Vertical spacing): Added
982         reference to the Axis_group_engraver which documents the *Extent
983         properties.
985 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
987         * Documentation/user/basic-notation.itely (Tuplets): add note
988         about nested tuplets. Remove BUG. 
990         * input/regression/tuplet-nest.ly: update: remove manual hack. 
992         * lily/tuplet-bracket.cc (print): use robust_scm2drul
993         (print): manually call print() for subtuplets.
994         (calc_position_and_height): add subtuplets to the
995         support. Vertically shift outer tuplet 
997         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
998         remove-first for Lyrics, ChordNames and FiguredBass
1000         * scm/define-grob-properties.scm (all-internal-grob-properties):
1001         use ly:grob-array? iso. grob-list?
1002         (all-internal-grob-properties): add tuplets grob-array.
1004         * lily/tuplet-bracket.cc (add_tuplet_bracket):
1005         new function
1007 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1009         * input/test/time-signature-staff.ly: new file.
1011         * ly/declarations-init.ly (center): escape to Scheme. Fixes
1012         spurious #<Music FingerEvent> errors. Backportme.
1014 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1016         * Documentation/user/programming-interface.itely (Markup
1017         construction in Scheme): Corrected markup syntax in the
1018         translation table.
1020 2005-08-03  Graham Percival  <gperlist@shaw.ca>
1022         * Documentation/user/instrument-notation.itely: small update
1023         to bagpipe notation docs; thanks Sven!
1025         * Documentation/user/basic-notation.itely: add link about trills.
1027 2005-08-02  Graham Percival  <gperlist@shaw.ca>
1029         * Documentation/user/music-glossary: remove accidentally committed
1030         fink patch.
1032 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
1034         * lily/lily-parser.cc (get_header): new function. Enable multiple
1035         \header definitions.
1037         * lily/parser.yy (lilypond_header_body): use get_header.
1039         * ly/init.ly:
1040         * scm/lily-library.scm (print-score-with-defaults): renamed
1041         $globalheader to $defaultheader
1042         
1043         * Documentation/user/global.itely (Creating titles): added short
1044         explanation that multiple headers are useable.
1047 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1049         * lily/module-scheme.cc (LY_DEFINE): new file. 
1051         * Documentation/user/advanced-notation.itely (Font selection): add
1052         doco for make-pango-font-tree.
1054 2005-07-31  Graham Percival  <gperlist@shaw.ca>
1056         * Documentation/user/music-glossary: more languages
1057         for tenuto.
1059         * Docuemntation/user/instrument-notation.itely: minor
1060         update for bagpipe example.
1062 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1064         * input/regression/+.ly (TODO): add some text.
1066 2005-07-28  Graham Percival  <gperlist@shaw.ca>
1068         * Documentation/user/invoking.itely: \score begins with music.
1070         * Documentation/user/ basic-notation.itely,
1071         instrument-notation.itely: minor changes.
1073         * Documentation/user/music-glossary.itely: began tenuto entry.
1075 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1077         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
1079         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
1081 2005-07-27  Graham Percival  <gperlist@shaw.ca>
1083         * Documentation/user/examples.itely: remove bagpipe template.
1085         * Documentation/user/instrument-notation.itely: add bagpipe
1086         section, maybe fix quotes in lyrics.  I hate text encoding.
1087         Clarify chord durations, more bagpipe stuff.
1089 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1091         * lily/accidental-engraver.cc: formatting fixes.
1093         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
1094         grob-array.
1096         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
1098         * lily/note-column.cc (arpeggio): new function.
1100         * lily/note-spacing.cc (get_spacing): also take arpeggio into
1101         account for spacing.
1103 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1105         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
1106         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
1107         mingw build.
1108         
1109 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1111         * scm/lily.scm (lilypond-all): clear anonymous modules after
1112         processing files.
1114 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1116         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
1117         SCM_I_CONSP
1119         * VERSION: 2.7.3 released
1121         * Documentation/user/invoking.itely (Invoking lilypond): add
1122         LILYPOND_GC_YIELD documentation.
1124         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
1125         scm_from_real / scm_make_real.
1127         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
1128         higher. This increases memory footprint, but provides overall
1129         speedup of 15 to 20%. 
1131         * lily/include/translator.hh (class Translator): remove
1132         PRECOMPUTED_VIRTUAL everywhere.
1134         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
1136         * lily/context.cc (now_mom): non-recursive now_mom() 
1138         * lily/include/profile.hh: new file.
1140         * lily/profile.cc: new file.
1142         * lily/grob.cc (Grob::Grob): look properties up directly.
1144         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
1145         lookups.
1147         * lily/include/box.hh (class Box): smob Box type.
1149         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
1151         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
1152         protect() and unprotect(). Use throughout.
1154 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1156         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
1158         * scm/define-music-display-methods.scm (markup->lily-string):
1159         markup elements can also be strings (without simple-markup
1160         appended)
1162 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1164         * lily/context.cc (where_defined): also assign value in
1165         where_defined().
1167         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
1168         (curve_coordinate): new function
1170         * lily/simple-spacer.cc (add_columns): only add rods between
1171         column i and begin/end if keep-inside-line is set (this repleces
1172         allow-outside-line as default)
1174 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1176         * lily/tuplet-engraver.cc (start_translation_timestep): only read
1177         tupletSpannerDuration if applicable.
1179         * lily/font-size-engraver.cc (process_music): read fontSize only
1180         once per timestep.
1182         * lily/engraver*cc: use throughout.
1183         
1184         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
1186         * lily/translator.cc (add_acknowledger): new file. Directly jump
1187         into an Engraver::acknowledge_xxx () method based on a grobs
1188         interface-list.
1190         * lily/include/translator-dispatch-list.hh (class
1191         Engraver_dispatch_list): new struct, new file.
1193         * scm/define-context-properties.scm
1194         (all-internal-translation-properties): remove acceptHashTable,
1195         acknowledgeHashTable
1197         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
1199         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
1200         change acknowledgeHashTable to C++ member. 
1202         * lily/rest-collision.cc (do_shift): use extract_grob_set().
1204 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1206         * scm/display-lily.scm: new file. Define a `display-lily-music'
1207         function, that displays the music expression given as an argument,
1208         using LilyPond notation.
1210         * scm/define-music-display-methods.scm: new file. Implementation
1211         of display methods for each music type.
1213         * ly/music-functions-init.ly (displayLilyMusic): new function for
1214         displaying music with LilyPond notation.
1216         * input/regression/display-lily-tests.ly: new regression test file
1217         for `display-lily-music'.
1219         * scm/markup.scm: remove obsolete debugging code (for printing
1220         markups with LilyPond notation).
1222         * scm/define-music-types.scm (music-name-to-property-table):
1223         * scm/clef.scm (supported-clefs): export, in order to be accessible
1224         from the (scm display-lily) module.
1226 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1228         * Documentation/topdocs/NEWS.tely (Top): Typo.
1230 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
1232         * Documentation/index.html.in, Documentation/texinfo.css,
1233           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
1234           Documentation/bibliography/index.html.in,
1235           Documentation/bibliography/html-long.bst: revert css-width patch,
1236           it does not work with IE6.
1238 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1240         * Documentation/texinfo.css: revert 760px hack. 
1242         * VERSION: release 2.7.2
1244         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
1246         * Documentation/user/basic-notation.itely (Barnumber check): add
1247         section.
1249         * scm/music-functions.scm (skip-to-last): new function. Show only
1250         last showLastLength part of the \score.
1252         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
1254         * python/convertrules.py (conv): add ly:x-moment rule
1256         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
1258         * Documentation/topdocs/NEWS.tely (Top): add new feature.
1260         * Documentation/user/instrument-notation.itely (Flexibility in
1261         alignment): options in subsections.
1263         * lily/lyric-engraver.cc (process_music): don't typeset text for _
1264         syllable text. Instead, assume that the previous lyric text is a
1265         melismated text.
1267         * Documentation/index.html.in: revert 800x600 change.
1269 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1271         * lily/main.cc (main): Remove invalid handle kludge.
1273         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
1274         (lambda): add gui define.
1276 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1278         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
1280         * Documentation/user/instrument-notation.itely (Musica ficta
1281         accidentals): add section Musica ficta accidentals
1283         * lily/accidental-engraver.cc (make_suggested_accidental): new
1284         function.
1285         (make_standard_accidental): move into new function.
1286         (create_accidental): new function.
1288         * scm/define-grobs.scm (all-grob-descriptions): new Grob
1289         AccidentalSuggestion
1291         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
1293         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
1294         undefined.
1296         * Documentation/user/global.itely (Page formatting): document
1297         horizontalshift.
1299         * scm/page-layout.scm (default-page-music-height):
1300         horizontalshift: new variable, shift all systems by
1301         horizontalshift to the right, to make space for instrument names.
1303         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
1305         * lily/input-scheme.cc (LY_DEFINE): take format commands.
1307 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1309         * lily/note-column.cc (dir): idem.
1311         * lily/spacing-spanner.cc (Module): idem.
1313         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
1315         * lily/include/paper-column.hh (class Paper_column): add
1316         non-static get_rank() member.
1318         * VERSION: release 2.7.1
1319         
1320         * scm/framework-null.scm: new file, used for benchmarking.
1322 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
1324         * Documentation/topdocs/INSTALL.texi, configure.in: fix
1325         version dependencies for fontforge and gs.
1327         * Documentation/index.html.in, Documentation/texinfo.css,
1328         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
1329         Documentation/bibliography/index.html.in, 
1330         Documentation/bibliography/html-long.bst: optimize width of
1331         html for a 800x600 screen (width:760), increases printability
1332         when 'fit to page' is not set and readability in wide screens.
1334         * stepmake/bin/add-html-footer.py: add missing </p>.
1336 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1338         * scm/define-markup-commands.scm (beam): use polygon in beam
1339         command.
1341         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
1342         all acknowledged grobs, and do potentially expensive merge and
1343         write in one go.
1345         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
1347         * configure.in (reloc_b): add --enable-static-gxx to statically
1348         link to libstdc++
1350         * lily/GNUmakefile (static-gxx-libs): new target
1351         static-gxx-libs. Create symlink to libstdc++.a
1353         * lily/new-lyric-combine-music-iterator.cc: rename to
1354         Lyric_combine_music_iterator
1356         * lily/lyric-combine-music-iterator.cc
1357         (Old_lyric_combine_music_iterator): rename to
1358         Old_lyric_combine_music_iterator
1360         * lily/*-engraver.cc (various): remove double use of
1361         PRECOMPUTED_VIRTUAL function: only use
1362         start_translation_timestep() and stop_translation_timestep(), not
1363         both.
1365         * lily/break-substitution.cc (fast_substitute_grob_array): do
1366         fast_substitute_grob_array for all unordered grob_arrays.
1367         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
1368         (substitute_grob_array): optimize.
1370         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
1372         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
1374         * lily/parser.yy: revert $globalheader patch.
1375         
1376         * lily/include/translator.icc
1377         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
1378         Translator methods, without _static helper.
1380         * lily/grob-smob.cc (derived_mark): rename from
1381         do_derived_mark(). Return void.
1383         * scm/define-context-properties.scm
1384         (all-internal-translation-properties): remove tweakCount/tweakRank.
1386         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
1387         predefined break-visibilities.
1389         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
1390         booleans for break-visibility.
1392         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
1394         * python/convertrules.py (conv): rule for Timing_translator. 
1396         * lily/include/translator.icc: new file. 
1398         * lily/paper-column-engraver.cc (process_music): new
1399         file. Separate Paper_column factory from Score_engraver.
1401         * lily/vertically-spaced-context-engraver.cc: administer
1402         spaceable-staves property of System.
1404         * lily/translator-group-ctors.cc: new file.
1406         * lily/context-property.cc (make_grob_from_properties): construct
1407         the right Grob class programmatically, looking at the class entry
1408         for the meta property.
1410         * lily/break-align-engraver.cc (stop_translation_timestep): call
1411         Break_align_interface::add_element() directly.
1413         * lily/context.cc (measure_position): measure_position() is now a
1414         normal function.
1416         * lily/include/translator.hh (class Translator): rename
1417         process_acknowledged_grobs() to process_acknowledged() and move to
1418         Translator.
1420         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
1421         field for each grob description.
1423         * lily/include/translator-group.hh (class Translator_group):
1424         change to base class. Separate class from Translator. This gets
1425         rid of virtual inheritance for Engravers/Performers.
1427         * lily/staff-performer.cc (class Staff_performer): derive
1428         Staff_performer from Performer, not Performer_group_performer 
1430         * Lily/translator-group.cc (precomputed_recurse_over_translators):
1431         new function.
1432         (precompute_method_bindings): new function. Precompute lists of
1433         Translators, so we only call methods (process_music,
1434         start_translation_timestep, etc.) for Translators needing
1435         it. Also: dispose of pointer-to-member-function calls.
1437         * lily/engraver-group-engraver.cc: remove engraver_each,
1438         recurse_down_engravers ()
1440         * lily/note-head.cc (internal_print): only call
1441         glyph-name-procedure if style != default. 
1443 2005-07-16  Graham Percival  <gperlist@shaw.ca>
1445         * ly/titling-init.ly: add printallheaders option.
1447         * Documentation/user/global.itely: document printallheaders.
1449 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1451         * lily/system.cc (do_derived_mark): don't mark from object_alist_
1452         anymore, but do it centrally.  
1454         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1455         hammer hack.
1457         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
1459         * scm/output-lib.scm: remove hammer-print-function.
1461         * lily/include/pointer-group-interface.hh (extract_grob_set): new
1462         macro. Declare a Link_array<Grob> and fill it from a grob.
1463         (extract_item_set): idem for item.
1465         * lily/break-substitution.cc: add header.
1466         (fast_substitute_grob_array): rewrite for Grob_arrays.
1467         (substitute_grob_array): idem.
1469         * lily/group-interface.cc (add_thing): remove file.
1471         * flower/include/parray.hh (class Link_array): slice() is const.
1473         * lily/include/grob-array.hh: new file.
1475         * lily/grob-array.cc (spanner): new file.
1477         * lily/beam-quanting.cc (fill): read details property from beam.
1479         * lily/beam.cc: support details property.
1481         * total speedups below: approx 10%.
1483         * lily/include/beam.hh: new struct, softcode beam quanting parameters
1485         * lily/include/grob.hh (class Grob): add interfaces_ member.
1487         * lily/bezier.cc (init_polynomial_cache): new function: cache
1488         binom(3,j) t^j (1-t)^{3-j}
1489         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
1491         * lily/*.cc: substitution throughout.
1493         * lily/grob-property.cc (internal_get_object): new routine.
1494         (internal_set_object): idem. Store grob refrences in separate
1495         alist. This saves processing time, since properties aren't
1496         break-substituted, and the per grob namespace is smaller, both for
1497         grobs and non-grob properties.
1499         * scm/define-grob-properties.scm (all-internal-grob-properties):
1500         remove center-element.
1502         * lily/grob.cc: remove tweak-count, tweak-rank.
1504 2005-07-15  Graham Percival  <gperlist@shaw.ca>
1506         * Documentation/user/lilypond-book.itely: fixes example.
1508 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1510         * Documentation/user/global.itely (Creating titles):    
1511         * Documentation/user/examples.itely (All headers): change the
1512         place of \header in \score blocks (after music block) to make
1513         examples compile (cf. changes on parser.yy on 2005-07-10)
1515 2005-07-13  Graham Percival  <gperlist@shaw.ca>
1517         * python/convertrules.py: add exc -> ecc rule.
1519         * scripts/convert-ly.py: add location of convertrules.py
1520         in a comment.
1522         * Documentation/user/changing-defaults.itely: fix language.
1524 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1526         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
1528 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1530         * scm/output-socket.scm (grob-bbox): don't use inf? 
1532         * flower/include/rational.hh: add operator bool() 
1534         * scm/define-music-types.scm (music-descriptions): remove
1535         internal-class-name properties.
1537         * lily/include/event.hh: remove file.
1539         * lily/include/music-constructor.hh: remove file.
1541         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
1542         in 'types property.
1544         * lily/music.cc (duration_length_callback): new function.
1546         * lily/event.cc: remove file.
1548         * lily/music-constructor.cc: remove file.
1550         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
1552         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
1553         (get_context_key): idem.
1555         * scm/lily.scm (lambda): new option object-keys (default to #f)
1557         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
1559         * scm/output-gnome.scm: remove beam routine.
1561         * scm/output-ps.scm (scm): idem.
1563         * scm/output-svg.scm: remove beam.
1565         * ps/music-drawing-routines.ps: remove draw_beam.
1567         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
1569         * flower/include/guile-compatibility.hh (scm_from_locale_string):
1570         add scm_from_locale_string compatibility glue. 
1572 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
1574         * scripts/lilypond-book.py: Prevent occuring error when
1575         'lilypond-book --output=foo/ somefile.ly' is executed multiple
1576         times and target file shoud be overwritten.  (Error message said
1577         'input file and output file is same'.)
1579 2005-07-13  Graham Percival  <gperlist@shaw.ca>
1581         * input/regression/slur-extreme.ly,
1582         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
1583         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
1584         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
1585         "excentricity" to "eccentricity".
1587         * Documentation/user/converters.itely: fix URL for Noteedit and
1588         Rosegarden.
1590         * THANKS: added Yoshinobu Ishizaki.
1592 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1594         * scm/define-markup-commands.scm (justify-field): add. 
1596         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
1598 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1600         * lily/lookup.cc (filled_box): express filled_box with
1601         round_filled_box
1603         * scm/midi.scm (paper-book-write-midis): new function. Write all
1604         performances in numbered MIDI files.
1606         * lily/performance-scheme.cc (LY_DEFINE): new file.
1607         (LY_DEFINE): new function ly:performance-write.
1609         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
1610         new function.
1611         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
1613         * scm/framework-*.scm: use port arguments throughout.
1615         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
1617         * lily/paper-outputter.cc (Paper_outputter): take port argument.
1619         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
1621         * scm/framework-texstr.scm (output-framework): 
1623         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
1625         * scm/output-lib.scm (tablature-stem-attachment-function):
1626         tablature stem attachment fix. 
1628 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1630         * lily/bezier.cc: hardcode binomial coefficients of order 3.
1632         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
1634         * scm/define-music-types.scm (music-descriptions): don't use
1635         Music_wrapper type.
1637         * lily/paper-column.cc (print): print moment too.
1639         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
1640         remove compatibility cruft.
1642         * lily/parser.yy (score_body): \score can only begin with Music. 
1644         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
1645         make-score. Take music argument only. Move parser interaction to
1646         Scheme.
1648         * scm/lily-library.scm (scorify-music): new function.
1650         * python/lilylib.py (datadir): remove 2.1 compat kludge.
1651         (datadir): remove resource import.
1652         (print_environment): remove get_bbox()
1653         (cp_to_dir): remove pre 1.5.2 compat glue.
1655 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1657         * lily/include/simple-spacer.hh (Module): idem.
1659         * lily/include/spring.hh (struct Spring): store inverse
1660         strength. This prevents division by zero.
1662         * VERSION: release 2.7.0
1663         
1664         * lily/include/music.hh (class Music): remove Music::duration_log()
1666         * lily/stem-engraver.cc (make_stem): take duration log from event.
1668         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
1670 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1672         * scm/lily.scm (ly:load): load autochange.scm
1674         * Documentation/user/tutorial.itely (Running LilyPond for the
1675         first time): remove reference to DVI/TeX
1677         * scm/define-markup-commands.scm (text): add \text markup command.
1679         * configure.in (reloc_b): bump requirement to Python 2.2.
1681         * lily/include/dots.hh (class Dots): make has_interface() static.
1683         * python/convertrules.py (conv): add rule for ly:grob-default-font
1685         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
1686         alphabetical order.
1688         * input/regression/trill-spanner-pitched.ly: new file.
1690         * lily/font-interface-scheme.cc (LY_DEFINE): function
1691         ly:grob-default-font (changed from get-default-font).
1693         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
1695         * lily/note-head.cc (internal_print): if style is not a symbol,
1696         set style to 'default. 
1697         (internal_print): no style suffix if glyph-name-procedure not
1698         set. Default to quarter head.
1700         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
1702         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
1704         * ly/music-functions-init.ly: \pitchedTrill
1706         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
1708         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
1710         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
1712         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
1714         * po/fr.po: update
1716         * po/de.po: update.
1718 2005-07-06  Graham Percival  <gperlist@shaw.ca>
1720         * Documentation/user/changing-defaults.itely: add link
1721         to grob-iterface.
1723         * Documentation/user/advanced-notation.itely: add material
1724         to Setting automatic beam behaviour.  Thanks, Joe!
1726         * Documentation/user/lilypond.itely: change encoding to utf-8.
1728 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1730         * Documentation/user/advanced-notation.itely (Setting automatic
1731         beam behavior): Correct the documentation of
1732         revert-auto-beam-setting (backportme)
1734 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1736         * lily/ly-module.cc (ly_make_anonymous_module): define
1737         %module-public-interface of module. 
1739         * lily/lily-parser.cc (print_smob): allow printing of parser smob
1740         without lexer.
1742 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1744         * input/regression/fret-diagrams.ly: stretch example.
1746 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1748         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
1749         Fodor).
1751 2005-06-30  Graham Percival  <gperlist@shaw.ca>
1753         * Documentation/topdocs/AUTHORS.texi: update personal web address.
1755         * Documentation/user/examples.itely, lilypond-book.itely:
1756         change \RequirePackage to \usepackage.
1758         * Documentation/user/global.itely: document copyright and tagline.
1760 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1762         * Documentation/user/basic-notation.itely (Transpose): remove link
1763         to nonexistent UntransposableMusic.
1765         * scm/output-svg.scm: remove old definitions.
1767         * scripts/lilypond-book.py (do_file): search for kpsewhich before
1768         invoking.
1770         * python/lilylib.py (search_exe_path): new function.
1772 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1774         * python/lilylib.py (mkdir_p): remove setup_environment()
1775         (backportme)
1777         * buildscripts/mutopia-index.py (headertext): trim text.
1779         * Documentation/topdocs/NEWS.tely (Top): refresh.
1781         * scm/define-markup-commands.scm (wordwrap-string): new function:
1782         split string in paras and words.
1783         (wordwrap-markups): new function.
1784         (wordwrap-stencils): new function. 
1785         (justify): use it.
1786         (wordwrap): use it.
1787         (wordwrap-string): use it
1788         (justify-string): use it.
1790         * scm/lily-library.scm (regexp-split): new function.
1792         * scm/define-markup-commands.scm: remove encoded-simple. 
1793         remove font-markup.
1794         (fontsize): remove old version  of fontsize.
1795         (wordwrap): new markup function. Wrap into paragraphs.
1797         * VERSION: Branch lilypond_2_6
1798         (MINOR_VERSION): go to 2.7.0
1800 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1802         * po/zh_TW.po: update from translation project.
1804 2005-06-28  Graham Percival  <gperlist@shaw.ca>
1806         * scm/midi.scm: compile fix.
1808 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1810         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
1811         patch. Now, the tempfile module is loaded too, not only used.
1813 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
1815         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
1816         0.05 - 1.00 to 0.25 - 1.00
1818         * scm/midi.scm: moved the default-instrument-equalizer procedure
1819         to just under the insturment-equalizer-alist it takes as an
1820         argument.
1822 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1824         * Documentation/user/advanced-notation.itely (Font selection):
1825         remove CMR note.
1827         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
1829 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1831         * THANKS: Add UTF-8 marker.
1833         * Documentation/user/point-and-click.itely (http): Update: use
1834         lilypond-invoke-editor.  Fix: instruct to use user.js.
1836 2005-06-27  Graham Percival  <gperlist@shaw.ca>
1838         * ly/titling-init.ly: implements printpagenumber, increases
1839         space between dedication and title (to avoid collisions with
1840         "g" and "q" in dedication), and nicer logic about copyright
1841         and instrument fields being printed on the first page.
1842         Thanks Vincent!
1844         * Documentation/user/global.itely: document printpagenumber.
1846 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1848         * Documentation/topdocs/NEWS.tely: Update to 2.6.
1850 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1852         * THANKS: update to 2.6
1854         * VERSION: 2.6.0 released.
1856 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1858         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
1859         rule, errorneously removed probably because of misleading comment.
1861 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1863         * python/lilylib.py (datadir): py2exe comments.
1865         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
1867         * configure.in (reloc_b): make fontconfig REQUIRED.
1869 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
1871         * po/fi.po: add latest translations.
1873 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1875         * ChangeLog: recode utf-8
1877         * Documentation/pictures/lilypond.xpm (Module): edited photo as
1878         logo.
1880         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
1882         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
1884         * python/convertrules.py (do_conversion): don't print program_name
1885         from within a module
1887         * configure.in (reloc_b): bump fontforge requirement to 20050624.
1889         * python/convertrules.py (conv): add 2.6.0 dummy rule.
1891 2005-06-23  Graham Percival  <gperlist@shaw.ca>
1893         * Documentation/user/lilypond-book.itely,
1894         Documentation/user/examples.itely: add \RequirePackage{graphics}.
1896         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
1897         fixes baseline-skip.  Thanks Vincent!
1899         * Documentation/user/advanced-notation.itely, global.itely:
1900         moved "Selecting font sizes" to global, since it deals with
1901         notation font size, not text fonts.
1903 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1905         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
1906         to fonts.
1908 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1910         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
1911         workaround since /dev/stdin doesn't work on Cygwin. Using a
1912         temporary file in the current directory since latex doesn't
1913         understand the path name to the default TMP in Cygwin (at least on
1914         win XP).
1915         
1916         * Documentation/user/global.itely (Creating titles): Correct
1917         misprint in example. Thanks to Rob Vlasaty.
1919 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1921         * VERSION (PATCH_LEVEL): release 2.5.32
1923         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
1924         variable in lily module
1926         * scm/framework-ps.scm (output-classic-framework): error message
1927         regarding the classic framework.
1929         * Documentation/user/henle-flat-gray.png (Module): new file.
1931         * Documentation/user/baer-flat-gray.png (Module): new file.
1933         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
1934         whiteout for markups.
1936         * buildscripts/substitute-encoding.py (note_glyph): include _ in
1937         regex too. This fixes change clef appearance in PDF. 
1939         * ttftool/include/*: remove.
1941         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
1943         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
1945         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
1947         * ttftool/*: remove ttftool subdirectory.
1949         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
1951         * lily/ttf.cc (print_header): new file. Convert to type42, using
1952         FreeType to parse the TTF. 
1954         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
1955         and post table may differ. Pass around post_nglyphs as well.
1957 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1959         * ly/music-functions-init.ly (musicMap): new music function
1960         musicMap. 
1961         
1962 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1964         * make/mutopia-rules.make: anti-alias-factor = 2
1966         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
1967         page switch.
1969         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
1970         anti-alias-factor for lilypond-book runs.
1972         * scm/ps-to-png.scm (scale-down-image): new function.
1973         (my-system): new function.
1974         (make-ps-images): blow up GS resolution by anti-alias-factor,
1975         scale down image by anti-alias-factor.  This improves appearance
1976         of bitmaps
1977         (make-ps-images): remove showpage. Fixes spurious empty png at
1978         end.
1980         * scm/framework-ps.scm (write-preamble): downcase filename before
1981         string-matching. Should fix .TTF files (as opposed to ttf files)  
1983         * Documentation/user/tutorial.itely (Running LilyPond for the
1984         first time): separate subsections for windows, macos and unix.  
1986         * Documentation/user/invoking.itely (Updating files with
1987         convert-ly): add MacOS X note.
1989 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1991         * Documentation/user/introduction.itely (Engraving): don't include
1992         file optical-spacing, add directly.
1994         * lily/paper-outputter.cc (file): open file in binary mode. This
1995         fixes OTF embedding on windows.
1997 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1999         * scm/framework-ps.scm (write-preamble): remove debugging output.
2001         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
2003         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
2004         outdir.
2005         (install-fc-cache): install font cache in installation directories.
2007 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2009         * scm/editor.scm (editor-command-template-alist): Use char iso
2010         column, except for Emacs.
2011         (get-editor-command): Substitute char too (Bertalan Fodor).
2013 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2015         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
2016         quoted ~s.  This should fix PNG output on Windows; single quotes
2017         are regular characters on Windows.
2019 2005-06-16  Graham Percival  <gperlist@shaw.ca>
2021         * Documentation/user/basic-notation.itely: include ChoirStaff
2022         in System start delimiters.
2024         * Documentation/user/putting.itely: new doc section on
2025         fixing overlapping notation.
2027 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2029         * Documentation/user/global.itely (Paper size): \paper is in
2030         \book, not \score.
2032         * make/mutopia-rules.make: -ddelete-intermediate-files
2034         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
2036 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2038         * ChangeLog: Recode utf-8.
2040         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
2041         datadir with .py modules.
2043 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
2045         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
2047 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2049         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
2050         
2051         * scm/framework-ps.scm (write-preamble): remove status check.
2053         * Documentation/user/invoking.itely (Updating files with
2054         convert-ly): remove -o option.
2056         * VERSION (PACKAGE_NAME): release 2.5.31
2058         * scm/framework-ps.scm (write-preamble): use ly:system.
2059         (write-preamble): verbosity.
2061         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
2063         * python/convertrules.py: new file. Store conversion rules
2064         separately.
2066 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2068         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
2070 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2072         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
2073         \musicDisplay 
2075         * Documentation/user/instrument-notation.itely (More stanzas): Add
2076         reference to StanzaNumber.
2078 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2080         * THANKS: separate section for website translators.
2082 2005-06-14  Graham Percival  <gperlist@shaw.ca>
2084         * Documentation/topdocs/INSTALL.texi: update vim info;
2085         thanks Simon Bailey!
2087         * Documentation/user/advanced-notation.itely: included
2088         color names.
2090         * Documentation/user/advanced-notation.itely,
2091         Documentation/usr/notation-appendices.itely: moved
2092         color names into an appendix.
2094 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2095         
2096         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
2098         * scm/lily.scm (lambda): initialize program options from here.
2100         * scm/framework-*.scm: add header info.
2102         * lily/main.cc (parse_argv): only set output format to pdf if no
2103         other format specified.
2105         * scm/backend-library.scm (postprocess-output): process
2106         'delete-intermediate-files after running convert-to-*. This fixes
2107         PNG generation when 'delete-intermediate-files is set.
2108         
2109 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2111         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
2112         links on website. 
2114 2005-06-13  Graham Percival  <gperlist@shaw.ca>
2116         * Documentation/topdocs/INSTALL.texi,
2117         Documentation/user/lilypond-book.itely: typos.
2119 2005-06-12  Pal Benko  <benkop@freestart.hu>
2121         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
2122         added between program name and switch; -b changed to -f not
2123         to generate pdf
2125 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2127         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
2128         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
2130         * input/sakura-sakura.ly: add \midi.
2132         * buildscripts/mutopia-index.py (find): use /usr/bin/find
2133         iso. python find. 
2135         * ttftool/test.c (main): cosmetics.
2137         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
2139         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
2140         create a ttf2ps binary.
2142         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
2144         * scm/backend-library.scm (postscript->png): set rename-page-1 to
2145         true.
2147 2005-06-11  Graham Percival <gperlist@shaw.ca>
2149         * Documentation/user/lilypond-book.itely: add warning about
2150         the font warnings in dvips.
2152 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2154         * THANKS: typo
2156         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
2158         * GNUmakefile.in: remove links for .map, .enc
2159         don't fail if out/ doesn't exist yet.
2161 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2163         * ttftool/util.c (surely_read): return nbytes
2165         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
2167         * VERSION (PACKAGE_NAME): release 2.5.30
2169         * flower/string-convert.cc (precision_string): >? fix.
2171         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
2172         (make-ps-images): add verbose -q too.
2174         * lily/default-actions.cc (Module): new file. default
2175         {book,score}-print functions.
2177         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
2178         pass results via parseStringResult, lookup via ly:parser-lookup.  
2180         * lily/lily-parser.cc (Lily_parser): only clone lexer in
2181         constructors.
2182         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
2183         (parse_string): idem.
2185         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
2187         * lily/main.cc (main_with_guile): copy be_verbose_global into
2188         ly_set_option()
2190 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2192         * scm/backend-library.scm (postscript->pdf):
2193         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
2194         verbose mode.  Search for several names of gs executable.
2196 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2198         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
2199         directly. This fixes a massive memory leak, provided you use CVS
2200         GUILE.
2202 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
2204         * ly/property-init.ly: Added tieDashed.
2206         * THANKS: Added some bughunters for 2.5.
2208 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2210         * lily/program-option.cc: add debug-gc option.
2212         * lily/include/lily-guile-macros.hh: don't protect exported module
2213         objects.
2215         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
2217         * scm/backend-library.scm (postscript->pdf): use
2218         delete-intermediate-files iso. running-from-gui? 
2220         * ttftool/util.c (surely_read): robustness. Allow read() to return
2221         less bytes than requested, as per posix standards.
2223         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
2224         program option.
2226         * ttftool/include/ttftool.h ("C"): rename verbosity to
2227         ttf_verbosity. Add to public interface.
2229         * scm/music-functions.scm (unfold-repeats): remove debugging display.
2231         * lily/program-option.cc: rename from scm-option.cc
2233         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
2234         (get_help_string): Print pretty help string.
2236         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
2237         to snippet preamble.
2239         * lily/scm-option.cc: remove command-line-settings option. Fold
2240         all command-line options plus default settings in a generic
2241         interface. 
2243         * flower/getopt-long.cc (table_string): indent 2nd lines of help
2244         texts too.
2246 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2248         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
2249         or EXT_ components non-empty.
2251 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2253         * scm/lily.scm (running-from-gui?): Export.
2255         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
2256         output in .ly source directory.
2258 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2260         * ttftool/util.c (surely_lseek): more verbosity.
2262         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
2263         compile.
2265         * lily/parser.yy (Repeated_music): remove >? 
2267         * scm/backend-library.scm (postscript->pdf): Support for
2268         -dgs-font-load=1
2270         * scm/framework-ps.scm (write-preamble): make font loading
2271         switchable to GS via --define-default gs-font-load=1
2273 2005-06-09  Graham Percival  <gperlist@shaw.ca>
2275         * Documentation/user/global.itely: added \layout docs.
2277 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2279         * lily/lily-parser-scheme.cc: add unistd.h
2281 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2283         * scm/editor.scm: add char argument.
2285         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
2287         * ttftool/util.c (syserror): use errno for better error reporting.
2289         * lily/source-file.cc (get_counts): new function. Calc column,
2290         line and char count in one go.
2292         * lily/binary-source-file.cc (quote_input): rename to quote_input
2294         * lily/input.cc (set): new function.
2296 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2298         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
2299         directory part of file name to search directory.
2301         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
2302         search path and chdir to DIR if --outname=DIR used.
2304         * lily/main.cc (prepend_env_path): Bugfix: Check directory
2305         existence before appending original path.
2307 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2309         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
2310         file" massage.
2312         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
2313         texinfo.tex is always used.
2314         
2315 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2317         * flower/include/axis.hh: rename from axes.hh
2319         * lily/include/text-interface.hh (Module): rename from text-item.hh
2321         * VERSION (PATCH_LEVEL): release 2.5.29
2323         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
2325         * scm/framework-ps.scm (font-file-as-ps-string): new function.
2326         (handle-macfont): new function. Call fondu for Native mac fonts.
2328         * scm/define-markup-commands.scm (fill-line): handle text-widths =
2329         '() case.
2331 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2333         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
2334         multi-page.  Fix .eps regular expression.
2336 2005-06-07  Graham Percival  <gperlist@shaw.ca>
2338         * Documentation/user/putting.itely: add info on modifying templates.
2340         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
2341         misc small changes.
2343 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2345         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
2347         * scripts/lilypond-ps2png.scm
2349         * VERSION (PACKAGE_NAME): release 2.5.28
2351 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2353         * lily/main.cc (prepend_env_path): Do not append /, that does not
2354         work.  Localedir lives in datadir, not in prefix.
2356         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
2357         hack for windows.
2359         * flower/include/file-cookie.hh: Compile fix.
2361 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2363         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
2365         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
2366         system primitives.
2367         (gulp-port): using read-string!/partial. We don't want to read an
2368         entire PS file  (GUILE 1.6 limits strings to 16M) 
2370         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
2371         properties. Add font-interface. 
2373         * scm/define-grob-properties.scm (all-user-grob-properties):
2374         remove old bracket properties.
2376         * scm/x11-color.scm: reformat. 
2378         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
2379         LedgerLineSpanner if new StaffSymbol is found. 
2381         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
2382         staff-symbol for finishing staff. 
2384         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
2386         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
2387         change black to currentColor everywhere. This fixes color support
2388         in SVG.
2390 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
2392         * input/regression/fret-diagrams.ly: new file to test fret diagram
2393         capability
2395         * scm/output-tex.scm: remove white-dot and white-text
2397         * scm/output-ps.scm: remove white-dot and white-text
2399         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
2400         using ly:stencil-in-color instead
2401         (draw-dots) : remove call to white-dot
2403 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2405         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
2406         support.
2408         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
2410         * flower/include/file-cookie.hh: new file. lily_cookie extension 
2412         * flower/file-cookie.cc: new file. lily_cookie extension.
2413         
2414 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2416         * scm/editor.scm (editor-command-template-alist): Add syn
2417         editor (Jaap [de Vos]).
2419 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2421         * scripts/lilypond-ps2png.scm:
2422         * scm/ps-to-png.scm: New file.
2424         * scm/backend-library.scm (postscript->png): Use it.
2426         * scripts/lilypond-ps-to-png.py: Remove file.
2428         * python/lilylib.py (get_bbox, make_ps_images): Remove.
2430 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2432         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
2434         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
2435         start on grace moment. Fixes autobeam-grace.ly.
2437         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
2438         process anything unless we're at the end of a pending beam. Fixes
2439         syncopated 8ths beamed across a beat.
2441 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2443         * scm/editor.scm (editor-command-template-alist): Start emacs if
2444         emacslient fails.
2446         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
2448         * flower/file-path.cc (is_file, is_dir): Export.
2450         * lily/main.cc (prepend_env_path, set_env_file): Use them.
2452 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2454         * lily/easy-notation.cc: Added include cctype to correct
2455         compilation error.
2457 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2459         * scm/backend-library.scm (postscript->pdf): set resolution to
2460         1200, so bitmap fonts aren't that ugly. 
2462         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
2464         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
2465         parent if we have a notehead. Fixes incorrect offsets when
2466         Paper_column is very wide in the X direction.
2468         * input/regression/font-family-override.ly (Module): new file.
2470         * scm/font.scm (make-pango-font-tree): new function.
2472         * lily/beam.cc (before_line_breaking): remove warning about less
2473         than 2 visible stems. We still get a warning when there is only
2474         one stem.
2476 2005-06-01  Werner Lemberg  <wl@gnu.org>
2478         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
2479         correctly.
2481 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2483         * lily/slur-scoring.cc (generate_avoid_offsets): new
2484         function. Generate avoid offsets once per slur.
2486         * lily/slur.cc (add_extra_encompass): add dependency to
2487         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
2489         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
2490         too. Fixes inf error with added bass notes.
2492         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
2493         argument anymore.
2495         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
2497         * input/tutorial/lbook-latex-test.tex: add line length test.
2499         * scripts/lilypond-book.py (set_default_options): new
2500         function. Call this before dissecting snippets, so linewidth
2501         settings reach the snippets.
2503 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2505         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
2507 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2509         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
2511 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2513         * stepmake/aclocal.m4: More autopackage friendliness.
2515 2005-05-31  Graham Percival  <gperlist@shaw.ca>
2517         * Documentation/index.html.in: remove link to LSR.
2519         * Documentation/user/global.itely: remove duplicate
2520         "dedication" \header{} section.
2522 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2524         * VERSION (PACKAGE_NAME): release 2.5.27.
2526         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
2527         too. Plugs memory leak.
2529         * make/lilypond.fedora.spec.in (Group): remove
2530         lilypond-pdfpc-helper.
2532         * scripts/GNUmakefile (SEXECUTABLES): remove
2533         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
2535         * scm/font.scm (make-century-schoolbook-tree): add Mono as
2536         'typewriter family.
2538         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
2539         memory leak.
2541         * lily/parser.yy (score_body): don't clone Score, that's done in
2542         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
2544         * lily/score-engraver.cc (derived_mark): new function.
2545         (initialize): unprotect Paper_score. This fixes a memory leak.
2547         * lily/score-performer.cc (derived_mark): new function.
2549         * lily/score-translator.cc (get_output): use SCM for get_output() call.
2551         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
2552         spurious warning.
2554         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
2555         serif.
2557 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2559         * configure.in (reloc_b): Add --enable-relocation.
2561 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2563         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
2565         * input/regression/alignment-order.ly: add Staff example.
2567 2005-05-31  John Mandereau   <john.mandereau@free.fr>
2569         * po/fr.po: update.
2571 2005-05-31  Graham Percival  <gperlist@shaw.ca>
2573         * Documentation/index.html.in: add link to LSR.
2575 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2577         * scm/define-stencil-commands.scm (Module): new file. Register all
2578         allowed stencil expression heads in a central place.
2580         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
2581         ly:make-stencil
2583         * lily/stencil-expression.cc (all_stencil_heads): registering
2584         stencil expressions.
2586         * lily/stencil-interpret.cc: new file. Stencil expression
2587         interpreting.
2589         * input/xiao-haizi-guai-guai.ly: move file back.
2591 2005-05-30  Graham Percival  <gperlist@shaw.ca>
2593         * Documentation/user/advanced.itely, converters.itely,
2594         instrument-notation.itely, lilypond-book.itely: misc small
2595         changes.
2597 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2599         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
2601         * make/lilypond.fedora.spec.in: Fix source url.
2603         * cygwin: Update from mingw patches.
2605         * scm/editor.scm (editor-command-template-alist): Use jedit
2606         -reuseview (Bertalan), add uedit (Patrick Huberts).
2608         * input/xiao-hai-zi-guai-guai.ly: Rename from
2609         xiao-haizi-guai-guai.ly.
2611         * input/*: Reindent, do not use TAB.
2613         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
2614         white background.
2616 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2618         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
2619         numerical overflow error.
2621 2005-05-29 Laura Conrad <lconrad@laymusic.org>
2622         
2623         * abc2ly.py: fix to syntax error in multi-part output.
2625 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2627         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
2628         with disappearing span bars when alignAboveContext is active
2630         * lily/property-iterator.cc (check_grob): use is-grob?
2631         object-property. Fixes crash-key-sig-font-size.ly. 
2633 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2635         * lily/bar-line.cc (print): don't round barlines; this produces
2636         odd aliasing effects in Acroread.
2638         * lily/timing-engraver.cc (process_music): robustness fix.
2640         * lily/context-def.cc (filter_engravers): bugfix.
2642 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2644         * lily/lilypond.rc.in: Add ly-icon.
2646         * lily/GNUmakefile: 
2647         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
2648         rules.
2650 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2652         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
2654         * ps/music-drawing-routines.ps: 
2656         * scm/output-ps.scm: remove draw ez_ball.
2658         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2659         EasyNotation context definition.
2661         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
2662         Text_interface and color for making easy note heads.
2664         * lily/stencil.cc (with_color): new function.
2666         * ps/music-drawing-routines.ps: remove draw_zigzag_line
2668         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
2669         output routine. Zigzag now works in SVG too.
2671         * scm/output-tex.scm (filledbox): idem.
2673         * scm/output-svg.scm (filledbox): idem.
2675         * scm/output-ps.scm (lily-def): remove horizontal-line. 
2677         * lily/lookup.cc (horizontal_line): use draw-line. 
2679         * lily/system-start-delimiter.cc: remove old staff bracket code.
2681         * mf/feta-haak.mf: further tweaks.
2683         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
2685         * mf/feta-generic.mf: include feta-haak.
2687         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
2689         * scm/framework-ps.scm (write-preamble): only load fonts if their
2690         filename is a string. 
2692 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2694         * scm/output-svg.scm (circle): support circle.
2695         (bracket): stub for bracket.
2697         * scripts/lilypond-book.py (main): make sure --psfonts warning is
2698         correct.
2700 2005-05-26  Graham Percival  <gperlist@shaw.ca>
2702         * Documentation/user/lilypond.tely, advanced-notation.itely,
2703         basic-notation.itely, instrument-notation.itely, global.itely,
2704         introduction.itely, tutorial.itely: rearranging, editing,
2705         clean-up.
2707         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
2708         for compiling on FreeBSD.
2710 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2712         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
2713         otf files.
2715         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
2716         bugfixes.
2718         * VERSION: 2.5.26 released.
2720         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
2722 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
2724         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
2725         if printpagenumber is false.
2727 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2729         * lily/font-config.cc (init_fontconfig): comment out FontConfig
2730         cache warning.
2732         * lily/tie.cc (print): support dotted ties.
2733         
2734 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2736         * scm/define-grobs.scm (all-grob-descriptions): switch off
2737         debugging
2738         (all-grob-descriptions): Arpeggio has Y-extent.
2740         * scm/define-music-properties.scm (all-music-properties): document
2741         length-callback and start-callback as "read-only".
2743         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
2744         length-callback after creation. 
2746         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
2747         compressmusic -> compressMusic.
2749         * ly/music-functions-init.ly (oldaddlyrics): idem.
2751         * lily/parser.yy: NewLyricCombineMusic ->
2752         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
2754 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
2756         * ly/Welcome_to_LilyPond.ly: typo.
2758 2005-05-24  Graham Percival  <gperlist@shaw.ca>
2760         * Documentation/user/lilypond.tely: move changing-defaults to be
2761         before global issues.
2763         * Documentation/user/basic-notation.itely: move Transpose section
2764         here from advanced/Other.
2766         * Documentation/user/changing-defaults.itely,
2767         advanced-notation.itely: move Fonts to advanced, edit.
2769 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2771         * lily/parser.yy (bare_int): remove rule.  From now on, we require
2772         # before negative integers.
2774 2005-05-23  Graham Percival  <gperlist@shaw.ca>
2776         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
2778         * Documentation/user/lilypond.tely: change Unified index to
2779         LilyPond index.
2781         * Documentation/user/advanced-notation.itely,
2782         instrument-notation.itely: editing.
2784 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2786         * scm/lily.scm (lilypond-all): Bugfix: return failed.
2788         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
2790 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2792         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
2793         ly:port-move.  Needs to be stderr-specific on mingw.
2794         Run fixcc.
2796 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2798         * lily/general-scheme.cc (ly:port-move): Remove.
2800         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
2801         windows.
2803         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
2804         variables.  This eliminates the need for a gs.bat wrapper, which
2805         opens a console.
2807         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
2808         * scm/lily.scm (running-from-gui?): 
2809         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
2810         artifact of not compiling with -mwindows.
2812         * scm/editor.scm: Define PLATFORM.
2814 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2816         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
2817         can start to cut & paste lilypond-book fragments.  
2819         * scm/define-music-types.scm (music-descriptions): remove
2820         UntransposableMusic
2822 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2824         * scm/output-ps.scm (glyph-string): remove / before CIDs.
2826 2005-05-20  Graham Percival  <gperlist@shaw.ca>
2828         * Documentation/user/instrument-notation.itely: remove *Engraver.
2830         * Documentation/user/advanced-notation.itely: edit, rearrange.
2832 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2834         * scm/output-ps.scm (glyph-string): take cid? argument. Use
2835         findresource iso. findfont for CID CFF fonts.
2837         * VERSION (PACKAGE_NAME): release 2.5.25
2839         * ly/Welcome_to_LilyPond.ly: add  \version
2841 2005-05-20  Graham Percival  <gperlist@shaw.ca>
2843         * Documentation/user/programming-interface.itely: move
2844         \displayMusic into its own section.
2846         * Documentation/user/basic-notation.itely: finish editing.
2848 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2850         * flower/file-path.cc (find): don't throw away file_name.dir, but
2851         append to it. Fixes \include with directories.
2853         * flower/include/file-path.hh (class File_path): don't derive from
2854         Array<String>.
2856         * flower/include/file-name.hh (class File_name): remove to_str0()
2858         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
2859         Hara_kiri_engraver in separate file.
2861         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
2862         translation went wrong. Fixes vertically translated slurs.
2864 2005-05-19  Graham Percival  <gperlist@shaw.ca>
2866         * Documentation/user/basic-notaton.itely: editing.
2868 2005-05-18  Graham Percival  <gperlist@shaw.ca>
2870         * Documentation/user/macros.itexi, basic-notation.itely:
2871         add @commonprop (commonly used properties) macro.
2873 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2875         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
2877         * scripts/lilypond-book.py (invokes_lilypond): new function
2878         (main): only run fontextract if invokes_lilypond() is true.
2880         * lily/function-documentation.cc (ly_add_function_documentation):
2881         duh, use !=
2883         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
2885         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
2887         * scm/lily.scm (running-from-gui?): lowercase Darwin.
2889         * lily/function-documentation.cc (ly_add_function_documentation):
2890         use scm_hash_table_p() for checking.
2892 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2894         * Documentation/user/advanced-notation.itely (Text scripts):
2895         Change nonexisting @internalsref{Text markup} to @ref{Text
2896         markup}.  Change @internalsref{Text script} to
2897         @internalsref{TextScript}.
2899         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
2901 2005-05-17  Graham Percival  <gperlist@shaw.ca>
2903         * Documentation/user/tutorial.itely, basic-notation.itely,
2904         changing-defaults.itely: remove duplicate cindex entries
2905         that appear on the same page.
2907         * scm/define-grobs.scm: change default padding for TextSpanner.
2909         * Documentation/topdocs/AUTHORS.texi: update email address.
2911         * Documentation/user/global.itely: add info about \include.
2913 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2915         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
2916         when running-from-gui.
2918         * scm/editor.scm (get-editor): Add platform defaults.
2920         * scm/backend-library.scm (postscript->pdf): Typo.
2922 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2924         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
2926         * lily/font-config.cc (init_fontconfig): add warning about cache.
2928 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2930         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
2932 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2934         * lily/horizontal-bracket.cc (print): Take care of the direction
2935         property so brackets above the stave point downwards. 
2937         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
2938         for HorizontalBracket so it doesn't end up within the stave.
2940 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2942         * lily/GNUmakefile (default): Typo.
2944         * scm/lily.scm (PLATFORM): Export.
2946         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
2947         load-font-via-GS, ttftool or fopencookie is broken on windows.
2948         
2949         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
2950         -dSAFER, that is broken on windows.
2952 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2954         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
2955         for FlexLexer.h
2957         * scripts/lilypond-invoke-editor.scm: remove stray -
2959 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2961         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
2962         Fixes deprecation warning.
2964         * flower/include/string.icc (to_string): Only inline if
2965         -DSTRING_UTILS_INLINED.
2967         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
2968         name.  Remove windows comment.
2970         * scm/editor.scm (slashify): New function.
2971         (get-editor-command): Use it.
2972         (get-command-template): Do not alter editor command if
2973         environment value includes `%(file)s' magic.
2975         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
2976         (dissect-uri): Use it.
2977         (unquote-uri): Bugfix.
2979 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2981         * scm/framework-ps.scm (write-preamble): add TTF rule.
2983         * Documentation/topdocs/README.texi (Top): remove note about
2984         xdelta.
2986         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
2987         requirement.
2989         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
2990         function. Figure out where FlexLexer.h lives
2992         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
2993         
2994 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2996         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
2997         with Windows root in file name.
2999         * scm/backend-library.scm (ly:system): Only redirect output (using
3000         system and shell, ugh) if /dev/null is writable.
3002         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
3003         windows icon.
3005         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
3006         on Mingw.
3008         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
3009         click.
3011         * flower/file-path.cc (is_dir, is_file): New function.  Actually
3012         use result of stat when available.
3014         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
3015         absolute file name and root.
3017         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
3019         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
3021         * flower/file-name.cc (slashify): Bugfix, do substitute if no
3022         slashes in file name.
3024 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3026         * Documentation/user/preface.itely (Preface): Run
3027         texinfo-all-menus-update.
3029         * scm/editor.scm (get-editor-command): Bugfix: allow full
3030         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
3032         * Documentation/pictures/lilypond-48.xpm: New file.
3034         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
3036         * ly/Welcome_to_LilyPond.ly: New file.
3038         * lily/main.cc (main): Only identify if we have a terminal.
3040         * scm/backend-library.scm (postscript->png)
3041         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
3042         non-/bin/sh).
3044 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
3046         * Documentation/topdocs/AUTHORS.texi: polish, update.
3048 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3050         * Documentation/user/preface.itely (Notes for version 2.6): new
3051         notes for 2.6
3053         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
3054         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
3055         is not fully contained" warnings.
3057         * lily/slur-scoring.cc (get_bound_info): remove warning.
3059         * lily/staff-symbol-engraver.cc (process_music): start initial
3060         spanner in process_music(). This fixes overrides of StaffSymbol
3061         properties.
3063         * scm/framework-pdf.scm (Module): remove.
3065         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
3067         * lily/ambitus-engraver.cc: formatting cleanups.
3069         * mf/feta-solfa.mf (Module): remove.
3071         * ChangeLog: more details about contributions.
3073 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3075         * lily/align-interface.cc (align_elements_to_extents): warn if
3076         called too early. Fixes: disappearing-staff-lines.ly
3078         * VERSION (PACKAGE_NAME): release 2.5.24
3080 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3082         * stepmake/aclocal.m4: Typo.
3084         * flower/string.cc (substitute): Take two strings or two
3085         characters.  Update callers.
3087 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3089         * flower/file-name.cc (File_name): Slashify.
3091         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
3093         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
3095         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
3097         * configure.in (gui_b): Use it.
3099         * lily/lilypond.rc.in: New file.
3101         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
3103 2005-05-12  Graham Percival  <gperlist@shaw.ca>
3105         * Documentation/user/advanced-notation.itely: edit of Text
3106         section; clarify text scripts vs. text markup.
3108 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3110         * lily/multi-measure-rest-engraver.cc
3111         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
3112         separation items on start. Fixes mm rests in start of score.
3114         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
3115         don't access StaffSymbol if not there.
3116         Fixes: crash-staff-symbol-engraver.ly.
3118         * lily/instrument-name-engraver.cc (class
3119         Instrument_name_engraver): data member first_. Create
3120         InstrumentName on start. 
3122 2005-05-12  Graham Percival  <gperlist@shaw.ca>
3124         * Documentation/user/instrument-notation.itely: add guitar
3125         position.
3127         * Documentation/user/introduction.itely,
3128         Documentation/user/lilypond.tely,
3129         Documentation/user/tutorial.itely: begin pruning
3130         unused (duplicated) cindex entries and misc cleanup.
3132 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3134         * input/test/volta-chord-names.ly: Bring the explanation up to
3135         date.
3137 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
3139         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
3140         Specify `@documentencoding utf-8' for html, ignore warnings.
3142 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
3144         * THANKS: Added bughunters.
3146 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
3148         * lily/main.cc: update help string for `lilypond -H'.
3150         * po/fi.po: update.
3151         
3152 2005-05-10  Graham Percival  <gperlist@shaw.ca>
3154         * Documentation/user/advanced-notation.itely: minor fixes.
3156 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
3158         * scm/editor.scm: New module.
3160         * scm/lily.scm (gui-main): Use it.
3162         * scm/framework-gnome.scm (spawn-editor): Use it.
3164         * scripts/lilypond-invoke-editor.scm: Use it in new script.
3166 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3168         * scm/framework-ps.scm (load-font-via-GS):  new function.
3170         * lily/pango-font.cc (pango_item_string_stencil): add support for
3171         CID keyed font.
3173         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
3175 2005-05-10  Graham Percival  <gperlist@shaw.ca>
3177         * Documentation/user/basic-notation.itely: add @ref.
3179         * Documentation/user/advanced-notation.itely: add example
3180         of 5/8 beaming.
3182 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3184         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
3186         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
3187         going through ps2pdf wrappers.
3189 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
3191         * Documentation/user/instrument-notation.itely: petrucci note
3192         heads: updated docu
3194         * input/regression/note-head-style.ly: updated regression test;
3195         indentation fixes
3197         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
3198         heads as default
3200         * mf/parmesan-heads.mf: minor editing; use musicological names
3201         (rather than optical description) as note head names
3203         * scm/output-lib.scm: complete petrucci heads
3205 2005-05-09  Pal Benko  <benkop@freestart.hu>
3207         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
3208         heads, but bigger)
3210 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3212         * lily/main.cc (main_with_guile): Remove no files check.
3214         * lily/main.cc (ly:usage): Export to Scheme.
3216         * scm/lily.scm (no-files-handler): New function.
3218         * scm/lily.scm (lilypond-main): Use it.
3220         * configure.in (gui_b): Add mbrtowc checking.
3221         Resurrect [utf8/]wchar.h checking.
3223 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3225         * Documentation/user/advanced-notation.itely (Metronome marks):
3226         Add link to the program reference for MetronomeMark
3228         * Documentation/user/lilypond-book.itely (An example of a
3229         musicological document): Correct the example using psfonts 
3231 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
3233         * po/fi.po: update after a lesson how to update entries against
3234         source.
3235         
3236         * po/TODO: document the lesson.
3238 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3240         * configure.in (gui_b): remove wcrtomb checking.
3242         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
3243         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
3245 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3247         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
3248         keep Scheme expressions and strings unmodified when doing the
3249         conversion to postfix notation for slurs and beams. Should
3250         hopefully solve most related conversion problems. 
3252         * Documentation/user/lilypond-book.itely : Clarify and correct how
3253         to call dvips with -h psfonts.
3255 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3257         * Documentation/user/instrument-notation.itely (Entering lyrics):
3258         Typo.  Fixes build.
3260 2005-05-09  Graham Percival  <gperlist@shaw.ca>
3262         * Documentation/user/lilypond-book.itely: document PSFONTS file.
3264         * Documentation/user/lilypond.tely, lilypond-book.itely,
3265         tutorial.itely: change references to 2.5.x to 2.6.x.
3267         * Documentation/user/instrument-notation.itely: clarified \addlyrics
3268         vs \lyricmode.
3270         * Documentation/user/invoking.itely: remove old info about
3271         lilypond-profile.
3273         * Documentation/topdocs/INSTALL.texi: remove old info about
3274         lilypond-profile, add warning about needing international fonts
3275         to build docs.
3277 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3279         * lily/include/grob-info.hh (class Grob_info): make data member
3280         private. Changes throughout.
3282         * input/regression/alignment-order.ly: new file. 
3284         * lily/vertical-align-engraver.cc (acknowledge_grob): read
3285         alignAboveContext and alignBelowContext
3287 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3289         * lily/pfb.cc (LY_DEFINE): add cast.
3291         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
3292         matches .otf
3293         (write-preamble): warn about unknown fonts.
3295         * lily/pfb.cc (Module): new function ly:otf->cff
3297         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
3298         (get_otf_table): new function.
3300 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3302         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
3303         iso. ps2png.
3305 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
3307         * po/fi.po: apply second round of update.
3309 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3311         * scm/x11-color.scm (make-x11-color-handler): don't use
3312         #\sp. Apparently doesn't work on all platforms. 
3314 2005-05-06  Graham Percival  <gperlist@shaw.ca>
3316         * Documentation/user/advanced-notation.itely, putting.itely,
3317         tutorial.itely, global.itely, introduction.itely: really minor fixes.
3319 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3321         * VERSION (PACKAGE_NAME): release 2.5.23
3323 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3325         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
3326         convert to utf-8.
3328         * THANKS: Add translators for this release, convert to utf-8.
3330         * mf/GNUmakefile (MFTRACE_FLAGS):
3331         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
3332         outdir as option (WAS: hardcoded).
3334 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3336         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
3337         finished_span_
3339         * THANKS: add Hans Forbrich.
3341         * Documentation/topdocs/NEWS.tely (Top): document new feature.
3343         * Documentation/user/basic-notation.itely (Staff symbol): document
3344         start/stop staff. Reference to ossia.ly
3346         * input/test/ossia.ly: new example using stop and startStaff.
3348         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
3349         in other words, don't create "|" barline at start of the score.
3350         (start_translation_timestep): don't set whichBar for start of score.
3352         * input/regression/staff-halfway.ly: use new functionality.
3354         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
3355         start and stop staff based on events.
3357         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
3359         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
3361 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3363         * Documentation/user/programming-interface.itely (How markups work
3364         internally ): remove \encoding reference.
3366 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3368         * scripts/convert-ly.py: Attempt to do a smarter update of 
3369         text markups from versions < 1.9.0 with arbitrary nesting.
3371 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
3373         * po/fi.po: convert to utf-8, and update.
3375 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3377         * make/lilypond.suse.spec.in: update from suse 2.4 package.
3379         * lily/*.cc: more <? >? to min/max changes
3381         * lily/include/interpretation-context-handle.hh: rename
3382         Interpretation_context_handle to Context_handle.
3384 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
3386         * input/regression/GNUmakefile (local_delete): use `find` together 
3387         with `xargs` to avoid too long argument-lists in cmd line.
3389 2005-05-04  Graham Percival  <gperlist@shaw.ca>
3391         * Documentation/user/introduction.itely: updates "About this manual".
3393         * Documentation/user/advanced-notation.itely,
3394         invoking.itely: minor fixes.
3396 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3398         * COPYING: add font exception. Update FSF address. 
3400         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
3401         should be taken without child context.
3403         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
3405         * scm/define-markup-commands.scm (triangle): new command, as
3406         robust replacement for unicode Delta/Triangle.
3408 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3410         * ps/music-drawing-routines.ps: add fillp argument.
3412         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
3414         * lily/font-config.cc (init_fontconfig): don't add cff/
3416         * VERSION (PACKAGE_NAME): release 2.5.22
3418         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
3420         * lily/grace-engraver.cc (consider_change_grace_settings): use
3421         is_alias(). Fixes problem with CueVoice grace notes. 
3423         * lily/simultaneous-music-iterator.cc (construct_children): call
3424         Music_iterator::quit() for iterators that start out invalid. This
3425         fixes indefinitely continuing contexts.
3427         * buildscripts/substitute-encoding.py: new file
3429         * Documentation/user/basic-notation.itely (Basic polyphony): fix
3430         missing @end 
3432         * scripts/lilypond-book.py (write_if_updated): print file name.
3434         * Documentation/user/basic-notation.itely (Explicitly
3435         instantiating voices): idem.
3437         * Documentation/user/advanced-notation.itely (Text spanners):
3438         remove stray { } 
3440         * lily/context.cc (default_child_context_name): the default child
3441         is now first in accepts_list_.
3443         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
3444         \defaultchild to all relevant contexts.  This fixes:
3445         drums-pitch.ly.
3447         (Probably also fixes similar problems with ancient
3448         transcriptions getting CueVoices instead of the desired voices.)
3450         * lily/context-def.cc (get_default_child): new function.
3451         (get_accepted): place default child in front of list.
3453         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
3455         * lily/include/context-def.hh (struct Context_def): add
3456         default_accept_
3458 2005-05-03  Graham Percival  <gperlist@shaw.ca>
3460         * scm/define-grobs.scm: remove "remove-first" line, since
3461         the absent property is set to #f anyway.
3463         * Documentation/user/basic-notation.itely,
3464         advanced-notation.itely, instrument-notation.itely: minor
3465         fixes.
3467         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
3469         * Documentation/user/advanced-notation.itely,
3470         changing-defaults.itely: consolidate Text stuff in
3471         advanced notation.
3473         * Documentation/user/global.itely: better docs for \header.
3475         * Documentation/user/putting.itely: new chapter; placeholder
3476         for future expansion.
3478         * Documentation/user/examples.itely: moved "suggestions for
3479         writing LP files" section into putting.itely.
3481         * Documentation/user/lilypond.itely: added new chapter,
3482         fixed the short table of contents.
3484 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3486         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
3487         infinity for unfeasible beams.
3489         * make/lilypond.fedora.spec.in (Group): idem.
3491         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
3493         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
3495         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
3496         fonts directly.
3498         * buildscripts/gen-emmentaler-scripts.py (i): idem.
3500         * mf/GNUmakefile: remove all CFF rules.
3502         * scm/framework-ps.scm (ps-embed-cff): reinstate.
3504         * lily/open-type-font-scheme.cc (LY_DEFINE):
3505         new function ly:otf-font-table-data.
3506         (LY_DEFINE): new function otf-font?
3508 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3510         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
3511         ($(outdir)/Fontmap.lily): idem.
3513         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
3514         for PFAEmmentaler-XXX.pfa. 
3516         * Documentation/user/music-glossary.tely (accidental): NL
3517         translation of accidental.
3519 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3521         * flower/include/international.hh: Bugfix: include "string.hh".
3523         * lily/include/mingw-compatibility.hh: New file.
3525         * flower/include/libc-extension.hh (memrev): Rename from strrev.
3527         * configure.in: Search for mingw wcrtomb library.
3529 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3531         * scripts/convert-ly.py: Bug fix
3533         * Documentation/user/changing-defaults.itely (Common tweaks):
3534         Added example where the context has to be specified explicitly
3535         (MetronomeMark). 
3537 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3539         * scripts/lilypond-book.py (ly_options): set timing to #f for
3540         notime option.
3542         * scripts/convert-ly.py (conv): typo.
3544         * flower/*.cc: remove <? and >?
3545         
3546         * lily/*.cc: remove <? and >?
3548         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
3549         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
3550         editor.
3552 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3554         * lily/part-combine-engraver.cc: add space to variable list.
3556 2005-04-30  Graham Percival  <gperlist@shaw.ca>
3558         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
3559         remove-first to false (matches docs)
3561         * Documentation/user/advanced-notation.itely: corrected docs
3562         concerning remove-first.
3564 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3566         * lily/part-combine-engraver.cc: make sure that the relevant
3567         properties are included in the documentation.
3569 2005-04-28  Graham Percival  <gperlist@shaw.ca>
3571         * Documentation/user/lilypond-book.itely: Bernard's docs
3572         for \betweenLilyPondSystem.
3574 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3576         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
3577         remarks.
3579 2005-04-28  Pal Benko  <benkop@freestart.hu>
3581         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
3582         only on vertical lines of flexa shape, and use a constant
3583         thickness value for horizontal lines (patch slightly modified by
3584         Jürgen Reuter)
3586         * lily/include/mensural-ligature.hh: make 2 comments clearer
3588 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
3590         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
3591         to need_extra_horizontal_space; bugfix: use class scope to avoid
3592         global namespace pollution
3594         * Documentation/user/instrument-notation.itely (ligatures): added
3595         comment on possible future syntax change and how to work around
3597         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
3598         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
3599         intervals (fixes agnus dei example)
3601         * Documentation/user/instrument-notation.itely (white mensural
3602         ligatures): selected a more illustrative example
3604 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
3606         * Documentation/index.html.in: specify utf-8 charset in meta content.
3608 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3610         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
3611         empty 2nd page for single page.
3613         * scm/lily.scm: remove p&c definitions.
3615         * po/zh_TW.po (Module): new translation.
3617         * lily/lily-guile.cc (ly_chain_assoc): remove.
3619         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
3620         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
3622 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3624         * lily/beaming-info.cc: remove infinity_i
3626         * scripts/abc2ly.py (out_filename): fix thinko with \version.
3628 2005-04-26  Graham Percival  <gperlist@shaw.ca>
3630         * Documentation/user/basic-notation.itely,
3631         instrument-notation.itely, advanced-notation.itely,
3632         changing-defaults.itely: minor fixes.  Added docs
3633         for colors to advanced-notation.itely.
3635         * Documentation/user/advanced-notation.itely: fixed compile
3636         problem and added Bernard's x11-color doc patch.
3638 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3640         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
3641         alright this time round.
3643 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3645         * Documentation/topdocs/INSTALL.texi (Top): idem.
3647         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
3649         * VERSION (MAJOR_VERSION): release 2.5.21
3651         * scm/output-ps.scm (grob-cause): bugfix.
3653 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3655         * cygwin/*: Update.
3657         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
3658         stuff.
3660         * scm/output-ps.scm (grob-cause): Bugfix.
3662         * scm/lily.scm (ly:load): Remove x11-color.
3664         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
3665         quote executable, fixes getting version from program --with
3666         --options.
3667         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
3668         $ac_exeect.
3670         * Documentation/user/GNUmakefile: Only build music-glossary with
3671         rendered lilypond snippets during web.
3673 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3675         * po/de.po: update.
3677         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
3679 2005-04-22  Laura Conrad <lconrad@laymusic.org>
3681         * scripts/abc2ly:
3682         second title line append with punctuation dash character;
3683         encode abc2ly python strings in utf-8
3684        
3685 2005-04-21  Laura Conrad <lconrad@laymusic.org>
3687         * scripts/abc2ly fix chords (again)
3689 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
3691         * scm/x11-color.scm: new file
3692         All x11 color names can be accessed with:
3693         #(x11-color 'ColorName),
3694         #(x11-color "ColorName") or:
3695         #(x11-color "color name")
3696         If the x11 color name is not recognised then it defaults
3697         to black
3699         * scm/lily.scm: amended to call scm/x11-color.scm
3701 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3703         * Documentation/user/invoking.itely (Reporting bugs): comment out
3704         reference to online PNG bug repository.
3706 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3708         * lily/translator-scheme.cc (ly:translator-property): Remove.
3709         Update callers.
3711         * lily/context-scheme.cc (ly:context-now): Move from translator.
3712         Update callers.
3714 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3716         * input/regression/grid-lines.ly (skips): refine example.
3718         * scm/define-context-properties.scm
3719         (all-user-translation-properties): doc autoBeamCheck
3721         * input/regression/grid-lines.ly (Module): new file.
3723         * lily/grid-point-engraver.cc (Module): new file.
3725         * lily/grid-line.cc (Module): new file.
3727         * lily/grid-line-span-engraver.cc (Module): new file.
3729         * lily/grid-line-interface.cc (Module): new file.
3731 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
3733         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
3734         missing parameter, actualy cdr through list.  Actually return a
3735         list with ENTRY removed (was '()).
3737         * scripts/convert-ly.py: Update.  Print warning if file cannot be
3738         opened.
3739         (do_conversion): Fix printing of continuation comma.
3741         * Documentation/user/advanced-notation.itely (Beam formatting):
3742         Remove refbugs about compound time and mixed duration.
3744         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
3745         modulo moments explicitely.
3747         * lily/moment.cc (operator %): New function.
3749         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
3751         * lily/translator-scheme.cc (ly:translator-now,
3752         ly:translator-property): New function.
3754         * scm/auto-beam.scm (default-auto-beam-check): New function.
3756         * lily/auto-beam-engraver.cc (test_moment): Use it.
3758         * flower/rational.cc (operator %): Bugfix.
3760 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
3762         * scripts/abc2ly: Bugfix
3764 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3766         * python/fontextract.py (write_extracted_fonts): bugfix, too many
3767         %'s on EndFont comment.
3769         * lily/ledger-line-spanner.cc: some more words of explanation.
3771 2005-04-20  John Williams <williams@tni.com>  
3772         
3773         * scripts/lilypond-book.py: htmlquote bugfix.
3774         Allow snippets to be given distinct filenames.
3775         Allow the default alt text to be overridden.
3777 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
3779         * ly/performer-init.ly: Bugfix
3781         * THANKS: Added bughunters.
3783 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3785         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
3787         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
3788         position (was: use modulo measure length).
3790         * configure.in (no gui_b): Remove optional gtk+ requirement.
3792 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3794         * Documentation/user/basic-notation.itely (Pitches): add
3795         LedgerLineSpanner.
3797         * lily/dynamic-engraver.cc (process_music): set right bound to
3798         script if present. Else, do not set.
3799         (acknowledge_grob): only set right bound of finished spanner to
3800         note column if no other bound is set.
3802         * python/lilylib.py (make_ps_images): switch back to png16m.
3803         
3804 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3806         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
3807         writing up to date file.  Add dvips usage suggestion.
3809         * scripts/convert-ly.py: Fix error message.
3810         Print usage if no files on command line.
3811         (usage): Add example usage.
3813         * input/test/compound-time.ly: New file.
3815         * input/test/circle.ly: New file.
3817         * Documentation/topdocs/NEWS.tely: Use them.
3819         * input/test/boxed-stencil.ly: Remove \score.
3821         * buildscripts/mf-to-table.py (base): Add .log dependency.
3823         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
3824         pfa's.  Add .log dependency
3826         * scm/define-markup-commands.scm (lower): New command.
3828         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
3829         make it default.
3831 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3833         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
3834         also to finished cresc as right bound. This fixes:
3835         skip-string-decresc.ly
3837         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
3838         relative_coordinate if extent is empty.
3840         * lily/stem.cc (width_callback): determine correct extent if flag
3841         is not there. This fixes slur-no-flag.ly
3843         * lily/grace-engraver.cc (consider_change_grace_settings): new
3844         function.
3845         (initialize): also consider_change_grace_settings() on
3846         initialization. Fixes large grace notes at start of score.
3848         * lily/break-align-interface.cc (do_alignment): don't translate if
3849         total_extent is empty.
3851         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
3853 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3855         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
3856         with slash.
3858 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3860         * stepmake/aclocal.m4: Remove tfm_path.
3862 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3864         * scm/music-functions.scm (markup-expression->make-markup): fix
3865         bug with cons arguments of markup commands.
3866         (music->make-music): fix music expression property list building
3868 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3870         * aclocal.m4: Massage package names.
3872         * SCons updates.
3874 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3876         * VERSION (PACKAGE_NAME): release 2.5.20
3878         * lily/stem.cc (calc_stem_info): add minimum Y extent of
3879         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
3881         * lily/percent-repeat-engraver.cc (try_music): add measure before
3882         next_moment to future processing moment. Fixes:
3883         percent-repeat-mm-rest.ly
3884         (process_music): don't add moment for 2nd time.
3886         * input/regression/repeat-percent.ly: add mmrests as extra test.
3888         * lily/axis-group-engraver.cc (acknowledge_grob): read
3889         keepAliveInterfaces to decide what to kill.
3891         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
3892         percent-repeat-interface to keepAliveInterfaces. This fixes
3893         percent-repeat-harakiri.
3895 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3897         * SCons updates.
3899 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3901         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
3903         * aclocal.m4: remove --enable-tfm-path configure option
3905         * input/test/ancient-font.ly (lowerStaff): clef name errors.
3907         * scm/backend-library.scm (postscript->png): newline after
3908         finishing command.
3910         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
3911         (LY_DEFINE): ly:paper-score-paper-systems: new function 
3913         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
3915         * lily/score.cc (default_rendering): use Music_output too.
3917         * input/test/chord-names-languages.ly (Module): rename file.
3919         * lily/text-spanner.cc: add bound-padding.
3921         * lily/paper-book.cc (systems): accept Paper_score
3922         iso. Paper_system vector. 
3924         * input/regression/line-arrows.ly: new file.
3926         * lily/paper-score.cc (process): run get_paper_systems() only once.
3928         * lily/line-spanner.cc (line_stencil): add arrows.
3930 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
3932         * lily/line-interface.cc (make_arrow): new function. 
3933         (arrows): idem.
3935 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
3937         * input/test/chord-names-german.ly: update for italian/french
3938         chords.
3939         
3940         * Documentation/user/instrument-notation.itely (Printing chord
3941         names): update.
3943 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3945         * lily/include/paper-score.hh (class Paper_score): remove unused
3946         prototypes.
3948         * lily/book.cc (process): add -COUNT to midi output.
3950         * lily/score.cc (book_rendering): remove outname argument
3951         (book_rendering): return list of Music_outputs. 
3953         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
3955         * lily/book.cc (process): loop over Music_outputs returned from
3956         Score::book_rendering().
3958         * lily/*.cc (width_callback): remove spurious "unused" warnings
3959         for assert (axis==[XY]_AXIS); 
3961         * lily/include/music-output.hh (class Music_output): smobify class.
3963         * lily/include/paper-score.hh (class Paper_score): make members
3964         private.
3966         * lily/performance.cc (process): return #f iso. #<undefined>. This
3967         prevents #<undefined> leaking into GUILE-userspace.
3969 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3971         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
3973 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
3975         * scm/chord-name.scm : support for italian and french
3976         chords names.
3978         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
3979         a space defined by chordPrefixSpacer when the root name is
3980         direclty followed by a prefix.
3982         * ly/engraver-init.ly : chordPrefixSpacer       
3983         * scm/define-context-properties.scm : chordPrefixSpacer
3984         * ly/property-init.ly : italianChords, frenchChords 
3986 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3988         * mf/feta-din.mf: Remove.
3990         * mf/GNUmakefile (fontdir): Bugfix.
3992         * mf/SConstruct: Some updates.
3994         * SConstruct: Require pkg-config.
3995         (test_program): Bugfix for double digit version compares, use
3996         integer (not string-) compare.
3997         Optionally require gs 8.14.
3999         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
4001         * lily/*: s/ifdef HAVE_*/if have/.
4003         * SConstruct (test_lib): New function.  Update pkg-config and some
4004         other requirements.
4006         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
4007         freetype, pangof2t.
4009 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4011         * po/lilypond.pot, ...: Update using bison-CVS.
4013         * python/lilylib.py (make_ps_images): Fixo.
4015 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4017         * python/lilylib.py (make_ps_images): typo.
4019         * configure.in (gui_b): make bison optional.
4021         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
4023 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
4025         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
4026         with one parameter can be defined in a LaTeX file when processed
4027         by lilypond-book this will be evaluated between the systems of
4028         a multi-system score. The parameter is the number of systems processed.
4030 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4032         * python/lilylib.py (make_ps_images): Escape newline.
4034         * Documentation/user/music-glossary.tely: Run
4035         texinfo-all-menus-update.
4037 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4039         * scm/lily-library.scm (old-relative-not-used-message)
4040         (version-not-seen-message): Add input-file-name-location to message.
4042         * lily/parser.yy (lilypond): Add token aliases.
4044         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
4045         not confuse with alteration.
4046         (alteration): Add.
4048 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4050         * python/lilylib.py (make_ps_images): use -dEPSCrop
4052         * VERSION (PACKAGE_NAME): release 2.5.19 
4054         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
4055         only put xrefs in info documentation.
4057         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
4058         .pdf rule to tex-rules.make.
4060         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
4061         from -systems.* output.
4063         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
4064         directly, remove -$(PAGESIZE) target.
4066         * input/test/embedded-postscript.ly: update.
4068 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4070         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
4072         * Documentation/user/changing-defaults.itely (Font selection):
4073         document font-name.
4075         * input/regression/font-name.ly: show Pango fonts for
4076         font-name. Update example. 
4078         * lily/pango-select.cc (properties_to_pango_description): don't
4079         convert symbol font-size to number, but use to lookup.
4081         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
4083         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
4084         (NAME . FILE-NAME) tuples for font descriptions. 
4085         (write-preamble): display BeginFont DSC comments.
4087         * python/fontextract.py (write_extracted_fonts): new file. Extract
4088         font resources from a PS file.
4090         * scripts/lilypond-book.py (option_definitions): --psfonts option.
4091         (Compile_error.process_include): do_file returns chunks.
4093         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
4095         * make/lysdoc-targets.make: .texi is .PRECIOUS
4097         * scripts/lilypond-book.py (write_if_updated): new function.
4099 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4101         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
4103 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4105         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
4107         * input/regression/markup-syntax.ly: remove \score.
4109         * scm/define-markup-commands.scm (draw-circle): add fill argument
4111         * scm/stencil.scm (make-circle-stencil): add fill argument
4113         * ps/music-drawing-routines.ps: add fill argument.
4115         * ly/performer-init.ly: add CueVoice to MIDI too.
4117         * ps/music-drawing-routines.ps: new routine BeginEPSF /
4118         EndEPSF.
4120         * input/regression/markup-eps.ly: new file.
4122         * scm/framework-ps.scm (write-preamble): change order: vars should
4123         be inited before procedures.
4125         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
4126         for EPS files.
4128         * scm/define-markup-commands.scm (epsfile): add epsfile command.
4130 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4132         * configure.in (gui_b): add check for ghostscript 8.15
4134 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4136         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
4137         start of line. Fixes cresc-after-newline.ly
4139         * lily/source-file.cc (file_line_column_string): use get_column().
4141 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4143         * lily/source-file.cc (get_column): utf-8 support for column numbers.
4145 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4147         * lily/*: use message () iso progress_indication () for messages.
4148         Revise/uniformise user messages.
4150         * flower/warn.cc (progress_indication): New function.
4151         (message): Use it.  Fixes newline problems.
4153         * config.make.in (webdir): Sort out install dirs.
4155         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
4157         * python/lilylib.py (command_name): Bugfix.
4158         (make_ps_images):
4160 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
4162         * lily/main.cc: --help says what types of backends are availabe
4164 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4166         Fix ./VERSION dependency, and without need to reconfigure.
4168         * lily/main.cc (setup_paths): Update.
4170         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
4172         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
4174         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
4175         Add \line for some simplistic cases.
4177         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
4179 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4181         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
4182         to compile LY files (useful for adding eg. "-I" args)
4183         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
4184         2Gnome command for gnome backend.
4185         (LilyPond-command-formatgnome): call the 2Gnome command. key
4186         binding: C-c C-g
4188 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4190         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
4191         depend on all PNG images.
4193 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4195         * GNUmakefile.in: Bugfix: also link .map files.
4197 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4199         * scm/music-functions.scm (music->make-music): generate 
4200         a (make-music ...) sexpr from a music expression.
4201         (display-scheme-music): use guile pretty printer to display the
4202         make-music sexpr.
4204 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4206         * ly/engraver-init.ly: reindent.
4207         Add CueVoice.
4209         * scm/music-functions.scm (music-pretty-string): handle moments
4210         too.
4211         (music-pretty-string): only print non-empty lists.
4212         (cue-substitute): create CueVoice context, which has smaller type.
4214         * lily/moment-scheme.cc (LY_DEFINE): new methods
4215         ly:moment-grace-{numerator,denominator}
4217         * lily/context-handle.cc: remove quit() method. 
4219         * lily/font-config.cc (init_fontconfig): be verbose about font path.
4220         (init_fontconfig): success is 0, not !0
4222 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4224         * mf/feta-nummer-code.mf (code): add plus glyph.
4226         * lily/tie.cc (print): idem.
4228         * lily/slur.cc (print): don't use thickness property for
4229         slur shape-thickness.
4231         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
4232         while adding stencils.
4234         * scm/define-markup-commands.scm (with-color): with-color markup
4235         command.
4236         (whiteout): new markup command 
4237         (filled-box): new markup command
4239 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4241         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
4242         test for PDF docs.
4244         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
4245         PFAAybabtu-Regular.  Fixes feta font in PDFs.
4246         
4247         Notes for tetex-3.0 make web:
4248            psclean.map: s/uhv8a/uhvr8a/
4249            config.ps add:
4250                 p +psfonts_t1.map
4251                 p +psclean.map
4252                 p +typeface.map
4254 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4256         * scm/music-functions.scm (music-pretty-string): fix bug with
4257         string argument.
4259 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
4261         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
4263 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4265         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
4266         only process options if they're there.
4267         (write_file_map): add version-seen? to snippet-map.ly
4269 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
4271         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
4272         formatting cleanups.
4274         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
4275         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
4277 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4279         * scm/framework-ps.scm (ps-font-command): don't hash, just use
4280         name directly.
4282         * lily/main.cc (setup_paths): either add mf/out to search path or 
4283         fonts/{otf,type1,etc}
4284         
4285         * lily/font-config.cc (init_fontconfig): either add mf/out to
4286         FontConfig or fonts/{otf,type1,etc}
4288         * GNUmakefile.in: don't put mf/ link in share/ dir.
4290         * lily/staff-spacing.cc: move same-direction-correction to
4291         note-spacing-interface
4293         * scm/lily.scm (lilypond-main): use variable argument count for
4294         exception handler.
4296         * lily/font-config.cc (init_fontconfig): add operator pacification
4297         message.
4299         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
4301         * buildscripts/gen-emmentaler-scripts.py (i): generate
4302         PFAEmmentaler as well.
4304         * scm/framework-ps.scm (munge-lily-font-name): new function
4305         (write-preamble): hack: insert PFA equivalent of CFF into
4306         .PS. This makes LilyPond output printable on normal PS printers
4307         again.
4309         * buildscripts/gen-emmentaler-scripts.py (i): generate
4310         PFAEmmentaler.pfa aswell.
4312 2005-04-06  John Williams <williams@tni.com>  
4313         
4314         * scripts/lilypond-book.py: refactor the compose_ly procedure.
4315         
4316 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4318         * scm/page-layout.scm (default-page-make-stencil): always combine
4319         the header stencil, even if empty. This prevents the body text to
4320         reach up to the margins.
4322         * po/rw.po (Module): new file, for Kinyarwanda.
4324         * input/test/spacing-optical.ly (Module): new file.
4326         * lily/staff-spacing.cc: add same-direction-correction
4328 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4330         * Documentation/user/introduction.itely (Engraving): Comment-out
4331         non-existent file.
4333 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4335         * scm/define-grob-properties.scm (all-user-grob-properties): add
4336         same-direction-correction
4338         * VERSION: release 2.5.18
4340 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4342         * lily/grob.cc (mark_smob): Check pscore->layout_ before
4343         dereferencing.  Fixes make web.
4345         * lily/midi-stream.cc: Handle unwritable midi file.  Include
4346         errno.h.
4348         * Documentation/user/: Fix links.
4350 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4352         * lily/text-interface.cc (Module): rename from text-item.cc
4354         * input/regression/apply-output.ly (texidoc): function naming fix.
4356         * lily/time-signature-performer.cc (derived_mark): new function.
4358         * lily/lily-parser-scheme.cc:  print mapped file name for progress
4360         * scripts/lilypond-book.py (find_linestarts): new function.
4361         (find_toplevel_snippets): keep track of line numbers.
4363         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
4364         all key changes.
4366         * ly/declarations-init.ly (partCombineListener): use
4367         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
4369         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
4371 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4373         * lily/text-item.cc: Fix link.
4375         * Documentation/user/changing-defaults.itely (Changing defaults):
4376         Fix programs reference links.
4378         * Documentation/user/music-glossary.tely: Convert to utf-8.
4380 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4382         * make/lilypond-vars.make: remove TEXMF from variables.
4383         remove DEB_BUILD pk font variables.
4384         remove GUILE_LOAD_PATH
4385         remove TeX memory vars.
4387 2005-04-04  Werner Lemberg  <wl@gnu.org>
4389         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
4391 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4393         * ps/lilyponddefs.ps: remove reencode-font
4395         * lily/simple-spacer.cc (add_columns): also compare
4396         directly. Column rank doesn't distinguish between broken and
4397         unbroken columns. This fixes large spaces before time sig changes.
4399         * Documentation/user/point-and-click.itely: document ly:set-option.
4401         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
4402         point_and_click_global is set.
4404         * lily/scm-option.cc (LY_DEFINE): add point-and-click
4405         ly:set-option argument.
4407 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4409         * GNUmakefile.in: Include symlinks in webball.
4411         * Documentation/user/GNUmakefile (source-links): Add symlinks to
4412         source dir for split and non-split manuals.
4414         * Documentation/user/*y: Fix @uref/@inputfile links for
4415         split/non-split HTML documents.
4417         * Documentation/user/GNUmakefile (local-WWW): Do not generate
4418         .ps.gz.
4419         
4420 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4422         * GNUmakefile.in: Add newline.
4424 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
4426         * tex/lilyponddefs.tex: use color instead of xcolor
4427         * scm/output-tex.scm: minor editing
4429 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4431         * scm/music-functions.scm (display-scheme-music): pretty printer
4432         for music expressions.
4434 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4436         * buildscripts/install-info-html.sh (index_file): Fix link.
4438 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4440         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
4442         * Documentation/index.html.in: Add size estimates with some big pages.
4444         * Documentation/user/tutorial.itely (Running LilyPond for the
4445         first time): Add/replace some @rglos links.  TODO: add more
4446         @rglos links in tutorial, test non-intrusiveness (.css).
4448         * stepmake/bin/add-html-footer.py (do_file): Remove info's
4449         annoying's indication of referencing external document.
4451         * Documentation/user/GNUmakefile: Split version of glossary too.
4452         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
4453         links, not only for html.
4455         * Documentation/user/introduction.itely: Fix some links for other
4456         than html, do not use `here' as link name.
4458 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4460         * scm/documentation-generate.scm (string-append): Fix @usermanref,
4461         @glossaryref.
4463 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4465         * scm/page-layout.scm (default-page-make-stencil): only add header
4466         if existing and not empty. Fixes spurious programming error.
4468         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
4470 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
4472         * scm/output-tex.scm: implement {re,}setcolor
4473         * tex/lilyponddefs.tex: use color package
4475 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4477         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
4478         additions to website.
4480         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
4482         * Documentation/user/macros.itexi: Fix @usermanref html links in
4483         split documents: use @inforef.
4485 2005-03-30  Graham Percival  <gperlist@shaw.ca>
4487         * Documentation/user/programming-interface.itely: minor fix.
4489         * Documentation/user/advanced-notation.itely: added info to
4490         Metronome markings.
4492 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4494         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
4495         use box-stencil.  Remove y-padding argument.
4496         (make-stencil-circler): New function.
4498         * buildscripts/lilypond-words.py (F): 
4499         * elisp/SConscript (a): 
4500         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
4501         * vim/SConscript (a): 
4502         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
4504         * lily/general-scheme.cc: Build fix.
4506         * scm/markup.scm:
4507         * input/regression/markup-scheme.ly: 
4508         * input/regression/markup-syntax.ly: Drop 'new-' from name.
4510         * scm/stencil.scm (make-circle-stencil): New function.
4512         * scm/define-markup-commands.scm (draw-circle): Use it.  New
4513         name (was cicle).  Update callers.
4514         (circle): New markup command, similar to box.
4516         * scm/stencil.scm (circle-stencil): New function.
4518 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
4520         * configure.in: Detect libutf8/wchar.h variant.
4522         * stepmake/aclocal.m4: Modify shared size test.
4524 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4526         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
4528 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4530         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
4531         
4532         * VERSION (PACKAGE_NAME):  release 2.5.17
4534 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
4536         * scm/backend-library.scm (postscript->png): Fix comment and png
4537         message.
4539         * GNUmakefile.in (link-tree): Fix locales.
4541 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4543         * lily/stencil-scheme.cc (LY_DEFINE): change to
4544         ly:stencil-aligned-to, non mutating.
4546         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
4548         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
4550         * lily/quote-iterator.cc (derived_mark): call
4551         Music_wrapper_iterator::derived_mark() too.
4553         * lily/grace-engraver.cc (derived_mark): change signature, add
4554         const.
4556 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4558         * SConstruct (symlink): 
4559         * GNUmakefile.in (link-tree): Add scripts to prefix.
4561         * lily/general-scheme.cc (ly:effective-prefix): New function.
4563         * scm/backend-library.scm (postscript->png): Use it.
4565 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4567         * lily/paper-score.cc (process): don't delete grobs after
4568         producing stencils. 
4570         * scm/part-combiner.scm (determine-split-list): switch off
4571         debugging info.
4573         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
4574         if available.
4576         * scm/define-context-properties.scm
4577         (all-user-translation-properties): add stringNumberOrientations.
4579         * lily/new-fingering-engraver.cc (position_scripts): make generic,
4580         so fingering and string-numbers are separately controlled.
4582 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4584         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
4585         not use debugging.
4587 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4589         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
4591         * config.hh.in: add HAVE_FONTCONFIG.
4593         * Documentation/user/instrument-notation.itely (String number
4594         indications): new node.
4596         * input/regression/new-markup-syntax.ly (texidoc): add circle.
4598         * lily/new-fingering-engraver.cc (add_string): new function. 
4599         (acknowledge_grob): accept string-number-event as well.
4601         * scm/define-markup-commands.scm (circle): new markup command.
4603         * scm/output-lib.scm (print-circled-text-callback): new function.
4605         * lily/GNUmakefile: move ifeq after include stepmake.make.
4607 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4609         * config.make.in (HAVE_LIBKPATHSEA_SO):
4610         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
4612         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
4613         add KPATHSEA_LIBS.
4615         * debian/watch: 
4616         * debian/control: Update.
4618 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4620         * input/test/title-markup.ly (spaceTest): remove.
4622         * input/test/embedded-tex.ly (Module): remove.
4624         * input/test/music-box.ly: use 'name property, not ly:music-name.
4626         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
4628         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
4630 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4632         * Documentation/topdocs/INSTALL.texi (Top): Remove information
4633         about xdeltas.  Add information about CVS.
4635         * scm/lily.scm (lilypond-main): Fix invocation of handler,
4636         gracefully handle failed files.
4638         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
4640         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
4641         small fixes.
4643         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
4644         No unnecessarily specific i18n messages.  Remove stray `1'.
4646 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4648         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
4649         documentencoding
4651         * scm/documentation-lib.scm (texi-file-head): set utf-8
4652         documentencoding.
4654         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
4655         Delta, not the Symbol one. 
4657         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
4658         for the .map file.
4660         * Documentation/topdocs/INSTALL.texi (Top): add running
4661         requirement as compilation requirement.
4663 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4665         * buildscripts/mutopia-index.py (headertext): add h1 header and
4666         utf-8 charset meta field.
4668         * input/GNUmakefile: prune example list.
4670         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
4671         options.
4673         * lily/slur-scoring.cc (get_base_attachments): only look at stem
4674         extent for visible stems.
4676         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
4678 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4680         * Documentation/topdocs/INSTALL.texi (Top): Updates.
4682         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
4684 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4686         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
4687         pass inf/nan into slur scoring.
4689         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
4690         page.
4692         * scripts/abc2ly.py (dump_voices): use alphabet().
4694 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
4695         
4696         * mf/GNUmakefile (depth): use $(FONTFORGE). 
4698 2005-03-27 Matthias Neeracher <neeracher@mac.com>
4699         
4700         * flower/include/virtual-methods.hh: simplify. Patch by
4702 2005-03-25  John Williams <williams@tni.com>  
4704         * scripts/lilypond-book.py (main): add png for HTML too, guess
4705         only if necessary. 
4707 2005-03-25  Graham Percival  <gperlist@shaw.ca>
4709         * Documentation/topdocs/INSTALL.texi: now recommends
4710         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
4712         * Documentation/user/basic-notation.itely,
4713         Documentation/user/tutoria.itely: warn about
4714         only one (phrasing) slur at once.
4716 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
4718         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
4720 2005-03-23  Graham Percival  <gperlist@shaw.ca>
4722         * Documentation/user/basic-notation.itely: fixed info about
4723         ending a (de)cresc.
4725         * Documentation/user/lilypond-book.itely: fixed
4726         lilypond-book filter example and warned about not doing
4727         --filter and --process at the same time.
4729 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4731         * lily/parser.yy (bass_number),
4732         Documentation/user/instrument-notation.itely (Figured bass): 
4733         Add the possibility to use text markup in figured bass. 
4735 2005-03-19  Graham Percival  <gperlist@shaw.ca>
4737         * Documentation/user/global.itely: added info about naming
4738         identifiers and breakbefore.
4740         * Documentation/user/invoking.itely: added info about batch
4741         processing files with convert-ly, removed references to TeX
4742         in the jail section.
4744         * Documentation/user/examples.itely: possibly fixed piano
4745         dynamics.
4747         * Documentation/user/advanced-notation.itely: added info
4748         about removing other types of Staff.
4750         * Documentation/user/instrument-notation.itely: possibly
4751         fixed piano staff line switch.
4753         * Documentation/user/changing-defaults.itely: added info
4754         about using normal font in titles.
4756 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4758         * VERSION (PATCH_LEVEL): release 2.5.16
4760         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
4761         explicitly.
4763 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4765         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
4766         whitespace.
4768         * python/lilylib.py (make_ps_images):
4769         * scm/backend-library.scm (postscript->pdf, postscript->png):
4770         Quote file name.  Use format rather than string-append juggling.
4772 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4774         * python/lilylib.py (make_ps_images): add x to -g argument. 
4776         * lily/key-performer.cc (create_audio_elements): don't use
4777         scm_eval_string. Check for minor 3rd directly.
4778   
4779         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
4780         (sarabandeCelloGlobal): key is D minor, not F major.
4782 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4784         Fix truncated --png output (Peter Danenberg).
4785         
4786         * python/lilylib.py (make_ps_images):
4787         * scripts/ps2png.py (copyright): Grok --papersize option.
4789         * scm/backend-library.scm (postscript->png): Add parameter
4790         PAPERSIZE.  Update callers.
4792         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
4793         Fixes symbol placement.
4795         * lily/spanner.cc: 
4796         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
4797         <libc-extension.hh>).
4799 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4801         * Nitpick run.
4803         * buildscripts/fixcc.py: Update.
4805         Builddir run fixes.
4807         * HACKING (datadir): Add VERSION.
4809         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
4810         higher up.
4812 2005-03-15  Werner Lemberg  <wl@gnu.org>
4814         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
4815         diagonal stem doesn't become thinner.
4817 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4819         * buildscripts/fixcc.py: Fixes (Werner).
4821 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4823         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
4824         Emmentaler/Aybabtu.
4826         * GNUmakefile.in: fix lilypond-words path.
4828         * po/tr.po: update to 2.3.21
4830         * lily/new-fingering-engraver.cc (position_scripts): take priority
4831         from head position.
4833         * input/regression/finger-chords-order.ly (texidoc): new file.
4835 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4837         * make/ly-rules.make: 
4838         * stepmake/aclocal.m4: 
4839         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
4841         * buildscripts/fixcc.py (rules): Leave space after operator.
4843 2005-03-14  Werner Lemberg  <wl@gnu.org>
4845         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
4846         top of the glyph with smooth curve.
4848 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4850         * Documentation/user/global.itely (Page layout): remove
4851         printpagenumber.
4853 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
4855         * input/regression/mensural-ligatures.ly: new file (with examples
4856         compiled by Pal Benko).
4858         * Documentation/user/instrument-notation.itely: Bugfix: yet some
4859         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
4860         musicglyph access.  Many small beautifications in ancient
4861         examples.
4863         * input/test/divisiones.ly: fixed indentation; small
4864         beautifications
4866         * ly/engraver-init.ly: added FIXME comment
4868         * scripts/lilypond-book.py,
4869         Documentation/user/lilypond-book.itely: added music fragment
4870         option "packed" to lilypond-book
4872         * Documentation/user/instrument-notation.itely: Bugfix: added
4873         missing LedgerLineSpanner color setting in several places.  Added
4874         music fragment option "packed" to VaticanaContext example.
4876 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4878         * scm/define-grobs.scm (all-grob-descriptions): switch off
4879         Hyphen_spanner::set_spacing_rods 
4881         * lily/lyric-hyphen.cc (print): add padding between syllable and
4882         hyphen.
4883         (print): shorten hyphen in tight situations (determine using
4884         minimum-length)
4886         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
4887         0.4pt.
4889 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4891         * ly/titling-init.ly (bookTitleMarkup): Refinements.
4893         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
4894         header/footer markings for regression-test.
4896         * scm/backend-library.scm (output-scopes, header-to-file): Move
4897         from framework-tex.scm.
4899         * scm/framework-ps.scm (output-framework)
4900         (output-preview-framework):
4901         * scm/framework-eps.scm (output-classic-framework)
4902         (output-framework): Use it.  Fixes collated files.
4904 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4906         * input/sakura-sakura.ly: 
4907         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
4909         * buildscripts/guile-gnome.sh: Update.
4911         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
4913         * mf/aybabtu.pe.in: Capitalize Aybabtu.
4915 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4917         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
4918         culprit: always exit the loop if we find a rod, even if it has
4919         distance < 0. 
4921         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
4922         algorithm.
4924         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
4925         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
4927         * scm/output-svg.scm (dashed-line): new  function body.
4928         
4929         * GNUmakefile.in: create .htaccess.
4931 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4933         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
4935 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4937         * VERSION (PACKAGE_NAME): release 2.5.15
4939         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
4941         * scm/framework-svg.scm (output-framework): put scaling in
4942         document header. Apply scaling only once.
4943         (output-framework): dump page size in px, not mm. 
4945         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
4946         from font-size.
4948         * lily/paper-outputter-scheme.cc (LY_DEFINE):
4949         ly:outputter-output-scheme, new function.
4951         * scm/output-svg.scm (pango-description-to-svg-font): new function
4953 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4955         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
4956         target.
4958         * input/typography-demo.ly: new file.
4960 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4962         * Documentation/user/global.itely (File structure): Add markup blocks
4963         to toplevel expressions.
4964         (Multiple movements, Creating titles): Add markup blocks.
4966         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
4967         <libc-extension.hh>).
4969         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
4971         * flower
4972         * lily
4973         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
4975 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4977         * lily/accidental.cc: special bboxes for natural. 
4979         * mf/feta-toevallig.mf: make stems heavier.
4981         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
4982         texts as well.
4984         * mf/feta-klef.mf: revise. 
4986         * mf/feta-schrift.mf: make thinning of accent less pronounced.
4988         * mf/feta-klef.mf: add rounded curve at top. 
4989         make thinnib a little heavier.
4991 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4993         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
4995         * buildscripts/fixcc.py: New file.
4997         * input/regression/utf8.ly: Update Debian font description.
4999 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5001         * stepmake/aclocal.m4: Fix test.
5003 2005-03-09  Graham Percival  <gperlist@shaw.ca>
5005         * Documentation/user/invoking.itely: added Sebastino Vigna's
5006         docs for the --jail option.
5008 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5010         * lily/stem.cc (print): only produce stemlets if there are no
5011         noteheads on this stem.
5013         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
5014         don't crash on stemlet (visible stem without heads).
5016         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
5017         unbroken situations. 
5019         * scm/output-lib.scm (center-invisible): new function.
5021         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
5022         wishes to determine loose column space.
5024         * lily/font-config.cc (init_fontconfig): add
5025         fonts/{otf,type1,cff}  to path.
5027         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
5029         * mf/GNUmakefile (Module): install all fonts under otf/
5031         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
5032         replace /fonts/otf/ by /ps/ 
5034         
5035 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5037         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
5039         * lily/book.cc (process): Oops, add score_.header_.
5041         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
5043         * lily/parser.yy: Handle toplevel and book texts as score.
5045         * scm/page-layout.scm (default-page-make-stencil):
5046         Bugfix: (page-properties rename.
5048         * scm/backend-library.scm (ly:system): Typo.
5050 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5052         * stepmake/stepmake/executable-targets.make (installexe): don't
5053         strip installed executables
5055         * lily/font-select.cc (get_font_by_design_size): revert
5056         pango_description_string as well.
5058         * lily/system.cc (set_loose_columns): put loose column just left
5059         of next column.
5061         * lily/include/group-interface.hh (extract_grob_array): rename
5062         from Pointer_group_interface__extract_grobs
5064         * input/regression/ledger-line-minimum.ly (texidoc): new file.
5066         * lily/ledger-line-spanner.cc (set_spacing_rods): new
5067         function. Keep ledgered note heads at a minimum distance.
5068         Introduce minimum-length-fraction
5069         (print): introduce length-fraction property.
5071 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5073         * tex/GNUmakefile: remove latin1.enc rules.
5075 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5077         * scm/titling.scm: Typo.
5079         * input/regression/score-text.ly: Really add.
5081         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
5083 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5085         * lily/open-type-font-scheme.cc:  new file.
5087 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5089         * scm/titling.scm (layout-extract-page-properties): Rename from
5090         page-properties.  Update callers.
5092         * lily/lexer.ll (Lily_lexer):
5093         * lily/parser.yy: Junk lyric_markup state.
5095         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
5097         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
5098         Add texts parameter.
5100 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5102         * lily/lexer.ll (lyric_markup): New mode.
5103         (Lily_lexer::push_lyric_markup_state): New method.
5104         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
5106         * lily/parser.yy (book_body):
5107         (toplevel_expression): Grok \markup texts.
5109         * lily/score-scheme.cc (ly:music-scorify): 
5110         * scm/lily-library.scm (collect-music-for-book): Take texts
5111         parameter.
5113         * lily/score.cc (texts_): New member.
5115         * lily/paper-book.cc (systems): Format score texts.
5117         * score-text.ly: New file.
5119         * ttftool/SConscript:
5120         * kpath-guile/SConscript: New file.
5122         * lily/SConscript:
5123         * SConstruct: Update.
5125 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5127         * VERSION (PACKAGE_NAME): release 2.5.14
5129 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5131         * lily/main.cc: Add dummy xgettext markers.
5133 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5135         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
5136         requirements
5138         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
5139         executable is < 40k
5141         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
5142         hack.
5144 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5146         * flower/libc-extension.cc:
5147         * flower/include/libc-extension.hh: [Open]BSD simply cast
5148         cookie/funopen declarations.
5150         * stepmake/aclocal.m4: Check for libkpathsea.so.
5152         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
5153         dl_kpse_find_file.
5155 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5157         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
5158         (open_library): alternative for static library.
5160 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5162         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
5164         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
5166         Drop run-time dependency on teTeX.
5168         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
5170         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
5171         KPATHSEA_LIBS in LIBS.
5172         (STEPMAKE_DLOPEN): New function.
5174         * lily/font-config.cc (init_fontconfig): Use dir for directory,
5175         not path.
5177         * flower/file-path.cc (directories): Rename from paths, as this
5178         return an array of directories (a single path).
5180 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5182         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
5184         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
5185         new ly:kpathsea-find-file
5187         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
5189         * kpath-guile/GNUmakefile: new file
5191         * buildscripts/gen-emmentaler-scripts.py (i): generate
5192         emmentaler-X.fontname as well.
5194         * buildscripts/ps-embed-cff.py: new script
5196         * scm/lily-library.scm: remove ps-embed-cff.
5198         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
5199         font loading. 
5201         * scm/font.scm (add-music-fonts): load dynamics/numbers through
5202         fontconfig as well.
5204         * lily/font-config.cc (init_fontconfig): add cff/ too.
5206         * ly/generate-embedded-cff.ly: capitalize.
5208         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
5209         so as to register the pango font.
5211         * lily/font-config.cc (init_fontconfig): add
5212         prefix/{otf,type1,mf/out} to fontconfig path.
5214         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
5215         overrides all. 
5217         * configure.in (gui_b): remove ec mftrace check
5219         * config.hh.in: use lilypond-Major.Minor as data directory.
5221         * scm/framework-ps.scm (dump-page): use output-units for landscape.
5223         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
5224         name.
5226 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5228         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
5229         error messages.
5231         * flower/libc-extension.cc:
5232         * flower/include/libc-extension.hh: [Open]BSD fixes for
5233         cookie/funopen declarations.
5235 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5237         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
5238         emmentaler.
5240         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
5241         lcrm10.
5243         * scm/define-markup-commands.scm (fontsize): new markup
5244         command. Also set baseline-skip
5246 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
5247         
5248         * lily/main.cc (do_chroot_jail): paranoia security for webserver
5249         use.
5251 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5253         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
5255         * lily/pdf.cc: remove PDF related files
5257 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5259         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
5260         <hamamatsu@gmx.de>
5262 2005-03-05  Graham Percival  <gperlist@shaw.ca>
5264         * Documentation/user/advanced-notation.itely: first draft
5265         of reorg done.
5267         * Documentation/user/global.itely: fixed (sub)section
5268         bits of MIDI.
5270 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5272         * cygwin/mknetrel (extras): Bufix (Bertalan).
5274         * Documentation/user/basic-notation.itely (Chords): @ref fix.
5275         * Documentation/user/instrument-notation.itely (Introducing chord
5276         names): Compile fix: must have unique name.
5278 2005-03-02  Graham Percival  <gperlist@shaw.ca>
5280         * Documentation/user/instrument-notation.itely: reorg.
5282 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5284         * scm/output-gnome.scm:
5285         * scm/output-svg.scm: Fix font scaling.
5287 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5289         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
5290         what link to use best.
5292         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
5293         * Documentation/user/tutorial.itely (Automatic and manual beams):
5294         Fix @ref.
5296         * lily/tweak-registration.cc (replace_grob_tweak): New function.
5297         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
5298         * scm/framework-gnome.scm (tweak): Use it.
5300 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5302         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
5304         * scm/output-ps.scm (white-text): reinstate white-text
5306 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5308         * scm/output-ps.scm (offset-add): Remove.
5310         * scm/lily-library.scm (offset-flip-y): New function.
5311         * scm/framework-gnome.scm (tweak): Use it.
5313         * scm/output-gnome.scm (grob-cause): Add parameter.
5315         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
5316         * scm/output-ps.scm (url-link): Move.
5317         (white-text): Warn user about brokenness.
5319         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
5320         wrt ghostscript.
5322 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5324         * lily/slash-repeat-engraver.cc (try_music): always make slashes
5325         if body length smaller than measure length.
5327         * scm/define-markup-commands.scm (with-url): oops. use Y extent
5328         for Y.
5330         * ly/titling-init.ly (tagline): put default tagline in \paper
5332 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5334         * lily/kpath.cc: 
5335         * lily/pdf.cc (Pdf_file): Use more generic error messages.
5337         * scm/lily-library.scm (version-not-seen-message): New function.
5338         * ly/init.ly: Use it.
5340         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
5341         breaks as progess.
5343         * scripts/lilypond-book.py (do_process_cmd): Do not lump
5344         whitespace with l10n message.
5346         * scm/framework-tex.scm (convert-to-ps):
5347         (convert-to-dvi): Do not use overly specific l10n messages.
5349         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
5351         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
5352         merge stderr with stdout.  
5354 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5356         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
5357         Neeracher).
5359 2005-02-29  Graham Percival  <gperlist@shaw.ca>
5361         * Documentation/user/instrument-notation.teily: moved
5362         \arpeggio to Basic.
5364         * Documentation/user/advanced-notation.itely: Articulation to
5365         Basic, a bunch of stuff from Basic moved to Advanced.
5367         * Documentation/user/basic.itely: swapped various sections,
5368         reorganized Basic.
5370 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5372         * flower/memory-stream.cc: 
5373         * flower/libc-extension.cc: Remove obsolete #undefs.
5375         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
5376         more carefully.
5378 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5380         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
5381         dependency.
5383         * VERSION (PACKAGE_NAME): release 2.5.13
5385         * GNUmakefile.in (web-ext): don't ship ps.gz
5387         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
5388         stdout
5390 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5392         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
5393         without libintl.  Now it compiles too.
5395 2005-02-28  Graham Percival  <gperlist@shaw.ca>
5397         * Documentation/user/basic-notation.itely,
5398         instument-notation.itely, advanced-notation.itely:
5399         split up contents of notation.itely.
5401         * Documentation/user/notation.itely: file removed.
5403         * Documentation/user/invoking.itely, converters.itely:
5404         moved convert-ly info to invoking.itely.
5406         * Documentation/user/global.itely, changing-defaults.itely,
5407         sound-output.itexi: moved global settings, file layout, and
5408         sound into global.itely.
5410         * Documentation/user/sound-output.itexi: file removed.
5412         * Documentation/user/lilypond.tely: removed links to
5413         notation.itely and sound.itely.
5415 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5417         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
5419         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
5421         * THANKS: add sponsor.
5423         * scm/define-markup-commands.scm (with-url): new markup command.
5425         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
5426         tagline.
5427         
5428         * scm/output-tex.scm (url-link): stub.
5430         * scm/output-ps.scm (url-link): new function.
5432         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
5433         ly:set-point-and-click
5435 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5437         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
5438         based on pdf-viewer setting.
5440         * scm/framework-ps.scm (write-preamble): Find and set preferred
5441         pdf-viewer.
5443 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5445         * Documentation/user/point-and-click.itely: update for PDF point &
5446         click.
5448         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
5449         editors based on EDITOR setting.
5451 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5453         * scm/*: Oops, more grand 2005 replace bits.
5455 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5457         * ps/music-drawing-routines.ps: new routine: insert PDF mark
5459         * scm/output-ps.scm (grob-cause): point & click support for
5460         PostScript
5462 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5464         * lily/input-scheme.cc (LY_DEFINE): rename to
5465         ly:input-file-line-column
5467 2005-02-26  Graham Percival  <gperlist@shaw.ca>
5469         * Documentation/user/examples.itely: small fix from Steve Doonan.
5471         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
5473         * THANKS: added Yuval Harel.
5475         * Documentation/user/{various}: inserted two spaces after a period.
5477         * Documentation/user/lilypond.tely: added framework for reorg.
5479         * Documentation/user/basic-notation.itely, instrument-notation.itely,
5480         advanced-notation.itely, global.itely: new files, placeholder for
5481         future reorg.
5483 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
5485         * Documentation/user/notation.itely: revamped Polyphony section
5486         
5487 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5489         * Documentation/user/lilypond-book.itely (Music fragment options):
5490         doc fontload.
5492         * Documentation/user/changing-defaults.itely (Text encoding): add
5493         fontload option to utf8 include
5495         * scripts/lilypond-book.py (compose_ly): add fontload option
5497         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
5498         force-eps-font-include option.
5500         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
5501         black triangle
5503         * Documentation/user/invoking.itely (Editor support): remove
5504         lilypond-latex section.
5506         * scripts/lilypond-latex.py (Module): remove script.
5508         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
5509         overwrite .log. 
5511         * lily/main.cc: remove -m, --no-layout
5513         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
5514         to define. We don't want to override fprintf everywhere.
5516 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5518         * cygwin/lilypond.hint: 
5519         * cygwin/README.in: Update dependencies.
5521         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
5522         Bugfix: do not pollute CPPFLAGS, LIBS.
5524         * cygwin/mknetrel (extras): Cross compile fixes.
5526         * ttftool/util.c: 
5527         * ttftool/ttfps.c: 
5528         * ttftool/ps.c: #include libc-extension.hh
5530         * flower/include/libc-extension.hh:
5531         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
5532         wrapper using funopen.
5533         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
5534         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
5536         * config.hh.in:
5537         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
5538         (AC_CHECK_HEADERS): Add libio.h
5540         * scripts/convert-ly.py: Uniformize, internationalize.
5541         (2.5.2): Remove fatal encoding rule.
5542         (2.5.13): Handle latin1 encoding gracefully.
5544 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5546         * HACKING: Fix line breaks.
5548 2005-02-23  Werner Lemberg  <wl@gnu.org>
5550         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
5551         contains those two files.
5553 2005-02-21  Werner Lemberg  <wl@gnu.org>
5555         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
5556         to improve overlap removal process.
5558         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
5559         left and right ending.  This ensures better overlapping.
5560         Update all callers.
5561         ("lineprall"): Don't use draw_gridline to get better overlapping.
5563 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5565         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
5567         * Documentation/topdocs/NEWS.tely (Top): oops.
5569 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
5571         * HACKING: new file.
5573         * input/regression/utf8.ly (portuguese): added a portuguese example
5574         to show latin1 accents.
5576 2005-02-21  Pal Benko  <benkop@freestart.hu>
5578         * lily/mensural-ligature-engraver.cc:
5579         * lily/mensural-ligature.cc:
5580         * lily/include/mensural-ligature.hh: new algorithm implemented
5582         * scm/define-grob-properties.scm: join-left killed (add-join may
5583         be used); join-left-amount changed to join-right-amount
5585 2005-02-21  Graham Percival  <gperlist@shaw.ca>
5587         * Documentation/user/notation.itely: small but urgent fix.
5589 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
5591         * lily/duration-scheme.cc: bugfix: correct parameters to
5592         SCM_ASSERT_TYPE.
5594         * THANKS: added Pal.
5596         * Documentation/user/notation.itely: bugfix: unTeXified
5597         $\\backslash$.  Bugfix: yet another glyph renaming victim:
5598         "timesig.*x/y" -> "timesig.*xy".
5600 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5601         
5602         * VERSION (PACKAGE_NAME): release 2.5.12
5604 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5606         * ly/engraver-init.ly: set tieWaitForNote to #t by default
5608         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
5610         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
5612         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
5614 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5616         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
5617         latin1..utf-8.
5619         * input/regression/stanza-number.ly:
5620         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
5622         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
5624 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5626         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
5627         NEWS. Refer to website for older news.  
5629         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
5630         .HTML. This should be done for specific servers only.
5632         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
5633         .ly image examples.
5635         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
5636         in layer 0 too.
5638         * scm/define-context-properties.scm
5639         (all-user-translation-properties): add tieWaitForNote
5641         * scm/define-grobs.scm (all-grob-descriptions): add
5642         Tie_column::before_line_breaking
5644         * lily/tie.cc (get_column_rank): new function
5646         * lily/tie-column.cc (before_line_breaking): new function.
5647         (werner_directions): take into account ties that start on
5648         different columns.  
5650         * lily/score-engraver.cc (set_columns): move add_column() so we
5651         have column rank available.
5653         * lily/tie.cc (get_column_rank): new function.
5655         * input/regression/utf8.ly (japanese): add japanese lyrics.
5657         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
5659         * THANKS: add Steve D
5661         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
5662         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
5664 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
5666         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
5667         to show harmonic notes
5668         * scm/define-markup-commands.scm: in \markup-by-number
5669         "dots-dot" -> "dots.dot" to show dotted notes
5671 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5673         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
5675         * flower/memory-stream.cc (writer): new file.
5677         * configure.in: add endian test.
5679 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
5681         * Documentation/user/examples.itely: small
5682         simplification/beautification
5684         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
5685         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
5686         notation manual.
5688         * lily/mensural-ligature.cc: bugfix: another few victims of the
5689         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
5691         * ly/gregorian-init.ly: commit some experimental code for hi-level
5692         ligature input language lying around here for several months.
5694         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
5695         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
5697         * lily/vaticana-ligature-engraver.cc: bugfix: another few
5698         "x-y-z"->"x.y.s-z" fixes.
5700 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5702         * scm/framework-pdf.scm (scm): new file
5704         * lily/include/pdf.hh (class Pdf_file): new file.
5706         * lily/pdf.cc (write_trailer): new file.
5708 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
5710         * input/regression/color.ly: new file
5712         * lily/stencil.cc (interpret_stencil_expression):
5713         when a color expression is encountered: save current color,
5714         process the rest of the expression, and restore previous color.
5716         * lily/system.cc (get_line): check all grobs for color property and
5717         prepare the stencil scheme expressions for further processing.
5718         Fix layer-loop.
5720         * scm/define-grob-properties.scm: introduce the color property.
5722         * scm/output-lib.scm: color helper functions.
5724         * scm/output-ps.scm: introduce setcolor/resetcolor.
5726 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
5728         * ly/*.ly, input/regression/*.ly: Added missing \version
5729         statements in some files.
5731 2005-02-15  Graham Percival  <gperlist@shaw.ca>
5733         * Documentation/user/notation.itely: minor editing.
5735         * Documentation/user/converters.itely: updated convert-ly bugs.
5737         * Documentation/user/lilypond-book.itely: add info about using
5738         feta characters in latex.
5740 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5742         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
5744 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5746         * scm/define-grob-properties.scm (all-user-grob-properties):
5747         removed 'dashed property.
5749 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5751         * scm/lily.scm (define-safe-public): new macro for defining
5752         variables that can be used in --safe mode. Use it in *.scm
5753         instead of manually setting safe-objects in safe-lily.scm.
5755 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5756         
5757         * lily/slur.cc: Slur-dash patch by Bertalan.
5759         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
5761         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
5763 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5765         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
5767 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5769         * mf/GNUmakefile: teTeX-3.0 install fix.
5771         * Cygwin patch from Bertalan.
5773         * stepmake/stepmake/metafont-rules.make: Remove bashism.
5775 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5777         * GNUmakefile.in: 
5778         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
5780         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
5781         2.0.x compatibility.
5783 2005-02-08  Werner Lemberg  <wl@gnu.org>
5785         * mf/feta-din-code.mf: Format; clean up code.
5786         Replace `---' with `--' plus explicit path directions.
5787         (linethickness#, stafflinethickness#): Remove.
5788         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
5789         ("dynamic s"): Improve shape.
5790         ("dynamic p"): Improve shape.
5791         Replace `draw' with better outline approximation.
5792         ("dynamic r"): Improve shape.
5793         Don't call `fill' and `draw' at the same time.
5795 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5797         * SConstruct (symlink):
5798         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
5799         build fix: add enc symlink.
5801         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
5803         Support for DESTDIR besides prefix=/foo
5805         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
5807         * stepmake/stepmake/*.make:
5808         * */GNUmakefile:
5809         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
5811         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
5813         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
5814         mawk in fontforge (date) test.
5816 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5818         * scm/font.scm (make-century-schoolbook-tree): add NCS as
5819         font-family=roman. Add Luxi Sans as sans
5821 2005-02-07  Graham Percival  <gperlist@shaw.ca>
5823         * Documentation/user/notation.itely: add warning about
5824         percent repeats and Voice contexts.
5826         * Documentation/user/lilypond-book.itely: clarified the
5827         necessity of dvips -u arguments.
5829 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
5831         * THANKS: Added a bunch of bug hunters.
5833 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5835         * scm/framework-ps.scm (output-preview-framework): bugfix.
5837         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
5838         o/ for chord modifier..
5840         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
5842         * lily/drum-note-performer.cc:  remove unused (thanks Michael
5843         Welsh Duggan). 
5845 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5847         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
5849         * ly/titling-init.ly: Do not also print intstrument in header on
5850         first page.  Do not print page number on first and only page.
5852 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5854         * input/regression/*.ly: remove old-relative everywhere
5856         * lily/music-sequence.cc (simultaneous_relative_callback): do
5857         what-if analysis on copy, not on original. Fixes old-relative
5858         compatibility.
5860         * scm/backend-library.scm (postscript->png): space before
5861         --verbose.
5862         
5863 2005-02-05  Werner Lemberg  <wl@gnu.org>
5865         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
5866         is defined.
5868         * mf/feta-alphabet.mf: Define `staffsize#'.
5869         Include `feta-params.mf'.
5870         s/staffheight/design_size/.
5872         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
5874         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
5876         * mf/feta-nummer-code.mf: Reformatted.
5877         (draw_six): Use outline intersection to avoid a self-intersecting
5878         path.
5879         ("Numeral comma"): Fix serious outline glitches.  This slightly
5880         changes the glyph shape.
5881         ("Numeral dash"): Use `draw_rounded_block'.
5882         ("Numeral dot"): Use `drawdot'.
5883         ("Numeral 1"): Assure identical tangent directions for the
5884         intersection points of paths.  The glyph shape improvement is only
5885         visible at very high magnifications.
5886         ("Numeral 2"): Use `solve' macro to make the lower right part of
5887         the glyph outline touch the x axis exactly.  This changes the
5888         glyph shape.
5889         Minor fixes for better overlap removal support.
5890         ("Numeral 4"): Make lefter corner `rounder'.
5891         ("Numeral 5"): Assure identical tangent directions for the
5892         intersection points of paths.  This improves the glyph shape at
5893         high magnifications.
5894         ("Numeral 7"): Use `solve' macro to make the upper right part of
5895         the glyph outline touch the metrics box exactly.  This changes the
5896         glyph shape.
5897         Avoid corner in the upper left part of the glyph (causing a minor
5898         shape change).
5900         * mf/feta-ital-*.mf: Removed.  Unused.
5902 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5904         * VERSION (PATCH_LEVEL): release 2.5.11
5906         * input/regression/fill-line-test.ly: new file.
5908         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
5909         emmentaler name, eg. emmentaler-23. 
5911 2005-02-04  Christian Hitz  <chhitz@gmx.net>
5913         * scm/scm/define-markup-commands.scm (fill-line): rework for better
5914         alignment with centered texts
5916         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
5917         list of paddings
5919 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5921         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
5923         * lily/note-column.cc (translate_rests): call flush_extent_cache()
5924         of parents when translating rests. Fixes: c-chord-rest.ly 
5926         * lily/include/dimension-cache.hh (struct Dimension_cache): add
5927         dimension_callback_ member.
5929         * lily/grob.cc (flush_extent_cache): new function. Force recompute
5930         of extents.
5932 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5934         * all but lily/*: The grand 2004/2005 replace.
5936 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5938         * lily/*: add space after ,  
5940         * scm/music-functions.scm (has-request-chord): don't use
5941         ly:music-name anywhere. Fixes <<\\>> notation. 
5943         * scm/define-markup-commands.scm (box): use font-size for
5944         padding. Fixes boxed-rehearsal-marks.ly
5946         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
5947         identifier definition too, so foo = \lyrics { ...   } bar = #1
5948         doesn't complain about "bar" being LYRICS_STRING.
5950         * lily/paper-def.cc (find_pango_font): new routine; Store
5951         pango_fonts in hash tab too. This is necessary for retrieving
5952         Pango_fonts::physical_font_tab() later on.
5954         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
5955         crash if psname is null.
5957         * lily/lily-guile.cc (ly_hash2alist): new function
5959         * Documentation/user/changing-defaults.itely (Text encoding):
5960         rewrite. 
5962         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
5963         -> font_filename mapping.
5965         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
5966         ly_pango_font_physical_fonts
5968         * scm/framework-ps.scm (supplies-or-needs): extract names from
5969         physical Pango_fonts.
5971         * utf8.ly: new file.
5973 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5975         * Documentation/user/changing-defaults.itely (Page layout): add
5976         doco about systemSeparatorMarkup.
5978         * scm/page-layout.scm (default-page-make-stencil): add-to-page
5979         function.
5980         (default-page-make-stencil): insert system separators.
5982         * scm/define-markup-commands.scm (hcenter): add
5983         (beam): add.
5985 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5987         * scm/output-ps.scm (ez-ball): reinstate ez notation.
5989 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5991         * lily/main.cc: Spell backend consistently.  Sort options.
5993 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5995         * scripts/lilypond-book.py (Module): revert @include.
5996         
5997 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5999         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
6000         Bugfix: @include .tex (not .texi).  Small cleanups.
6002         * stepmake/bin/add-html-footer.py (i18n): New function.
6004 2005-01-31  Werner Lemberg  <wl@gnu.org>
6006         * mf/feta-nummer.mf: Removed.  Unused.
6008 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6010         * lily/ : 2004 -> 2005 s&r
6012         * scm/file-cache.scm (cached-file-contents): add file. Read each
6013         file only once.
6015         * scm/font.scm (add-pango-fonts): change order. Medium weight is
6016         now default.
6018         * VERSION: release 2.5.10
6019         
6020         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
6022         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
6024         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
6025         that both X and Y extents of bbox are non-nil.
6027 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6029         * scm/chord-name.scm (alteration->text-accidental-markup): change
6030         - to . 
6032         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
6034         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
6036         * Documentation/user/invoking.itely (Invoking lilypond): add note
6037         about EPS backend.
6039         * scm/framework-eps.scm: new file: create per-system/per-page EPS
6040         files for inclusion in lilypond-book document.
6042         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
6044         * input/tutorial/lbook-texi-test.texi: new file.
6046         * scm/safe-lily.scm (safe-objects): add
6047         {begin,end}-of-line-(in)?visible as safe.
6049 2005-01-30  Graham Percival  <gperlist@shaw.ca>
6051         * Documentation/user/changing-defaults.itely: fixed example
6052         of (dynamics).
6054 2005-01-29  Graham Percival  <gperlist@shaw.ca>
6056         * lily/main.cc: fix info about -o=FILE.
6058 2005-01-29  Werner Lemberg  <wl@gnu.org>
6060         * mf/feta-toevallig.mf ("Natural"): Completely changed the
6061         construction to assure smooth transition from straight to curved
6062         lines.
6064 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6066         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
6067         stencils.
6069         * ps/lilyponddefs.ps: add start-page, start-system doesn't
6070         translate to top of page. Fixes alignment problems of
6071         lilypond-generated EPS files.
6073 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6075         * scm/part-combiner.scm (analyse-spanner-states): trigger on
6076         crescendo-end as well, since Decrescendo maybe ended with Stop
6077         Crescendo.). Fixes: partcombine-diminuendo.ly
6079         * scm/script.scm (default-script-alist): swap portato symbols.
6081         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
6083         * lily/paper-outputter-scheme.cc (LY_DEFINE):
6084         ly:outputter-port. New function.
6086         * scm/framework-ps.scm (output-classic-framework): dump a
6087         -systems.texi too
6088         (output-classic-framework): dump multiple systems on an "infinite"
6089         page EPS including fonts. 
6091         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
6092         .eps files for both texi and tex formats. Use PNG coming from
6093         lilypond.
6094         
6095 2005-01-28  Graham Percival  <gperlist@shaw.ca>
6097         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
6099         * scripts/lilypond-latex.py: fix info about -o=FILE.
6101 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6103         * ly/generate-embedded-cff.ly: write .cff.ps files.
6105         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
6107         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
6108         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
6110 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6112         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
6114 2005-01-28  Werner Lemberg  <wl@gnu.org>
6116         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
6117         macros.
6118         (draw_bulb): Improved.
6120         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
6121         metapost bug.
6122         (draw_pedal_P): Use soft_end_penstroke.
6123         (draw_pedal_d): Use soft_start_penstroke.
6125         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
6126         path.
6127         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
6128         doesn't change the glyph shape.
6130         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
6131         changing the shape) to avoid fontforge warnings.
6133         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
6134         soft_end_penstroke and fix glyph shape.
6136 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6138         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
6140 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6142         * scm/define-markup-commands.scm (line): filter out empty stencils
6143         from line command.
6145         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
6146         amount.
6148 2005-01-27  Graham Percival  <gperlist@shaw.ca>
6150         * Documentation/user/notation.itely: added info about what
6151         \voiceFoo does.  Also rewrote warning about marks at
6152         a line break.
6154         * Documentation/user/changing-defaults.itely: added info
6155         about putting dynamics in parenthesis and brackets.
6157 2005-01-27  Werner Lemberg  <wl@gnu.org>
6159         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
6161 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6163         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
6164         portato-direction.ly
6166         * lily/beam.cc (consider_auto_knees): add beam height to
6167         threshold. Fixes: knee-multiple-beam.ly
6169         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
6170         pedal line spanners. Fixes: instrument-center-pedal.ly
6172         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
6173         if encountering barline. Fixes: auto-beam-repeat.ly
6175 2005-01-26  Werner Lemberg  <wl@gnu.org>
6177         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
6178         overlapping.
6180         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
6181         with inflections for the 1/2 sharp glyph.
6183         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
6184         connection between `t' and `r'.
6185         Unify bulb with the rest of `r' to avoid grazing outlines which
6186         confuses the overlap removal algorithm of fontforge.
6188         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
6189         inflections.
6190         (draw_cross): Fix shape to have uniform thickness in corners.
6192         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
6193         to avoid an uneven number of self-intersections; this confuses
6194         fontforge.
6195         Fix a slight bug in the shape at left bottom (which is visible only
6196         at high magnifications).
6197         `Center' the stem horizontally to avoid overlapping.
6199 2005-01-24  Werner Lemberg  <wl@gnu.org>
6201         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
6202         to `asis'.
6203         (fet_begingroup): Save group name in string `feta_group'.
6204         (fet_endgroup): Updated.
6205         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
6207         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
6209         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
6210         in metapost.
6212 2005-01-24  Graham Percival  <gperlist@shaw.ca>
6214         * Documentation/user/notation.itely: really minor editing.
6216 2005-01-22  Graham Percival  <gperlist@shaw.ca>
6218         * Documentation/user/examples.itely: minor editing.
6220         * Documentation/user/changing-defaults.itely: minor editing.
6222         * Documentation/user/notation.itely: clarified info on polyphony
6223         and \addlyrics.
6225 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6227         * scm/output-gnome.scm: 
6228         * scm/output-svg.scm:
6229         * scm/lily-library.scm (font-name-style): Update font name
6230         kludging for fontconfig use.
6232 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
6234         * scm/define-markup-commands.scm: Document right-align and
6235         larger markup commands. Remove "TODO" from the topmost comment
6236         "each markup function should have a doc string." More consistent
6237         use of new-lines.
6239 2005-01-22  Graham Percival  <gperlist@shaw.ca>
6241         * Documentation/user/changing-defaults: removed info about
6242         copyright symbol, since it's likely to change soon.
6243         Added info about betweensystemspace.
6245         * Documentation/user/notation.itely: minor fixes.
6247         * Documentation/user/lilypond.tely,
6248         Documentation/user/music-glossary.tely: changed copyright
6249         date to 2005 instead of 2004.
6251         * input/test/volta-chord-names.ly: added old example back.
6253 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6255         * mf/feta-beugel.mf: use design size 20 (not 15).
6257         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
6258         change name to aybabtu completely
6260 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6262         * buildscripts/gen-emmentaler-scripts.py (outdir): add
6263         design_size to fontname
6265 2005-01-19  Werner Lemberg  <wl@gnu.org>
6267         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
6268         mf/feta-schrift.mf: s/p/pat/ if a path variable.
6270         * mf/feta-autometric.mf (set_char_box): Add code which emits
6271         specials for mf2pt1 if run with metapost.
6272         (to_bp): New macro for mf2pt1.
6274 2005-01-18  Graham Percival  <gperlist@shaw.ca>
6276         * Documentation/user/changing-defaults: added info on
6277         creating a copyright symbol.
6279 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6281         * VERSION: release 2.5.9
6282         
6283 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
6285         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
6287         * Documentation/user/notation.itely: Document
6288         score-override-auto-beam-setting Fix documentation for
6289         revert-auto-beam-setting.
6291 2005-01-18  Werner Lemberg  <wl@gnu.org>
6293         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
6294         (procset): New function to define a procset resource.
6295         (ps-embed-pfa): New function to define a font resource.
6296         (setup): New function to define a `Setup' environment.
6297         (preamble): Use new functions.
6299         * ps/lilypond.defs (init-lilypond-parameters): New function to
6300         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
6302 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6304         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
6306 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
6308         * scm/define-markup-commands.scm: Change number->markletter-string
6309         to take two arguments (vector number). Add number->mark-alphabet-vector
6310         and markalphabet markup command.
6312         * scm/translation-functions.scm: Add format-mark-box-alphabet,
6313         format-mark-alphabet, format-mark-box-barnumbers and
6314         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
6316 2005-01-17  Graham Percival  <gperlist@shaw.ca>
6318         * Documentation/user/examples.itely: add SATB automatic piano
6319         reduction template.
6321         * Documentation/user/notation.itely: added info about changing
6322         partcombine texts.  Also adds examples of alternate lyrics.
6324         * Documentation/user/changing-defaults.itely: added warning
6325         about \RemoveEmptyStaffContext overriding previous changes.
6327 2005-01-17  Werner Lemberg  <wl@gnu.org>
6329         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
6330         feta-alphabet*.
6332 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6334         * python/lilylib.py (make_ps_images): don't do final showpage for
6335         multi-page documents.
6336         
6337         * VERSION (MY_PATCH_LEVEL): release 2.5.8
6339 2005-01-16  Graham Percival  <gperlist@shaw.ca>
6341         * Documentation/user/lilypond.tely: changed order of appendices;
6342         unified index should be last.
6344         * Documentation/user/notation.itely: add example of key signatures
6345         and info about Staff.printKeyCancellation.
6347 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6349         * lily/include/repeated-music.hh (class Repeated_music): change
6350         into "namespace" class.
6352         * lily/event.cc: remove Key_change_event.
6354         * lily/include/transposed-music.hh (class Transposed_music): remove.
6356         * lily/transposed-music.cc: remove
6358         * lily/include/relative-music.hh: remove.
6360         * lily/include/music-sequence.hh (struct Music_sequence): change
6361         into "namespace" class.
6363         * lily/untransposable-music.cc (Module): remove
6365         * lily/include/un-relativable-music.hh (Module): remove
6367         * lily/include/untransposable-music.hh (Module): remove
6369         * lily/include/music-list.hh (Module): remove file
6371         * lily/un-relativable-music.cc: remove file.
6373 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6375         * lily/parser.yy: Compile fix.
6377 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6379         * lily/include/music.hh (class Music): unvirtualize transpose().
6381         * lily/sequential-music.cc: remove file.
6383         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
6385         * lily/slur-scoring.cc (get_best_curve): only switch on
6386         DEBUG_SLUR_SCORING for non NDEBUG builds.
6388         * lily/include/music.hh (class Music): replace Music::start_mom()
6389         by start-callback property
6391         * lily/include/grace-music.hh: remove file. 
6393         * lily/stem.cc (height): robustness fix.
6395         * lily/time-scaled-music.cc: remove file.
6397         * lily/include/music.hh (class Music): include SCM init argument.
6398         (class Music): replace Music::get_length() virtual by
6399         length-callback property everywhere.
6401         * scripts/convert-ly.py (conv): add  # to \property scalar value.
6403         * mf/GNUmakefile: don't install *list.ly
6405 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6407         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
6409 2005-01-12  Werner Lemberg  <wl@gnu.org>
6411         This patch addresses the following problems in the feta sources
6412         files which contribute to the fetaXX fonts.
6414         . Many fixes for rasterization at low resolutions (consistent use of
6415           `vround' and `hround', integer shift values for paths, applying
6416           `eps' for mirrored paths, use of `define_whole_pixels' and
6417           friends, etc.) -- while this probably looks like a waste of time
6418           it has revealed deficiencies in some glyph shapes.  See comment at
6419           the end of feta-params.mf how vertical symmetry is achieved.
6421         . The `---' operator has been replaced everywhere with `--'; this
6422           both improves and considerably reduces the font size after
6423           conversion with mf2pt1.
6425         These change aren't explicitly mentioned below since virtually all
6426         glyphs are affected.
6428         Other notable differences:
6430         . Glyphs from feta-accordion.mf now have charboxes around the
6431           outline.
6433         . Fixed incorrect charbox for `accDot'.
6435         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
6437         . Fixed position of the bow in the `upprall' glyph and its siblings.
6439         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
6440           dependent on the staff line thickness to avoid touching the middle
6441           staff line at smaller sizes.
6443         . Largely extended output for feta-testXX: Where useful, glyphs
6444         are shown both between and on staff lines.
6447         * mf/feta-params.mf (staff_space_rounded,
6448         stafflinethickness_rounded, linethickness_rounded,
6449         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
6450         Update all code which uses them where appropriate.
6451         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
6452         New variables used to control rasterization at low resolutions.  Set
6453         to zert if feta code is processed with metapost.
6455         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
6456         (draw_rounded_block, draw_square_block): Updated to use `--' only.
6457         (flare_path): Updated.
6458         Make it work with `filldraw' (but only circular pens).
6459         (hfloor, vfloor, hceiling, vceiling): New macros.
6461         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
6462         Use `draw' again in mf mode to have good pixel dropout control.
6463         Fix intersection points of horizontal lines with circle.
6464         ("accDot"): Fix parameters for set_char_box.
6465         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
6466         control.
6468         * mf/feta-banier.mf: Updated.
6470         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
6471         testing.
6472         (undraw_inside_ellipse): Remove `center' argument.  Update all
6473         callers.
6474         (draw_brevis): New macro, called by "Brevis notehead".
6475         (draw_whole_triangle_head): New macro, called by "Whole
6476         trianglehead".
6477         (draw_small_triangle_head): Use `filldraw'.
6479         * mf/feta-eindelijk.mf: Remove useless global group.
6480         Updated.
6482         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
6483         `filldraw'.
6485         * mf/feta-pendaal.mf: Updated.
6487         * mf/feta-puntje.mf: Updated.
6489         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
6490         less points.
6491         ("Flageolet"): Use `draw' again in mf mode to have good pixel
6492         dropout control.
6493         ("Varied Coda"): Use `draw_block'.
6494         (draw_comma): Fix typo.
6495         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
6496         pixel dropout control.
6498         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
6499         position of bow.
6501         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
6502         sizes.
6504         * mf/feta-toevallig.mf (remember_pic): New variable, used for
6505         testing.
6506         (draw_meta_sharp): Much simplified.
6507         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
6509         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
6511 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6513         * Documentation/user/notation.itely (Ancient rests): Fix typo
6514         (thanks Anthony)
6516 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6518         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
6520         * lily/main.cc (setup_paths): Add cff.
6522         * mf/GNUmakefile (foe): Include actual target %.cff.
6523         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
6525 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6527         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
6528         suffix for main_input_b_.
6530         * scm/music-functions.scm (toplevel-music-functions):
6531         precompute music lengths for music expressions.  
6533 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6535         * lily/include/input.hh (class Input): new `end_' slot for end of
6536         input. Renamed defined_str0_ to start_.
6538         * lily/input.cc (Input): Add Input::Input (Input const &) and
6539         remove Input::Input (Source_file*, char const *). Use the new
6540         slots.
6541         (set_location): method used by bison to propagate input
6542         locations (YYLLOC_DEFAULT).
6543         (end_line_number, end_column_number, step_forward): new methods
6544         
6545         * lily/input-scheme.cc (ly:input-both-locations): new function,
6546         similar to ly:input-location, but also return the end line and
6547         column.
6549         * lily/include/includable-lexer.hh: 
6550         * lily/includable-lexer.cc: 
6551         * lily/include/lily-lexer.hh (class Lily_lexer): 
6552         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
6553         Includable_lexer to Lily_lexer, in order to update lexloc (the
6554         yylloc), a new slot of Lily_lexer.
6555         (here_input, LexerError): simplify by using the lexloc slot (aka
6556         yylloc)
6558         * lily/lexer.ll: #define yylloc to use input locations (it may
6559         be useless here?). Fixed the #embedded_scm rule (step the location
6560         forward in order to skip the sharp sign before parsing the scheme
6561         expression)
6563         * lily/include/lily-parser.hh (class Lily_parser): 
6564         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
6565         here_input()
6566         (parser_error): overload for more precise locations of errors.
6568         * lily/parser.yy (YYLTYPE): set location type to Input
6569         (YYLLOC_DEFAULT): use Input::set_location()
6570         (yylex): add the YYLTYPE* location parameter.
6571         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
6572         Give an Input parameter to THIS->parser-error() for more accurate
6573         messages.
6575 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6577         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
6579         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
6580         on BEAMQUANTING for non-NDEBUG builds.
6582         * lily/stem.cc (head_count): performance: avoid String::String()
6583         inside oft called function.
6585 2005-01-09  Graham Percival  <gperlist@shaw.ca>
6587         * Documentation/user/examles.itely: attempted fix for broken
6588         string quartet template.
6590         * Documentation/user/notation.itely: remove unnecessary broken
6591         link.
6593 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6595         * VERSION (PACKAGE_NAME): release 2.5.7
6597 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6599         * config.make.in (METAFONT): Append -progname=mf, fixes use with
6600         mf-nowin for teTeX-3.0.  Backportme.
6602         * scm/output-svg.scm (utf8-string): New function.
6604         * scm/output-gnome.scm (utf8-string): New function.
6605         (otf-name-mangling): Remove.
6607         * lily/pango-font.cc (Pango_font): Use font string iso font
6608         filename for utf8-text.
6610         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
6611         name.
6613 2005-01-08  Graham Percival  <gperlist@shaw.ca>
6615         * Documentation/user/notation.itely: add info about
6616         Staff.extraNatural = ##f in Pitches section.  Also
6617         fixed some minor issues in the Vocal music section.
6619 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6621         * scm/output-ps.scm (white-text): comment out Helvetica font,
6622         which is broken for my GS install.
6624         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
6625         which provides a tighter bbox.
6627         * scm/define-grobs.scm (all-grob-descriptions): remove all
6628         extra-offsets from definitions.
6630 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
6632         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
6633         add tuning for 4-string bass and some common 4/5-string banjo
6634         tunings.  New function (four-string-banjo) turns a 5-string tuning
6635         into a 4-string tuning.  New function
6636         (fret-number-tablature-format-banjo) computes correct fret numbers
6637         on 5-string banjos.
6639         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
6640         Add beam correction to TabVoice.
6642         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
6643         using bold font; makes tabs more readable.
6645 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6647         * lily/font-select.cc (get_font_by_design_size): don't make
6648         Modified_font_metric; this causes trouble, since we don't know the
6649         font magnification from inside Pango_font::text_stencil()
6651         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
6653         * Documentation/user/notation.itely (The Lyrics context): comment out
6654         broken {Small ensembles} link.
6656         * scm/framework-svg.scm (output-framework): change calling convention.
6658         * lily/object-key-dumper-scheme.cc: new file.
6660         * lily/object-key-undumper-scheme.cc: new file.
6662         * lily/tweak-registration-scheme.cc: new file.
6664         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
6666         * Documentation/user/examples.itely (String quartet): uncomment
6667         broken example.
6669         * lily/font-config.cc: new file.
6671 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6673         * scm/output-svg.scm: 
6674         * scm/output-gnome.scm: s/bigcheese/emmentaler.
6676         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
6678 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6680         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
6681         Add headers.
6683         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
6685 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6687         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
6689         * lily/include/main.hh: lose _b hungarian suffixes for global
6690         variables.
6692         * lily/include/lily-guile-macros.hh: new file.
6694         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
6696         * lily/general-scheme.cc: new file. 
6698         * lily/font-select.cc (get_font_by_design_size): retrieve
6699         PangoFont for (designsize . "pango-descr") entries.
6701         * lily/lily-parser-scheme.cc: new file.
6703         * lily/output-def-scheme.cc: new file.
6705         * lily/paper-book-scheme.cc: new file.
6707         * lily/duration-scheme.cc (LY_DEFINE): new file.
6709         * lily/pitch-scheme.cc:  new file.
6711         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
6713 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6715         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
6717 2005-01-06  Graham Percival  <gperlist@shaw.ca>
6719         * Documentation/user/notation.itely: minor editing.
6721         * Documentation/user/changing-defaults: minor editing.
6723         * Documentation/user/examples.itely: add template for
6724         string quartet part extraction; demonstrates tag.
6726 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
6728         * Documentation/user/notation.itely: documents
6729         format-mark-box-letters and format-mark-box-numbers
6731         * scm/define-context-properties.scm: change comment.
6733 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6735         * scm/framework-ps.scm (output-classic-framework): new function:
6736         dump systems as separate .eps files (without fonts) and write a
6737         single collecting .tex file.
6739 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6741         * Documentation/user/notation.itely (Setting simple songs):
6742         Correct several errors in the equivalent formulation of
6743         \addlyrics. 
6744         (The Lyrics context): Corrected link to the SATB example.
6746 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6748         * scm/lily.scm (completize-formats): new function
6749         (postprocess-output): new function
6751         * lily/paper-book.cc (classic_output): change calling
6752         convention. Give basename as first argument. 
6753         remove Paper_book::post_processing().
6755         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
6757 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6759         * lily/paper-outputter.cc (LY_DEFINE): new function
6760         ly:outputter-close.
6762         * lily/main.cc: change --format,-f to --backend,-b
6764         * lily/include/main.hh: rename format to backend.
6766         * scm/translation-functions.scm (format-mark-box-numbers): add.
6767         patch by Erlend Aasland
6769 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6771         * lily/pango-font.cc (text_stencil): dump string as
6772         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
6774 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6776         * configure.in (gui_b): Remove handy developer-only
6777         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
6778         CVS source installations (but break other non-default but correct
6779         PKG_CONFIG_PATH setups), as this is no longer developer-only.
6781         * SConstruct: 
6782         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
6783         compatibility (backportme).
6785         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
6787 2005-01-03  Werner Lemberg  <wl@gnu.org>
6789         Prepare glyph shapes for mf2pt1 conversion.
6791         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
6792         (accDiscant, accFreebase, accStdbase): Replace `draw' with
6793         `penstroke'.
6794         (accDot): Use `drawdot'.
6795         (accBayanbase): Replace `draw' with `draw_gridline'.
6796         (print_penpos): Moved to feta-macros.mf.
6797         (accOldEE): Replace `filldraw' with `penstroke'.
6798         Replace `draw' with `penstroke' and `drawdot'.
6800         * mf/feta-banier.mf: Code clean-up.
6801         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
6802         `fill'.
6804         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
6806         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
6807         paremeter to control drawing of labels.  Update all callers.
6809         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
6810         (new_bulb): Return a bulb as a single path.  To do that, it now
6811         takes some more parameters.  Updated all callers.
6812         (draw_gclef): Major clean-up.  `draw' has been replaced with
6813         `penstroke', unnecessary outlines have been removed.
6814         Remove (unused) gnome-canvas code.
6816         * mf/feta-macros.mf (print_penpos): New macro (from
6817         feta-accordion.mf).
6818         Other minor fixes.
6820         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
6821         ("Pedal dot"): Use `drawdot'.
6822         (draw_pedal_P): Add parameter to control drawing of labels.  Update
6823         all callers.
6824         Fix shape at top.
6825         (draw_pedal_e): Add parameter to control drawing of labels.  Update
6826         all callers.
6827         (draw_pedal_d): Add parameter to control drawing of labels.  Update
6828         all callers.
6829         Revert drawing direction.
6831         * mf/feta-schrift.mf (draw_fermata): Use single path.
6832         (draw_short_fermata): Replace `filldraw' with `fill'.
6833         (draw_long_fermata, draw_very_long_fermata): Replace calls to
6834         `draw_rounded_block' with a single path.
6835         ("Thumb"): Draw full circle instead of mirroring segments.
6836         (draw_accent): New macro.
6837         ("> accent", "espr"): Use it.
6838         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
6839         ("open (unstopped)"): Draw full circle instead of mirroring
6840         segments.
6841         (draw_vee): Removed.
6842         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
6843         ("Downbow"): Replace calls to `draw_rounded_block' with a single
6844         path.
6845         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
6846         partial pieces drawn with `fill' -- these do still overlap with the
6847         stem of the `t' but just once, not multiple times so that fontforge
6848         can handle it gracefully.
6849         Change other parts of the glyph so that fontforge's overlapping
6850         algorithm reliably works.
6851         (draw_heel): Replace `draw' with `fill'.
6852         (draw_toe): Use `draw_accent' instead of `draw_vee'.
6853         ("Flageolet"): Replace `draw' with `penstroke'.
6854         ("Segno"): Replace `filldraw' with `penstroke'.
6855         Replace `draw' with `drawdot'.
6856         ("Coda"): Replace `fill' with `penstroke', using a single path.
6857         ("Varied Coda"): Use less overlapping paths.
6858         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
6859         single path.
6861         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
6862         group to better control the `labels' command.
6863         Rename argument to `offset' and use it actually.  Update all
6864         callers.
6865         Replace `filldraw' with `fill'.
6866         ("mordent", "prallmordent", "upmordent", "downmordent",
6867         "lineprall"): Replace `draw' with `draw_gridline'.
6868         ("upprall", "downprall"): Replace `draw' with `fill'.
6870         * mf/feta-timesig.mf: Formatting.
6872         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
6873         to...
6874         ("Flat"): Here.
6875         (draw_paren): Move code to draw labels to...
6876         ("Right Parenthesis"): Here.
6878 2005-01-02  Graham Percival <gperlist@shaw.ca>
6880         * Documentation/user/notation.itely: add example of \setTextDecresc
6881         and \setTextDim.
6883 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
6885         * scm/define-markup-commands.scm :  fix glyph-strings of
6886         accidentals and \note-by-number
6888 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6890         * VERSION: 2.5.6 released.
6891         
6892         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
6894         * input/regression/new-markup-scheme.ly: oops. font-family=music
6895         -> font-encoding fetaMusic.  
6897         * lily/main.cc: put default to PS.
6899         * lily/tfm.cc: idem.
6901         * lily/afm.cc: idem.
6903         * lily/include/modified-font-metric.hh (struct
6904         Modified_font_metric): remove coding_scheme() method.
6906         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
6908         * scripts/convert-ly.py (conv): crash on encountering \encoding.
6910         * input/les-nereides.ly: convert to utf8
6912         * lily/modified-font-metric.cc (text_dimension): idem.
6914         * lily/parser.yy (TODO): idem.
6916         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
6918         * lily/lexer.ll: remove encoding
6920         * scm/framework-ps.scm (output-variables): separately scale the
6921         page to mm 
6923         * lily/pango-font.cc (Pango_font): fix scaling.
6925         * lily/font-metric.cc (design_size): design_size returns a
6926         dimension now as well.
6928 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6930         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
6931         brace generation. 
6933         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
6935 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6937         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
6938         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
6940 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6942         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
6943         in first run as well.
6945         * scm/paper.scm (layout-set-staff-size): use text-font-size in
6946         dimension less points (ie. 12 = 12 point)
6948         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
6950         * lily/all-font-metrics.cc (find_pango_font): set description_
6952         * lily/pango-font.cc (text_stencil): export size as well.
6953         (text_stencil): fix scaling and extents box.
6955 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6957         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
6959         * Documentation/user/invoking.itely (Invoking lilypond): document
6960         texstr
6962         * scripts/convert-ly.py (conv): add ancient rules.
6964         * scm/clef.scm (c0-pitch-alist): replace - with .
6966         * scripts/lilypond-book.py (process_snippets): add texstr support.
6968         * scm/framework-texstr.scm (header): change extension to .textmetrics
6970         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
6971         -f tex.
6973         * lily/text-metrics.cc: new file.
6974         (try_load_text_metrics): new function
6976         * lily/include/text-metrics.hh: new file.
6978 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6980         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
6981         ly_scheme_function to ly_lily_module_constant.
6983         * lily/modified-font-metric.cc (text_dimension): try
6984         lookup_tex_text_dimension() first.
6986         * lily/tfm.cc: new function ly:load-text-dimensions
6988 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6990         * scm/output-texstr.scm (text): use \lilygetmetrics
6992         * scm/framework-texstr.scm (header): dump in new format.
6994         * tex/lilypond-tex-metrics: new file.
6995         
6996 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6998         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
6999         mapping.
7000         (index_to_charcode): New method.
7002         * scm/output-ps.scm (glyph-string): 
7003         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
7005 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
7007         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
7008         implement fully, need FONT to get to charcode.
7010         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
7012         * scm: Cleanups.
7014         * Documentation/user/changing-defaults.itely: Fix internalsrefs
7015         {Tunable context properties},
7016         {All layout objects},
7017         {Music definitions}.
7019 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7021         * VERSION: release 2.5.5
7022         
7023         * lily/main.cc: use TeX as default output format.
7025         * flower/file-path.cc (find): try to open directly as well, so we
7026         find absolute path files. 
7028         * lily/pango-select.cc: new file.
7030         * scm/framework-ps.scm: remove all encoding code. 
7031         load pfb/pfa for PangoFont too.
7032         
7033         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
7035 2004-12-22  Werner Lemberg  <wl@gnu.org>
7037         Prepare glyph shapes for mf2pt1 conversion.
7039         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
7041         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
7042         (define_triangle_shape): Use it to replace `draw' with `fill' and
7043         `unfill'.  Update all callers.
7044         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
7045         (draw_cross): Ditto.
7046         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
7047         Use penrazor for better conversion with mf2pt1.
7048         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
7049         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
7050         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
7051         draw_la_head, draw_ti_head): Replace `filldraw' with
7052         `fill'.  Update all callers.
7054 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7056         * lily/paper-book.cc (output): revert: only allow a single output
7057         format.
7059         * lily/include/pango-font.hh: new file.
7061         * lily/pango-font.cc: new file.
7063         * lily/font-metric.cc (text_stencil): new routine
7065         * lily/all-font-metrics.cc (find_pango_font): new routine.
7067         * lily/include/font-metric.hh (struct Font_metric): add
7068         text_stencil()
7070         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
7072 2004-12-22  Werner Lemberg  <wl@gnu.org>
7074         Prepare glyph shapes for mf2pt1 conversion.
7076         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
7078         * mf/feta-toevallig.mf: Formatting.
7079         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
7080         ("Natural"): Fix paths to allow better postprocessing.
7081         (draw_meta_flat): Use `z3l' as additional point in path to get
7082         better conversion with mf2pt1.
7083         Other minor cleanups.
7084         ("3/4 Flat"): Add auxiliary points and modify path to replace
7085         `draw' with `fill'.
7086         ("Double Sharp"): Mirror path segments instead of picture elements
7087         to get a single outline.
7088         Modify path to replace `filldraw' with `fill'.
7090 2004-12-22  Graham Percival  <gperlist@shaw.ca>
7092         * input/test/unfold-all-repeats.ly: added file back.
7094         * Documentation/user/notation.itely,
7095         Documentation/user/programming-interface.itely
7096         Documentation/user/changing-defaults.itely: fixed misc broken
7097         links to input/test/ files.
7099 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
7101         * tex/texinfo.tex: Update.  We should not be distributing this,
7102         but since we do, use latest version.
7104         * Documentation/user/macros.itexi: Comment-out \fetaflat,
7105         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
7106         macros for feta glyphs.
7108 2004-12-22  Graham Percival  <gperlist@shaw.ca>
7110         * Documentation/user/changing-defaults.itely: fix index for set.
7112         * Documentation/user/converters.itely: added convert-ly bugs list
7113         from CVS.
7115 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7117         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
7118         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
7119         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
7120         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
7122         * mf/GNUmakefile (pfa_warning): Use less broken check.
7124         * python/lilylib.py (setup_environment): Remove cruft from
7125         GS_FONTPATH.
7127         * configure.in: Bump mftrace requirement to 1.1.1.
7129 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7131         * scm/output-svg.scm (beam): Use polygon.
7133         * scm/lily-library.scm: Bugfix.
7135         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
7137         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
7139 2004-12-19  Werner Lemberg  <wl@gnu.org>
7141         Prepare glyph shapes for mf2pt1 conversion.
7143         * mf/feta-eindelijk: Some formatting.
7144         (multi_rest_x, multi_beam_height): Removed.  Unused.
7145         ("Quarter rest"): Use `intersectiontimes' to create a single
7146         outline.
7147         (rest_crook): Removed.  Unused.
7148         (draw_rest_bulb): Return path (wihtout filling).  Update callers.
7149         Simplified.
7150         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
7151         "128th rest"): Simplify `pat'.
7152         Create single outline.
7154 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7156         * mf/GNUmakefile (ALL_GEN_FILES):
7157         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
7159         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
7160         function.
7162 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7164         * scm/output-texstr.scm (placebox): add routine
7166         * VERSION (PACKAGE_NAME): release 2.5.4
7168         * scm/framework-texstr.scm (output-framework): new file.  
7170         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
7171         processing.
7173         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
7175         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
7176         rule.
7178         * configure.in (gui_b): bump mftrace requirement to 1.1.0
7180         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
7182         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
7184 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7186         * scm/framework-svg.scm (dump-page): Implement landscape.
7188 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7190         * lily/main.cc (setup_paths): Add svg to search path.
7192         * scm/output-svg.scm:
7193         * scm/framework-svg.scm: Add pageSet.  Update.
7194         (dump-fonts): New function.
7195         (output-framework): Use it.
7197         * mf/GNUmakefile: 
7198         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
7200 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7202         * tex/lilyponddefs.tex: comment out new ifpdf code.
7204 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7206         * GNUmakefile.in: 
7207         * SConstruct (symlink): Replace afm by otf.
7209         * scm/framework-gnome.scm (gnome-main): Remove invocation of
7210         ly:pango-add-afm-decoder.
7212         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
7214 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7216         * scm/output-ps.scm (new-text): don't access t glyph for getting
7217         space dimension.
7219         * ly/init.ly: warn about \version
7221         * lily/lexer.ll: set version-seen?
7223 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7225         * scm/output-svg.scm (string->entities): Update.
7227 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7229         * lily/main.cc (setup_paths): replace afm by otf for path. 
7231         * lily/pangofc-afm-decoder.cc: remove.
7233         * lily/include/pangofc-afm-decoder.hh: remove.
7235         * scm/framework-scm.scm (output-framework): new file.
7237         * mf/GNUmakefile: remove SAUTER_FONTS.
7238         remove SVG/sodipodi hacks.
7240         * scm/lily-library.scm (stderr): move stderr.
7242         * mf/GNUmakefile: remove AFM support.
7244         * buildscripts/mf-to-table.py (base): remove AFM support.
7246         * lily/open-type-font.cc (design_size): use design_size
7248 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
7250         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
7252 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7254         * mf/GNUmakefile: Generate combined aybabtu info.
7255         * mf/aybabtu.pe.in (i): Load it.
7257         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
7258         are not symbols.
7260         * lily/include/open-type-font.hh (count): New method.
7262         * mf/aybabtu.pe.in: Typo.
7264         * Documentation/user/out/lilypond-internals.nexi (Scheme
7265         functions): Typo.
7267         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
7269 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7271         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
7272         subfonts.
7274         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
7276         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
7277         (tex-font-command-raw): new function.
7279         * lily/include/virtual-font-metric.hh (Module): remove file
7281         * lily/virtual-font-metric.cc (Module): remove file.
7282         
7284         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
7285         (get_indexed_char): read bbox from lily table if present.
7287 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7289         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
7290         aybabtu.subfonts
7292         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
7293         global glyphname. Enables more than 64 glyphs in the OTF.
7295 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7297         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
7298         braces.
7300         * lily/open-type-font.cc (design_size): Use 12 as default for
7301         design size.
7303         * mf/aybabtu.pe.in: New file.  Merge all our braces.
7305         * mf/GNUmakefile: Generate aybabtu.
7307         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
7309 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7311         * scm/lily-library.scm (char->unicode-index): Remove.
7313         * scm/output-gnome.scm (text): Bugfix for plain string input.
7314         Updates.
7316         * scm/output-svg.scm (svg-font): Add weight to font selection.
7318 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7320         * Documentation/topdocs/INSTALL.texi (Top): Point to
7321         buildscripts/out/clean-fonts instead of
7322         buildscripts/clean-fonts.sh. 
7324 2004-12-13  Graham Percival  <gperlist@shaw.ca>
7326         * input/regression/figured-bass.ly: attempt to clarify text.
7328         * Documentation/user/notation.tely: add cindex for tag, attempt to
7329         add figured bass example.
7331         * Documentation/user/changing-defaults: basic editing.
7333 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7335         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
7337         * lily/open-type-font.cc (LY_DEFINE): new function
7338         ly:font-sub-fonts
7340         * lily/include/font-metric.hh (struct Font_metric): new method
7341         sub_fonts()
7343         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
7344         . with - in add.stem.
7345         
7346 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7348         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
7349         and fetaDynamic.
7351         * lily/rest.cc (glyph_name): Change - to . .
7353         * scm/output-gnome.scm (text): Hello world, again.
7355         * scm/output-svg.scm (named-glyph): New function.  Hello world!
7357         * lily/modified-font-metric.cc (index_to_charcode): New method.
7359         * lily/include/font-metric.hh (index_to_charcode): New function.
7361         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
7362         new function.
7363         (ly:font-glyph-to-index): Remove.
7365 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7367         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
7369         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
7371         * lily/open-type-font.cc (load_scheme_table): new function
7373         * lily/dots.cc (print): replace - 
7375         * lily/open-type-font.cc (attachment_point): new function.
7376         (load_table): read LILC table
7378         * buildscripts/gen-bigcheese-scripts.py (Module): new
7379         file. Generate FF scripts.
7381         * mf/feta-din10.mf: idem.
7383         * mf/feta-nummer10.mf: remove mf files.
7385         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
7387 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7389         * lily/lily-guile.cc: Use scm_from_locale_stringn.
7391         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
7392         compatibility.
7394 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7396         * lily/open-type-font.cc (get_indexed_char): scale metrics by
7397         design-size and units_per_EM.
7399         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
7401 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7403         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
7404         does not crash fontforge.
7406         * scm/lily-library.scm (char->unicode-index): Hack to map onto
7407         PUA.
7409 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7411         * scm/framework-ps.scm (ps-embed-cff): new function.
7413         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
7415 2004-12-12  Werner Lemberg  <wl@gnu.org>
7417         * mf/bigcheese.pe.in: Add PUA mapping.
7418         Don't create Type 42 but bare CFF font.
7420 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7422         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
7423         within canvas boundaries.
7425         * mf/merge.pe.in: Set font names, version, license GPL.
7427         * make/substitute.make: Add FONTFORGE.
7429         * config.make.in (FONTFORGE): Add.
7431         * configure.in (gui_b): Use PATH_PROG for fontforge.
7433 2004-12-11  Graham Percival  <gperlist@shaw.ca>
7435         * scm/define-markup-commands.scm: add baseline-skip to info
7436         about \column.
7438 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7440         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
7442         * scm/output-gnome.scm (named-glyph): Use it.
7444         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
7446         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
7447         (upper_string, lower_string, reverse_string): Remove.
7449         * configure.in (fontforge): Reinstate version check.
7451         * ly/engraver-init.ly: Fix clef glyph names.
7453         * lily/time-signature.cc (special_time_signature): Fix fraction
7454         glyph names.
7456 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7458         * mf/merge.pe: new file.
7460         * lily/freetype.cc: new file.
7462         * lily/include/open-type-font.hh (class Open_type_font): new file.
7464         * lily/include/freetype.hh: new file.
7466         * lily/open-type-font.cc: new file.
7468         * lily/all-font-metrics.cc (find_otf): new function.
7470 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7472         * lily/time-signature.cc (special_time_signature): Fix.
7474         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
7475         GTK2 before checking for pango.  Fixes -fgnome.
7477         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
7478         Scheme name.
7480         * scm/define-markup-commands.scm:
7481         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
7483         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
7485         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
7486         date versions.  Fixes configure.
7487         (STEPMAKE_CHECK_VERSION): Support optional actual program version
7488         argument.
7490 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7492         * buildscripts/mf-to-table.py (write_ps_encoding): write real
7493         names in .enc
7495         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
7497 2004-12-09  Graham Percival  <gperlist@shaw.ca>
7499         * Documentation/user/changing-defaults.itely: add info about
7500         make-dynamic-script
7502         * Documentation/user/notation.itely: add link in dynamics to
7503         section about make-dynamic-script.
7505 2004-12-09  Christian hitz  <chhitz@gmx.net>
7507         * lily/lily-guile.cc: change MACOS_X to __APPLE__
7509 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7511         * buildscripts/mf-to-table.py (parse_logfile): use . for
7512         concatting name and group.
7513         (parse_logfile): use M for Minus (negative.)
7515         * lily/include/type-swallow-translator.hh
7516         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
7518         * lily/*.cc: cosmetics around = sign.
7520         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
7521         lyric spacing on the penultimate column.
7523 2004-12-05  Christian Hitz  <chhitz@gmx.net>
7525         * configure.in:
7526         * lily/accidental-placement.cc:
7527         * lily/bar-line.cc:
7528         * lily/beam-concave.cc:
7529         * lily/beam-quanting.cc:
7530         * lily/beam.cc:
7531         * lily/bezier-bow.cc:
7532         * lily/bezier.cc:
7533         * lily/break-align-interface.cc:
7534         * lily/custos.cc:
7535         * lily/dimension-cache.cc:
7536         * lily/dot-column.cc:
7537         * lily/font-metric.cc:
7538         * lily/font-select.cc:
7539         * lily/gourlay-breaking.cc:
7540         * lily/grob-property.cc:
7541         * lily/grob.cc:
7542         * lily/lily-guile.cc:
7543         * lily/line-spanner.cc:
7544         * lily/lookup.cc:
7545         * lily/lyric-extender.cc:
7546         * lily/lyric-hyphen.cc:
7547         * lily/mensural-ligature.cc:
7548         * lily/midi-def.cc:
7549         * lily/misc.cc:
7550         * lily/note-collision.cc:
7551         * lily/note-column.cc:
7552         * lily/note-head.cc:
7553         * lily/paper-outputter.cc:
7554         * lily/percent-repeat-item.cc:
7555         * lily/rest-collision.cc:
7556         * lily/side-position-interface.cc:
7557         * lily/simple-spacer.cc:
7558         * lily/slur-configuration.cc:
7559         * lily/slur-scoring.cc:
7560         * lily/slur.cc:
7561         * lily/spaceable-grob.cc:
7562         * lily/spacing-spanner.cc:
7563         * lily/spanner.cc:
7564         * lily/staff-symbol-referencer.cc:
7565         * lily/stem.cc:
7566         * lily/stencil.cc:
7567         * lily/system-start-delimiter.cc:
7568         * lily/system.cc:
7569         * lily/text-item.cc:
7570         * lily/tie.cc:
7571         * lily/tuplet-bracket.cc:
7572         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
7573         <cmath> beacause isinf/isnan is undefined in <cmath>
7575 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7577         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
7579 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7581         * VERSION: release 2.5.3
7582         
7583 2004-11-29  Arno Waschk <arno@arnowaschk.de>
7585         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
7587 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7589         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
7591         * lily/note-head.cc (internal_print): always try the "s" head if
7592         u/d not found.
7594         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
7596 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7598         * mf/parmesan-heads.mf (overdone_heads): typos.
7600 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7602         * lily/parser.yy (markup): in markups, { .. } without command
7603         before are also flattened, ie \line must be explicitely used.
7605         * Documentation/user/changing-defaults.itely:
7606         * Documentation/user/notation.itely: 
7607         * input/wilhelmus.ly: 
7608         * input/regression/instrument-name-markup.ly: 
7609         * input/regression/markup-score.ly: 
7610         * input/regression/new-markup-scheme.ly: 
7611         * input/regression/new-markup-syntax.ly: 
7612         * input/test/coriolan-margin.ly: use \line in markups where
7613         appropriate
7614         
7615 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7617         * scm/new-markup.scm (map-markup-command-list): helper function
7618         used in parser.yy to map markup commands on a markup list.
7620         * lily/parser.yy: get rid off < > in markups by treating { } as
7621         real lists.
7623         * lily/lexer.ll: remove < > from markup lexer mode.
7625         * scripts/convert-ly.py (conv): add rule for converting 
7626         \markup < > to \markup { }
7628         * ly/titling-init.ly: 
7629         * input/test/coriolan-margin.ly: 
7630         * input/regression/new-markup-syntax.ly: 
7631         * input/regression/new-markup-scheme.ly: 
7632         * input/regression/multi-measure-rest-text.ly: 
7633         * input/regression/markup-stack.ly: 
7634         * input/regression/markup-score.ly: 
7635         * input/regression/instrument-name-markup.ly: 
7636         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
7637         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
7638         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
7639         * input/wilhelmus.ly: 
7640         * Documentation/user/notation.itely: 
7641         * Documentation/user/music-glossary.tely: 
7642         * Documentation/user/changing-defaults.itely: change < > to { } in
7643         markups
7645 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7647         * lily/accidental-placement.cc (position_accidentals): shortcut if
7648         no accidentals to place.
7650 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7652         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
7653         typo s/ly:dimension ?/ly:dimension?/
7655         * input/regression/lily-in-scheme.ly: 
7656         * input/regression/music-function.ly: 
7657         * ly/spanners-init.ly (assertBeamSlope): 
7658         * scm/music-functions.scm (def-grace-function): add the paper
7659         argument to music function definitions.
7661 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7663         * lily/moment.cc (LY_DEFINE):
7664         ly:moment-main-{denominator,numberator}, new function.
7666         * lily/score-engraver.cc (typeset_all): assign to column on basis
7667         of axis-group-parent-X setting.
7669         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
7670         add_element() on basis of axis-group-parent-Y setting.
7672         * lily/grob.cc: add axis-group-parent-{XY} properties.
7674         * input/regression/spacing-stick-out.ly: new file.
7676         * lily/simple-spacer.cc (add_columns): use binary search for
7677         setting column rods. Changes O(n^2) to O(n log(n)) for
7678         constructing spacing problem from columns.
7679         (add_columns): read allow-outside-line to make sure no texts stick
7680         out.
7681         (solve): Simple_spacer::is_active() only determines
7682         satisfies_constraints_ for non-ragged typesetting.
7684         * lily/simultaneous-music.cc (to_relative_octave): only set
7685         old_relative_used if return pitch actually changed.
7687         * scm/define-context-properties.scm
7688         (all-user-translation-properties): change to match implementation.
7690         * python/lilylib.py: Replace re.match by re.search and adds "-c
7691         showpage" to the gs command line (Johannes Schindelin)
7693         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
7694         before processing. Prevents crash when inf is in the extent.
7696         * scm/define-markup-commands.scm (note-by-number): add "s" to
7697         "noteheads-" glyphname.
7699         * lily/parser.yy (Generic_prefix_music): supply parser argument to
7700         music function as well.
7701         
7702 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7704         * VERSION: release 2.5.2
7706         * Documentation/user/changing-defaults.itely (Creating titles):
7707         add breakbefore variable.
7709         * lily/paper-book.cc (set_system_penalty): new function. Set
7710         penalty_ based on breakBefore setting
7712         * lily/context-specced-music-iterator.cc (construct_children):
7713         interpret special context id $uniqueContextId 
7715         * lily/context.cc (create_unique_context): new method. Move
7716         creation of unique (\new) contexts into interpreting phase. This
7717         makes
7719           foo= \new Staff ..
7720           << \foo \foo >>
7722         produce 2 staves.
7723         
7725         * scm/define-music-properties.scm (all-music-properties): add
7726         quoted-voice-direction
7728         * ly/music-functions-init.ly: killCues function.
7730         * scm/music-functions.scm (cue-substitute): move creation of voice
7731         contexts further to the back. 
7733 2004-11-25  Werner Lemberg  <wl@gnu.org>
7735         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
7736         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
7738 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
7740         * buildscripts/guile-gnome.sh: Fixed typo.
7742 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7744         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
7746         * scripts/abc2ly.py (dump_slyrics): add ord(). 
7748         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
7749         to regular engraver. 
7751 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7753         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
7755 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
7757         * scm/define-markup-commands.scm (fill-line): Typo.
7759         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
7760         and newer.
7762 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
7764         * ly/dynamic-scripts-init.ly: Fixed typo.
7766 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7768         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
7769         note-head, to have different attachment points for up and down.
7771         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
7773         * mf/feta-generic.mf (else): remove solfa.
7775         * mf/feta-bolletjes.mf (tishape): remove unicode test.
7777         * scm/define-context-properties.scm
7778         (all-user-translation-properties): add shapeNoteStyles property.
7780         * lily/shape-note-heads-engraver.cc (process_music): new file.
7782         * lily/event.cc (transpose): call Event::transpose() for
7783         transposing the tonic.
7785 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7787         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
7788         Unicode/OpenType and AFM.
7790         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
7792 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7794         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
7796         * lily/context.cc (Context): unprotect key from ctor.
7798         * scm/stencil.scm (stack-lines): return empty-stencil if argument
7799         is '()
7800         (stack-stencils): idem.
7802         * Documentation/user/changing-defaults.itely (Creating titles):
7803         document new title layout options.
7805         * lily/parser.yy (lilypond_header_body): copy previous
7806         $globalheader if present.
7808         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
7809         ly:module-copy
7810         
7811         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
7813         * scm/titling.scm: remove old titling functions
7815         * lily/stencil.cc (translate): remove absolute dimension.
7817         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
7818         via markup.
7820         * scm/page-layout.scm (marked-up-headfoot): create header/footer
7821         field from user-supplied markup
7823         * scm/define-markup-commands.scm (on-the-fly): new markup
7824         command. Enter SCM markup procedure directly in Scheme.
7825         (fromproperty): new markup command. Read markup from props argument.
7827         * scm/titling.scm (marked-up-title): create title via
7828         user-specified markup. 
7830         * scm/define-markup-commands.scm (column): remove empty stencils
7831         from column.
7833         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
7834         not have side-effect of creating variable stub.
7836         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
7838 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7840         * scm/encoding.scm (coding-alist): 
7841         * scm/font.scm (add-ec-fonts):
7842         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
7843         Extended-TeX-Font-Encoding---Latin.
7845         * lily/side-position-interface.cc (general_side_position): Add
7846         actual offset to error message (avoid constant error messages).
7848         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
7849         block.
7851         * lily/font-select.cc (select_encoded_font)
7852         (get_font_by_mag_step, get_font_by_design_size): 
7853         * lily/modified-font-metric.cc (Modified_font_metric): 
7854         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
7856         * scm/encoding.scm (coding-alist): Add fetaDynamic.
7857         (read-encoding-file): Bugfix: do not require space after bracket.
7859         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
7860         these do not exist.
7862 2004-11-20  Graham Percival  <gperlist@shaw.ca>
7864         * Documentation/user/notation.itely: added info about typesetting
7865         boxed bar numbers.
7867 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7869         * flower/interval.cc (T_to_string): gcc4 fixes.
7871         * scm/define-markup-commands.scm (fill-line): use
7872         stack-stencils. This fixes problems with putting already centered
7873         stencils in a line.
7875         * VERSION: release 2.5.1
7877         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
7879 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7881         * input/example-[1-3].ly: simplify.
7883         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
7885         * scm/output-ps.scm (new-text): new function. Use glyphshow to
7886         show glyphs.
7888         * scm/encoding.scm (decode-byte-string): new function.
7890         * scripts/convert-ly.py (conv): add warning about
7891         set-global-staff-size.
7893         * Doxyfile: add. 
7895         * scripts/convert-ly.py (conv): add raggedlastbottom rule
7896         (conv): warn for TextSpanner split.
7897         (conv): warn for textheight.
7899 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7901         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
7902         building the documentation, info with images are installed.
7903         (final-install): Fix description.  Mention sourcing of login
7904         scripts (instead of running).
7906 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7908         * Debian lmodern support.  Note that LilyPond will issue warnings
7909         
7910             no such encoding: "FontSpecific"
7912           The font selection mechanism wants to get the encoding from the
7913           font itself, but the idea of lmodern is that it is usable with
7914           different encodings, ie, Lily should get the encoding from the
7915           font tree, rather than the font itself.  This would require some
7916           more work.
7917         
7918         * configure.in: Test for and accept lmodern if EC fonts not found.
7920         * scm/framework-tex.scm (font-load-command): TeX font name
7921         mangling for latin1 encoded cork-lm fonts.
7922         (convert-to-ps): Load lm.map if available.
7924         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
7925         available.
7927         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
7929         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
7930         available.
7932         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
7933         path for absolute file name, that is silly.
7935         * lily/score-engraver.cc (initialize): 
7937         * Documentation/user/GNUmakefile (local-install-info): Invoke
7938         install-info --remove first.
7940         * #include cleanup (Andreas Scherer).
7942 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
7944         * input/test/script-abbreviations.ly: fix typos.
7946 2004-11-17  Werner Lemberg  <wl@gnu.org>
7948         * python/lilylib.py (options_help_str): Support pretty-printing of
7949         newlines in fourth element of option description.
7951         * scripts/lilypond-book.py (option_definitions): Use new lilylib
7952         feature.
7953         Sort options.
7955         * Documentation/user/lilypond-book.itely: Finish update.
7957 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7959         * Documentation/user/macros.itexi: Add comment about \command.
7961         * Documentation/user/lilypond.tely:
7962         * Documentation/user/lilypond-book.itely: Fix names of lilypond
7963         and lilypond-book nodes, so that `info lilypond' visits the manual
7964         at top level, and `info lilypond-book' visits the lilypond-book
7965         section.
7967         * Documentation/user/GNUmakefile (local-install-info): Fix rules
7968         and packager messages.
7970         * lily/pangofc-afm-decoder.cc: Update test.
7972 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7974         * scm/lily-library.scm (char->unicode-index): New function.
7976         * scm/output-gnome.scm: 
7977         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
7979         * Proper naming of file name throughout; s/filename/file[-_]name/.
7981         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
7983         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
7985 2004-11-16  Werner Lemberg  <wl@gnu.org>
7987         * scripts/lilypond-book.py: The Lord has commanded me to use only
7988         tabs for indentation.  Your humble servant obeys.
7990 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7992         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
7993         including font, if LilyPond-feta font is only feta font in path.
7995         * scm/output-gnome.scm (text): Revert to file name of font if font
7996         has no name.  Fixes ec font selection.
7997         (char): Bugfix: do not utf8 twice.  Fixes clefs.
7999         * scm/framework-svg.scm:
8000         * scm/output-svg.scm: New file.  TODO: figure out how to
8001         do character by index in font.
8003         * scm/output-sodipodi.scm: Remove.
8005         * scm/output-ps.scm (stem): Remove.
8007 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8009         * scm/output-gnome.scm (beam): New function.
8010         (slur): Round corners.
8011         (round-filled-box): Round corners.
8013 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8015         * scm/output-gnome.scm (beam): add function.
8016         (draw-line): new routine.
8017         (dashed-line): stub; call draw-line
8018         (polygon): new routine.
8020 2004-11-15  Werner Lemberg  <wl@gnu.org>
8022         * Documentation/user/lilypond-book.itely: Revise section on
8023         lilypond-book options.
8024         Other minor fixes.
8026         * scripts/lilypond-book.py: Change indentation to 4.
8027         Minor formatting.
8029 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8031         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
8032         grobs that have tweaks specced.
8033         
8034 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
8036         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
8038 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8040         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
8041         actual char #, not 0 based index.
8043         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
8045         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
8046         Warning: do make -C mf clean.
8048         * lily/context-property.cc: Compile fix.
8050         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
8051         Grok ec-fonts, braces and dynamics.
8053         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
8055 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8057         * lily/include/tweak-registration.hh: new file.
8059         * lily/tweak-registration.cc: new file.
8061         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
8062         saving tweaks.
8064         * scm/output-gnome.scm (text): comment dribble.
8066 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8068         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
8070         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
8071         path-def before using.  Fixes muchtomany slurs in wrong places
8072         bug.
8074 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8076         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
8078         * lily/include/object-key-undumper.hh (Module): new file.
8080         * lily/object-key-undumper.cc (Module): New file. Deserialize
8081         keys. SCM bindings
8083         * lily/object-key-dumper.cc (Object_key_dumper): idem.
8084         Provide SCM bindings.
8086         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
8087         new file. Serialize object keys.
8088         
8089         * lily/object-key.cc (dump): new function.
8090         (as_scheme): new virtual function
8091         (undump): new function
8092         (undumpers): new table.
8094         * lily/include/global-context.hh (Context): take \score key upon init.
8096         * lily/object-key-dumper.cc (serialize_key): new file.
8098         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
8100         * lily/lily-lexer.cc: remove \quote.
8102         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
8104         * lily/context.cc (Context): take key argument in ctor.
8105         (create_context): new function
8107         * lily/grob.cc (Grob): take key argument in ctor.  
8109         * lily/lilypond-key.cc (do_compare): new file.
8111         * lily/object-key.cc (Object_key): new file.
8113         * lily/include/object-key.hh (class Object_key): new file.
8115         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
8117 2004-11-13  Graham Percival  <gperlist@shaw.ca>
8119         * Documentation/user/lilypond-book.itely: add small warning about
8120         noindent default in lilypond-book.
8122         * Documentation/user/converters.itely: add examples for convert-ly.
8124         * Documentation/user/examples.itely: change version string in templates
8125         to 2.4.0.
8127 2004-11-12  Karl Hammar  <karl@aspodata.se>
8129         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
8130         cmdline, use xargs instead (backportme)
8132 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
8133         
8134         * Documentation/user/: Numerous fixes in the user manual.
8136 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8138         * lily/parser.yy (re_rhythmed_music): search music expression for
8139         context-id, surround by \new Voice if not found. Fixes:
8140         addlyrics-second-staff.ly
8142         * VERSION: 2.5.0 released.
8143         
8144 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8146         * Documentation/index.html.in: Fix url to one big page.  (backportme)
8148         * Documentation/user/GNUmakefile: Separate rules for split and
8149         unsplit html documents.  Remove perl massaging.  (backportme)
8151 2004-11-11  Graham Percival  <gperlist@shaw.ca>
8153         * Documentation/user/lilypond-book.itely: add short warning about
8154         \lilypond{} in LaTeX docs.
8156 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8158         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
8159         found.  (backportme)
8161         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
8162         version requirement.  (backportme)
8164         * configure.in: Be explicit about old versions of
8165         ec-fonts-mtraced.  (backportme)
8167         * lily/context-selector.cc (set_tweaks): New function.
8168         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
8169         web with -DTWEAK.
8171         * Documentation/user/introduction.itely (Automated engraving):
8172         Remove fragment option.  Fixes web.
8174         * lily/context-property.cc (make_item_from_properties):
8175         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
8176         #ifdef.
8178         * scm/define-context-properties.scm
8179         (all-internal-translation-properties): Add tweakRank and tweakCount.
8181         * lily/grob.cc: 
8182         * scm/define-grob-properties.scm (all-internal-grob-properties):
8183         Add tweak-rank and tweak-count.
8185 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8187         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
8188         New function.
8189         (text): Use them.
8191         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
8192         animated/opaque grob dragging tweaks.
8194         * buildscripts/guile-gnome.sh: Update.
8196 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8198         * scm/define-grobs.scm (all-grob-descriptions): Added
8199         line-interface to the LigatureBracket object.
8201 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8203         * scm/framework-gnome.scm (item-event): Support non-animated mouse
8204         dragging tweaks.
8206         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
8208         * lily/context-selector.cc (store_context): New function.
8210         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
8211         (store_grob): New function.
8212         (identify_grob): Add Moment parameter.
8214         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
8215         exists.
8217         * scm/framework-gnome.scm (save-tweaks): Write as alist.
8219 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8221         * scm/framework-gnome.scm (item-event): Print grob id.
8222         (save-tweaks): New function.
8223         (tweak): New funtion.
8224         (item-event): Use it, bound to arrow keys.
8226         * lily/context-property.cc (make_item_from_properties): Register grob.
8227         * lily/context.cc (add_context): Register context.
8229         * lily/include/context-selector.hh:
8230         * lily/include/grob-selector.hh:
8231         * lily/context-selector.cc:
8232         * lily/grob-selector.cc: New file.
8234 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8236         * lily/slur.cc: add 'positions to interface
8238         * lily/main.cc: reinstate PS as standard output format. 
8240         * scm/framework-tex.scm (output-preview-framework): print systems
8241         up to first non title system.
8243         * lily/grace-engraver.cc (start_translation_timestep): split
8244         scm_cadddr
8245         
8246 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8248         * lily/quote-iterator.cc (Module): remove old quote-iterator
8250         * scm/define-music-types.scm (music-descriptions): move
8251         NewQuoteMusic over QuoteMusic
8253         * Documentation/user/notation.itely (Formatting cue notes): use
8254         \cueDuring.
8256         * lily/new-quote-iterator.cc (quote_ok): new function.
8258         * input/regression/quote-cue-during.ly: new file.
8260         * input/regression/quote-grace.ly: new file.
8262         * scm/define-context-properties.scm (Module): change definition of
8263         graceSettings
8265         * lily/context-property.cc (Module): rename from
8266         translator-property.cc
8268         * lily/context.cc (context_name_symbol): new function
8270         * lily/grace-engraver.cc: new file. Set properties for grobs based
8271         on the grace-ness of now_moment().
8273         * scm/music-functions.scm (add-grace-property): use list
8274         iso. vector for graceSettings
8275         remove set-{start,stop}-grace-properties. 
8277         * lily/new-quote-iterator.cc (construct_children): set
8278         quote_outlet_ if no quoted-context-{id,type} specified.
8280         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
8282         * lily/parser.yy (command_element): remove \quote.
8284         * ly/music-functions-init.ly (location): add quoteDuring music
8285         function. 
8287         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
8288         optional semicolon. (backportme)
8290 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8292         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
8293         need to link to GUILE et al.
8295 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8297         * scm/define-music-properties.scm (all-music-properties): add
8298         quoted-context-type, quoted-context-id.
8300         * scm/lily.scm (type-check-list): new function.
8301         
8302         * scm/lily-library.scm: new file. Generic library routines.
8304         * lily/parser.yy (Generic_prefix_music): move typechecking out of
8305         parser.
8307         * ly/music-functions-init.ly: add quoteDuring function.
8309         * lily/include/music-iterator.hh (class Music_iterator): rename
8310         set_translator -> set_context
8312         * lily/parser.yy (Generic_prefix_music_scm): add
8313         MUSIC_FUNCTION_SCM_SCM_MUSIC
8315         * scm/lily.scm (sanitize-command-option): new function. (backportme)
8317         * scm/framework-tex.scm (header): sanitize TeX paper size.
8318         (backportme)
8320 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8322         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
8324         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
8326         * scm/framework-tex.scm (font-load-command): Use T1 if no
8327         font-encoding set.  (backportme)
8329         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
8330         exists before converting.  (backportme)
8332         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
8333         exists before converting.  (backportme)
8334         (convert-to-ps): Remove .ps file if it exists before
8335         converting.  (backportme)
8337         * lily/lexer.ll: Remove extra progress newline, use present tense.
8339         * scm/paper.scm (paper-alist): public.
8340         * scm/framework-tex.scm (convert-to-ps):
8341         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
8342         command line.
8344 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8346         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
8348         * lily/recording-group-engraver.cc (derived_mark): mark
8349         now_events_. (backportme)
8351 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8353         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
8355         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
8356         invoking latex. (backportme.)
8358         * lily/stem.cc (off_callback): center stems for all rest stems.
8360 2004-11-05  Werner Lemberg  <wl@gnu.org>
8362         * Documentation/user/lilypond.tely: Add more guidelines for writing
8363         lilypond texinfo documents.
8365 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
8367         * Documentation/index.html.in: remove <hr>.
8369         * THANKS: change 2.3 to 2.4.
8371 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
8373         * scm/output-gnome.scm: More fontconfig comment.
8375 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
8377         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
8378         <package> directory in $(builddir)/share according with
8379         PACKAGE_NAME defined in the VERSION file.
8381 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8383         * lily/beam.cc (rest_collision_callback): use local beam
8384         multiplicity.
8386         * input/regression/stem-stemlet.ly: new file.
8388         * lily/stem.cc (add_head): store rests as well.
8390         * scm/define-grob-properties.scm (all-user-grob-properties): add
8391         stemlet-length
8393         * lily/stem.cc: store rests as well.
8394         
8395         * input/regression/new-slur.ly: mention forcing.
8397 2004-11-04  Werner Lemberg  <wl@gnu.org>
8399         * Documentation/user/*: A new round of layout fixes and document
8400         structure cleanup.
8402 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
8404         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
8406 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
8408         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
8410 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8412         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
8414         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
8416         * lily/main.cc (main): Invoke identify.
8418         * scm/lily.scm (postscript->pdf): Remove progress newline.
8419         Write progress to stderr.
8421         * lily/paper-book.cc (output): Remove progress newline.
8423         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
8424         gettext on user messages, and remove whitespace.
8426         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
8428         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
8429         argv[0] (Thomas Scharkowski).
8431         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
8432         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
8433         for ec-fonts-mtraced.
8435         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
8436         --srcdir build (Bertalan).
8438         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
8439         headers and library too (Laura Conrad).
8441         * Documentation/topdocs/INSTALL.texi (Top): Mention development
8442         package for guile too (Laura Conrad).
8444         * lily/main.cc (usage): Typo.
8446 2004-11-02  Werner Lemberg  <wl@gnu.org>
8448         * Documentation/user/notation.ly: More fixes to improve appearance.
8450         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
8451         better output for multicolumn tables.
8453 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8455         * lily/main.cc (dir_info): Fixed typo in the printouts.
8457 2004-11-01  Werner Lemberg  <wl@gnu.org>
8459         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
8460         of output.
8461         Set `per_line' to 2; replace hard-coded value with it.
8463         * Documentation/user/*: Many fixes to improve appearance of
8464         printed manual.
8466 2004-11-01  Werner Lemberg  <wl@gnu.org>
8468         * Documentation/user/changing-defaults.itely,
8469         Documentation/user/notation.ly,
8470         Documentation/user/programming-interface.itely: Use @/.
8471         Fix formatting of some lilypond snippets and tables.
8473         * scripts/lilypond-book.py (compose_ly): Provide useful default
8474         for LINEWIDTH in `override'.
8476 2004-10-31  Graham Percival  <gperlist@shaw.ca>
8478         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
8480 2004-10-31  Werner Lemberg  <wl@gnu.org>
8482         Resetting @exampleindent to `5' gives ugly results with texinfo's
8483         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
8484         (if not quoting) to change @exampleindent only locally.
8486         * scripts/lilypond-book.py (NOQUOTE): New variable.
8487         (output) [LATEX]: Remove AFTER and BEFORE.
8488         [TEXINFO]: Remove AFTER and BEFORE.
8489         Fix QUOTE and VERBATIM pattern.
8490         Add NOQUOTE pattern.
8491         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
8492         and BEFORE.
8493         [output_texinfo]: Use NOQUOTE.
8495 2004-10-31  Graham Percival  <gperlist@shaw.ca>
8497         * Documentation/user/changing-defaults.itely: clarify paper
8498         size commands with correct info.
8500         * Documentation/user/lilypond-book.itely: add more docs for
8501         filename extensions.
8503 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8505         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
8506         (PATCH_LEVEL): start 2.5.0.
8508 2004-10-30  Graham Percival  <gperlist@shaw.ca>
8510         * Documentation/user/notation.itely: add warning about bar numbers
8511         in multistaff music, add warning about quoting grace notes.
8513         * Documentation/user/changing-defaults.itely: clarify paper size commands,
8514         add missing subsubtitle entry to Creating titles.
8516         * Documentation/user/tutorial.itely: change 3.0 references to 2.4.
8518 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8520         * scripts/convert-ly.py (conv): fixed \context Foo = mixedCaps
8521         case.
8522         (conv): add dummy 2.4.0 conversion rule.
8524         * Documentation/user/lilypond.tely: add @finalout.
8526         * lily/slur-scoring.cc (enumerate_attachments): use stem_extent_
8527         for attaching, fixes slur/stem left attachment of
8528         downslur/downstem.
8530         * lily/quote-iterator.cc (process): use <= for comparisons. Fixes
8531         quote problem if for last note of quoted sequence. 
8533         * input/regression/part-combine-text.ly (comm): add expect strings.
8535 2004-10-30  Werner Lemberg  <wl@gnu.org>
8537         * Documentation/user/examples.itely: Improved layout.
8539         * Documentation/invoking.itely: Use `@/' to insert breakpoints.
8541         * Documentation/macros.itexi (@inputfileref) [@tex]: Use `@/'.
8543         * Documentation/notation.itely: Use `@/'.
8544         Other layout fixes.
8546 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8548         * lily/part-combine-iterator.cc (unisono): examine last_playing_
8549         (not state_), this fixes a2 printing after chord.
8551         * input/regression/no-staff.ly: fix octave, revise syntax.
8553         * input/regression/lyrics-bar.ly (texidoc): fixes.
8555         * input/regression/beam-dir-functions.ly (Module): remove from regtest
8557         * input/regression/accidentals.ly (Module): remove from regtest.
8559         * lily/parser.yy (Prefix_composite_music): 
8560         oops. Chords should be unrelativable, not bass figures untransposable.
8562         * VERSION: 2.3.26 released.
8563         
8564         * lily/completion-note-heads-engraver.cc (try_music): only return
8565         something when is_first_ is true. Fixes lyrics with completion_heads. 
8567         * make/lilypond-vars.make: add scripts/out/ to PATH, to find ps2png. 
8569         * scm/lily.scm (ly:system): new function. Catches uninstalled
8570         ps2png.
8572 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8574         * Documentation/user/notation.itely: remove
8575         @hyphenatedinternalsref.
8577 2004-10-29  Werner Lemberg  <wl@gnu.org>
8579         * scm/framework-tex.scm (dump-line): Fix dimensions for \lybox.
8581         * scripts/lilypond-book.py (no_options): New dictionary.
8582         (simple_options): New list.
8583         (ly_options): Remove NOINDENT and EXAMPLEINDENT patterns.
8584         (compose_ly): Use `no_options' and `simple_options'.
8585         Fix logic of option handling.
8586         Handle `linewidth' option without parameter.
8588 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8590         * lily/lookup.cc (triangle): use (0, interval.length()) for X
8591         extent, since the stencil is translated later on.
8593         * lily/ledger-line-spanner.cc (print): swap linear_combination
8594         arguments, effectively shortens ledger line. 
8596         * Documentation/user/GNUmakefile
8597         ($(outdir)/lilypond/lilypond.html): use find to remove files.
8599         * lily/main.cc: --no-pages option.
8601 2004-10-28  Carl Sorensen  <carldsorensen@comcast.net>
8603         * Documentation/user/notation.itely (Fret diagrams): add extra
8604         notes to example to avoid collisions between fret diagrams.
8606 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8608         * Documentation/user/notation.itely (Automatic note splitting):
8609         note about lyrics. 
8611         * Documentation/user/converters.itely (Invoking convert-ly): note
8612         about version numbers. 
8614         * scripts/abc2ly.py (dump_score): revise lyric dumping
8616         * scripts/mup2ly.py (pre_processor_commands): always open file.
8618         * scripts/etf2ly.py (Frame.calculate): always close \grace.
8619         (Etf_file.dump): add \version
8621         * VERSION: 2.3.25 released.
8623         * lily/scm-option.cc: add 'resolution to ly:get-option argument
8624         list.
8626 2004-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8628         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-origin
8630 2004-10-28  Werner Lemberg  <wl@gnu.org>
8632         * Documentation/user/music-glossary.tely: More fixes to improve
8633         appearance with DVI output.
8635         * scripts/lilypond-book.py (compose_ly): Use 0.4in for
8636         EXAMPLEINDENT.  This is the maximum value for quotation environments
8637         used in `texinfo.tex' -- many warnings in lilypond.dvi are now gone.
8639 2004-10-27  Werner Lemberg  <wl@gnu.org>
8641         * Documentation/user/music-glossary.tely: Revised.
8643 2004-10-26  Carl Sorensen  <carldsorensen@comcast.net>
8645         * input/test/fret-diagram.ly: insert breaks, remove raggedright to
8646         improve fret diagram spacing in printed output.
8648         * Documentation/user/notation.itely (Fret diagrams): Remove raggedright
8649         from options for the example so fret-diagrams won't overlap
8650         one another.
8652 2004-10-26  Werner Lemberg  <wl@gnu.org>
8654         * scripts/lilypond-book.py: Some additional formatting for
8655         orthogonality.
8656         (ly_options) [*]: Format strings.
8657         [RAGGEDRIGHT]: Don't set `indent'.  This is now properly handled
8658         by `compose_ly'.
8659         (output) [LATEX][OUTPUT]: Format string and simplify.
8660         (PREAMBLE_LY, FRAGMENT_LY): Format string.
8661         (classic_lilypond_book_compatibility): Take key/value pair as
8662         parameter.
8663         Return key/value pair.
8664         (compose_ly): Rewritten, taking the snippet type as third parameter. 
8665         The default values are now set more sensible, and a `linewidth'
8666         option is no longer overwritten under some circumstances.
8668         * Documentation/user/music-glossary.tely: Replace all accented
8669         character macros with latin-1 codes.
8671 2004-10-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8673         * lily/music-function.cc (ly_make_music_function): when an
8674         argument predicate is markup?, the signature keyword becomes
8675         "markup" iso "scm".
8677         * lily/lexer.ll (music_function_type): new MUSIC_FUNCTION_*MARKUP*
8678         tokens, for functions which signatures contain "markup".
8680         * lily/parser.yy (Generic_prefix_music_scm): add treatment for new
8681         MUSIC_FUNCTION_*MARKUP* tokens.
8683 2004-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
8685         * input/regression/lyrics-bar.ly: Make StaffGroup accept the new
8686         Lyrics context.
8688 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8690         * python/lilylib.py (make_ps_images): return list of output files.
8692         * lily/simple-spacer.cc (LY_DEFINE): for ragged, we can end with
8693         all springs tight, and still satisfy the constraints.
8695 2004-10-25  Werner Lemberg  <wl@gnu.org>
8697         * scripts/lilypond-book.py: s/option-sep/option_sep/.
8698         (format_res) [LATEX, TEXINFO]: Skip whitespace before comma also.
8699         (snippet_res): Fix regexps and make them ignore whitespace properly.
8700         (compose_ly): Use `re.split' instead of `string.split' to remove
8701         surrounding whitespace.
8702         Some formatting to get more consistency.
8704 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8706         * VERSION: 2.3.24
8707         
8708         * scm/define-context-properties.scm
8709         (all-user-translation-properties): add verticallySpacedContexts.
8711         * scm/define-grob-interfaces.scm (vertically-spaceable-interface):
8712         add interface
8714         * scm/define-grob-properties.scm (all-internal-grob-properties):
8715         add spaceable-staves
8717         * scm/define-grobs.scm (all-grob-descriptions): set
8718         vertically-spaceable-interface for VerticalAxisGroup and
8719         RemoveEmptyVerticalGroup
8721         * lily/system.cc (get_line): determine staff_refpoints_
8722         using spaceable-staves.
8724         * lily/score-engraver.cc (acknowledge_grob): ack
8725         vertically-spaceable-interface and verticallySpacedContexts to
8726         set spaceable-staves.
8728         * input/regression/new-slur.ly: add slur under 16th subbeam case.
8730         * lily/slur-scoring.cc (fill): init has_same_beam_ before use.
8732 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8734         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): tune
8735         minimumVerticalExtent tweaks. 
8737         * mf/feta-schrift.mf: include size of thumb appendix in
8738         bbox. Fixes: c-thumb-notehead.ly  
8740         * THANKS: add Meisters to the Development team.
8742         * scm/framework-tex.scm (convert-to-dvi): redirect output to
8743         /dev/null for non-verbose.
8745         * Documentation/user/invoking.itely (Invoking lilypond): add note
8746         about resource usage.
8748         * tex/GNUmakefile (TEX_FILES): add texinfo.cnf
8750         * stepmake/stepmake/texinfo-vars.make (MAKEINFO): add
8751         --enable-encoding
8753         * Documentation/user/lilypond.tely: add -*- coding: latin-1 -*- everywhere. 
8755         * Documentation/user/changing-defaults.itely (Text encoding):
8756         change to latin1.
8758         * Documentation/user/lilypond.tely: add language and encoding.
8760         * scm/define-grobs.scm (all-grob-descriptions): add
8761         line-interface.
8763         * configure.in (PKG_CONFIG_PATH): bump makeinfo version to 4.7
8765         * input/test/ossia.ly: font sizes for ossia.
8767         * scripts/convert-ly.py (conv): \context Foo = NOTENAME
8768         -> \context Foo = "NOTENAME".
8770         * lily/main.cc (determine_output_options): fix ordering.
8772 2004-10-24  Erik Sandberg  <ersa9195@student.uu.se>
8774         * THANKS: Added bughunters for 2.3.
8776 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8778         * Documentation/user/macros.itexi: use findex functions/internals
8779         objects.
8781         * scm/documentation-generate.scm (string-append): add syncodeindex
8783         * Documentation/user/tutorial.itely (A lead sheet): use \chords
8784         for tutoring chord names.
8786         * Documentation/user/lilypond.tely: remove @authors.
8788 2004-10-23  Werner Lemberg  <wl@gnu.org>
8790         * scm/framework-tex.scm (dump-page): Add width to \lybox call.
8791         Remove first two parameters of \lybox.
8792         Don't emit \vbox around \lybox.
8793         (dump-line): Add width to \lybox call.
8794         Remove first two parameters of \lybox.
8796         * tex/lilyponddefs.tex (\topalign, \leftalign): Removed.
8797         (\lyitem): Updated.
8798         (\lybox): Only take three parameters.
8799         Create box which has zero depth, only height.
8800         Center box vertically along the x-height of current font.
8802 2004-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8804         * VERSION (PACKAGE_NAME): release 2.3.23
8806         * scm/framework-tex.scm (convert-to-ps): add -E if filename
8807         contains .preview.
8809 2004-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8811         * lily/lyric-extender.cc (print): only run to right-bound if
8812         broken. This fixes input/regression/lyric-extender.ly
8814         * input/regression/beamed-chord.ly: removed.
8816         * Documentation/user/macros.itexi: add \global to definitions for
8817         feta macros.
8819         * po/fr.po: updated po file.
8821         * po/de.po: updated po file.
8823 2004-10-22  Werner Lemberg  <wl@gnu.org>
8825         * tex/lilyponddefs.tex (\lilypondend): Undo change from 2004-10-20.
8827 2004-10-21  Werner Lemberg  <wl@gnu.org>
8829         * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex
8830         (\lilypondexperimentalfeatures): Removed.
8832 2004-10-20  Jürgen Reuter  <reuter@ipd.uka.de>
8834         * Documentation/user/notation.itely: fixed 2 typos
8836 2004-10-20  Werner Lemberg  <wl@gnu.org>
8838         * scm/framework-tex.scm (header-end): Don't set \outputscale.
8839         (dump-line): Produce prettier output.
8841         * tex/lilyponddefs.tex: Comment all macros extensively.
8842         (\lilypondstart): Set \outputscale.
8843         Define \lilypondpagebreak and \lilypondnopagebreak here.
8844         Don't test for positive \lilypondpaperlinewidth -- this is always
8845         positive in the normal case (LilyPond produces bad output otherwise
8846         so we can safely ignore negative or zero values).
8847         (\lilypondend): Remove useless test for \lilypondbook.
8848         (\fetasixteen, \fetafont, \fetachar): Removed, unused.  We also
8849         don't input `feta20.tex'.
8851 2004-10-19  Graham Percival  <gperlist@shaw.ca>
8853         * Documentation/user/examples.itely: added texidoc lilypond-book
8854         template.
8856 2004-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8858         * cygwin/lilypond.hint: Update.
8860 2004-10-18  Carl Sorensen  <carldsorensen@comcast.net>
8862         * Documentation/user/notation.itely (Fret diagrams): Add documentation
8863         for fret diagram markups to user manual
8865         * scm/fret-diagrams.scm (fret-diagram-terse): Fix mistake in internal
8866         documentation for fret-diagram-terse
8868         * Documentation/user/notation.itely: Added section on fret diagrams.
8870 2004-10-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8872         * scripts/convert-ly.py (usage): Fix --help description.  Apply
8873         range also for --show-rules.
8875 2004-10-18  Werner Lemberg  <wl@gnu.org>
8877         * scripts/lilypond-book.py (Snippet, Include_snippet)
8878         [replacement_text]: Use group `match'.
8880 2004-10-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8882         * Documentation/user/macros.itexi: Use @ref instead of @inforef
8883         for html.  Apparently, ``you should'' in texinfo documentation is
8884         merely a guideline that can safely be ignored.
8886         * elisp/lilypond-init.el (auto-mode-alist): Add .ily to
8887         auto-mode-alist.
8889         * input/test/engraver-example.ily: 
8890         * input/regression/allfontstyle.ily: Rename, update users.
8892 2004-10-16  Graham Percival  <gperlist@shaw.ca>
8894         * Documentation/user/lilypond-book.itely: add more details about
8895         building .lytex files.
8897         * Documentation/user/examples.itely: added piano-lyrics template
8899         * input/template/piano-4-voices.ly, piano-lyrics.ly: remove.
8901         * input/GNUmakefile: remove "templates" from build subdirs.
8903         * input/template: removed.
8905 2004-10-16  Werner Lemberg  <wl@gnu.org>
8907         * scripts/lilypond-book.py (snippet_res): Define group `match'
8908         everywhere.
8909         Accept more spaces between commands and its arguments and options.
8910         Fix some regexps.
8911         (output): Remove some newlines in string values and suppress spaces
8912         in output.
8913         (output_texinfo): Output `output_print_filename' only if not empty.
8914         (Lilypond_snippet)[find_toplevel_snippets]: Use group `match'.
8916 2004-10-16  Werner Lemberg  <wl@gnu.org>
8918         * scm/framework-tex.scm (font-load-command, define-fonts): Protect
8919         some TeX line ends with `%' to avoid additional horizontal space in
8920         output.
8922         * scripts/lilypond-book.py: Unexpand spaces to tabs.
8923         (snippet_res): Use `x' modifier to represent regular expressions
8924         in a friendlier way.
8925         Fix `lilypond_block' for LaTeX to accept `%\end{lilypond}'.
8926         (find_toplevel_snippets): Don't use indices from match group 0,
8927         which is the whole pattern space, but group 1.
8929 2004-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8931         * flower/include/direction.hh (enum Direction): add
8932         DIRECTION_LIMIT
8934 2004-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8936         * po/fr.po: new po file.
8938 2004-10-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8940         * Documentation/user/macros.itexi: Do not construct external
8941         references using @uref.  That results in broken links.
8943         * lily/slur.cc (outside_slur_callback): Use int in for loop;
8944         avoids g++-3.4.1 enum beature.
8946 2004-10-13  Graham Percival  <gperlist@shaw.ca>
8948         * Documentation/user/examples.itely: added lilypond-book template.
8950         * Documentation/user/lilypond-book.itely: added filename extension
8951         page.
8953 2004-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8955         * debian/rules (binary-indep): Link images for info.
8957         * elisp/lilypond-mode.el (LilyPond-command): Set XEDITOR.  Cool
8958         feature nicked from jEdit.
8960 2004-10-12  Pedro Kroger  <kroeger@pedrokroeger.net>
8962         * Documentation/user/introduction.itely: Minor corrections.
8964         * Documentation/user/notation.itely: Minor corrections.
8966         * Documentation/user/tutorial.itely: Minor corrections.
8968 2004-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8970         * scm/framework-ps.scm (page-header): Fix Layout renaming bug.
8972         * scm/*.scm:
8973         * ly/paper-defaults.ly: Use papersizename only.
8975 2004-10-11  Werner Lemberg  <wl@gnu.org>
8977         * tex/lilyponddefs.tex (\lyitem): Don't use \topalign to make
8978         \raise work with positive values.
8980 2004-10-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8982         * Documentation/user/notation.itely (Multi measure rests): Update
8983         the docs corresponding to the implementation change from 2004-10-08.
8985 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8987         * VERSION (MY_PATCH_LEVEL): release 2.3.22
8989         * scm/part-combiner.scm (determine-split-list): reinstate
8990         playing+resting case. 
8992         * Documentation/user/invoking.itely (Reporting bugs): rename.
8994         * lily/lexer.ll (Lily_lexer): bump version req to 2.3.22.
8996         * lily/parser.yy (Prefix_composite_music): change no-transposition
8997         for mode_changing_head to figures too.
8999         * lily/phrasing-slur-engraver.cc (acknowledge_grob): do something
9000         with normal slurs too.
9001         
9002         * lily/slur-scoring.cc (move_away_from_staffline): new function.
9003         (get_base_attachments): move away attachment point for breaks
9004         similar to attachment points on slurs (staffline collision, and
9005         half a space of padding)
9007         * scm/page-layout.scm (ly:optimal-page-breaks): don't compute
9008         force twice.
9010         * lily/simple-spacer.cc (LY_DEFINE): if line too long in ragged
9011         mode, return #f.        
9013         * scm/page-layout.scm (ly:optimal-page-breaks): set force = 0.0
9014         for last page if raggedlast. 
9016         * lily/parser.yy (Prefix_composite_music): untransposable is for
9017         FiguredBass, not ChordNames
9019 2004-10-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9021         * scm/framework-tex.scm: Merge fix.
9023 2004-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9025         The grand \paper -> \layout, \bookpaper -> \paper renaming.
9027 2004-10-10  Graham Percival  <gperlist@shaw.ca>
9029         * Documentation/user/notation.itely: add raggedright to a whole
9030         bunch of places.
9032 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9034         * scm/paper.scm (set-paper-dimension-variables): new
9035         function. Define dimension-variables explicitly in \paper too.
9036         This allows overriding linewidth inside \score { \paper { } }
9037         blocks
9039         * scm/framework-tex.scm (convert-to-ps): invoke dvips with -t
9040         landscape.
9041         (header): add landscape and papersize options.
9043 2004-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9045         * lily/*.cc: use robust_scm2moment() where appropriate.
9047         * lily/moment.cc (robust_scm2moment): new function.
9049         * scm/titling.scm (default-score-title): remove caps for piece.
9051         * VERSION: 2.3.21 released.
9052         
9053         * lily/include/slur-scoring.hh (struct Slur_score_state): new file
9055         * lily/include/slur-configuration.hh (class Slur_configuration):
9056         new file.
9058         * lily/slur-configuration.cc: new file. move scoring functions
9059         into Slur_configuration.
9061         * lily/slur-scoring.cc (Slur_score_state): change static functions
9062         to methods of Slur_score_state.
9064         * lily/bezier-bow.cc (Message): 
9066         * flower/include/interval-set.hh (Message): new file.
9068         * flower/interval-set.cc (Message): new file.
9070 2004-10-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9072         * lily/multi-measure-rest-engraver.cc (process_music): always
9073         generate MultiMeasureRestNumbers.
9075         * SConstruct (txt_files): switch of make dist
9077         * lily/bezier-bow.cc (get_slur_indent_height): change recipe to
9078         make sure that (indent < len / 3). This fixes progerror-max_h.ly
9080         * lily/multi-measure-rest-engraver.cc (process_music): make
9081         MultiMeasureRestNumber too.
9083 2004-10-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9085         * Documentation/user/notation.itely (Bar lines): Added a note that
9086         defaultBarType is to be changed in the Timing context.
9088 2004-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9090         * lily/include/guile-compatibility.hh: add file.
9092         * scm/framework-tex.scm (convert-to-dvi): use max of current
9093         extra_mem_top and 1M.
9095         * lily/kpath.cc (LY_DEFINE): ly_kpathsea_expand_variable. New
9096         function.
9098 2004-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9100         * scm/framework-tex.scm (convert-to-dvi): set extra_mem_top to 1M.
9102 2004-10-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9104         * lily/slur-scoring.cc (struct Slur_score_state): add
9105         has_same_beam_, edge_has_beams_, is_broken_ bools.
9106         (get_base_attachments): simpler Y attachment determination for
9107         broken slurs.
9109 2004-10-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9111         * buildscripts/texi2omf.py: Add hashbang.  Starting the script in
9112         bash without that is quite interesting.  Add xml and some omf
9113         keys.
9115 2004-10-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9117         * Documentation/user/macros.itexi: Add xml macros.
9119         * Documentation/user/GNUmakefile (extra-local-help): Add xml rules.
9121         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): Fix location.
9123 2004-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9125         * lily/break-substitution.cc (substitute_mutable_property_alist):
9126         only put property back into value if != SCM_UNDEFINED
9128         * lily/lyric-extender.cc (print): don't take common refpoint of
9129         null object if right_text isn't there.
9131         * lily/slur-scoring.cc (struct Slur_score_state): new
9132         struct. Collect scoring function arguments.
9133         (struct Slur_score_state): add musical_dy_
9134         (get_extra_encompass_infos): new function. Split off state
9135         computations.
9137         * scm/part-combiner.scm (determine-split-list): remove playing1
9138         and playing2.
9140 2004-10-02  Graham Percival  <gperlist@shaw.ca>
9142         * Documentation/index.html.in: remove link to templates.
9144         * Documentation/user/notation.itely: more small fixes.
9146 2004-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9148         * lily/timing-engraver.cc (process_music): move setting
9149         measure-length. This fixes spacing-whole-rest.ly
9151         * VERSION (PACKAGE_NAME): release 2.3.20
9152         
9153         * input/regression/quote-transposition.ly: update example
9155         * scm/define-music-properties.scm (all-music-properties): change
9156         meaning of instrumentTransposition.  It is now the pitch played
9157         that sounds as middle C. This means that instrumentTransposition
9158         can be \transposed. 
9159         Fixes: transpose-quote.ly
9161         * lily/parser.yy (command_element): reverse setting of
9162         instrumentTransposition
9164         * lily/pitch.cc (pitch_interval): rename.
9166         * lily/recording-group-engraver.cc (stop_translation_timestep):
9167         remove macrameing of accumulator and set_car/cdr.
9168         Fixes: transposition-quote.ly
9170         * lily/music.cc (transpose): fold Event::transpose() in.
9172         * lily/event.cc: remove Transpose. 
9174         * lily/recording-group-engraver.cc: cleanup.
9176         * ly/music-functions-init.ly (displayMusic): add function.
9178         * make/lilypond.fedora.spec.in: rename file.
9180         * lily/lily-lexer.cc (mark_smob): don't use ly_cdr() for getting
9181         to-be-marked objects. Use SCM_CELL_WORD_1 instead. 
9183         * Documentation/user/changing-defaults.itely (Changing context
9184         properties on the fly): typo.
9186         * lily/slur.cc (outside_slur_callback): try three sample points
9187         for determining collisions. This fixes: slur-script.ly.
9189 2004-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9191         * scripts/lilypond-book.py (ext2format): Add latex as Latex.
9193 2004-10-01  Graham Percival  <gperlist@shaw.ca>
9195         * Documentation/user/notation.itely: more small fixes.
9197         * Documentation/user/examples.itely: make new sections.
9199         * input/test/bar-lines.ly: improve output, fix bug.
9201         * Documentation/user/changing-defaults.itely: small fixes.
9203 2004-10-01  Werner Lemberg  <wl@gnu.org>
9205         * tex/lilyponddefs.tex (\lilypondECencoding): New command to handle
9206         T1 encoding in texinfo mode.
9207         (\lilypondstart): Use it.
9208         (\lilypondloop, \lilyponditerate): Removed.  Unused.
9210 2004-09-30  Werner Lemberg  <wl@gnu.org>
9212         * tex/lilyponddefs.tex (\lilypondstart): Define
9213         \lilypondfontencoding for both texinfo and latex mode.
9215         * scm/framework-tex.scm (font-load-command): Use
9216         \lilypondfontencoding.
9218 2004-09-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9220         * scm/framework-tex.scm (dump-page): take with-extents?
9221         argument. If true, output Y extents. Used for lilypond-book
9222         documents.
9224         * scripts/lilypond-book.py (PREAMBLE_LY): set dump-extents for
9225         \bookpaper.
9227         * lily/slur.cc (outside_slur_callback): epsilon-delta management
9228         for slur edges. Fixes: progerror-no-bezier-intersection.ly
9230         * scm/framework-tex.scm (dump-page): put stencil height in dumped
9231         page.
9233 2004-09-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9235         * Documentation/user/notation.itely (Multi measure rests):
9236         Improved example.
9238 2004-09-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9240         * lily/auto-beam-engraver.cc (test_moment): robustify.
9242 2004-09-28  Werner Lemberg  <wl@gnu.org>
9244         * scm/framework-tex.scm (font-load-command): Define proper font
9245         macro which sets font encoding if available.
9246         (define-fonts): Define \lilypondpaperinputencoding, to be taken
9247         from the \bookpaper block.
9249         * tex/lilyponddefs.tex (\lilypondstart): Use
9250         \lilypondpaperinputencoding for global input encoding.
9252 2004-09-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9254         * lily/score.cc (Score): oops. Copy error_found_ too.
9256 2004-09-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9258         * stepmake/stepmake/texinfo-rules.make: 
9259         * Documentation/GNUmakefile: --srcdir build fixes.
9261         * input/test/coriolan-margin.ly: Put papersize settings in \bookpaper.
9263         * Documentation/user/latex-lilypond-example.latex:
9264         * Documentation/user/latex-example.latex: Fix compile errors.
9265         Still buggy, need more love.
9267 2004-09-27  Werner Lemberg  <wl@gnu.org>
9269         * tex/lilyponddefs.tex (\lilypondstart): Use \frenchspacing.
9271 2004-09-26  Juergen Reuter  <reuter@ipd.uka.de>
9273         * Documentation/user/examples.itely: removed \midi block to
9274         simplify the example
9276         * Documentation/user/notation.itely: Removed superfluous
9277         TextSpanner tweakings (is already done by engraver-init.ly).
9278         Documented bug: vertical alignment of articulations.
9280         * Documentation/user/notation.itely, ly/engraver-init.ly
9281         (VaticanaVoice, GregorianTranscriptionVoice): Bugfix: TextSpanner
9282         padding.
9284         * Documentation/user/notation.itely, ly/engraver-init.ly: moved
9285         docu about TextSpanner padding bug from manual to engraver.ly
9286         (since it's workarounded and hence not user-visible any more)
9288 2004-09-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9290         * VERSION: release 2.3.19
9292 2004-09-26  Graham Percival  <gperlist@shaw.ca>
9294         * ly/property-init.ly: fix bug in displaying ledger lines while
9295         \hideNotes is on.
9297         * Documentation/user/notation.itely: more editing.
9299         * Documentation/user/examples.itely: add piano-dynamics template.
9301         * input/template/piano-dynamics.ly: remove.
9303         * Documentation/user/sound-output.itexi: more editing
9305 2004-09-25  Graham Percival  <gperlist@shaw.ca>
9307         * Documentation/user/notation.itely: more editing.
9309 2004-09-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9311         * scm/ly-from-scheme.scm (read-lily-expression): use ~s in format
9312         instead of ~a, to get #{ #"foo" #} actually printed to #"foo".
9314 2004-09-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9316         * lily/hairpin.cc (print): check columns of bounds, not bounds
9317         themselves.
9318         (print): robustify bound-padding lookup.
9320         * lily/*: ly_c[ad]+r -> scm_XXX , ly_c_pair_p -> scm_is_pair.
9322         * scripts/lilypond-book.py (Compile_error.process_include): catch
9323         Compile_error exception, and remove output .texi.
9325         * scm/define-music-properties.scm (all-music-properties): add
9326         error-found
9328         * lily/parser.yy (Music_list): add error-found to music with errors.
9330         * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors.
9332         * lily/book.cc (process): ignore books with errors
9334         * lily/include/score.hh (class Score): add error_found_ member.
9336         * lily/drum-note-engraver.cc (try_music): idem.
9338         * lily/note-heads-engraver.cc: remove start-playing-event.
9340         * lily/part-combine-iterator.cc (Part_combine_iterator): use
9341         BusyPlayingEvent to determine which voice was active last.
9342         (unisono): use last active to where to get unisono information
9343         from. This fixes: partcombine-rest.ly (again).
9345         * scm/part-combiner.scm (determine-split-list): cleanups
9347 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9349         * input/regression/lyric-extender.ly: simplify.
9350         complexify.
9352         * lily/lyric-extender.cc (print): use it to determine size of
9353         extender. Remove Lyric_extender::is_visible().
9355         * lily/extender-engraver.cc (acknowledge_grob): store lyric in
9356         next property.
9358         * lily/lyric-engraver.cc: remove get_current_rest().
9359         
9360 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9362         * input/regression/lyric-extender.ly: Fix and add test.
9364         * lily/extender-engraver.cc (stop_translation_timestep): Oops, typo.
9366 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9368         * lily/note-head.cc: remove Note_head::extent.
9370 2004-09-23  Graham Percival  <gperlist@shaw.ca>
9372         * Documentation/user/tutorial.itely: do manual style 2-space
9373         indents in examples
9375         * Documentation/user/notation.itely: more editing.
9377 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9379         * lily/lyric-engraver.cc (get_current_rest): New function.
9381         * lily/extender-engraver.cc (stop_translation_timestep): Use it:
9382         stop at rest.
9384         * lily/lyric-extender.cc (print): Fix crash (Russ Ross).
9386         * lily/slur-scoring.cc (get_bezier): Fix for broken beziers.
9388 2004-09-23  Juergen Reuter  <reuter@ipd.uka.de>
9390         * Documentation/user/examples.itely (Small ensembles): added
9391         example for transcription of mensural music
9393         * Documentation/user/notation.itely (The Lyrics context): fixed broken
9394         link to SATB vocal score
9396         * Documentation/user/notation.itely (System start delimiters):
9397         fixed typo: GrandStaff->StaffGroup
9399         * Documentation/user/notation.itely (Ancient articulations):
9400         removed obsolete comment on \episem bug
9402 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9404         * scm/framework-tex.scm (output-preview-framework): Fix invocation
9405         of header.
9407 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9409         * lily/dynamic-engraver.cc (acknowledge_grob): attach hairpin
9410         start to note-column.
9412         * lily/hairpin.cc (print): check text-interface, to attach to
9413         dynamic texts.  
9415         * lily/include/text-item.hh (class Text_interface): rename
9416         Text_item -> Text_interface
9418         * lily/piano-pedal-bracket.cc (print): robustify.
9420 2004-09-22  Pedro Kroger  <kroeger@pedrokroeger.net>
9422         * scm/paper.scm (set-paper-dimensions): add printfirstpagenumber.
9424         * scm/page-layout.scm (plain-header): if printfirstpagenumber is
9425         true will print the page number in the first page.
9427         * Documentation/user/changing-defaults.itely: Document
9428         printfirstpagenumber.
9430 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9432         * lily/phrasing-slur-engraver.cc (acknowledge_grob): avoid more
9433         objects.
9435         * lily/beam-concave.cc (calc_concaveness): take absolute value of
9436         dy for scaling. This fixes various downbeams.
9437         
9439         * lily/beam-quanting.cc (best_quant_score_idx): 
9441 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9443         * scm/framework-tex.scm (header-to-file): Fix.
9445 2004-09-22  Werner Lemberg  <wl@gnu.org>
9447         * lily/parser.yy <score_body>: Fix typo.
9449 2004-09-22  Graham Percival  <gperlist@shaw.ca>
9451         * Documentation/user/tutorial.itely: modified a "future planning"
9452         comment.
9454         * Documentation/user/notation.itely: more editing.
9456 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9458         * scm/define-markup-commands.scm (note-by-number): read font-size
9459         to determine stem length. Fixes: markup-note.ly
9461 2004-09-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9463         * lily/slur.cc (outside_slur_callback): read #'padding for
9464         slur-padding. Fixes: slur-script.ly
9466         * lily/parser.yy (score_body): disallow \bookpaper in \score.
9468 2004-09-21  Juergen Reuter  <reuter@ipd.uka.de>
9470         * Documentation/user/notation.itely (ancient flags): documented
9471         flags-related known bugs
9473         * lily/include/ligature-engraver.hh: added comment about why and
9474         how of (non-)use of abstract virtual methods
9476         * ly/engraver-init.ly (VaticanaVoice,
9477         GregorianTranscriptionVoice): bugfix (workaround): TextSpanner:
9478         unset dash-fraction property in order to get solid lines
9480         * ly/engraver-init.ly (MensuralStaff): fixed bad comment
9482 2004-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9484         * scripts/convert-ly.py (ly): Corrected replacement of \scriptBoth
9486 2004-09-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9488         * lily/parse-scm.cc (internal_ly_parse_scm): Eval in module, not
9489         in function.
9491         * scm/framework-tex.scm (convert-to-dvi): Use nonstopmode.  Set
9492         openout_any=p.  Throughout: progress to stderr, translate user
9493         messages.
9495         * scm/output-gnome.scm: Fix font dir description.
9497 2004-09-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9499         * input/test/mensural-ligatures.ly (voice): move linethickness
9500         settings to bookpaper.
9502         * lily/simple-spacer.cc (Module): use force to stretch to 
9503         line length as force measure for ragged spacing.
9504         
9505         * lily/lily-parser.cc (get_paper): don't set parent for \paper
9506         blocks in the parser. This eliminates ordering dependency for
9507         \bookpaper and \paper
9509         * ly/part-paper-init.ly: remove file.
9511         * lily/includable-lexer.cc (new_input): elucidate message.
9513         * VERSION: 2.3.18 released.
9514         
9515 2004-09-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9517         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: 
9518         * input/mutopia/R.Schumann/romanze-op28-2.ly:
9519         * input/mutopia/F.Schubert/standchen.ly: Remove obsolete
9520         #'Slur.attachment setting.
9522         * elisp/lilypond-mode.el (LilyPond-command-alist): Use -ftex,
9523         friendlier for point and click.
9525 2004-09-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9527         * ly/init.ly: reverse collected scores.
9529         * scm/page-layout.scm (ly:optimal-page-breaks): use non-ragged
9530         layout to determine force.
9531         
9532 2004-09-18  Werner Lemberg  <wl@gnu.org>
9534         * ly/engraver-init.ly <Score> [quotedEventTypes]: Add tuplets and
9535         ties.
9537         * ly/declarations-init.ly (escapedBiggerSymbol,
9538         escapedSmallerSymbol): Fix typos.
9540         * scripts/convert-ly.py: s/removeTag/removeWithTag/.
9542 2004-09-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9544         * input/{input,regression}/*.ly: run convert-ly
9546         * VERSION: release 2.3.17
9548         * lily/slur-scoring.cc (enumerate_attachments): make stem_extent a
9549         little wider for attachment calculation. This prevents stem and
9550         slur touching.
9552         * lily/parser.yy (direction_less_char): soft code \< \> \! \( \) (
9553         ) 
9555         * input/regression/tie.ly (texidoc): cleanup.
9557         * ly/declarations-init.ly (tildeSymbol): soft-code meaning of [ ]
9558         and ~
9560         * lily/slur-scoring.cc (score_extra_encompass): check if extra
9561         objects are on boundary column. 
9563         * lily/main.cc (parse_argv): process --tex too.
9565         * ly/music-functions-init.ly (keepWithTag): add music functions
9566         keepWithTag and removeWithTag.
9568         * lily/quote-iterator.cc (Quote_iterator): init transposed_musics_.
9570         * lily/accidental-engraver.cc (recent_enough): interpret laziness
9571         = #t. This fixes no-reset accidental-style.
9573         * input/regression/accidental-piano.ly (Module): new file.
9575         * lily/lily-guile.cc (LY_DEFINE): ly_assoc_get: new function.
9577 2004-09-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9579         * lily/slur-scoring.cc (score_extra_encompass): widen X extent of
9580         extra encompass.
9581         (score_extra_encompass): use Y coordinate of attachment if X
9582         attachment falls in extra encompass X extent.
9584         * buildscripts/guile-gnome.sh (SLIB_PATH): add SLIB_PATH to
9585         GUILE_LOAD_PATH
9587 2004-09-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9589         * scm/output-gnome.scm: Small fixes.
9591         * buildscripts/guile-gnome.sh: Getting close to 2.6.0 release.
9593 2004-09-16  Juergen Reuter  <reuter@ipd.uka.de>
9595         * Documentation/user/notation.itely (Ancient flags): Removed
9596         documentation on adjust-if-on-staffline (this property was removed
9597         by Han-Wen).
9599         * Documentation/user/notation.itely (Ancient notation): Minor
9600         cleanups and fixes.  Renamed "Vaticana style contexts" ->
9601         "Gregorian Chant contexts".  Added section "Mensural contexts".
9602         Added section "Ancient articulations".
9604         * ly/engraver-init.ly: Added "MensuralVoice" and "MensuralStaff".
9606 2004-09-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9608         * buildscripts/guile-gnome.sh: Add missing bit.
9610 2004-09-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9612         * buildscripts/guile-gnome.sh (LD_LIBRARY_PATH): new script.
9614         * lily/slur-scoring.cc (get_y_attachment_range): set end point
9615         using base_attachment.
9617         * scm/page-layout.scm (default-page-make-stencil): whoops. Add
9618         page header back.
9620         * scm/documentation-generate.scm (top-node): move version to top
9621         node.
9623         * lily/ledger-line-spanner.cc: add ledgered-interface, with
9624         property no-ledgers.
9626 2004-09-16  Heikki Junes  <hjunes@cc.hut.fi>
9628         * Documentation/user/{changing-defaults,examples,invoking,
9629         tutorial}.itely: Expand 's to is.
9631         * Documentation/user/notation.itely: Capitalize only first letter.
9633         * Documentation/user/programming-interface.itely: Capitalize Scheme.
9635         * Documentation/user/lilypond-book.itely: use @refbugs.
9637         * THANKS: sort.
9639         * input/mutopia/F.Schubert/morgenlied.ly,
9640         input/mutopia/J.S.Bach/baerenreiter-sarabande.ly,
9641         input/mutopia/R.Schumann/romanze-op28-2.ly: Add lifetime and full
9642         name.
9644 2004-09-15  Juergen Reuter  <reuter@ipd.uka.de>
9646         * mf/parmesan-heads.mf: bugfixes: (i) removed duplicate
9647         lneomensural char entry; (ii) fixed mensural/neomensural naming
9648         clash typo; (iii) lneomensural char: fixed stem attachment point.
9649         WARNING: FONT CHANGED!
9651 2004-09-15  Graham Percival  <gperlist@shaw.ca>
9653         * Documentation/user/introduction.itely: update \stemBoth to
9654         \stemNeutral.
9656         * Documentation/user/notation.itely: more editing of the manual.
9658 2004-09-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9660         * lily/slur-scoring.cc (score_edges): add exp(slope*dir*leftright)
9661         factor in edge attraction. This reflects that the left edge may
9662         have a larger gap for an ascending up-slur.
9663         (get_base_attachments): copy bound Y from right bound, if there is
9664         only one note-column after the line break.
9666 2004-09-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9668         * buildscripts/guile-gnome.sh: Update with tarball [pre]releases.
9670 2004-09-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9672         * lily/phrasing-slur-engraver.cc (process_music): Create
9673         PhrasingSlur instead of Slur.
9675         * Documentation/user/changing-defaults.itely (Defining new
9676         contexts): Fixed misprinted context name.
9678 2004-09-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9680         * ly/property-init.ly (hideStaffSwitch): remove turnOff.
9682         * scripts/convert-ly.py (conv): change Both to Neutral in property
9683         settings.
9685         * ly/engraver-init.ly: increase extent of Staff. 
9687 2004-09-13  Graham Percival  <gperlist@shaw.ca>
9689         * scm/script.scm: change behaviour of slur and accent.
9691         * Documentation/user/music-glossary.tely: de-gender a few entires.
9693         * Documentation/user/introduction.itely: de-gender a few sentences.
9695 2004-09-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9697         * input/regression/rehearsal-mark-number.ly: Reuse the existing
9698         formatting routine when adding boxed numbers. Makes it easier to
9699         extrapolate how to do for boxed letters.
9701 2004-09-12  Graham Percival  <gperlist@shaw.ca>
9703         * Documentation/user/notation.itely: fixed Time Signature numbers bug.
9705         * Documentation/user/invoking.itexi: updated the "reporting bugs"
9706         section.
9708 2004-09-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9710         * scm/define-grobs.scm (all-grob-descriptions): longer
9711         ideallengths for stems in higher order beams.
9713         * Documentation/user/changing-defaults.itely (Page layout):
9714         document them.
9716         * scm/page-layout.scm (ly:optimal-page-breaks): use new parameters
9717         to get sane spaces for titles.
9719         * ly/book-paper-defaults.ly: new parameters aftertitlespace,
9720         beforetitlespace, betweentitlespace.
9722         * input/regression/beam-quant-standard.ly (primeSixteenths): add
9723         16th notes.
9725         * lily/beam.cc (set_minimum_dy): new function. Round non-zero
9726         small slope up to smallest quant. This prevents small slopes from
9727         getting rounded to zero.
9729         * lily/beam-quanting.cc (quanting): don't allow dy_mus slopes that
9730         are smaller than the smallest quant.
9732         * input/tutorial/brahms*.ly: remove.
9734         * input/*: update all .ly files.
9735          
9736         * ly/a4-init.ly (vsize): remove papersize init files.
9738         * scripts/convert-ly.py (conv): add conversion.
9740         * lily/parser.yy: change mode changing commands to XXXmode,
9741         eg. drummode.
9742         (mode_changing_head): group mode changes.
9743         (mode_changing_head_with_context): new commands: create context as
9744         well as change mode.
9746         * input/regression/system-overstrike.ly: new file.
9748         * scm/page-layout.scm (ly:optimal-page-breaks): add
9749         betweensystempadding also to fixed distance for the spring.
9751         * scm/define-grobs.scm (all-grob-descriptions): fix order of
9752         key-cancellation.
9754         * input/regression/beam-concave-damped.ly: new file.
9756         * lily/beam-concave.cc: new file, with new routines for concave
9757         decisions. There are now two types of concaveness: 1. a sharp
9758         logic decision forcing a beam horizontal, and 2. a number that
9759         measures how concave beams are that are not caught by 1.
9761         This fixes: morgenlied.ly and input/regression/beam-concave.ly
9762         
9763         * lily/new-fingering-engraver.cc (stop_translation_timestep): new
9764         property: add-stem-support
9766 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9768         * lily/slur-scoring.cc (get_bound_info): only do
9769         broken trend at the end of the line.
9771         * VERSION (PACKAGE_NAME): release 2.3.16.
9773         * input/regression/phrasing-slur.ly (Module): remove (duplicate
9774         with phrasing-slur-slur-avoid.ly)
9776         * lily/slur-scoring.cc (struct Extra_collision_info): collect
9777         parameters for extra offset.
9778         (get_bezier): add slurs mid-points for curve determination
9779         (score_extra_encompass): add slur end points for scoring.
9781 2004-09-11  Matthias Neeracher  <neeracher@mac.com>
9783         * scm/framework-ps.scm (reencode-font): Handling font scaling
9784         and reencoding differently to work around a bug in gs 8.30 and
9785         earlier.
9786         Update callers.
9788 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9790         * lily/slur-scoring.cc (broken_trend_y): always take use vdir
9791         extent index of other system. Fixes slurs across line breaks.
9793         * lily/tuplet-engraver.cc (start_translation_timestep): use
9794         Tuplet_description::stop_ for determining when to stop producing
9795         tuplet brackets. This fixes: tuplet-overwrite.ly
9797         * lily/*-engraver.cc: remove all Protected_scm objects to fix GC
9798         errors with GUILE 1.7 CVS.
9800         * lily/translator.cc (derived_mark): new function.
9802         * lily/slur-scoring.cc (score_encompass): new penalty type:
9803         variance penalty demerits slurs where one head/stem is much
9804         closer to the slur than average.
9806         * lily/tuplet-bracket.cc (print): use robust_relative_extent
9807         iso. extent()
9808         (calc_position_and_height): use robust_relative_extent(). This
9809         fixes a couple of programming_errors
9811         * input/regression/part-combine-mmrest-after-solo.ly (Module): new
9812         file.
9814         * lily/part-combine-iterator.cc (unisono): bugfix for the case
9815         that voice-2 plays solo, and voice-1 has an mmrest that starts
9816         earlier. In that case, we switch to voice-2, so we catch the
9817         mmrest of voice-2. This fixes: partcombine-rest.ly.
9819 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9821         * scm/define-grob-properties.scm (all-internal-grob-properties):
9822         add adjacent-hairpins property.
9824         * lily/hairpin.cc: lengthen hairpin if space is available.
9826         * input/regression/dynamics-hairpin-length.ly (Module): new file.
9828 2004-09-10  Graham Percival  <gperlist@shaw.ca>
9830         * Documentation/user/notation.itely: small fixes to docs.
9832 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9833         
9834         * VERSION (PACKAGE_NAME): release 2.3.15
9836         * make/lilypond.redhat.spec.in (Requires): bump requirement for
9837         ec-fonts-mftraced
9839         * mf/GNUmakefile (SAUTER_FONTS): remove ecb10. This is provided by
9840         the latest ec-fonts-mftraced package.
9842         * scm/define-context-properties.scm
9843         (all-internal-translation-properties): add property. Remove
9844         definition of quotes property.
9846         * Documentation/user/notation.itely (Quoting other voices):
9847         document it
9849         * lily/quote-iterator.cc (moment_less): add quotedEventTypes
9850         property, to determine what events are processed in \quote.
9852 2004-09-10  Juergen Reuter  <reuter@ipd.uka.de>
9854         * (many files): removed most occurrences of underscore ("_")
9855         from font characters; made font character naming more
9856         consistent
9858         * input/test/gregorian-scripts.ly: fixed another victim of grand
9859         replacement operations
9861         * lily/vaticana-ligature-engraver.cc: caught some more "_"
9862         inconsistencies
9864         * input/puer-fragment.ly: bugfix: lyrics hyphen: syntax update
9866 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9868         * Documentation/user/changing-defaults.itely (Paper size): doc
9869         landscape
9870         
9872         * scm/framework-ps.scm (eps-header): bugfixes. 
9874         * scm/titling.scm (default-score-title): remove opus from the
9875         \score title.
9877 2004-09-08  Pedro Kroger  <kroeger@pedrokroeger.net>
9879         * scripts/convert-ly.py (program_name): changed to sys.argv[0]
9881         * scripts/abc2ly.py (program_name): changed to sys.argv[0]
9883         * scripts/etf2ly.py (program_name): changed to sys.argv[0]
9885         * scripts/lilypond-book.py (program_name): changed to sys.argv[0]
9887         * scripts/lilypond-latex.py (program_name): changed to sys.argv[0]
9889         * scripts/midi2ly.py (program_name): changed to sys.argv[0]
9891         * scripts/mup2ly.py (program_name): changed to sys.argv[0]
9893         * scripts/ps2png.py (program_name): changed to sys.argv[0]
9895 2004-09-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9897         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Increment
9898         character position.  Huh?
9900         * scm/output-gnome.scm (placebox): Shield affine-relative.
9902         * buildscripts/guile-gnome.sh: Update.  Do not use GUILE CVS,
9903         cater for system's pango 1.5.1.
9905         * input/regression/new-slur.ly: Add ugly slur from scsii-sarabande.
9907         * scm/slur.scm: Tweak.
9909 2004-09-08  Graham Percival  <gperlist@shaw.ca>
9911         * Documentation/user/{first couple of chapters}: more editing.
9913 2004-09-07  Graham Percival  <gperlist@shaw.ca>
9915         * Documentation/topdocs/AUTHORS.texi, THANKS: add/modify my name
9916         and summary.
9918         * Documentation/user/{first couple of chapters}: the big "Graham's
9919         moved to a new city, his friends haven't arrived, and he has no
9920         internet access" patch.  Numerous editorial and stylistic changes
9921         to the manual.
9923 2004-09-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9925         * scm/framework-ps.scm (output-framework): handle landscape settings.
9927         * ps/lilyponddefs.ps: cleanup.
9929 2004-09-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9931         * scm/define-grobs.scm (all-grob-descriptions): unset
9932         threshold. This fixes morgenlied. 
9934         * scm/page-layout.scm (ly:optimal-page-breaks): whoops. Thinko in
9935         rod calculation.
9937         * lily/system.cc (get_line): don't take piano-pedal & dynamic line
9938         spanners into account for staff-extents.
9940         * lily/ottava-bracket.cc (print): take common refpoint of dots
9941         into account as well.
9943 2004-09-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9945         * lily/lookup.cc (triangle): translate by interval.
9947         * VERSION (PACKAGE_NAME): release 2.3.14
9949         * Documentation/user/changing-defaults.itely (Page layout): add
9950         betweensystempadding
9952         * scm/page-layout.scm (ly:optimal-page-breaks): typo.
9954         * input/regression/quote-cyclic.ly (Module): new file.
9956         * scm/lily.scm (print): add function.
9958         * scm/music-functions.scm (quote-substitute): new
9959         function. Substitute \quote when putting music into \score.
9961         * input/regression/key-signature-cancellation.ly (Module): new file.
9963         * lily/*.cc: more ly_scm2 -> scm_to converions.
9965         * lily/key-signature-interface.cc (print): take position
9966         difference into account when spacing naturals.
9968         * lily/key-engraver.cc (create_key): create KeyCancellation grob
9969         separately, so the cancellation can be put before the staff-bar
9971         * scm/define-grobs.scm (all-grob-descriptions): add a
9972         KeyCancellation grob.
9974         * lily/tuplet-engraver.cc (struct Tuplet_description): new
9975         struct. Use to clean-up Tuplet_engraver
9977 2004-09-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9979         * lily/*: ly_scm2int -> scm_to_int
9980         ly_scm2double -> scm_to_double
9982         * lily/include/lily-guile.hh (scm_from_double): more compat glue.
9984 2004-09-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9986         * lily/simple-spacer.cc (LY_DEFINE): return something sensible for
9987         0 springs
9989         * lily/system.cc (post_processing): 
9991         * scm/page-layout.scm (ly:optimal-page-breaks): implement uniform
9992         density for vertical spacing by means of force penalty.
9993         
9994         * scm/paper.scm (paper-set-staff-size): add betweensystemspace as
9995         dimension-variables
9997         * Documentation/user/changing-defaults.itely (Page layout): add
9998         betweensystemspace variable.
10000         * ly/book-paper-defaults.ly: set betweensystemspace: 20 mm
10002         * scm/page-layout.scm (space-systems): new function. Use spring
10003         and rod approach for vertically spacing systems.
10005         * ly/engraver-init.ly: tune down minimumVerticalExtent.
10007         * scm/define-grobs.scm (all-grob-descriptions): set threshold for
10008         vertical alignment.
10010         * lily/slur-engraver.cc (process_music): add warning for slur.
10012 2004-09-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10014         * lily/include/lily-guile.hh (scm_is_number): add scm_is_number
10016         * lily/simple-spacer.cc (LY_DEFINE): ly_solve_spring_rod_problem:
10017         export spacing routine to SCM.
10019         * lily/include/simple-spacer.hh (struct Simple_spacer_wrapper):
10020         new class, separate Grobs from interface.
10022 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10024         * lily/include/lily-guile.hh: compatibility glue for 1.6
10026         * lily/*.cc (acknowledge_grob): ly_string_p -> scm_is_string.
10028         * lily/lily-guile.cc: remove ly_scm2str0.
10030 2004-09-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10032         * Documentation/user/macros.itexi: Use @inforef iso @uref for
10033         external references.  Fixes HTML cross references with makeinfo 4.7.
10035 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10037         * lily/include/simple-spacer.hh (struct Simple_spacer): remove
10038         expand_only option.
10040 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10042         * lily/system.cc (get_line): add System stencil to exprs. Fixes
10043         system-extents.ly.
10045         * ly/engraver-init.ly: decrease minimumVerticalExtent to (-5,5).
10047         * scm/define-grobs.scm (all-grob-descriptions): decrease padding
10048         for MultiMeasureRestNumber
10050         * VERSION (PACKAGE_NAME): release 2.3.13
10052 2004-08-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10054         * lily/context-scheme.cc (LY_DEFINE): ly:context-grob-definition
10055         takes two arguments.
10057 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10059         * input/regression/slur-stem-broken.ly: remove.
10061         * lily/slur.cc: add quant-score.
10063         * input/regression/slur-staccato.ly (texidoc): remove
10065         * make/lilypond.redhat.spec.in (Group): remove musedata2ly
10067 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10069         * lily/include/bezier-bow.hh: remove.
10071         * lily/slur-bezier-bow.cc (Module): remove.
10073         * lily/include/slur.hh (Module): remove.
10075         * lily/slur.cc: remove
10077         * input/test/slur-beautiful.ly (Module): remove
10079         * input/test/slur-attachment-override.ly (Module): remove
10081         * lily/slur-quanting.cc (after_line_breaking): only do scoring
10082         when less than 4 control-points.
10084         * lily/key-signature-interface.cc: add style.
10086         * Documentation/user/notation.itely (Automatic staff changes):
10087         document new behavior.
10089         * input/regression/slur-extreme.ly: new file.
10091         * ly/engraver-init.ly (Score): set bassStaffProperties to \clef
10092         bass. Obviates \clef bass in the bass staff, when using \autochange 
10094         * lily/auto-change-iterator.cc (construct_children): instantiate
10095         up/down Staff, create Voice on up staff initially. Obviates
10096         explicit instantiation of up/down contexts for \autochange. 
10098         * lily/slur-quanting.cc (get_bezier): new functionality, blow up
10099         slur depending on extents of note heads.
10100         
10101 2004-08-28  Graham Percival  <gperlist@shaw.ca>
10103         * Documentation/user/tutorial.itely: minor editing.
10105         * Documentation/user/examples.itely: tiny editing.
10107 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10109         * lily/slur-quanting.cc (init_score_param): read scoring
10110         parameters from slur-details property
10112         * scm/define-grobs.scm (all-grob-descriptions): add inside-slur to
10113         Accidental
10115         * Documentation/user/advanced.itely: removed.
10117         * Documentation/user/programming-interface.itely (How markups work
10118         internally): new subsection.
10120         * Documentation/user/converters.itely (Invoking abc2ly): remove
10121         musedata2ly.
10123 2004-08-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10125         * Documentation/user/point-and-click.texi (Point and click): new file.
10126         put point & click in appendix.
10127         
10128         * Documentation/user/changing-defaults.itely (Vertical spacing):
10129         corrections
10131 2004-08-27  Graham Percival  <gperlist@shaw.ca>
10133         * Documentation/user/introduction.itely: add note about the
10134         "example templates" section of the manual, and remove link to
10135         input/template/
10137 2004-08-27  Juergen Reuter   <reuter@ipd.uka.de>
10139         * Documentation/user/lilypond-book.itely: fix parse error: @LaTeX
10140         -> La@TeX
10142         * mf/parmesan-heads.mf: draw_diamond_head: fixed pen width; added
10143         missing lneo_mensural head; editorial cleanups
10145         * lily/mensural-ligature.cc: added more comments
10147 2004-08-26  Graham Percival  <gperlist@shaw.ca>
10149         * Documentation/user/examples.itely: second, third, fourth, and fifth
10150         sections added.
10152         * input/template/{various}: removed files included in examples.itely.
10154 2004-08-26  Juergen Reuter   <reuter@ipd.uka.de>
10156         * lily/stem.cc: bugfix: adjust-if-on-staffline: use
10157         Stem::stem_end_position instead of broken
10158         Staff_symbol_referencer::get_position
10160 2004-08-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10162         * debian/changelog: debian patch by Anthony Fok.
10164         * lily/stem.cc (flag): bugfix for mensural flags (thanks Juergen!)
10166         * lily/slur-engraver.cc (try_music): ignore slurs_. Otherwise we
10167         get spurious messages with skipTypesetting on.
10169 2004-08-25  Graham Percival   <gperlist@shaw.ca>
10171         * Documentation/user/lilypond-book.itely: slight clean-up.
10173         * Documentation/user/examples.itely: began section.
10175 2004-08-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10177         * lily/script-interface.cc: add slur property.
10179         * lily/slur-quanting.cc (score_extra_encompass): avoid other slurs
10180         too.
10182         * input/regression/phrasing-slur-slur-avoid.ly: new file.
10184         * lily/ottava-bracket.cc (print): always start from right edge of
10185         a broken bound. This fixes ottava-clef.ps 
10187 2004-08-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10189         * input/regression/slur-script-inside.ly: new file.
10191         * lily/new-slur.cc (outside_slur_callback): new function, to make
10192         scripts avoid slurs 
10194         * lily/slur-engraver.cc (finalize): 
10196         * lily/script-interface.cc: add inside-slur property.
10198         * lily/slur-engraver.cc (finalize): read inside-slur property.
10200         * scm/lily.scm (postscript->png): use ~a iso. ~s in progress
10201         message.
10203         * ly/property-init.ly (unHideNotes): hide accidentals at staff
10204         level. Fixes: hideNotes-accidental.ly
10206 2004-08-23  Pedro Kroger  <kroeger@pedrokroeger.net>
10208         * scm/page-layout.scm (plain-header): fix bug that print page
10209         number in the first page if firstpagenumber was different than 1.
10211 2004-08-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10213         * scm/framework-ps.scm (define-fonts): use UPCASE for Bluesky
10214         fonts. Fixes triangle markup for chords.
10216         * lily/slur-quanting.cc (score_extra_encompass): make score depend
10217         on distance. This fixes slur-tenuto.ly and slur-tie.ly
10219         * flower/include/interval.hh (T>): add distance() function
10221         * lily/ottava-bracket.cc (print): add dots to extent. Fixes
10222         octaviation-dot.ly 
10224         * lily/context-scheme.cc: ly_context_grob_definition: new function.
10226         * VERSION (MY_PATCH_LEVEL): release 2.3.12
10228         * lily/new-slur.cc (add_column): remove set_interface()
10230 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10232         * input/regression/slur-double.ly: new file. 
10234         * lily/slur-engraver.cc: add doubleSlurs property
10236         * scm/fret-diagrams.scm (label-fret): use cond instead of case for
10237         symbols.
10239         * Documentation/user/notation.itely (Easy Notation note heads):
10240         revise notation Chapter.
10242         * ly/music-functions-init.ly (makecluster): add makeClusters music
10243         function.
10245         * lily/part-combine-engraver.cc: rename soloADue ->
10246         printPartCombineTexts
10248         * scripts/convert-ly.py (conv): junk script{Up|Down|Both}.
10250         * lily/horizontal-bracket.cc (print): use
10251         Tuplet_bracket::make_bracket, so it supports bracket-flare,
10252         edge-eight and shorten-pair.
10254 2004-08-22  Pedro Kroger  <kroeger@pedrokroeger.net>
10256         * Documentation/user/changing-defaults.itely (Page layout):
10257         description of firstpagenumber. Moved @refbugs about rightmargin
10258         to the end of the section (it was looking like the documentation
10259         after the refbugs was part of the bug comment).
10261         * scm/framework-ps.scm (output-framework): set the first
10262         postscript page number to firstpagenumber
10264         * scm/page-layout.scm (ly:optimal-page-breaks): print the first
10265         page number according to firstpagenumber
10267         * scm/paper.scm (set-paper-dimensions): added firstpagenumber
10268         parameter
10270 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10272         * lily/slur-engraver.cc (class Slur_engraver): simplify: remove
10273         nested slurs. 
10275         * scripts/convert-ly.py (lilypond_version_re_str): handle
10276         \version "bar" % "foo"
10278         * lily/completion-note-heads-engraver.cc (process_music): set
10279         duration-log before announcing object.
10280         
10281         * lily/staff-symbol.cc (print): subtract thickness from staff line
10282         length
10284         * lily/parser.yy (book_body): disallow { ..music.. } inside \book
10285         
10286 2004-08-21  Carl Sorensen  <carldsorensen@comcast.net>
10288         * scm/stencil.scm: remove fontify-text and fontify-text-white
10290 2004-08-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10292         * scm/part-combiner.scm: skip name string. Fixes segfault problem.
10294         * Documentation/user/sound-output.texi (Sound): new file. Move all
10295         MIDI related information.
10297 2004-08-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10299         * lily/script-engraver.cc (acknowledge_grob): only take into
10300         account note heads with a music cause. Fixes ambitus-accent.ly
10302         * scm/define-markup-commands.scm (finger): set encoding to
10303         fetaNumber.
10305 2004-08-20  Erik Sandberg <ersa9195@student.uu.se>
10307         * scripts/convert-ly.py: typo
10309 2004-08-19  Carl Sorensen  <carldsorensen@comcast.net>
10311         * scm/fret-diagrams.scm: Eliminate use of fontify-text; make 
10312         font calls for diagrams based on paper and props
10314 2004-08-19  Graham Percival <gperlist@shaw.ca>
10316         * scripts/convert-ly.py: add \newpage -> \pageBreak rule.
10318 2004-08-19  Erik Sandberg <ersa9195@student.uu.se>
10320         * ly/spanners-init.ly: Correct meanings of setTextDecresc/Dim,
10321         added setHairpinDecresc/Dim
10323 2004-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10325         * lily/include/lily-guile.hh: Cosmetics.
10327 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10329         * input/regression/fermata-rest-position.ly: new file
10331         * ly/property-init.ly (hideNotes): remove \setMmRestFermata
10333         * scripts/convert-ly.py (conv): add rule for \setMmRestFermata
10335 2004-08-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10337         * scm/framework-tex.scm (output-preview-framework) 
10338         (output-classic-framework): 
10339         * scm/framework-ps.scm (output-preview-framework):
10340         s/ly:paper-book-lines/ly:paper-book-systems/g
10342         * scm/fret-diagrams.scm (ss-font-encoding):
10343         s/my-font-encoding/ss-font-encoding
10345 2004-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10347         * scm/music-functions.scm (direction-polyphonic-grobs): Set
10348         direction also on fingerings.
10350         * lily/clef-engraver.cc: Add forceClef to list of read properties.
10352 2004-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10354         * po/nl.po: Some updates.
10356         * scm/lily.scm (_): New function.
10357         (postscript->pdf, postscript->png, lilypond-main)
10358         (postscript->pdf): Use it.  Write messages to stderr.
10360         * stepmake/stepmake/po-targets.make (ALL_PO_SOURCES): Add SCM_FILES.
10362         * scm/GNUmakefile (XGETTEXT_FLAGS): Set language to Lisp.
10363         xgettext does not recognise scheme yet.  Patch submitted.
10365         * lily/scm-option.cc (LY_DEFINE):
10366         * lily/main.cc: The program is now called lilypond (WAS:
10367         lilypond-bin).
10369         * lily/rest-collision.cc (do_shift): Uniformise two too many rests
10370         messages.
10372         * lily/include/paper-book.hh
10373         * lily/include/paper-system.hh: Finish renaming of paper-line to
10374         system.  Fix users.
10376 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10378         * scm/documentation-generate.scm (string-append): add version.
10380         * scm/define-markup-commands.scm (box): add box-padding and
10381         thickness props for the box command.
10383         * Documentation/user/changing-defaults.itely (Text encoding):
10384         elucidate use of \encoding for \header strings.
10386         * lily/parser.yy (lyric_element): use \encoding for lyrics strings.
10388         * lily/score.cc (LY_DEFINE): check if length of music > 0. Fixes:
10389         staff-change.ly
10391         * lily/output-def.cc (assign_context_def): use set_variable().
10393         * lily/text-item.cc (interpret_string): accept string input
10394         encoding too.
10396         * scm/encoding.scm (read-encoding-file): print warning when file
10397         can't be found.
10399         * tex/latin1.enc: remove.
10401         * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS.
10403         * lily/rod.cc (columnize): robustness fix. Don't crash for
10404         nil span points. Fixes: appoggiatura-segfault.ly
10405         (add_to_cols): extra robustness fix.
10407 2004-08-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10409         * lily/text-item.cc (interpret_string): use lookup_variable() to
10410         fidn inputencoding. Now, \paper inherits inputencoding from
10411         \bookpaper.
10413         * lily/script-engraver.cc (stop_translation_timestep): remove slur
10414         collision kludge.
10416         * lily/dynamic-engraver.cc (typeset_all): remove slur collision
10417         kludge.
10419 2004-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10421         * lily/main.cc (parse_argv): Bugfix: handle 'p'.  Add warning.
10423 2004-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10425         * lily/spanner.cc (spanned_rank_iv): Bugfix.
10427         * lily.scm: Mark un-internationlised user messages (with FIXME).
10429         * lily/include/modified-font-metric.hh (struct
10430         Modified_font_metric): New file.  (WAS: incorrectly named
10431         scaled-font-metric.hh ?)
10433         * lily/include/scaled-font-metric.hh: Remove.
10435         * lily/text-item.cc (interpret_string): Identify and document
10436         input-encoding problem.
10438         * lily/paper-book.cc (pages): Do not use `paper' as variable name
10439         for a Bookpaper.
10441         * tex/latin1.enc: Replace /minus with /hyphen.
10443         * scm/encoding.scm: For latin1 (input-)encoding, use
10444         latin1.  (Cork.enc is NOT latin1 -- see man latin1).
10446         * ly/book-paper-defaults.ly: Add a comment about suspicious TeX
10447         inputencoding.
10449 2004-08-12  Heikki Junes  <hjunes@cc.hut.fi>
10451         * Documentation/topdocs/INSTALL.html: fixes.
10453 2004-08-12  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
10455         * buildscripts/builder.py: Fix for scons CVS.
10457 2004-08-11  Heikki Junes  <hjunes@cc.hut.fi>
10459         * Documentation/user/notation.itely,
10460         Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly,
10461         input/test/ambitus-mixed.ly: fix plurals:
10462         english: ambit, pl. ambits; latin: ambitus, pl. ambitus.
10464 2004-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10466         * lily/dynamic-engraver.cc (typeset_all):
10467         * lily/script-engraver.cc (stop_translation_timestep): Handle
10468         collisions with new-slur.
10470 2004-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10472         * scm/define-grobs.scm (all-grob-descriptions): Add
10473         new-slur-interface.
10475 2004-08-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10477         * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now
10478         produces .PS
10480 2004-08-09  Carl Sorensen  <carldsorensen@comcast.net>
10482         * scm/define-grob-properties.scm (all-user-grob-properties): fix
10483         definition of number-type
10485 2004-08-08  Carl Sorensen  <carldsorensen@comcast.net>
10487         * scm/fret-diagrams.scm : change sans-serif font encoding from 
10488         TeX-text to ec (uses ecss fonts instead of cmss fonts)
10490         * scm/define-grob-interfaces.scm (fret-diagram-interface): add
10491         number-type and label-dir
10493         * scm/define-grob-properties.scm: add number-type and label-dir
10495         * scm/fret-diagrams.scm (label-fret): allow fret label to be on either
10496         left or right.  Allow choice of upper-case roman, lower-case roman, or
10497         arabic numerals in fret label
10499 2004-08-04  Werner Lemberg  <wl@gnu.org>
10501         * lily/slur-quanting.cc: Include libc-extension.hh.
10502         s/round/my_round/.
10503         * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice):
10504         s/autobeaming/autoBeaming/.
10506 2004-08-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10508         * VERSION: 2.3.11 released.
10510         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate
10511         renameinput.
10513 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10515         * lily/lookup.cc (round_filled_box): remove warnings about blot
10516         diameter.
10518         * scm/paper.scm (paper-set-staff-size): make linethickness more
10519         easily tunable.
10521         * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics,
10522         \newlyrics -> \addlyrics
10524         * lily/text-spanner.cc (print): use it.
10526         * lily/dynamic-text-spanner.cc (print): use it.
10528         * lily/grob.cc (robust_relative_extent): new function.
10530         * scripts/lilypond-book.py (main): add -f tex as default process.
10532         * lily/text-spanner.cc (print): only take linear_combination of
10533         nonempty interval.
10534         
10536 2004-08-02  Pedro Kroger  <kroeger@pedrokroeger.net>
10538         * scm/page-layout.scm (default-page-make-stencil): If leftmargin
10539         isn't specified by the user in \bookpaper center the music in the
10540         page.
10542 2004-08-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10544         * Fix some problems after the renaming of my-lily -> lily
10546 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10548         * lily/lily-parser.cc (parse_string): don't overwrite keytable_.
10550         * lily/slur-quanting.cc (enumerate_attachments): apply center on
10551         stem-X in more cases. 
10553         * lily/stem.cc (dim_callback): solve todo.
10555 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10557         * input/test/README: new file.
10559         * lily/lily-parser.cc: rename my-lily* files.
10561         * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect
10562         parser.
10564         * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer.
10566         * lily/include/my-lily-parser.hh: rename My_lily -> Lily
10568         * make/mutopia-targets.make (local-WWW): don't make ps.gz
10569         examples. They take a huge amount of space.
10571         * Documentation/user/GNUmakefile: fix symlinks.
10573         * VERSION: 2.3.10 released.
10574         
10575         * input/test/lyrics-skip-notes.ly: remove
10577         * input/test/stem-cross-staff.ly (noFlag): fold into manual
10579         * input/test/{spacing-2,staff-space,tablature,textscript}.ly:
10580         remove.
10582 2004-08-01  Heikki Junes  <hanwen@xs4all.nl>
10584         * Documentation/user/{changing-defaults,notation,tutorial}.itely:
10585         fixes.
10587 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10589         * input/regression/beam-dir-functions.ly: move from test/
10591         * Documentation/user/notation.itely (Feathered beams): new node.
10593         * Documentation/user/changing-defaults.itely (Difficult tweaks):
10594         new node
10596         * input/regression/lyric-hyphen-retain.ly: move to regression.
10598         * input/regression/harmonic.ly: fold into manual
10599         
10600         * input/test/{hshift,move-accidentals,crescendi,feathered-beam,
10601         stem-length,chord-names-no-inversions}.ly: remove
10602         
10603         * input/test/tie-cross-voice.ly: move to regression.
10605         * Documentation/user/notation.itely (Running trills): new node.
10607         * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner
10609         * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent
10611         * lily/trill-spanner-engraver.cc: new file.
10613         * input/regression/trill-spanner.ly: new file.
10615         * input/test/timing.ly: fold into manual.
10617         * input/test/time.ly: remove
10619         * input/test/trill.ly: remove
10620         
10621         * input/test/time-signature-double.ly: fold into manual
10623         * input/test/separate-staccato.ly: remove
10625         * input/test/spanner-after-break-tweak.ly: fold into manual.
10627         * input/test/script-priority.ly: fold into manual.
10629         * input/test/scheme-interactions.ly: remove.
10630         
10631         * input/test/unfold-all-repeats.ly (mel),
10632         input/test/repeat.ly,input/test/repeat-shorter-bracket.ly,
10633         input/test/polymetric-differing-notes.ly input/test/polymetric.ly:
10634         fold into manual.
10636         * input/regression/no-staff.ly: move from input/test/
10638         * input/regression/markup-score.ly: move from input/test/
10640         * input/test/lyrics-melisma-faster.ly: fold into manual
10641         
10642         * input/test/lyrics-melisma-variants.ly: fold into manual
10644         * Documentation/user/notation.itely (Popular music): new node. 
10646         * input/test/gourlay.ly: remove
10647         
10648         * input/test/improv.ly: fold into manual.
10650         * input/test/figured-bass-alternate.ly (fl): remove
10652         * lily/dynamic-text-spanner.cc (print): new file.
10654         * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner
10656         * lily/engraver-group-engraver.cc (do_announces): reorder logic:
10657         keep recursing into children in case a parent context inserts a
10658         grob into a child context.
10660         * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to
10661         
10662 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10664         * scm/define-markup-commands.scm (postscript): new markup command
10665         \postscript
10667         * Documentation/user/notation.itely (Formatting cue notes): new
10668         section.
10670         * input/test/clef-end-of-line.ly: fold into manual.
10672         * input/test/scales-greek.ly: remove.
10674         * input/test/chords-without-melody.ly: fold into manual.
10676         * input/test/cadenza-skip.ly: remove.
10678         * input/test/clef-8-syntax.ly: remove.
10680         * input/test/clef-manual-control.ly: move into manual.
10682         * Documentation/user/notation.itely (Aligning to cadenzas): fold
10683         in cadenza-skip.ly
10685         * mf/parmesan*.mf: change neo_mensural to neomensural.
10687         * input/test/trills.ly: remove.
10689         * input/test/transposition.ly: remove.
10691         * input/test/to-xml.ly: move to no-notation.
10693         * buildscripts/lilypond-profile.sh: change zsh bomb to warning.
10695         * lily/ledger-line-spanner.cc (print): use staff variable, not
10696         me. Fixes ledger lines on differently sized staves.
10698         * input/test/rhythm-excercise.ly: remove file.
10700         * lily/stem.cc (dim_callback): only do something if visible. Fixes
10701         spurious flag not found warning for 128th rest.
10703         * input/regression/rest-dot-position.ly: new file.
10704         
10705         * input/test/rest-dot-positions.ly: remove
10707         * lily/staff-symbol-referencer.cc (get_position): emergency
10708         fallback: use coordinate * 2.
10710         * input/no-notation/midi-scales.ly: move from test/
10712         * scm/define-markup-commands.scm (score): remove debugging code.
10714         * input/test/incipit.ly (violin): remove. 
10716         * lily/system-start-delimiter.cc (print): only draw system
10717         delimiter to staves that reach up to left bound of the delimiter.
10719         * input/no-notation/embedded-scm.ly: move from test/
10721         * input/test/follow-voice.ly: remove
10723         * input/no-notation/dynamic-absolute-volume.ly: move from test/.
10725         * input/test/drarn*: remove
10726         
10727         * input/test/count-systems.ly: remove.
10729         * lily/bar-line.cc (compound_barline): fix : for staff without
10730         lines.
10732         * lily/accidental.cc (print): use music_font_alist_chain(). This
10733         fixes smaller cautionaries.
10735         * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
10736         encoding for accidental.
10738         * Documentation/user/notation.itely (Educational use): new section
10740         * input/test/*.ly: clean up directory: move examples into manual
10741         or regtest.
10742         
10744         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add
10745         mode as well. This fixes resolution errors.
10747 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10749         * scm/lily.scm (postscript->png): show commands for --verbose.
10751         * flower/include/getopt-long.hh: opps. short option should be
10752         char, not int.
10754         * Documentation/user/GNUmakefile: use symlinks to save space.
10756         * VERSION: 2.3.9 released.
10758         * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.
10760         * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
10761         manual.
10763         * Documentation/user/tutorial.itely (Integrating text and music):
10764         remove \score and \notes from manual.
10766         * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note
10767         mode in the beginning.
10769 2004-07-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10771         * Documentation/user/changing-defaults.itely (Horizontal spacing):
10772         Correct the documentation of the spacing parameters. 
10774         * Documentation/user/tutorial.itely (Integrating text and music), 
10775         Documentation/user/lilypond-book.itely (Integrating LaTeX and
10776         music): Document that you need to add the map file ec-mftrace.map
10777         in the dvips command.   
10779 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10781         * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not
10782         found.
10784         * lily/text-item.cc (interpret_string): insert encoding setting
10785         here
10787         * scm/framework-ps.scm (ps-font-command): remove feta/parmesan
10788         encoding kludge.
10790         * Documentation/user/changing-defaults.itely (Text encoding): node
10791         on encoding.
10793         * lily/lyric-engraver.cc (try_music): remove superfluous check.
10795         * lily/book-paper-def.cc (find_scaled_font): remove default
10796         encoding, because it messes up font loading for feta and
10797         parmesan. Encoding should only be specified for running texts.
10799         * lily/modified-font-metric.cc (text_dimension): support coding
10800         scheme ""
10801         
10802 2004-07-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10804         * lily/tie-engraver.cc (stop_translation_timestep): remember tie
10805         definition, so \override works as expected.
10807         * lily/measure-grouping-engraver.cc: clarify
10809 2004-07-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10811         * lily/parser.yy (context_def_mod): remove \consistsend
10813         * lily/context-def.cc (instantiate): use Translator::must_be_last
10814         to determine engraver order.
10816         * lily/translator.cc (must_be_last): new function
10818         * scripts/convert-ly.py (conv): rule.
10820         * lily/bar-line.cc (print): return '() for height == 0.0 too.
10822 2004-07-27  Heikki Junes  <hjunes@cc.hut.fi>
10824         * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs.
10826 2004-07-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10828         * lily/include/lily-guile.hh (scm_is_int): compat glue.
10830 2004-07-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10832         * input/regression/page-layout.ly: new file.
10834         * scm/paper.scm (set-paper-dimensions): Preliminary support for
10835         left and right margins.
10837         * Documentation/user/changing-defaults.itely (Page layout):
10838         Explain the leftmargin option.
10840 2004-07-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10842         * input/test/lyrics-melisma-variants.ly (texidoc): new file.
10844         * input/test/lyrics-melisma-faster.ly: new file.
10846         * lily/new-lyric-combine-music-iterator.cc (find_voice): allow
10847         change of melody by setting associatedVoice.
10849         * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode.
10851         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy
10852         file contents, rather \include them, so default linewidth is set.
10853         (ly_options): make BOOKPAPER set of options. Move linewidth
10854         settings there.
10856         * Documentation/user/examples.itely: new file. Templates are to be
10857         moved here.
10859         * Documentation/user/programming-interface.itely: move chapter.
10861         * scm/document-markup.scm (doc-markup-function): add @code
10863         * stepmake/stepmake/texinfo-rules.make: remove chmod.
10865 2004-07-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10867         * scm/page-layout.scm (plain-header): add printpagenumber boolean
10868         to bookpaper.
10870         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
10871         $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary.
10873         * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere.
10875         * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin 
10877         * scripts/lilypond-latex.py: move from lilypond.py
10879         * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting.
10880         (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book.
10882         * scm/lily.scm (postscript->png): new function
10883         (postscript->pdf): new function
10885         * lily/paper-book.cc (post_processing): call
10886         convert-to-{dvi,ps,png,pdf}
10888         * scripts/ps2png.py (option_definitions): new file.
10890         * lily/paper-book.cc (output): call output-preview-framework
10891         (post_processing): new function. Do PDF/PNG conversion.
10893         * lily/paper-outputter.cc (close): new function.
10895         * scm/framework-ps.scm (convert-to-pdf): new function. Call
10896         ps2pdf.
10897         (output-preview-framework): new function. Generate a preview .ps
10898         
10900 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10902         * VERSION: release 2.3.8
10903         
10904         * lily/note-head.cc: remove ledger line handling.
10906         * lily/ambitus.cc (print): strip away accidental / note head code,
10907         and associated properties.
10909         * lily/ambitus-engraver.cc (create_ambitus): change name to
10910         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
10911         other ambitus parts.
10912         (create_ambitus): group grobs in Ambitus grouping object. 
10914         * lily/include/pitch-interval.hh (Pitch>): new file.
10916         * lily/pitch-interval.cc (add_point): new file.
10918         * lily/ledger-line-engraver.cc: new file.
10920         * lily/ledger-line-spanner.cc (print): new file. Set limits to
10921         ledger line length to avoid clashes.
10923 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10925         * Documentation/user/invoking.itexi (Invoking lilypond): remove
10926         deprecated options
10928 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10930         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
10931         to command line option: fast=1 (default on).
10933         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
10934         This brings SCons run-time on up-to-date tree down from 48s with
10935         only checksums, to 34s without 2day checksums, to 14s (make needs
10936         4 seconds).
10937         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
10938         necessary.
10940 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10942         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
10943         (score_extra_encompass): process scripts at edges too, by checking
10944         control points directly. 
10946 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10948         * po/nl.po: Update.
10950         * lily/main.cc: Fix ly:option-usage help.
10952         * input/regression/slur-script.ly: More collision tests.
10954         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
10956 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10958         * VERSION: release 2.3.7
10960         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
10961         files.
10963         * Documentation/user/notation.itely (Slurs): document ^ and _ for
10964         slurs.
10966         * input/regression/slur-script.ly: new file.
10968         * lily/accidental-engraver.cc (process_acknowledged_grobs):
10969         make accidental appear to come from note head engraver.
10971         * lily/slur-quanting.cc: new file.
10972         (score_extra_encompass): new function. Avoid scripts and
10973         accidentals
10975 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10977         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
10978         This greatly reduces the number of files that get recompiled
10979         after touching config.hh.
10981         * config.hh.in: Remove GUILE_*_VERSION.
10983         * lily/new-slur.cc: Resolve conflicts.
10985         * lily/stem-engraver.cc (make_stem): New method.
10987         * lily/include/script-interface.hh:
10988         * lily/script-interface.cc: New file.
10990         * lily/include/script.hh:
10991         * lily/script.cc: Remove.
10993         * lily/music.cc (duration_log): New method.
10995         * lily/script.cc (struct Skript): Remove.
10997         * lily/new-slur.cc (get_base_attachments): Try at articulations.
10998         Lots of coding cleanups (Stom).
11000 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11002         * lily/new-slur.cc (avoid_staff_line): new function: avoid
11003         collisions with staff lines.
11005         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
11006         global_path
11008         * scm/define-grobs.scm (all-grob-descriptions): set ratio
11009         .25. This flattens short slurs.
11011         * lily/new-slur.cc (enumerate_attachments): move X of attachment
11012         points for tilted slurs.
11014         * input/regression/slur-tilt.ly: new file.
11016         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
11017         stems of 16th graces too.
11019         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
11020         quant penalty dependent on how much the line is in the gap.
11022         * input/regression/grace-stem-length.ly: new file.
11024         * lily/beam-quanting.cc (score_forbidden_quants): remove
11025         interquant check. The penalty of 1000 is much too harsh, and the
11026         inter case should be caught by check-staff-line-in-gap check.
11028         * lily/scm-option.cc: move debug-beam to \paper.
11030         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
11031         .txt files to appease makeinfo.
11033         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
11034         remove texttagline.
11035         
11036         * lily/new-slur.cc: cleanup, split in functions.
11038         * lily/parser.yy (chord_body_element): allow octave-check = inside
11039         chord body. 
11041         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
11043         * lily/stem.cc (height): call Beam::after_line_breaking().
11045         * lily/rest-collision.cc (force_shift_callback): only call shift
11046         for columns containing rests.
11048         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
11050         * input/regression/font-postscript.ly: invoke afm2tfm. 
11052 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11054         * mf/SConscript: Build map files.
11056         * SConstruct: Rename $out to out-www in web.
11058 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11060         * SConstruct (web_kluts): Have make web build in out-www.  Not.
11062 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11064         * Documentation/user/music-glossary.tely (Top): add fragment to
11065         pertinent @lilypond entries.
11067         * scm/define-grobs.scm: switch on new-slur by default.
11069         * lily/scm-option.cc: symbol != string.
11071         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
11072         really work yet.
11073         (set_end_points): make X coord of attachment dependent on  Y.
11074         (score_encompass): add edges too.
11076 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11078         * lily/stem.cc (get_beaming): new function.
11080         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
11081         for fragment snippets. This fixes inclusion of toplevel-music
11082         examples (such as new-slur.ly)
11084 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11086         * scripts/lilypond-book.py: Remove second import of stat.
11088         * More SCons cleanups.
11090         * Documentation/bibliography/computer-notation.bib (note): Remove
11091         extraneous closing brace.
11093 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11095         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
11096         stat calls.
11098         * Documentation/bibliography/SConscript (bibs): failed try to get
11099         bib2html find html-long.bst.
11101         * buildscripts/bib2html.py (stat): fail if bibtex fails.
11103         * make/stepmake.make: use usescons for using scons. 
11105 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11107         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
11108         for lilypondend.  Import stat (huh?).
11110 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11112         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
11113         bypass dvi. 
11115         * input/regression/font-postscript.ly: new file. 
11117         * scm/framework-ps.scm (load-fonts): load pfb files too.
11119         * lily/pfb.cc (pfb2pfa): new file.
11121 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11123         * scripts/lilypond-book.py (PREAMBLE_LY): set
11124         toplevel-music-handler too.
11126 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11128         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
11129         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
11131         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
11133         * python/SConscript:
11134         * python/vim:
11135         * input/mutopia/*SConscript: New file.
11137         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
11139         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
11140         fixes web build.
11142         * make/stepmake.make (scons): re-route to SCONS if user has been
11143         running scons in this tree.
11145         * SConstruct (config_vars): Add CPPDEFINES.
11146         (env): Set checksums type to "content".
11147         (save_config_cache): Do not exit after configuring when using
11148         checksums (the default) instead of timestamps.
11150 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11152         * SConstruct: Further development.
11154         * input/test/SConscript: 
11155         * input/template/SConscript: 
11156         * input/regression/SConscript: 
11157         * Documentation/bibliography/SConscript:
11158         * Documentation/bibliography/index.html.in: New file.
11160         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
11161         generation.
11163         * buildscripts/builder.py: Add new builders.
11165         * make/stepmake.make: 
11166         * stepmake/stepmake/*.make: 
11167         * configure.in:
11168         * lily/*:
11169         * flower*: Use config.hh (Was config.h).
11171         * scm/encoding.scm (get-coding): Print friendly error message when
11172         no encoding is found, rather than crashing.
11174 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11176         * lily/new-slur.cc (score_slopes): strong sloping score only when
11177         stems point in same dir. 
11179 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11181         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
11182         for beam start.
11184         * lily/parser.yy (context_prop_spec): check grob name for
11185         alphanumericness..
11187         * lily/lyric-engraver.cc: creates LyricText objects
11189 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11191         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
11193 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11195         * SConstruct: Configure only pristine build tree or on user
11196         request.  Cleanups.  Add Documentation/topdocs to subdirs.
11197         Use checksums instead of timestamps.
11198         (CheckYYCurrentBuffer): Return result.
11200         * Documentation/topdocs/SConscript: New file.
11202 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11204         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
11206         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
11207         scm_from_int instead.
11209 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11211         * SConstruct: Updates.  Add targets: tar, dist, release.
11213 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11215         * input/mutopia-header.ly: Generate output.
11217         * SConstruct:
11218         * buildscripts/builder.py:
11219         * Documentation/user/SConscript: SCons fixes.
11221 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11223         * lily/new-slur.cc (class New_slur): new file. Score based slur
11224         computations.
11226 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11228         * mf/SConscript: Remove Builders.
11230         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
11232         * input/SConscript: 
11233         * Documentation/user/SConscript: New file.
11235 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11237         * Documentation/topdocs/NEWS.texi (Top): add note about new
11238         emacs electric-|
11240         * scm/*.scm: adapt ly:warn calls.
11242         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
11244         * lily/repeat-acknowledge-engraver.cc (process_music): look at
11245         main timing, not grace timing. Fixes volta-repeat-grace.
11247         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
11248         remove ly:kpathsea-gulp-file.
11250         * scm/translation-functions.scm (format-metronome-markup): make
11251         note smaller, align to bottom.
11253         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
11255         * lily/metronome-engraver.cc (stop_translation_timestep): attach
11256         metronome to musical column. Don't ack time sigs or bar lines.
11258 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
11260         * THANKS: sort, add David. Kristof contributed code, he is a
11261         contributor.
11263 2004-07-09  David Svoboda      <svoboda@cmu.edu>
11265         * elisp/lilypond-mode.el,
11266         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
11267         count beats between last measure stop | and point in emacs.
11268         
11269 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11271         * tex/GNUmakefile (TEX_FILES): don't dist
11272         music-drawing-routines.ps, latin1.enc 
11274         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
11275         --no-pdf, --pdftex
11276         (copyright): add --latex option
11277         (ic_p.make_include_option): use direct PS as default.
11279         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
11281         * input/regression/beam-concave.ly (rossFourBeams): add cases from
11282         Ross
11284         * scm/script.scm (default-script-alist): marcato should follow
11285         into staff
11286         
11287 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11289         * buildscripts/builder.py:
11290         
11291         * Documentation/SConscript (outdir): New file.  Add *list.ly
11292         dependencies.  Fixes PDF doc build.
11294 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
11296         * SConstruct: Add Tar target (incomplete), fix install issues, fix
11297         run from build-dir.
11299         * ly/SConscript:
11300         * scm/SConscript: New file.
11302         * lily/main.cc (dir_info): Print variables in sh format.
11304         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
11306         * mf/SConscript: Update multiple target rules.
11308         * SConstruct (assert_version): Add.
11310 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11312         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
11314 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11316         * buildscripts/mf-to-table.py: Do not try to open ''.
11318         * mf/SConscript: New file.
11320 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
11322         * scm/fret-diagrams.scm : Convert many properties to constants,
11323         reducing the pollution of the property namespace.
11325         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
11326         unnecessary properties for fret-diagram
11328         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
11329         for interface
11331 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11333         * SConstruct: Update.
11335 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11337         * input/regression/beam-quant-standard.ly (seconds): print desired
11338         quants when failing.
11340 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11342         * SConstruct:
11343         * flower/SConscript:
11344         * lily/SConscript: New file.
11346 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
11348         * scm/define-grob-properties.scm (all-user-grob-properties): Add
11349         descriptions for all fret-diagram properties.
11351         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
11352         fret-diagram interface code
11354 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11356         * ly/book-paper-defaults.ly: set default encoding to ec.
11358         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
11359         installed.
11361         * tex/latin1.enc: new file, from a2ps. 
11363 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
11365         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
11366         add a faint, green border line.
11368         * Documentation/index.html.in: drop <table>, add a faint border line.
11370 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11372         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
11374         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
11376 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
11378         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
11380         * scm/output-tex.scm (white-text): Add scale parameter to allow font
11381         scaling
11383         * scm/stencil.scm (fontify-text-white) : Adjust to better center,
11384         properly scale white text
11386         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
11387         position for numbered dots so dot will touch fret.
11388         (various routines): move to font-metric interface, rather than
11389         name, size interface.  Clean up comments.
11391         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
11392         size and offset to better center white text.
11394 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
11396         * ChangeLog: Remove pre-2.1 changes.
11398         * Documentation/misc/ChangeLog-2.1: New file.
11400         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
11401         from ChangeLog.
11403 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11405         * input/test/chords-below-volta-bracket.ly,
11406         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
11408 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11410         * VERSION: release 2.3.6
11412         * input/regression/beam-quant-standard.ly: new file: test standard
11413         beam quants.
11415         * scm/beam.scm (check-quant-callbacks): new function
11416         (check-beam-quant): new function: check whether current beam
11417         quants match argument.
11419         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
11420         forbidden quant for sitting (upstem)/hanging (downstem) on outer
11421         staffline line.
11423 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11425         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
11426         functions.
11428         * lily/note-collision.cc (do_shifts): align colliding notes to
11429         their leftmost note.
11431         * input/regression/collision-alignment.ly: new file.
11433         * ly/init.ly: don't print gc stats.
11435         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
11436         extra newline
11438         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
11439         for dimensions. This fixes ottava-remove-empty-staff.ly
11441         * input/regression/lyrics-tenor-clef.ly: new file.
11443         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
11444         cyclic parents when two axis-group-engravers are
11445         present. Fixes: crash-axis-group-engraver.ly. 
11446         
11447         * input/test/volta-chord-names.ly: new file.
11449         * scm/define-context-properties.scm
11450         (all-user-translation-properties): change voltaOnThisStaff
11451         definition. 
11453         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
11454         if necessary.
11456         * lily/volta-bracket.cc (print): handle volta brackets without
11457         bars. 
11459 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
11461         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
11462         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
11464 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11466         * scm/output-gnome.scm: updated instructions for running gnome
11467         backend
11469 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
11471         * scm/fret-diagrams.scm (draw-dots): default values for dot size
11472         and dot-position now depend on finger-code value; in-dot makes
11473         dots larger and centered.
11474         (draw-barre): added straight-barre indicator option
11475         (draw-dots): made fontify-text-white work.
11477         * music-drawing-routines.ps: added /draw_white_text
11479         * scm/output-tex.scm:  added white-text
11481         * scm/output-ps.scm:  added white-text
11483         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
11484         list of stencil expressions
11486         * scm/stencil.scm: Added fontify-text-white
11488 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
11490         * input/regression/+.ly: use @unnumbered section.
11492 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11494         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
11495         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
11497 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
11499         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
11501 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11503         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
11504         was causing an error. (was not actually commited in 2004-06-20)
11506         * input/regression/lily-in-scheme.ly (withPaddingC): does not
11507         breaks anymore
11509 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11511         * VERSION: 2.3.5 released.
11512         
11513         * lily/my-lily-parser.cc (parse_string): switch module too.
11515 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
11517         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
11518         ec-fonts-mftraced to running requirements.
11520 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11522         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
11523         assignments don't reach the original file.
11525         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
11526         exists
11528 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11530         * scm/output-gnome.scm: 
11531         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
11533         * debian/: Apply Debian patch (Anthony Fok).
11535 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
11537         * Documentation/user/music-glossary.tely: fix titling; @top is already
11538         an @unnumbered @chapter.
11540 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11542         * debian/GNUmakefile (EXTRA_DIST_FILES):
11543         (CONF_FILES): update file list.
11545         * lily/stencil.cc (interpret_stencil_expression): bugfix.
11547 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11549         * debian/: Remove cruft (requested Anthony Fok.)
11551         * buildscripts/guile-gnome.sh: Build without gcc libtool version
11552         juggling.
11554         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
11555         Add popup menu with grob properties.
11557         * lily/grob-scheme.cc (ly:grob-properties):
11558         (ly:grob-basic-properties): New function.
11560         * lily/stencil.cc (interpret_stencil_expression): Comment-out
11561         "no-origin" call.  Fixes -fps output.
11563         * scm/output-ps.scm (no-origin): Add dummy implementation.
11565         * scm/output-gnome.scm (define-origin): Remove
11566         (grob-cause): Add.
11568         * scm/output-ps.scm (scm):
11569         * scm/output-tex.scm (scm): Remove define-origin from exports list.
11570         (define-origin): Remove.
11572         * scm/output-gnome.scm (define-origin): 
11574         * scm/lily.scm (ly:all-output-backend-commands): Remove
11575         define-origin.  Add grob-cause.
11577 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
11579         * buildscripts/lilypond-words.py: add ly/portugues.ly.
11581 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
11583         * Documentation/user/GNUmakefile:
11584         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
11585         --include-css=.../texinfo.css; command includes css into the html.
11587         * Documentation/texinfo.css: add file.
11588         define <hr> as black and thin.
11590 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11592         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
11593         stencil expression. Junk define-origin.
11595         * lily/my-lily-parser.cc (parse_string): init parser variable when
11596         lexer_ is set, ie. in parse_string and parse_file.
11598         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
11599         ly:score-bookify.
11601         * scm/lily.scm (collect-scores-for-book): new function.
11603         * ly/init.ly: print collected scores/musics.
11605         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
11606         scope, not in lily module.
11608         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
11610         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
11611         encapsulate gtk/pango tests.
11613         * po/tr.po: Turkish translation.
11615 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11617         * input/regression/lily-in-scheme.ly: regression test for #{
11618         ... #} syntax
11620         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
11621         was causing an error.
11623         * Documentation/user/programming-interface.itely (Using LilyPond
11624         syntax inside Scheme): documentation for #{ ... #} syntax.
11626 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
11628         * Documentation/index.html.in: use black thin <hr>.
11630         * buildscripts/mutopia-index.py: use thin black <hr>.
11632 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11634         * scm/fret-diagrams.scm: Use UNIX style line endings.
11635         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
11636         typo.  Fixes compile.
11638         * scm/output-ps.scm (white-dot): Remove second incarnation.
11640         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
11642 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11644         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
11645         single file error.
11647         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
11649 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
11651         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
11652         remove size as argument to fret-diagram interface;
11653         improved white-circle dots for fret;
11654         improved top-fret thick line/
11656         * scm/output-ps.scm: added white-dot function
11658         * scm/output-tex.scm: added white-dot function
11660         * tex/music-drawing-routines.ps: added draw_white_dot function
11662         * ps/music-drawing-routines.ps: added draw_white_dot function
11664         * input/test/fret-diagram.ly: examples to show multiple
11665         functions and multiple interfaces
11667 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11669         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
11670         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
11672         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
11673         conflict.  Have I told you lately how much I love autotools?
11675 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11677         * lily/lily-guile.cc: 
11678         * lily/pangofc-afm-decoder.cc:
11679         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
11680         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
11682         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
11683         developers.
11685         * lily/paper-outputter.cc (file): New method.
11686         (dump_string): Use it.
11688         * scm/output-gnome.scm: Update with pango CVS info, lilylib
11689         musing.
11691         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
11692         of them has a comma :-).
11694         * scm/framework-gnome.scm: Add pango decoders.
11696         * lily/include/pangofc-afm-decoder.hh: 
11697         * lily/pangofc-afm-decoder.cc: New file.
11699         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
11701         * configure.in: Check for pango.
11703         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
11704         autoconf).
11705         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
11707         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
11709 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11711         * Documentation/user/tutorial.itely (Integrating text and music):
11712         fix grammar & punctuation.
11714 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11716         * lily/: Stray janitorial cleanups.
11718         * scm/lily.scm (ly:all-stencil-expressions):
11719         * scm/lily.scm (ly:all-output-backend-commands): New function.
11721         * scm/safe-lily.scm (safe-objects): Add them.
11723         * scm/framework-gnome.scm (<gnome-outputter>): New class.
11725         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
11727 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11729         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
11731 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11733         * scm/page-layout.scm (default-page-make-stencil): add
11734         raggedbottom, raggedlastbottom.
11736         * Documentation/user/changing-defaults.itely (Page layout): add doc.
11738         * scm/framework-tex.scm (define-fonts): fix export of
11739         papersize.
11741         * lily/paper-book.cc (classic_output): strip suffixes from
11742         framework functions.
11744         * lily/tuplet-bracket.cc (before_line_breaking): do not return
11745         SCM_UNDEFINED to Scheme.
11747 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11749         * lily/book.cc: remove Book::to_stencil().
11750         (process): whoops. Score::book_rendering returns vector, not list.
11752         * scripts/convert-ly.py (conv): remove \notes.
11753         apply to input examples.
11755         * lily/paper-outputter.cc (output_stencil): don't use
11756         smobify_self() but self_scm()
11758         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
11759         from smobify_self().
11761         * lily/paper-book.cc (output): load framework module
11762         scm_c_resolve_module().
11764         * python/lilylib.py (exit): exit with argument i.
11766 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11768         * scm/framework-gnome.scm (output-framework-gnome): Try loading
11769         gnome modules from non-toplevel.
11771         * lily/ly-module.cc (ly:import-module): Export to ly:.
11773         * lily/paper-score.cc (process): Do not show progress newline.
11775         * lily/paper-book.cc (output, classic_output): Show progess
11776         newline after score.
11778 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
11780         * buildscripts/lilypond-words.py: add ly/vlaams.ly
11782 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11784         * lily/score.cc (ly:run-translator): Do not crash on empty music
11785         list.
11787         * lily/book.cc (process): Do not render score when systems is empty.
11789         * input/simple-song.ly: Down one octave.
11791         * scm/output-gnome.scm: Remove script again; re-add modules fix
11792         (CVS conflict resolve?)
11794         * lily/stencil.cc (ly:interpret-stencil): Was:
11795         interpret_stencil_expression.
11797 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11799         * buildscripts/guile-gnome.sh: New file.
11801         * scm/output-gnome.scm: White background, better window size, sane
11802         canvas size.  Cleanups.
11804 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11806         * VERSION: release 2.3.4
11808         * Documentation/user/invoking.itexi (Invoking the lilypond
11809         binary): document --safe.
11811         * scm/output-gnome.scm: set PATH in script.
11813         * scm/page-layout.scm (default-page-make-stencil): don't stretch
11814         if there is too few systems on a page.
11816         * lily/parser.yy (relative_music): start at middle C without pitch
11817         argument.
11819         * Documentation/user/changing-defaults.itely (Page layout): new node.
11820         (Paper size): rename node
11821         (Page breaking): new node.
11822         (Titling): move from invoking.
11823         (File structure): new node.
11825         * lily/parser.yy (score_body): allow \header and music anywhere in
11826         \score body.
11828 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11830         * scm/lily.scm (ly:load): Remove page-breaking.scm.
11832 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11834         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
11836         * lily/include/paper-line.hh: rename to Paper_system.
11838         * lily/include/paper-book.hh: doc class.
11840         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
11842         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
11843         (plain-header): add instrument-name.
11844         (default-page-make-stencil): bugfixes.
11846         * lily/parser.yy (book_body): allow \header anywhere in \book{}
11848         * lily/paper-book.cc: remove copyright & tagline. Remove
11849         interactions with Page
11851         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
11852         here, 
11853         (default-page-make-stencil): new function
11854         (default-page-music-height): new function
11855         (page-headfoot): new function
11856         (ly:optimal-page-breaks): generate stencils directly from here
11858         * scm/titling.scm: new file, group titling functions
11860 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11862         * scm/output-gnome.scm: Handle multiple pages.
11864         * scm/framework-gnome.scm: Do not load output-gnome.
11865         (framework-gnome): Invoke output-gnome::header and
11866         output-gnome::end-output as faked stencils.  Fixes experimental
11867         gnome output.
11869 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11871         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
11872         octavation compatibility fixes. Backportme. 
11874         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
11875         pages.
11876         (ly:optimal-page-breaks): combine-penalties: no shortcut for
11877         negative. Now we handle negative penalties (ie. \pageBreak)
11878         correctly.
11880         * lily/system.cc (get_line): extract page-penalty from the left
11881         bound.
11883         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
11885 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11887         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
11889 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11891         * scm/output-gnome.scm: Update script.  Move development to
11892         lilypond_2_3_2 branch for now.
11894 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11896         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
11897         negative penalties.
11898         cleanups.
11900         * Documentation/user/changing-defaults.itely (Creating contexts):
11901         index entries
11903         * scm/page-breaking.scm (ly:optimal-page-breaks): new
11904         file. Rewrite function. 
11906         * lily/paper-book.cc (pages): new interface: page-breaking returns
11907         list of line-list.
11909         * lily/page.cc (Page): take lines argument.
11911         * scm/document-translation.scm (all-engravers-doc): link to user man
11913         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty
11914         iso. score.
11916         * Documentation/user/notation.itely (Relative octaves): typo.
11918         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
11920 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11922         * scm/output-gnome.scm: Update build script.
11924 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11926         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
11927         gnome backend.
11929         * scm/framework-gnome.scm: New file.
11931         * scm/lily.scm: Use it.
11933         * lily/paper-outputter.cc: Janitorial cleanups.
11934         (ly:outputter-dump-string): Remove unreachable statement.
11936         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
11937         (ice-9): Bugfix: Add srfi-1.
11939         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
11941 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11943         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
11944         in do_quit()
11946 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11948         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
11950 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11952         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
11953         override of Beam::position-callbacks. Why would grace beams not be
11954         quantized? Fixes: weird-stem-size-grace. 
11956         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
11957         warning only once. Backportme.
11959         * lily/accidental-engraver.cc (number_accidentals_from_sig):
11960         bugfix, 2nd try. Backportme.
11962         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
11964 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11966         * Documentation/user/notation.itely (Instrument transpositions):
11967         Correct the name of the instrumentTransposition property.
11969 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11971         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
11973 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11975         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
11976         and postLilyPondExample are called when defined.
11978 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11980         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
11981         This fixes setting notenames with `\include "nederlands.ly" '
11983         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
11984         new function.
11986 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
11988         * scm/page-layout.scm: don't do piece, it should be in score-title
11989         only.
11991         * lily/lexer.ll: lex \score separately.
11993         * lily/paper-book.cc: junk stencil2line.
11995         * lily/paper-line.cc (Paper_line): construct from Stencil
11996         directly. No futzing with the dimensions.
11998         * lily/include/paper-line.hh (class Paper_line): 
12000         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
12001         takes arbitrary number of arguments.
12003         * input/test/markup-score.ly (tuning): simplify example. 
12005 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12007         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
12009         * scm/define-markup-commands.scm (score): define score-markup
12011         * lily/parser.yy (markup): use score-markup.
12013         * lily/score.cc: add ly:score? 
12015 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
12017         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
12018         fret-parse-string so it prepares for calls to fret-diagram-verbose
12019         Changed display constants to props so they are available for
12020         \override.
12022 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12024         * VERSION: release 2.3.3
12026         * stepmake/stepmake/generic-vars.make: unset LANG.
12028         * input/regression/tuplet-nest.ly: bugfix.
12030         * lily/tie-performer.cc (stop_translation_timestep): reset
12031         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
12033         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
12034         clear repeat_ directly after setting stem_tremolo_. Fixes:
12035         tremolo-repeat.ly
12037         * input/regression/span-bar-break.ly: new file.
12039         * scm/define-grobs.scm (all-grob-descriptions): remove
12040         break-visibility from SpanBar. Fixes: piano-repeat.ly
12042 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12044         * python/lilylib.py (make_ps_images): only compute bbox when needed.
12046         * scripts/lilypond-book.py (process_snippets): use lily -f ps
12047         files for generating pngs. (failed experiment)
12049         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
12050         file with PFA fonts included.
12052         * lily/score.cc (default_rendering): put header in too.
12054         * lily/paper-line.cc (LY_DEFINE): change function to
12055         ly:paper-line-extent
12057         * scm/page-layout.scm (default-book-title): only add lines for
12058         non-nil fields.
12059         (default-score-title): idem.
12061         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
12063         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
12065         * lily/include/paper-book.hh (class Paper_book): remove height_
12066         member.
12068         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
12070         * lily/ly-module.cc (LY_DEFINE): bugfix.
12072         * lily/paper-book.cc (book_title): separate function for the book
12073         title.
12075         * scm/page-layout.scm (default-book-title): only account for
12076         markup fields.
12078         * scm/framework-ps.scm: new file. Move high level interface from
12079         output-ps.scm
12081         * scm/music-functions.scm (def-grace-function): move macros from
12082         ly/music-functions-init.ly
12084         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
12085         framework-tex.scm
12087         * scm/framework-tex.scm (dump-line): new file. High level
12088         interface for output (pages, systems, header). 
12090         * lily/include/page.hh (class Page): add is_last_ field.
12092         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
12094         * lily/paper-book.cc (split_string): new function
12095         (output): output multiple formats, i.e. --format=ps,tex
12097         * scm/output-ps.scm (output-scopes): dump variables directly.
12098         (define-fonts): rewrite for new interface
12100         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
12102         * lily/paper-outputter.cc (Paper_outputter): take format argument.
12104         * lily/main.cc (parse_argv): don't set extension for output.
12106         * lily/clef-engraver.cc (create_clef): remove
12107         Staff_symbol_referencer::set_position() call. 
12109 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12111         * ly/music-functions-init.ly (addlyrics): set the 'origin property
12112         with the location argument in music function definitions.
12114 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12116         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
12117         staffsymbol dependency.
12119         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
12120         cleanups.
12122         * lily/book.cc (process): return Paper_book
12123         (to_stencil): use Book::process().
12125         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
12126         header_ field. Store in $globalheader
12128         * lily/parser.yy (book_body): book header is initted to
12129         $globalheader.
12132 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12134         * input/test/fill-a4.ly: removed.
12136         * lily/parser.yy (output_def): push scope of parent_ Output_def
12137         too.
12139 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12141         * scm/output-gnome.scm: Update info.
12143 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12145         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
12147         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
12148         than 1 module.
12150         * lily/include/ly-module.hh (ly_use_module): rename is_module to
12151         ly_c_module_p.
12153         * scm/page-layout.scm (default-book-title): move Scheme titling
12154         functions to here.
12156         * lily/parser.yy (book_paper_block): remove scope too.
12158         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
12160         * lily/rest.cc: add direction to rest properties.
12162         * lily/include/output-def.hh: new file, move from
12163         music-output-def.hh
12165 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12167         * scm/output-gnome.scm: Describe feta-cork hack.
12169 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12171         * lily/include/book-paper-def.hh: derive from Output_def 
12173         * lily/include/paper-def.hh: move all functionality out of class.
12174         Junk header.
12176         * lily/include/music-output-def.hh: rename Music_output_def to
12177         Output_def.
12179         * input/wilhelmus.ly: only set space for Paper formatting. 
12181         * lily/include/midi-def.hh: remove file, remove class.
12182         Move functions to Music-output-def.
12184         * lily/music-output-def.cc (Music_output_def): remove separate
12185         translator table. Lookup translators in scope directly. This
12186         obviates Context suffix for context identifiers, i.e.
12188         \context {
12189           \Staff
12190           .. 
12191           }
12194         will work.
12197         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
12199         * Documentation/user/changing-defaults.itely (Horizontal spacing):
12200         document spacing override hack.
12202 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12204         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
12205         installation info.  Support point-and-click.  Add +/- zoom
12206         keybindings.
12208 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12210         * VERSION: 2.3.2 released
12212         * lily/parser.yy (book_body): set default bookpaper.
12214         * scm/output-tex.scm (header): kludge: hard code linewidth. 
12216         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
12218 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12220         * lily/score.cc (default_rendering): scale outputdef before
12221         starting.
12223 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12225         * scm/fret-diagrams.scm: Add header.
12227         * scm/output-gnome.scm: Hello world :-)
12229 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12231         * scripts/lilypond.py (run_dvips): only add papersize if present.
12233         * lily/accidental-engraver.cc (update_local_key_signature): new
12234         function, fold code from initialize() and process_music().
12235         (update_local_key_signature): use deep copy. This fixes one
12236         problem from custom-key-signatures.ly.
12237         (number_accidentals_from_sig): tighter check for
12238         accidental-too-old.
12240         * ly/engraver-init.ly: remove localKeySignature
12241         definition from ChoirStaff, StaffGroup, Score.
12243         * lily/percent-repeat-engraver.cc (try_music): add moments for
12244         barlines too. Fixes: skipbars-percent-repeat.ly.
12246 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12248         * lily/context-def.cc (filter_performers): don't go to cdrloc if
12249         skipping last pair. Fixes: crash-bar-number.
12251         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
12252         D. Sorensen)
12254         * input/test/fret-diagram.ly: new file.
12256         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
12257         (scale-paper): divide by scale.
12259 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12261         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
12262         case.
12264 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12266         * scm/stencil.scm (fontify-text): reinstate function
12268         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
12270         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
12272         * lily/parser.yy (book_paper_head): \bookpaper {} 
12274         * python/midi.c: remove config.h
12276 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12278         * scm/output-gnome.scm: Update.
12280 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12282         * scm/output-gnome.scm: New file.
12284         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
12286 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12288         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
12289         (find_scaled_font): move from Paper_def
12291 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12293         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
12294         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
12296         * po/fr.po: update po.
12298         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
12300         * lily/book-paper-def.cc (print_smob): new file.
12302 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
12304         * buildscripts/lilypond-words.py: search words also from
12305         music-functions-init.ly.
12307 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12309         * ly/music-functions-init.ly (def-music-function): new helper
12310         macro for defining music functions. \addlyrics \appoggiatura
12311         \acciaccatura \grace \partcombine \autochange \applycontext
12312         \applyoutput and \breathe are now defined here thanks to it.
12314         * lily/parser.yy: 
12315         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
12316         \grace \partcombine \autochange \applycontext \applyoutput and
12317         \breathe keywords removed from the parser.
12319         * lily/parser.yy: 
12320         * lily/music-function.cc (ly_make_music_function): 
12321         * lily/lexer.ll (music_function_type): added a case for 0-arg
12322         music functions.
12324 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12326         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
12327         refering to a music expression can be used in lily-inside-scheme:
12328         #{ $music #}
12330         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
12331         and ly:parser-define, and change ly:parser-parse-string in order
12332         to make #{ $music #} work.
12334         * scm/new-markup.scm (compile-markup-expression): when an argument
12335         is a string, use `make-simple-markup'.
12337 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12339         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
12341 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12343         * scripts/convert-ly.py (FatalConversionError.func): handle + in
12344         font-size. (backportme)
12346 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12348         * lily/paper-outputter.cc (output_stencil): dump font definitions
12349         before each stencil.
12351         * lily/include/paper-book.hh (struct Score_lines): new
12352         struct. Collect info per Paper-score.
12354         * lily/include/page.hh (class Page): to_stencil() returns Stencil
12355         everywhere.
12357         * lily/stencil.cc (find_expression_fonts): new function
12359         * lily/paper-outputter.cc (output_stencil): use
12360         interpret_stencil_expr
12362         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
12363         (interpret_stencil_expr): new function. Generic stencil
12364         interpretation.
12366         * lily/paper-def.cc (find_scaled_font): divide lookup
12367         magnification by outpuscale for non-virtual fontmetrics. This
12368         fixes ludicrously long font definitions for text
12369         fonts. (backportme)
12371         * lily/score-engraver.cc: remove
12372         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
12374 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12376         * input/test/markup-score.ly: Remove \notes.
12378         * lily/parser.yy (book_body): Grok Composite_music and \header.
12379         (markup): Push NOTES mode before score_block.
12381         * VERSION: release 2.3.1
12383         * mf/feta-klef.mf: 
12384         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
12386         * Documentation/user/programming-interface.itely: Use @emph (was:
12387         @em).
12389         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
12391 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12393         * scm/output-tex.scm (output-tex-string): tighten safe security.
12395         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
12397         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
12398         allowed ly functions.
12400         * lily/ly-module.cc (ly_module_define): only define variable if
12401         bound.
12402         (ly_make_anonymous_module): take safe option.
12404 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12406         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
12408 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12410         * input/regression/newaddlyrics.ly: Fix.
12412         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
12413         \score \notes.
12415 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
12417         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
12419 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12421         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
12423         * lily/paper-line.cc (Paper_line): don't store list of stencils,
12424         but convert to single Stencil immediately.
12426         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
12428 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12430         * scm/output-sodipodi.scm: Resurrect sodipodi output.
12432 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
12434         * elisp/lilypond-mode.el: Changed the way defaults are created for
12435         LilyPond-command-master.  LilyPond-mode will now check the
12436         timestamps of the files to see which command has to run next.
12438 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12440         * scm/bass-figure.scm (format-bass-figure): don't set
12441         number-markup for strings. This fixes string in bass
12442         figure. (backportme)
12444         * lily/parser.yy (bass_number): insert number-markup into figure
12445         definition.
12447         * scm/define-music-properties.scm (all-music-properties): make
12448         'figure a markup.
12450         * scripts/convert-ly.py (conv): \apply -> \applymusic
12452 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
12454         * elisp/lilypond-mode.el: changed the order of some commands
12455         ("Midi" after "2Midi"), use the user-defined
12456         LilyPond-command-default as default instead of "LilyPond"
12458         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
12459         to set the master file for the next command.
12461         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
12462         with font-lock-reference-face.
12464 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
12466         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
12468         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
12470 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12472         * ly/music-functions-init.ly (TODO): new file.
12474         * lily/parser.yy (Generic_prefix_music_scm): add more
12475         music_function symbols.
12476         (Prefix_composite_music): change \apply to music-function   
12478         * lily/include/music-function.hh: rename to music-function
12480 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12482         * lily/music-head.cc (LY_DEFINE): change order of args.
12484         * input/regression/music-head.ly (texidoc): new file.
12486         * lily/parser.yy (Generic_prefix_music): allow generic
12487         music-transformation functions. 
12489         * lily/include/music-head.hh (is_music_head): new file.
12491         * lily/music-head.cc (get_music_head_transform): new file.
12493 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12495         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
12496         empty extent. This fixes ottava brackets on rests. (backportme)
12498         * make/lilypond.redhat.spec.in (Group): ln png files for info.
12500         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
12502         * cygwin/lily-wins.py: update for the lily-wins.py script.
12504 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12506         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
12507         code. This will obviate typeset_grob () in the future.  The effect
12508         of this is that improperly written spanner handling will result in
12509         invalid spanner bounds.
12510         (announce_grob): add to elems_ from here
12511         (typeset_grob): comment out.  
12513         * lily/include/engraver.hh (make_spanner): new calling interface
12514         for make_{item,spanner}. This obviates most calls to
12515         announce_grob().
12517         * scm/music-functions.scm (set-accidental-style): use GrandStaff
12518         iso. PianoStaff for piano styles.
12520 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
12522         * Documentation/user/music-glossary.tely: add segno after d.s.
12524 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12526         * lily/include/audio-column.hh: remove unused variables.
12527         (patch by Michael Welsh Duggan)
12529         * flower/include/axes.hh (other_axis): inline Axes function
12530         (thanks to David Brandon).
12532 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12534         * cygwin/mknetrel: Install image links (backportme).
12536         * Documentation/user/GNUmakefile (local-install-info): Activate
12537         actual installing of image links (backportme).
12539 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12541         * Documentation/user/notation.itely (Measure repeats): Removed
12542         unnecessary (and confusing) \context Voice{.
12544 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12546         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
12548         * lily/page.cc (Page): Do not use ly_scheme_function for
12549         volatile/configurable variables (FIXME: better name).
12551         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
12552         get_scmvar).
12554 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12556         * scripts/convert-ly.py (FatalConversionError.subst): use
12557         \transposition.
12559 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12561         * lily/include/page.hh (class Page): Declare left_margin ().
12563         * lily/page.cc: Remove paper var caching.
12565 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12567         * Documentation/user/music-glossary.tely: Add name to @top node.
12568         Remove comment from @table definitions (workaround for makinfo
12569         bug).
12571         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
12572         ly:stencil-get-expr).  Update callers.
12573         (ly:stencil-align-to!):  Return stencil too.
12575         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
12576         stencil.  Remove looped line-based page output.
12577         (output_line): Use line stencil.  Remove looped stencil-based line
12578         output.
12580         * lily/page.cc (ly:page-paper-lines): New function.
12582         * input/test/markup-score.ly: New file.
12584         * scm/define-markup-commands.scm (stencil): New markup.
12586         * lily/book.cc (to_stencil): New method.
12588         * lily/parser.yy (markup): Use it to grok \score.
12590 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12592         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
12594         * lily/paper-book.cc (pages): Change signature.  Update callers.
12596         * lily/include/page.hh:
12597         * lily/page.cc: New file.
12599         * lily/paper-line.cc (to_stencil): New method.
12601         * lily/paper-outputter.cc (output_stencil): New method.
12603         * lily/paper-outputter.cc (output_line): Use them.
12605         * lily/warn.cc: Remove.
12607         * lily/my-lily-parser.cc (distill_inname): Remove.
12609         * flower/include/file-name.hh: 
12610         * flower/file-name.cc: New file.  Update users.
12612         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
12613         (find): New method of same name.
12615         * lily/my-lily-parser.cc (ly:parse-file): Use it.
12617         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
12618         constant error message.
12620 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
12622         * input/test/{blank-notes.ly,staff-container.ly}: typos.
12624 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
12626         * Documentation/user/music-glossary.tely: @table @strong' replaced
12627         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
12628         (backportme).
12630 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12632         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
12634         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
12635         #{ lily music expression #} that returns an equivalent scheme
12636         music expression by parsing the string.
12638 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
12640         * lily/my-lily-parser.cc:
12641         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
12642         SCM string (foo.ly/toto.scm support).
12644 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
12646         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
12648 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12650         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
12652         * scripts/lilypond-book.py: LY code that includes \header is
12653         not assumed to be a fragment.
12655 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
12657         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
12658         tremolo beams up.
12660         * lily/stem.cc (chord_start_y): Return 0 if no heads.
12661         (get_default_stem_end_position): No tremolo head juggling if no
12662         heads.  Fixes tremolo crash on rests (backportme).
12664         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
12666 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12668         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
12669         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
12671         * lily/lexer.ll: Allow \encoding in NOTES mode.
12673         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
12674         for lyrics, not for commands.
12676         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
12677         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
12679         * input/regression/newaddlyrics.ly: New file.
12681         * Documentation/topdocs/NEWS.texi: Update.
12683         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
12684         (Music_list): Allow embedded scm.
12686         * lily/score.cc (ly:score-bookify): New function.
12688         * lily/music.cc (ly:music-scorify): Idem.
12690         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
12691         (ly:parser-print-score): Idem.
12693         * scm/lily.scm (default-toplevel-book-handler): Idem.
12694         (default-toplevel-music-handler): Idem.
12695         (default-toplevel-score-handler): Idem.
12697         * ly/declarations-init.ly: Set default toplevel handlers.
12699         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
12701         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
12702         printer for score at toplevel.
12704 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12706         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
12707         Fix for simple case: input/simple-song.ly, more complex stuff
12708         does not work yet.
12710 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12712         * lily/parser.yy (Prefix_composite_music): split Composite_music
12713         in Prefix_composite_music and Grouped_music_list.
12714         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
12716 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12718         * scm/lily.scm (toplevel-expression): New define.
12720         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
12722         * lily/parser.yy (toplevel_expression): Use it.
12724         * lily/include/my-lily-parser.hh: Smobbify.
12726         * lily/my-lily-parser.cc (parse_string): New method.
12728         * lily/my-lily-parser.cc (ly:parse-string): New function.
12730         * Documentation/user/lilypond.tely: Add comment and workaround for
12731         gs-8.01 crash.  Fixes make web.
12733         Simplification of toplevel music.
12735         * lily/lexer.ll, lily/parser.yy:
12737         * In LYRICS mode, return LYRICS_STRING.  This fixes one
12738         shift/reduce problem.
12740         * Use NOTES mode at start of maininput.
12742         * Grok toplevel composite music expression, put in score and book.
12744         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
12746         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
12748         * input/simple.ly: New file.
12750         * input/simple-song.ly: Idem.
12752 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12754         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
12755         Sandberg.
12757 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12759         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
12761 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
12763         * input/regression/accidental-octave.ly: doc automatic showing
12764         of note names.
12766 2004-04-16  Heikki Junes <janneke@gnu.org>
12768         * po/fi.po: do "make po && make -C po po-update" at top-level,
12769         then "cp po/out/fi.po po/fi.po" and update fields.
12771         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
12773 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12775         * Documentation/user/introduction.itely (About this manual): Fix
12776         templates and regression urls (backportme).
12778 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12780         * ly/engraver-init.ly (Score:graceSettings): Increase
12781         beamed-lengths, especially for 32nd notes.
12783         * Documentation/user/notation.itely (Grace notes): Correct the
12784         syntax for add-grace-property example.
12786 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12788         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
12789         `Generated' tag.
12791         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
12792         Severely broken (the Debian package, at least).
12794 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12796         * lily/context.cc (find_create_context): assign to lvalue.
12798 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12800         * lily/include/translator.hh (class Translator): rename
12801         get_parent_context() to context () to avoid confusion.
12803         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
12805         * lily/lexer.ll: change is_string -> ly_c_string_p 
12807         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
12809         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
12811 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12813         * VERSION: release 2.3.0
12815         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
12817         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
12818         if nonempty.
12820         * lily/include/context.hh (class Context): make members protected.
12821         (children_contexts): new accessor function.
12823         * lily/include/translator.hh (class Translator): make
12824         daddy_context_ protected.
12825         (class Translator): clean up. 
12827         * lily/include/context.hh (class Context): make daddy_context_
12828         private.
12830         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
12831         higher for finding Voice. (backportme)  
12833         * lily/include/context.hh (class Context): remove
12834         find_context_below() as a method.
12836         * Documentation/user/notation.itely (The Lyrics context): add note
12837         about manual durations
12839         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
12840         encoding.
12842         * scm/output-tex.scm (text): dump \inputencoding{} for text.
12844 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12846         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
12847         \usepackage{inputenc}
12849         * lily/paper-book.cc (classic_output): don't advance Offset for
12850         TeX output.
12852         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
12853         ec-sauter.map in rules
12855         * mf/ecb.mf (font_identifier): new file, based on ecbx
12857         * mf/ecb10.mf (gensize): new file.
12859         * Documentation/topdocs/NEWS.texi (Top): document some more new
12860         features.
12862         * ly/declarations-init.ly: run convert-ly
12864         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
12865         from input-file-results. Remove input-file-results.* 
12867 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12869         * scm/output-ps.scm (font-command): Fix, again.
12871         * input/test/title-markup.ly: Add \noPagebreak test.
12873         * lily/score-engraver.cc (try_music): Bugfix.
12875 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12877         * lily/main.cc (main_with_guile): excise dependency options -M and
12878         --dep-prefix
12880         * lily/input-file-results.cc: excise Makefile dependency code
12882         * Documentation/user/invoking.itexi (Invoking the lilypond
12883         binary): remove dep doco
12885         * lily/main.cc (main_with_guile): call lilypond-main
12887         * scm/lily.scm (lilypond-main): new function: handle multiple files.
12889         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
12890         exception.
12892         * lily/my-lily-parser.cc: remove paper_description function
12894         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
12895         new function.
12897         * lily/main.cc: remove global_score_count.
12899         * lily/book.cc (process): don't take header from global_input_file.
12901         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
12903         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
12905         * lily/music-output-def.cc (LY_DEFINE): new function
12906         ly_output_description. This function does the bulk for  setting,
12907         parsing and breaking down of an input file.
12909         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
12910         anonymous modules globally. Let's hope they get GCd
12912         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
12914 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12916         * scm/output-ps.scm (header): Papersize from paper.
12918         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
12919         for classic output.
12921         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
12922         lilypondclassic is defined.
12923         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
12925         * input/regression/between-systems.ly: Remove.
12927         * python/lilylib.py (get_bbox): Fix regular expression
12928         for bounding box.
12930         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
12932         * scm/output-tex.scm (stop-page): Use it.
12934         * scm/output-ps.scm (define-fonts): Bugfix.
12936         * lily/grob.cc: Add penalty to interface.
12938         * lily/include/paper-line.hh (class Paper_line): New member
12939         var penalty_.
12941         * lily/system.cc (get_line): Initialise Paper_line with
12942         page-penalty's from original grobs.
12944         * scm/define-music-properties.scm (all-music-properties): Add
12945         page-penalty.
12947         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
12949         * lily/score-engraver.cc (try_music): Handle page-penalty.
12951         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
12953 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12955         * ly/declarations-init.ly (melismaEnd): typo
12957         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
12959         * scm/output-ps.scm (text): split string into spaces, use moveto
12960         for setting space. 
12962 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12964         * po/nl.po: Update.
12966         * scm/font.scm (add-cmr-fonts): Typo.
12968 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
12970         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
12971         font-encoding.
12973         * scm/define-grobs.scm (all-grob-descriptions): idem.
12975         * lily/time-signature.cc (numbered_time_signature): idem.
12977         * scm/font.scm (add-cmr-fonts): use real encoding names for
12978         font-encoding.
12980 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12982         * lily/paper-book.cc (classic_output): 
12983         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
12984         Fixes classic output.
12985         (lilypondstart):
12986         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
12987         kludge.
12989         * scripts/old-lilypond-book.py: Remove.
12991         Page layout for SCOREs enclosed in a BOOK:
12993         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
12994         layout tweaking.
12996         * input/les-nereides.ly (theScore): Add \book.
12998         * input/test/title-markup.ly: Add \book.
13000         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
13001         only if 'verbose.
13003         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
13005         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
13007         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
13008         * scm/output-tex.scm (start-system): Update for page layout by
13009         LilyPond.
13011         * scm/output-ps.scm (start-system): Previously (new-start-system).
13013         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
13014         passed to define-fonts.
13016         * lily/paper-column.cc: 
13017         * lily/system.cc (get_line):
13018         * ly/property-init.ly (newpage): 
13019         * scm/define-grob-properties.scm:
13020         * scm/output-ps.scm: 
13021         * scm/output-tex.scm: Remove between-system-string kludge.
13023         * scm/output-ps.scm (define-fonts, font-command,
13024         font-load-encoding): Handle ENCODING = #f.
13026         * scm/output-tex.scm (output-scopes): Check if variable is bound.
13028         * scm/define-markup-commands.scm (fill-line): Use
13029         make-simple-markup (WAS: unexisting make-word-markup).
13031         * lily/text-item.cc (interpret_markup): Bugfix, transpose
13032         ENCODING, MARKUP parameters for interpret_string.
13034         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
13036         * lily/score.cc (book_rendering): New method.
13037         (default_rendering): Create Paper_book helper locally, dump
13038         output.
13040         * lily/my-lily-lexer.cc (the_key_tab): Add book.
13042         * lily/parser.yy: Handle \book.
13044         * lily/include/book.hh: 
13045         * lily/book.cc: New file.
13047 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13049         * lily/text-item.cc (interpret_string): new file, select font with
13050         encoding.
13052         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
13054         * scm/define-markup-commands.scm (encoded-simple): new markup command.
13056         * lily/parser.yy (markup): take encoding from lexer.
13058 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13060         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
13062         * scm/output-ps.scm: Remove some cruft.
13064 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13066         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
13068         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
13070 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13072         * scm/font.scm (add-century-schoolbook-fonts):
13073         (make-century-schoolbook-tree): New function.
13075         * input/test/title-markup.ly: Use Century Schoolbook font.
13077 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13079         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
13080         to Erik Sandberg) 
13082         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
13084         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
13086         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
13088         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
13090 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13092         * scm/part-combiner.scm (determine-split-list): bugfix: if no
13093         solo-state (at end of solo), we can set the solo status
13094         too. (backportme.)
13096         * input/regression/part-combine-solo-end.ly: new file.
13098 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13100         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
13101         flavour abc files.  Really ignore unknown keys (backportme).
13103 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13105         * lily/scaled-font-metric.cc (text_dimension): only multiply with
13106         magnification_ when looking up in orig_.
13108         * scm/output-tex.scm (text): switch off char-mapping.
13110         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
13111         because AFM's encoding field cannot have spaces.
13113 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13115         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
13117 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13119         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
13121         * mf/cmr.enc: new file, without hi-bit ascii info. 
13123         * lily/bezier-bow.cc (slur_shape): make indent dependent on
13124         width. This removes the 'hook' at the end of a long slur.
13126         * buildscripts/mf-to-table.py (parse_logfile): don't append
13127         encoding to fontname.
13129 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13131         * scm/output-ps.scm (define-fonts): Load .enc only once.
13133         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
13134         too.
13136 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13138         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
13139         encoding field.
13141         * lily/stencil-scheme.cc: remove ly:fontify-atom 
13143         * ly/portuges.ly (pitchnames): new file.
13145         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
13146         Michael Welsh Duggan
13148         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
13150         * ly/nederlands.ly: add comment about digits.
13152         * lily/scaled-font-metric.cc (derived_mark): idem.
13154         * scm/encoding.scm (make-encoding-mapping): change permutation to
13155         mapping.
13157         * lily/scaled-font-metric.cc (derived_mark): is a const method.
13158         (Modified_font_metric): make alist for coding_description_
13159         (LY_DEFINE): remove coding-name.
13161         * scm/output-tex.scm (text): remove debugging code.
13163         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
13165         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
13166         from infile.
13168         * mf/feta-generic.mf: move fet_beginfont into generic code.
13169         use fetaMusic (without space) as encoding
13171         * mf/feta-autometric.mf: take encoding argument
13173         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
13175         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
13176         use.
13178         * scm/encoding.scm (read-encoding-file): use symbol for glyph
13179         name.
13181 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
13183         * input/test/title-markup.ly: Set inputencoding.
13185         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
13187         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
13189         * scm/encoding.scm (get-coding-filename, get-coding-command): New
13190         function.
13191         (coding-alist): Also hold filename, command.
13192         (read-encoding-file): Return symbols.
13194 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13196         * scm/output-tex.scm: remove fontify; text and char take a font
13197         argument.
13199         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
13201         * lily/scaled-font-metric.cc (text_dimension): init
13202         coding_{permutation,table}_ too 
13203         (LY_DEFINE): ly:font-encoding, new function return
13205         * lily/paper-def.cc (find_scaled_font): take input coding from
13206         inputcoding paper var.
13208         * lily/performance.cc (output): remap modulo 16.
13210         * lily/text-item.cc (interpret_markup): whoops, variable
13211         shadowing fixed.
13213 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
13215         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
13216         symbols, not symbols to strings.
13218         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
13219         symbols, not symbols to strings.
13221 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13223         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
13224         (ly:kpathsea-gulp-file): New function.
13226         * scm/encoding.scm (read-encoding-file): Use it.
13228 2004-04-06  Werner Lemberg  <wl@gnu.org>
13230         * scm/encoding.scm (coding-alist): Fix typo.
13232 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13234         * lily/scaled-font-metric.cc (text_dimension): move function from
13235         Font_metric
13236         (make_scaled_font_metric): init coding_scheme_ to TeX
13237         (text_dimension): use get-coding-vector for non TeX coding_scheme_
13239         * lily/include/scaled-font-metric.hh (struct
13240         Modified_font_metric): rename from Scaled_font_metric
13242         * scm/encoding.scm (read-encoding-file): split up large function,
13243         leave caching to (delay)
13245         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
13247 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
13249         * lily/my-lily-lexer.cc (set_encoding): New method.
13251         * lily/lexer.ll: Grok \encoding.
13253         * lily/font-metric.cc (get_encoded_index): New function.
13255         * lily/include/font-metric.hh (coding_scheme): New method.
13257         * scm/encoding.scm: New file.
13259         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
13261 2004-04-05  Werner Lemberg  <wl@gnu.org>
13263         * Documentation/user/tutorial.itely: Revised (finished).
13265         * Documentation/user/macros.itexi (@separate): Removed.
13267 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13269         * scm/output-ps.scm (define-fonts): fix scaling.
13271         * lily/scaled-font-metric.cc (design_size): add function.
13273         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
13274         partial cut&paste of ly:font-magnification.
13276 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
13278         * scm/output-ps.scm (define-fonts):
13279         (fontify): Update.
13281 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13283         * po/fr.po: update. (backportme).
13285         * po/nl.po: update. (backportme). 
13287         * mf/feta-beugel.mf: document why design size is not fixed.
13289         * mf/feta-braces-a.mf: rename to stress that it's not design size.
13291 2004-04-04  Werner Lemberg  <wl@gnu.org>
13293         * Documentation/user/tutorial.itely: Revised (continued).
13295 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
13297         * po/nl.po: Update (backportme).
13299 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13301         * po/de.po: update. (backportme).
13303         * scm/output-tex.scm (font-command): use ly: functions to
13304         construct name.
13305         (define-fonts): don't use alist, just dump \font definitions.
13306         (font-load-command): calculate proper scaling by taking
13307         outputscale from paper argument.
13309         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
13310         expression.
13312         * lily/paper-outputter.cc (output_header): pass paper arg to
13313         define-fonts
13315         * lily/paper-def.cc (font_descriptions): dump list of
13316         Scaled_font_metrics
13317         (find_scaled_font): take Font_metric argument, store
13318         Scaled_font_metrics in hash-table containing (size ->
13319         Scaled_font_metrics) alist.
13320         (get_dimension): rename from get_realvar
13322         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
13323         ly:font-magnification, ly:font-name: new functions
13325 2004-04-03  Werner Lemberg  <wl@gnu.org>
13327         * Documentation/user/dedication.itely,
13328         Documentation/user/preface.itely,
13329         Documentation/user/introduction.itely,
13330         Documentation/user/tutorial.itely: Revised.
13331         Removing leading spaces which distorts output if info files are read
13332         with stand-alone info.
13333         Removing superfluous inter-word spaces which also distorts output
13334         for stand-alone info.
13335         Using ` and ' instead of `` and '' everywhere to improve
13336         legilibility with stand-alone info
13337         Using @samp for single-letter input items and data which contains
13338         spaces, @code for other things.
13340         * lily/grob-interface.cc: Adding copyright.
13341         (check_interfaces_for_property): Improve format of warning message.
13343 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13345         * lily/include/font-metric.hh (struct Font_metric): add
13346         design_size () method.
13348         * buildscripts/mf-to-table.py (base): add DesignSize comment.
13350         * lily/afm.cc (read_afm_file): read design size.
13352         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
13354         * scm/music-functions.scm (unfold-repeats): handle dots too.
13356 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13358         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
13359         (backportme)
13361 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13363         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
13364         lyric indent.  Revert melismaBusyProperties using \unset.
13366 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13368         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
13370         * lily/parser.yy (command_element): allow redefinition of |
13371         meaning.
13373         * lily/break-align-engraver.cc (acknowledge_grob): construct
13374         LeftEdge where the first cause for alignment is coming from.
13375         This makes \override Staff.LeftEdge work as expected.
13377         * lily/slur-performer.cc (Slur_performer): add inits
13379         * lily/beam-performer.cc (Beam_performer): add inits
13381 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
13383         * VERSION (PACKAGE_NAME): release 2.2.0
13385 #Local variables:
13386 #coding: utf-8
13387 #End: