(print): new file. Set limits to
[lilypond.git] / ChangeLog
blob64392910a035a538a6d26e94cc4f54198901e918
1 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3         * lily/note-head.cc: remove ledger line handling.
5         * lily/ambitus.cc (print): strip away accidental / note head code,
6         and associated properties.
8         * lily/ambitus-engraver.cc (create_ambitus): change name to
9         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
10         other ambitus parts.
11         (create_ambitus): group grobs in Ambitus grouping object. 
13         * lily/include/pitch-interval.hh (Pitch>): new file.
15         * lily/pitch-interval.cc (add_point): new file.
17         * lily/ledger-line-engraver.cc: new file.
19         * lily/ledger-line-spanner.cc (print): new file. Set limits to
20         ledger line length to avoid clashes.
22 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
24         * Documentation/user/invoking.itexi (Invoking lilypond): remove
25         deprecated options
27 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
29         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
30         to command line option: fast=1 (default on).
32         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
33         This brings SCons run-time on up-to-date tree down from 48s with
34         only checksums, to 34s without 2day checksums, to 14s (make needs
35         4 seconds).
36         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
37         necessary.
39 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
41         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
42         (score_extra_encompass): process scripts at edges too, by checking
43         control points directly. 
45 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
47         * po/nl.po: Update.
49         * lily/main.cc: Fix ly:option-usage help.
51         * input/regression/slur-script.ly: More collision tests.
53         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
55 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
57         * VERSION: release 2.3.7
59         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
60         files.
62         * Documentation/user/notation.itely (Slurs): document ^ and _ for
63         slurs.
65         * input/regression/slur-script.ly: new file.
67         * lily/accidental-engraver.cc (process_acknowledged_grobs):
68         make accidental appear to come from note head engraver.
70         * lily/slur-quanting.cc: new file.
71         (score_extra_encompass): new function. Avoid scripts and
72         accidentals
74 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
76         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
77         This greatly reduces the number of files that get recompiled
78         after touching config.hh.
80         * config.hh.in: Remove GUILE_*_VERSION.
82         * lily/new-slur.cc: Resolve conflicts.
84         * lily/stem-engraver.cc (make_stem): New method.
86         * lily/include/script-interface.hh:
87         * lily/script-interface.cc: New file.
89         * lily/include/script.hh:
90         * lily/script.cc: Remove.
92         * lily/music.cc (duration_log): New method.
94         * lily/script.cc (struct Skript): Remove.
96         * lily/new-slur.cc (get_base_attachments): Try at articulations.
97         Lots of coding cleanups (Stom).
99 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
101         * lily/new-slur.cc (avoid_staff_line): new function: avoid
102         collisions with staff lines.
104         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
105         global_path
107         * scm/define-grobs.scm (all-grob-descriptions): set ratio
108         .25. This flattens short slurs.
110         * lily/new-slur.cc (enumerate_attachments): move X of attachment
111         points for tilted slurs.
113         * input/regression/slur-tilt.ly: new file.
115         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
116         stems of 16th graces too.
118         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
119         quant penalty dependent on how much the line is in the gap.
121         * input/regression/grace-stem-length.ly: new file.
123         * lily/beam-quanting.cc (score_forbidden_quants): remove
124         interquant check. The penalty of 1000 is much too harsh, and the
125         inter case should be caught by check-staff-line-in-gap check.
127         * lily/scm-option.cc: move debug-beam to \paper.
129         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
130         .txt files to appease makeinfo.
132         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
133         remove texttagline.
134         
135         * lily/new-slur.cc: cleanup, split in functions.
137         * lily/parser.yy (chord_body_element): allow octave-check = inside
138         chord body. 
140         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
142         * lily/stem.cc (height): call Beam::after_line_breaking().
144         * lily/rest-collision.cc (force_shift_callback): only call shift
145         for columns containing rests.
147         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
149         * input/regression/font-postscript.ly: invoke afm2tfm. 
151 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
153         * mf/SConscript: Build map files.
155         * SConstruct: Rename $out to out-www in web.
157 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
159         * SConstruct (web_kluts): Have make web build in out-www.  Not.
161 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
163         * Documentation/user/music-glossary.tely (Top): add fragment to
164         pertinent @lilypond entries.
166         * scm/define-grobs.scm: switch on new-slur by default.
168         * lily/scm-option.cc: symbol != string.
170         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
171         really work yet.
172         (set_end_points): make X coord of attachment dependent on  Y.
173         (score_encompass): add edges too.
175 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
177         * lily/stem.cc (get_beaming): new function.
179         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
180         for fragment snippets. This fixes inclusion of toplevel-music
181         examples (such as new-slur.ly)
183 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
185         * scripts/lilypond-book.py: Remove second import of stat.
187         * More SCons cleanups.
189         * Documentation/bibliography/computer-notation.bib (note): Remove
190         extraneous closing brace.
192 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
194         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
195         stat calls.
197         * Documentation/bibliography/SConscript (bibs): failed try to get
198         bib2html find html-long.bst.
200         * buildscripts/bib2html.py (stat): fail if bibtex fails.
202         * make/stepmake.make: use usescons for using scons. 
204 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
206         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
207         for lilypondend.  Import stat (huh?).
209 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
211         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
212         bypass dvi. 
214         * input/regression/font-postscript.ly: new file. 
216         * scm/framework-ps.scm (load-fonts): load pfb files too.
218         * lily/pfb.cc (pfb2pfa): new file.
220 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
222         * scripts/lilypond-book.py (PREAMBLE_LY): set
223         toplevel-music-handler too.
225 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
227         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
228         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
230         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
232         * python/SConscript:
233         * python/vim:
234         * input/mutopia/*SConscript: New file.
236         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
238         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
239         fixes web build.
241         * make/stepmake.make (scons): re-route to SCONS if user has been
242         running scons in this tree.
244         * SConstruct (config_vars): Add CPPDEFINES.
245         (env): Set checksums type to "content".
246         (save_config_cache): Do not exit after configuring when using
247         checksums (the default) instead of timestamps.
249 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
251         * SConstruct: Further development.
253         * input/test/SConscript: 
254         * input/template/SConscript: 
255         * input/regression/SConscript: 
256         * Documentation/bibliography/SConscript:
257         * Documentation/bibliography/index.html.in: New file.
259         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
260         generation.
262         * buildscripts/builder.py: Add new builders.
264         * make/stepmake.make: 
265         * stepmake/stepmake/*.make: 
266         * configure.in:
267         * lily/*:
268         * flower*: Use config.hh (Was config.h).
270         * scm/encoding.scm (get-coding): Print friendly error message when
271         no encoding is found, rather than crashing.
273 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
275         * lily/new-slur.cc (score_slopes): strong sloping score only when
276         stems point in same dir. 
278 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
280         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
281         for beam start.
283         * lily/parser.yy (context_prop_spec): check grob name for
284         alphanumericness..
286         * lily/lyric-engraver.cc: creates LyricText objects
288 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
290         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
292 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
294         * SConstruct: Configure only pristine build tree or on user
295         request.  Cleanups.  Add Documentation/topdocs to subdirs.
296         Use checksums instead of timestamps.
297         (CheckYYCurrentBuffer): Return result.
299         * Documentation/topdocs/SConscript: New file.
301 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
303         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
305         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
306         scm_from_int instead.
308 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
310         * SConstruct: Updates.  Add targets: tar, dist, release.
312 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
314         * input/mutopia-header.ly: Generate output.
316         * SConstruct:
317         * buildscripts/builder.py:
318         * Documentation/user/SConscript: SCons fixes.
320 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
322         * lily/new-slur.cc (class New_slur): new file. Score based slur
323         computations.
325 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
327         * mf/SConscript: Remove Builders.
329         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
331         * input/SConscript: 
332         * Documentation/user/SConscript: New file.
334 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
336         * Documentation/topdocs/NEWS.texi (Top): add note about new
337         emacs electric-|
339         * scm/*.scm: adapt ly:warn calls.
341         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
343         * lily/repeat-acknowledge-engraver.cc (process_music): look at
344         main timing, not grace timing. Fixes volta-repeat-grace.
346         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
347         remove ly:kpathsea-gulp-file.
349         * scm/translation-functions.scm (format-metronome-markup): make
350         note smaller, align to bottom.
352         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
354         * lily/metronome-engraver.cc (stop_translation_timestep): attach
355         metronome to musical column. Don't ack time sigs or bar lines.
357 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
359         * THANKS: sort, add David. Kristof contributed code, he is a
360         contributor.
362 2004-07-09  David Svoboda      <svoboda@cmu.edu>
364         * elisp/lilypond-mode.el,
365         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
366         count beats between last measure stop | and point in emacs.
367         
368 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
370         * tex/GNUmakefile (TEX_FILES): don't dist
371         music-drawing-routines.ps, latin1.enc 
373         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
374         --no-pdf, --pdftex
375         (copyright): add --latex option
376         (ic_p.make_include_option): use direct PS as default.
378         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
380         * input/regression/beam-concave.ly (rossFourBeams): add cases from Ross
382         * scm/script.scm (default-script-alist): marcato should follow
383         into staff
384         
385 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
387         * buildscripts/builder.py:
388         
389         * Documentation/SConscript (outdir): New file.  Add *list.ly
390         dependencies.  Fixes PDF doc build.
392 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
394         * SConstruct: Add Tar target (incomplete), fix install issues, fix
395         run from build-dir.
397         * ly/SConscript:
398         * scm/SConscript: New file.
400         * lily/main.cc (dir_info): Print variables in sh format.
402         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
404         * mf/SConscript: Update multiple target rules.
406         * SConstruct (assert_version): Add.
408 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
410         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
412 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
414         * buildscripts/mf-to-table.py: Do not try to open ''.
416         * mf/SConscript: New file.
418 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
420         * scm/fret-diagrams.scm : Convert many properties to constants,
421         reducing the pollution of the property namespace.
423         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
424         unnecessary properties for fret-diagram
426         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
427         for interface
429 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
431         * SConstruct: Update.
433 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
435         * input/regression/beam-quant-standard.ly (seconds): print desired
436         quants when failing.
438 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
440         * SConstruct:
441         * flower/SConscript:
442         * lily/SConscript: New file.
444 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
446         * scm/define-grob-properties.scm (all-user-grob-properties): Add
447         descriptions for all fret-diagram properties.
449         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
450         fret-diagram interface code
452 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
454         * ly/book-paper-defaults.ly: set default encoding to ec.
456         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
457         installed.
459         * tex/latin1.enc: new file, from a2ps. 
461 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
463         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
464         add a faint, green border line.
466         * Documentation/index.html.in: drop <table>, add a faint border line.
468 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
470         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
472         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
474 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
476         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
478         * scm/output-tex.scm (white-text): Add scale parameter to allow font scaling
480         * scm/stencil.scm (fontify-text-white) : Adjust to better center, properly
481         scale white text
483         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
484         position for numbered dots so dot will touch fret.
485         (various routines): move to font-metric interface, rather than
486         name, size interface.  Clean up comments.
488         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
489         size and offset to better center white text.
491 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
493         * ChangeLog: Remove pre-2.1 changes.
495         * Documentation/misc/ChangeLog-2.1: New file.
497         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
498         from ChangeLog.
500 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
502         * input/test/chords-below-volta-bracket.ly,
503         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
505 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
507         * VERSION: release 2.3.6
509         * input/regression/beam-quant-standard.ly: new file: test standard
510         beam quants.
512         * scm/beam.scm (check-quant-callbacks): new function
513         (check-beam-quant): new function: check whether current beam
514         quants match argument.
516         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
517         forbidden quant for sitting (upstem)/hanging (downstem) on outer
518         staffline line.
520 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
522         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
523         functions.
525         * lily/note-collision.cc (do_shifts): align colliding notes to
526         their leftmost note.
528         * input/regression/collision-alignment.ly: new file.
530         * ly/init.ly: don't print gc stats.
532         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
533         extra newline
535         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
536         for dimensions. This fixes ottava-remove-empty-staff.ly
538         * input/regression/lyrics-tenor-clef.ly: new file.
540         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
541         cyclic parents when two axis-group-engravers are
542         present. Fixes: crash-axis-group-engraver.ly. 
543         
544         * input/test/volta-chord-names.ly: new file.
546         * scm/define-context-properties.scm
547         (all-user-translation-properties): change voltaOnThisStaff
548         definition. 
550         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
551         if necessary.
553         * lily/volta-bracket.cc (print): handle volta brackets without
554         bars. 
556 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
558         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
559         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
561 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
563         * scm/output-gnome.scm: updated instructions for running gnome
564         backend
566 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
568         * scm/fret-diagrams.scm (draw-dots): default values for dot size
569         and dot-position now depend on finger-code value; in-dot makes
570         dots larger and centered.
571         (draw-barre): added straight-barre indicator option
572         (draw-dots): made fontify-text-white work.
574         * music-drawing-routines.ps: added /draw_white_text
576         * scm/output-tex.scm:  added white-text
578         * scm/output-ps.scm:  added white-text
580         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
581         list of stencil expressions
583         * scm/stencil.scm: Added fontify-text-white
585 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
587         * input/regression/+.ly: use @unnumbered section.
589 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
591         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
592         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
594 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
596         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
598 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
600         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
601         was causing an error. (was not actually commited in 2004-06-20)
603         * input/regression/lily-in-scheme.ly (withPaddingC): does not
604         breaks anymore
606 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
608         * VERSION: 2.3.5 released.
609         
610         * lily/my-lily-parser.cc (parse_string): switch module too.
612 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
614         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
615         ec-fonts-mftraced to running requirements.
617 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
619         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
620         assignments don't reach the original file.
622         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
623         exists
625 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
627         * scm/output-gnome.scm: 
628         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
630         * debian/: Apply Debian patch (Anthony Fok).
632 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
634         * Documentation/user/music-glossary.tely: fix titling; @top is already
635         an @unnumbered @chapter.
637 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
639         * debian/GNUmakefile (EXTRA_DIST_FILES):
640         (CONF_FILES): update file list.
642         * lily/stencil.cc (interpret_stencil_expression): bugfix.
644 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
646         * debian/: Remove cruft (requested Anthony Fok.)
648         * buildscripts/guile-gnome.sh: Build without gcc libtool version
649         juggling.
651         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
652         Add popup menu with grob properties.
654         * lily/grob-scheme.cc (ly:grob-properties):
655         (ly:grob-basic-properties): New function.
657         * lily/stencil.cc (interpret_stencil_expression): Comment-out
658         "no-origin" call.  Fixes -fps output.
660         * scm/output-ps.scm (no-origin): Add dummy implementation.
662         * scm/output-gnome.scm (define-origin): Remove
663         (grob-cause): Add.
665         * scm/output-ps.scm (scm):
666         * scm/output-tex.scm (scm): Remove define-origin from exports list.
667         (define-origin): Remove.
669         * scm/output-gnome.scm (define-origin): 
671         * scm/lily.scm (ly:all-output-backend-commands): Remove
672         define-origin.  Add grob-cause.
674 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
676         * buildscripts/lilypond-words.py: add ly/portugues.ly.
678 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
680         * Documentation/user/GNUmakefile:
681         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
682         --include-css=.../texinfo.css; command includes css into the html.
684         * Documentation/texinfo.css: add file.
685         define <hr> as black and thin.            
687 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
689         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
690         stencil expression. Junk define-origin.
692         * lily/my-lily-parser.cc (parse_string): init parser variable when
693         lexer_ is set, ie. in parse_string and parse_file.
695         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
696         ly:score-bookify.
698         * scm/lily.scm (collect-scores-for-book): new function.
700         * ly/init.ly: print collected scores/musics.
702         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
703         scope, not in lily module.
705         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
707         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
708         encapsulate gtk/pango tests.
710         * po/tr.po: Turkish translation.
712 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
714         * input/regression/lily-in-scheme.ly: regression test for #{
715         ... #} syntax
717         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
718         was causing an error.
720         * Documentation/user/programming-interface.itely (Using LilyPond
721         syntax inside Scheme): documentation for #{ ... #} syntax.
723 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
725         * Documentation/index.html.in: use black thin <hr>.
727         * buildscripts/mutopia-index.py: use thin black <hr>.
729 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
731         * scm/fret-diagrams.scm: Use UNIX style line endings.
732         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
733         typo.  Fixes compile.
735         * scm/output-ps.scm (white-dot): Remove second incarnation.
737         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
739 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
741         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
742         single file error.
744         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
746 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
748         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
749         remove size as argument to fret-diagram interface;
750         improved white-circle dots for fret;
751         improved top-fret thick line/
753         * scm/output-ps.scm: added white-dot function
755         * scm/output-tex.scm: added white-dot function
757         * tex/music-drawing-routines.ps: added draw_white_dot function
759         * ps/music-drawing-routines.ps: added draw_white_dot function
761         * input/test/fret-diagram.ly: examples to show multiple
762         functions and multiple interfaces
764 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
766         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
767         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
769         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
770         conflict.  Have I told you lately how much I love autotools?
772 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
774         * lily/lily-guile.cc: 
775         * lily/pangofc-afm-decoder.cc:
776         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
777         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
779         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
780         developers.
782         * lily/paper-outputter.cc (file): New method.
783         (dump_string): Use it.
785         * scm/output-gnome.scm: Update with pango CVS info, lilylib
786         musing.
788         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
789         of them has a comma :-).
791         * scm/framework-gnome.scm: Add pango decoders.
793         * lily/include/pangofc-afm-decoder.hh: 
794         * lily/pangofc-afm-decoder.cc: New file.
796         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
798         * configure.in: Check for pango.
800         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
801         autoconf).
802         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
804         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
806 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
808         * Documentation/user/tutorial.itely (Integrating text and music):
809         fix grammar & punctuation.
811 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
813         * lily/: Stray janitorial cleanups.
815         * scm/lily.scm (ly:all-stencil-expressions):
816         * scm/lily.scm (ly:all-output-backend-commands): New function.
818         * scm/safe-lily.scm (safe-objects): Add them.
820         * scm/framework-gnome.scm (<gnome-outputter>): New class.
822         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
824 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
826         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
828 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
830         * scm/page-layout.scm (default-page-make-stencil): add
831         raggedbottom, raggedlastbottom.
833         * Documentation/user/changing-defaults.itely (Page layout): add doc.
835         * scm/framework-tex.scm (define-fonts): fix export of
836         papersize.
838         * lily/paper-book.cc (classic_output): strip suffixes from
839         framework functions.
841         * lily/tuplet-bracket.cc (before_line_breaking): do not return
842         SCM_UNDEFINED to Scheme.
844 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
846         * lily/book.cc: remove Book::to_stencil().
847         (process): whoops. Score::book_rendering returns vector, not list.
849         * scripts/convert-ly.py (conv): remove \notes.
850         apply to input examples.
852         * lily/paper-outputter.cc (output_stencil): don't use
853         smobify_self() but self_scm()
855         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
856         from smobify_self().
858         * lily/paper-book.cc (output): load framework module
859         scm_c_resolve_module().
861         * python/lilylib.py (exit): exit with argument i.
863 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
865         * scm/framework-gnome.scm (output-framework-gnome): Try loading
866         gnome modules from non-toplevel.
868         * lily/ly-module.cc (ly:import-module): Export to ly:.
870         * lily/paper-score.cc (process): Do not show progress newline.
872         * lily/paper-book.cc (output, classic_output): Show progess
873         newline after score.
875 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
877         * buildscripts/lilypond-words.py: add ly/vlaams.ly
879 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
881         * lily/score.cc (ly:run-translator): Do not crash on empty music
882         list.
884         * lily/book.cc (process): Do not render score when systems is empty.
886         * input/simple-song.ly: Down one octave.
888         * scm/output-gnome.scm: Remove script again; re-add modules fix
889         (CVS conflict resolve?)
891         * lily/stencil.cc (ly:interpret-stencil): Was:
892         interpret_stencil_expression.
894 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
896         * buildscripts/guile-gnome.sh: New file.
898         * scm/output-gnome.scm: White background, better window size, sane
899         canvas size.  Cleanups.
901 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
903         * VERSION: release 2.3.4
905         * Documentation/user/invoking.itexi (Invoking the lilypond
906         binary): document --safe.
908         * scm/output-gnome.scm: set PATH in script.
910         * scm/page-layout.scm (default-page-make-stencil): don't stretch
911         if there is too few systems on a page.
913         * lily/parser.yy (relative_music): start at middle C without pitch
914         argument.
916         * Documentation/user/changing-defaults.itely (Page layout): new node.
917         (Paper size): rename node
918         (Page breaking): new node.
919         (Titling): move from invoking.
920         (File structure): new node.
922         * lily/parser.yy (score_body): allow \header and music anywhere in
923         \score body.
925 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
927         * scm/lily.scm (ly:load): Remove page-breaking.scm.
929 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
931         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
933         * lily/include/paper-line.hh: rename to Paper_system.
935         * lily/include/paper-book.hh: doc class.
937         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
939         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
940         (plain-header): add instrument-name.
941         (default-page-make-stencil): bugfixes.
943         * lily/parser.yy (book_body): allow \header anywhere in \book{}
945         * lily/paper-book.cc: remove copyright & tagline. Remove
946         interactions with Page
948         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
949         here, 
950         (default-page-make-stencil): new function
951         (default-page-music-height): new function
952         (page-headfoot): new function
953         (ly:optimal-page-breaks): generate stencils directly from here
955         * scm/titling.scm: new file, group titling functions
957 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
959         * scm/output-gnome.scm: Handle multiple pages.
961         * scm/framework-gnome.scm: Do not load output-gnome.
962         (framework-gnome): Invoke output-gnome::header and
963         output-gnome::end-output as faked stencils.  Fixes experimental
964         gnome output.
966 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
968         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
969         octavation compatibility fixes. Backportme. 
971         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
972         pages.
973         (ly:optimal-page-breaks): combine-penalties: no shortcut for
974         negative. Now we handle negative penalties (ie. \pageBreak)
975         correctly.
977         * lily/system.cc (get_line): extract page-penalty from the left
978         bound.
980         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
982 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
984         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
986 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
988         * scm/output-gnome.scm: Update script.  Move development to
989         lilypond_2_3_2 branch for now.
991 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
993         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
994         negative penalties.
995         cleanups.
997         * Documentation/user/changing-defaults.itely (Creating contexts):
998         index entries
1000         * scm/page-breaking.scm (ly:optimal-page-breaks): new
1001         file. Rewrite function. 
1003         * lily/paper-book.cc (pages): new interface: page-breaking returns
1004         list of line-list.
1006         * lily/page.cc (Page): take lines argument.
1008         * scm/document-translation.scm (all-engravers-doc): link to user man
1010         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty iso. score.
1012         * Documentation/user/notation.itely (Relative octaves): typo.
1014         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
1016 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1018         * scm/output-gnome.scm: Update build script.
1020 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1022         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
1023         gnome backend.
1025         * scm/framework-gnome.scm: New file.
1027         * scm/lily.scm: Use it.
1029         * lily/paper-outputter.cc: Janitorial cleanups.
1030         (ly:outputter-dump-string): Remove unreachable statement.
1032         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
1033         (ice-9): Bugfix: Add srfi-1.
1035         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
1037 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1039         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
1040         in do_quit()
1042 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1044         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
1046 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1048         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1049         override of Beam::position-callbacks. Why would grace beams not be
1050         quantized? Fixes: weird-stem-size-grace. 
1052         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
1053         warning only once. Backportme.
1055         * lily/accidental-engraver.cc (number_accidentals_from_sig):
1056         bugfix, 2nd try. Backportme.
1058         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
1060 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1062         * Documentation/user/notation.itely (Instrument transpositions):
1063         Correct the name of the instrumentTransposition property.
1065 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1067         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
1069 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1071         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
1072         and postLilyPondExample are called when defined.
1074 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1076         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
1077         This fixes setting notenames with `\include "nederlands.ly" '
1079         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
1080         new function.
1082 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1084         * scm/page-layout.scm: don't do piece, it should be in score-title
1085         only.
1087         * lily/lexer.ll: lex \score separately.
1089         * lily/paper-book.cc: junk stencil2line.
1091         * lily/paper-line.cc (Paper_line): construct from Stencil
1092         directly. No futzing with the dimensions.
1094         * lily/include/paper-line.hh (class Paper_line): 
1096         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
1097         takes arbitrary number of arguments.
1099         * input/test/markup-score.ly (tuning): simplify example. 
1101 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1103         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
1105         * scm/define-markup-commands.scm (score): define score-markup
1107         * lily/parser.yy (markup): use score-markup.
1109         * lily/score.cc: add ly:score? 
1111 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
1113         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
1114         fret-parse-string so it prepares for calls to fret-diagram-verbose
1115         Changed display constants to props so they are available for
1116         \override.
1118 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1120         * VERSION: release 2.3.3
1122         * stepmake/stepmake/generic-vars.make: unset LANG.
1124         * input/regression/tuplet-nest.ly: bugfix.
1126         * lily/tie-performer.cc (stop_translation_timestep): reset
1127         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
1129         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
1130         clear repeat_ directly after setting stem_tremolo_. Fixes:
1131         tremolo-repeat.ly
1133         * input/regression/span-bar-break.ly: new file.
1135         * scm/define-grobs.scm (all-grob-descriptions): remove
1136         break-visibility from SpanBar. Fixes: piano-repeat.ly
1138 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1140         * python/lilylib.py (make_ps_images): only compute bbox when needed.
1142         * scripts/lilypond-book.py (process_snippets): use lily -f ps
1143         files for generating pngs. (failed experiment)
1145         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
1146         file with PFA fonts included.
1148         * lily/score.cc (default_rendering): put header in too.
1150         * lily/paper-line.cc (LY_DEFINE): change function to
1151         ly:paper-line-extent
1153         * scm/page-layout.scm (default-book-title): only add lines for
1154         non-nil fields.
1155         (default-score-title): idem.
1157         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
1159         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
1161         * lily/include/paper-book.hh (class Paper_book): remove height_
1162         member.
1164         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
1166         * lily/ly-module.cc (LY_DEFINE): bugfix.
1168         * lily/paper-book.cc (book_title): separate function for the book
1169         title.
1171         * scm/page-layout.scm (default-book-title): only account for
1172         markup fields.
1174         * scm/framework-ps.scm: new file. Move high level interface from
1175         output-ps.scm
1177         * scm/music-functions.scm (def-grace-function): move macros from
1178         ly/music-functions-init.ly
1180         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
1181         framework-tex.scm
1183         * scm/framework-tex.scm (dump-line): new file. High level
1184         interface for output (pages, systems, header). 
1186         * lily/include/page.hh (class Page): add is_last_ field.
1188         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
1190         * lily/paper-book.cc (split_string): new function
1191         (output): output multiple formats, i.e. --format=ps,tex
1193         * scm/output-ps.scm (output-scopes): dump variables directly.
1194         (define-fonts): rewrite for new interface
1196         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
1198         * lily/paper-outputter.cc (Paper_outputter): take format argument.
1200         * lily/main.cc (parse_argv): don't set extension for output.
1202         * lily/clef-engraver.cc (create_clef): remove
1203         Staff_symbol_referencer::set_position() call. 
1205 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1207         * ly/music-functions-init.ly (addlyrics): set the 'origin property
1208         with the location argument in music function definitions.
1210 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1212         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
1213         staffsymbol dependency.
1215         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
1216         cleanups.
1218         * lily/book.cc (process): return Paper_book
1219         (to_stencil): use Book::process().
1221         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
1222         header_ field. Store in $globalheader
1224         * lily/parser.yy (book_body): book header is initted to
1225         $globalheader.
1228 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1230         * input/test/fill-a4.ly: removed.
1232         * lily/parser.yy (output_def): push scope of parent_ Output_def
1233         too.
1235 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1237         * scm/output-gnome.scm: Update info.
1239 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1241         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
1243         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
1244         than 1 module.
1246         * lily/include/ly-module.hh (ly_use_module): rename is_module to
1247         ly_c_module_p.
1249         * scm/page-layout.scm (default-book-title): move Scheme titling
1250         functions to here.
1252         * lily/parser.yy (book_paper_block): remove scope too.
1254         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
1256         * lily/rest.cc: add direction to rest properties.
1258         * lily/include/output-def.hh: new file, move from
1259         music-output-def.hh
1261 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1263         * scm/output-gnome.scm: Describe feta-cork hack.
1265 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1267         * lily/include/book-paper-def.hh: derive from Output_def 
1269         * lily/include/paper-def.hh: move all functionality out of class.
1270         Junk header.
1272         * lily/include/music-output-def.hh: rename Music_output_def to
1273         Output_def.
1275         * input/wilhelmus.ly: only set space for Paper formatting. 
1277         * lily/include/midi-def.hh: remove file, remove class.
1278         Move functions to Music-output-def.
1280         * lily/music-output-def.cc (Music_output_def): remove separate
1281         translator table. Lookup translators in scope directly. This
1282         obviates Context suffix for context identifiers, i.e.
1284         \context {
1285           \Staff
1286           .. 
1287           }
1290         will work.
1293         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
1295         * Documentation/user/changing-defaults.itely (Horizontal spacing):
1296         document spacing override hack.
1298 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1300         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
1301         installation info.  Support point-and-click.  Add +/- zoom
1302         keybindings.
1304 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1306         * VERSION: 2.3.2 released
1308         * lily/parser.yy (book_body): set default bookpaper.
1310         * scm/output-tex.scm (header): kludge: hard code linewidth. 
1312         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
1314 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1316         * lily/score.cc (default_rendering): scale outputdef before
1317         starting.
1319 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1321         * scm/fret-diagrams.scm: Add header.
1323         * scm/output-gnome.scm: Hello world :-)
1325 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1327         * scripts/lilypond.py (run_dvips): only add papersize if present.
1329         * lily/accidental-engraver.cc (update_local_key_signature): new
1330         function, fold code from initialize() and process_music().
1331         (update_local_key_signature): use deep copy. This fixes one
1332         problem from custom-key-signatures.ly.
1333         (number_accidentals_from_sig): tighter check for
1334         accidental-too-old.
1336         * ly/engraver-init.ly: remove localKeySignature
1337         definition from ChoirStaff, StaffGroup, Score.
1339         * lily/percent-repeat-engraver.cc (try_music): add moments for
1340         barlines too. Fixes: skipbars-percent-repeat.ly.
1342 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1344         * lily/context-def.cc (filter_performers): don't go to cdrloc if
1345         skipping last pair. Fixes: crash-bar-number.
1347         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
1348         D. Sorensen)
1350         * input/test/fret-diagram.ly: new file.
1352         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
1353         (scale-paper): divide by scale.
1355 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1357         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
1358         case.
1360 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1362         * scm/stencil.scm (fontify-text): reinstate function
1364         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
1366         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
1368         * lily/parser.yy (book_paper_head): \bookpaper {} 
1370         * python/midi.c: remove config.h
1372 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1374         * scm/output-gnome.scm: Update.
1376 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1378         * scm/output-gnome.scm: New file.
1380         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
1382 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1384         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
1385         (find_scaled_font): move from Paper_def
1387 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1389         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
1390         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
1392         * po/fr.po: update po.
1394         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
1396         * lily/book-paper-def.cc (print_smob): new file.
1398 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
1400         * buildscripts/lilypond-words.py: search words also from
1401         music-functions-init.ly.
1403 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1405         * ly/music-functions-init.ly (def-music-function): new helper
1406         macro for defining music functions. \addlyrics \appoggiatura
1407         \acciaccatura \grace \partcombine \autochange \applycontext
1408         \applyoutput and \breathe are now defined here thanks to it.
1410         * lily/parser.yy: 
1411         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
1412         \grace \partcombine \autochange \applycontext \applyoutput and
1413         \breathe keywords removed from the parser.
1415         * lily/parser.yy: 
1416         * lily/music-function.cc (ly_make_music_function): 
1417         * lily/lexer.ll (music_function_type): added a case for 0-arg
1418         music functions.
1420 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1422         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
1423         refering to a music expression can be used in lily-inside-scheme:
1424         #{ $music #}
1426         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
1427         and ly:parser-define, and change ly:parser-parse-string in order
1428         to make #{ $music #} work.
1430         * scm/new-markup.scm (compile-markup-expression): when an argument
1431         is a string, use `make-simple-markup'.
1433 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1435         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
1437 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1439         * scripts/convert-ly.py (FatalConversionError.func): handle + in
1440         font-size. (backportme)
1442 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1444         * lily/paper-outputter.cc (output_stencil): dump font definitions
1445         before each stencil.
1447         * lily/include/paper-book.hh (struct Score_lines): new
1448         struct. Collect info per Paper-score.
1450         * lily/include/page.hh (class Page): to_stencil() returns Stencil
1451         everywhere.
1453         * lily/stencil.cc (find_expression_fonts): new function
1455         * lily/paper-outputter.cc (output_stencil): use
1456         interpret_stencil_expr
1458         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
1459         (interpret_stencil_expr): new function. Generic stencil
1460         interpretation.
1462         * lily/paper-def.cc (find_scaled_font): divide lookup
1463         magnification by outpuscale for non-virtual fontmetrics. This
1464         fixes ludicrously long font definitions for text
1465         fonts. (backportme)
1467         * lily/score-engraver.cc: remove
1468         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
1470 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1472         * input/test/markup-score.ly: Remove \notes.
1474         * lily/parser.yy (book_body): Grok Composite_music and \header.
1475         (markup): Push NOTES mode before score_block.
1477         * VERSION: release 2.3.1
1479         * mf/feta-klef.mf: 
1480         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
1482         * Documentation/user/programming-interface.itely: Use @emph (was: @em).
1484         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
1486 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1488         * scm/output-tex.scm (output-tex-string): tighten safe security.
1490         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
1492         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
1493         allowed ly functions.
1495         * lily/ly-module.cc (ly_module_define): only define variable if
1496         bound.
1497         (ly_make_anonymous_module): take safe option.
1499 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1501         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
1503 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1505         * input/regression/newaddlyrics.ly: Fix.
1507         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
1508         \score \notes.
1510 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
1512         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
1514 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1516         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
1518         * lily/paper-line.cc (Paper_line): don't store list of stencils,
1519         but convert to single Stencil immediately.
1521         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
1523 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1525         * scm/output-sodipodi.scm: Resurrect sodipodi output.
1527 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
1529         * elisp/lilypond-mode.el: Changed the way defaults are created for
1530         LilyPond-command-master.  LilyPond-mode will now check the
1531         timestamps of the files to see which command has to run next.
1533 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1535         * scm/bass-figure.scm (format-bass-figure): don't set
1536         number-markup for strings. This fixes string in bass
1537         figure. (backportme)
1539         * lily/parser.yy (bass_number): insert number-markup into figure
1540         definition.
1542         * scm/define-music-properties.scm (all-music-properties): make
1543         'figure a markup.
1545         * scripts/convert-ly.py (conv): \apply -> \applymusic
1547 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
1549         * elisp/lilypond-mode.el: changed the order of some commands
1550         ("Midi" after "2Midi"), use the user-defined
1551         LilyPond-command-default as default instead of "LilyPond"
1553         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
1554         to set the master file for the next command.
1556         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
1557         with font-lock-reference-face.
1559 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
1561         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
1563         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
1565 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1567         * ly/music-functions-init.ly (TODO): new file.
1569         * lily/parser.yy (Generic_prefix_music_scm): add more
1570         music_function symbols.
1571         (Prefix_composite_music): change \apply to music-function   
1573         * lily/include/music-function.hh: rename to music-function
1575 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1577         * lily/music-head.cc (LY_DEFINE): change order of args.
1579         * input/regression/music-head.ly (texidoc): new file.
1581         * lily/parser.yy (Generic_prefix_music): allow generic
1582         music-transformation functions. 
1584         * lily/include/music-head.hh (is_music_head): new file.
1586         * lily/music-head.cc (get_music_head_transform): new file.
1588 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1590         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
1591         empty extent. This fixes ottava brackets on rests. (backportme)
1593         * make/lilypond.redhat.spec.in (Group): ln png files for info.
1595         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
1597         * cygwin/lily-wins.py: update for the lily-wins.py script.
1599 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1601         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
1602         code. This will obviate typeset_grob () in the future.  The effect
1603         of this is that improperly written spanner handling will result in
1604         invalid spanner bounds.
1605         (announce_grob): add to elems_ from here
1606         (typeset_grob): comment out.  
1608         * lily/include/engraver.hh (make_spanner): new calling interface
1609         for make_{item,spanner}. This obviates most calls to
1610         announce_grob().
1612         * scm/music-functions.scm (set-accidental-style): use GrandStaff
1613         iso. PianoStaff for piano styles.
1615 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
1617         * Documentation/user/music-glossary.tely: add segno after d.s.
1619 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1621         * lily/include/audio-column.hh: remove unused variables.
1622         (patch by Michael Welsh Duggan)
1624         * flower/include/axes.hh (other_axis): inline Axes function
1625         (thanks to David Brandon).
1627 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1629         * cygwin/mknetrel: Install image links (backportme).
1631         * Documentation/user/GNUmakefile (local-install-info): Activate
1632         actual installing of image links (backportme).
1634 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1636         * Documentation/user/notation.itely (Measure repeats): Removed
1637         unnecessary (and confusing) \context Voice{.
1639 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1641         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
1643         * lily/page.cc (Page): Do not use ly_scheme_function for
1644         volatile/configurable variables (FIXME: better name).
1646         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
1647         get_scmvar).
1649 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1651         * scripts/convert-ly.py (FatalConversionError.subst): use
1652         \transposition.
1654 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1656         * lily/include/page.hh (class Page): Declare left_margin ().
1658         * lily/page.cc: Remove paper var caching.
1660 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1662         * Documentation/user/music-glossary.tely: Add name to @top node.
1663         Remove comment from @table definitions (workaround for makinfo
1664         bug).
1666         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
1667         ly:stencil-get-expr).  Update callers.
1668         (ly:stencil-align-to!):  Return stencil too.
1670         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
1671         stencil.  Remove looped line-based page output.
1672         (output_line): Use line stencil.  Remove looped stencil-based line
1673         output.
1675         * lily/page.cc (ly:page-paper-lines): New function.
1677         * input/test/markup-score.ly: New file.
1679         * scm/define-markup-commands.scm (stencil): New markup.
1681         * lily/book.cc (to_stencil): New method.
1683         * lily/parser.yy (markup): Use it to grok \score.
1685 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1687         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
1689         * lily/paper-book.cc (pages): Change signature.  Update callers.
1691         * lily/include/page.hh:
1692         * lily/page.cc: New file.
1694         * lily/paper-line.cc (to_stencil): New method.
1696         * lily/paper-outputter.cc (output_stencil): New method.
1698         * lily/paper-outputter.cc (output_line): Use them.
1700         * lily/warn.cc: Remove.
1702         * lily/my-lily-parser.cc (distill_inname): Remove.
1704         * flower/include/file-name.hh: 
1705         * flower/file-name.cc: New file.  Update users.
1707         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
1708         (find): New method of same name.
1710         * lily/my-lily-parser.cc (ly:parse-file): Use it.
1712         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
1713         constant error message.
1715 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
1717         * input/test/{blank-notes.ly,staff-container.ly}: typos.
1719 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1721         * Documentation/user/music-glossary.tely: @table @strong' replaced
1722         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
1723         (backportme).
1725 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1727         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
1729         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
1730         #{ lily music expression #} that returns an equivalent scheme
1731         music expression by parsing the string.
1733 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1735         * lily/my-lily-parser.cc:
1736         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
1737         SCM string (foo.ly/toto.scm support).
1739 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
1741         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
1743 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1745         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
1747         * scripts/lilypond-book.py: LY code that includes \header is
1748         not assumed to be a fragment.
1750 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1752         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
1753         tremolo beams up.
1755         * lily/stem.cc (chord_start_y): Return 0 if no heads.
1756         (get_default_stem_end_position): No tremolo head juggling if no
1757         heads.  Fixes tremolo crash on rests (backportme).
1759         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
1761 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1763         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
1764         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
1766         * lily/lexer.ll: Allow \encoding in NOTES mode.
1768         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
1769         for lyrics, not for commands.
1771         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
1772         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
1774         * input/regression/newaddlyrics.ly: New file.
1776         * Documentation/topdocs/NEWS.texi: Update.
1778         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
1779         (Music_list): Allow embedded scm.
1781         * lily/score.cc (ly:score-bookify): New function.
1783         * lily/music.cc (ly:music-scorify): Idem.
1785         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
1786         (ly:parser-print-score): Idem.
1788         * scm/lily.scm (default-toplevel-book-handler): Idem.
1789         (default-toplevel-music-handler): Idem.
1790         (default-toplevel-score-handler): Idem.
1792         * ly/declarations-init.ly: Set default toplevel handlers.
1794         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
1796         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
1797         printer for score at toplevel.
1799 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1801         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
1802         Fix for simple case: input/simple-song.ly, more complex stuff
1803         does not work yet.
1805 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1807         * lily/parser.yy (Prefix_composite_music): split Composite_music
1808         in Prefix_composite_music and Grouped_music_list.
1809         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
1811 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1813         * scm/lily.scm (toplevel-expression): New define.
1815         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
1817         * lily/parser.yy (toplevel_expression): Use it.
1819         * lily/include/my-lily-parser.hh: Smobbify.
1821         * lily/my-lily-parser.cc (parse_string): New method.
1823         * lily/my-lily-parser.cc (ly:parse-string): New function.
1825         * Documentation/user/lilypond.tely: Add comment and workaround for
1826         gs-8.01 crash.  Fixes make web.
1828         Simplification of toplevel music.
1830         * lily/lexer.ll, lily/parser.yy:
1832         * In LYRICS mode, return LYRICS_STRING.  This fixes one
1833         shift/reduce problem.
1835         * Use NOTES mode at start of maininput.
1837         * Grok toplevel composite music expression, put in score and book.
1839         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
1841         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
1843         * input/simple.ly: New file.
1845         * input/simple-song.ly: Idem.
1847 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1849         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
1850         Sandberg.
1852 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1854         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
1856 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
1858         * input/regression/accidental-octave.ly: doc automatic showing
1859         of note names.
1861 2004-04-16  Heikki Junes <janneke@gnu.org>
1863         * po/fi.po: do "make po && make -C po po-update" at top-level,
1864         then "cp po/out/fi.po po/fi.po" and update fields.
1866         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
1868 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1870         * Documentation/user/introduction.itely (About this manual): Fix
1871         templates and regression urls (backportme).
1873 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1875         * ly/engraver-init.ly (Score:graceSettings): Increase
1876         beamed-lengths, especially for 32nd notes.
1878         * Documentation/user/notation.itely (Grace notes): Correct the
1879         syntax for add-grace-property example.
1881 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1883         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
1884         `Generated' tag.
1886         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
1887         Severely broken (the Debian package, at least).
1889 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1891         * lily/context.cc (find_create_context): assign to lvalue.
1893 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1895         * lily/include/translator.hh (class Translator): rename
1896         get_parent_context() to context () to avoid confusion.
1898         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
1900         * lily/lexer.ll: change is_string -> ly_c_string_p 
1902         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
1904         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
1906 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1908         * VERSION: release 2.3.0
1910         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
1912         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
1913         if nonempty.
1915         * lily/include/context.hh (class Context): make members protected.
1916         (children_contexts): new accessor function.
1918         * lily/include/translator.hh (class Translator): make
1919         daddy_context_ protected.
1920         (class Translator): clean up. 
1922         * lily/include/context.hh (class Context): make daddy_context_
1923         private.
1925         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
1926         higher for finding Voice. (backportme)  
1928         * lily/include/context.hh (class Context): remove
1929         find_context_below() as a method.
1931         * Documentation/user/notation.itely (The Lyrics context): add note
1932         about manual durations
1934         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
1935         encoding.
1937         * scm/output-tex.scm (text): dump \inputencoding{} for text.
1939 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1941         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
1942         \usepackage{inputenc}
1944         * lily/paper-book.cc (classic_output): don't advance Offset for
1945         TeX output.
1947         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
1948         ec-sauter.map in rules
1950         * mf/ecb.mf (font_identifier): new file, based on ecbx
1952         * mf/ecb10.mf (gensize): new file.
1954         * Documentation/topdocs/NEWS.texi (Top): document some more new
1955         features.
1957         * ly/declarations-init.ly: run convert-ly
1959         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
1960         from input-file-results. Remove input-file-results.* 
1962 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1964         * scm/output-ps.scm (font-command): Fix, again.
1966         * input/test/title-markup.ly: Add \noPagebreak test.
1968         * lily/score-engraver.cc (try_music): Bugfix.
1970 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
1972         * lily/main.cc (main_with_guile): excise dependency options -M and
1973         --dep-prefix
1975         * lily/input-file-results.cc: excise Makefile dependency code
1977         * Documentation/user/invoking.itexi (Invoking the lilypond
1978         binary): remove dep doco
1980         * lily/main.cc (main_with_guile): call lilypond-main
1982         * scm/lily.scm (lilypond-main): new function: handle multiple files.
1984         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
1985         exception.
1987         * lily/my-lily-parser.cc: remove paper_description function
1989         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
1990         new function.
1992         * lily/main.cc: remove global_score_count.
1994         * lily/book.cc (process): don't take header from global_input_file.
1996         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
1998         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
2000         * lily/music-output-def.cc (LY_DEFINE): new function
2001         ly_output_description. This function does the bulk for  setting,
2002         parsing and breaking down of an input file.
2004         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
2005         anonymous modules globally. Let's hope they get GCd
2007         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
2009 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2011         * scm/output-ps.scm (header): Papersize from paper.
2013         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
2014         for classic output.
2016         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
2017         lilypondclassic is defined.
2018         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
2020         * input/regression/between-systems.ly: Remove.
2022         * python/lilylib.py (get_bbox): Fix regular expression
2023         for bounding box.
2025         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
2027         * scm/output-tex.scm (stop-page): Use it.
2029         * scm/output-ps.scm (define-fonts): Bugfix.
2031         * lily/grob.cc: Add penalty to interface.
2033         * lily/include/paper-line.hh (class Paper_line): New member
2034         var penalty_.
2036         * lily/system.cc (get_line): Initialise Paper_line with
2037         page-penalty's from original grobs.
2039         * scm/define-music-properties.scm (all-music-properties): Add
2040         page-penalty.
2042         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
2044         * lily/score-engraver.cc (try_music): Handle page-penalty.
2046         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
2048 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2050         * ly/declarations-init.ly (melismaEnd): typo
2052         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
2054         * scm/output-ps.scm (text): split string into spaces, use moveto
2055         for setting space. 
2057 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2059         * po/nl.po: Update.
2061         * scm/font.scm (add-cmr-fonts): Typo.
2063 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2065         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
2066         font-encoding.
2068         * scm/define-grobs.scm (all-grob-descriptions): idem.
2070         * lily/time-signature.cc (numbered_time_signature): idem.
2072         * scm/font.scm (add-cmr-fonts): use real encoding names for
2073         font-encoding.
2075 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2077         * lily/paper-book.cc (classic_output): 
2078         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
2079         Fixes classic output.
2080         (lilypondstart):
2081         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
2082         kludge.
2084         * scripts/old-lilypond-book.py: Remove.
2086         Page layout for SCOREs enclosed in a BOOK:
2088         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
2089         layout tweaking.
2091         * input/les-nereides.ly (theScore): Add \book.
2093         * input/test/title-markup.ly: Add \book.
2095         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
2096         only if 'verbose.
2098         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
2100         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
2102         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
2103         * scm/output-tex.scm (start-system): Update for page layout by
2104         LilyPond.
2106         * scm/output-ps.scm (start-system): Previously (new-start-system).
2108         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
2109         passed to define-fonts.
2111         * lily/paper-column.cc: 
2112         * lily/system.cc (get_line):
2113         * ly/property-init.ly (newpage): 
2114         * scm/define-grob-properties.scm:
2115         * scm/output-ps.scm: 
2116         * scm/output-tex.scm: Remove between-system-string kludge.
2118         * scm/output-ps.scm (define-fonts, font-command,
2119         font-load-encoding): Handle ENCODING = #f.
2121         * scm/output-tex.scm (output-scopes): Check if variable is bound.
2123         * scm/define-markup-commands.scm (fill-line): Use
2124         make-simple-markup (WAS: unexisting make-word-markup).
2126         * lily/text-item.cc (interpret_markup): Bugfix, transpose
2127         ENCODING, MARKUP parameters for interpret_string.
2129         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
2131         * lily/score.cc (book_rendering): New method.
2132         (default_rendering): Create Paper_book helper locally, dump
2133         output.
2135         * lily/my-lily-lexer.cc (the_key_tab): Add book.
2137         * lily/parser.yy: Handle \book.
2139         * lily/include/book.hh: 
2140         * lily/book.cc: New file.
2142 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2144         * lily/text-item.cc (interpret_string): new file, select font with
2145         encoding.
2147         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
2149         * scm/define-markup-commands.scm (encoded-simple): new markup command.
2151         * lily/parser.yy (markup): take encoding from lexer.
2153 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2155         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
2157         * scm/output-ps.scm: Remove some cruft.
2159 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2161         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
2163         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
2165 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2167         * scm/font.scm (add-century-schoolbook-fonts):
2168         (make-century-schoolbook-tree): New function.
2170         * input/test/title-markup.ly: Use Century Schoolbook font.
2172 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2174         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
2175         to Erik Sandberg) 
2177         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
2179         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
2181         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
2183         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
2185 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2187         * scm/part-combiner.scm (determine-split-list): bugfix: if no
2188         solo-state (at end of solo), we can set the solo status
2189         too. (backportme.)
2191         * input/regression/part-combine-solo-end.ly: new file.
2193 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2195         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
2196         flavour abc files.  Really ignore unknown keys (backportme).
2198 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2200         * lily/scaled-font-metric.cc (text_dimension): only multiply with
2201         magnification_ when looking up in orig_.
2203         * scm/output-tex.scm (text): switch off char-mapping.
2205         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
2206         because AFM's encoding field cannot have spaces.
2208 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2210         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
2212 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2214         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
2216         * mf/cmr.enc: new file, without hi-bit ascii info. 
2218         * lily/bezier-bow.cc (slur_shape): make indent dependent on
2219         width. This removes the 'hook' at the end of a long slur.
2221         * buildscripts/mf-to-table.py (parse_logfile): don't append
2222         encoding to fontname.
2224 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2226         * scm/output-ps.scm (define-fonts): Load .enc only once.
2228         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
2229         too.
2231 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2233         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
2234         encoding field.
2236         * lily/stencil-scheme.cc: remove ly:fontify-atom 
2238         * ly/portuges.ly (pitchnames): new file.
2240         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
2241         Michael Welsh Duggan
2243         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
2245         * ly/nederlands.ly: add comment about digits.
2247         * lily/scaled-font-metric.cc (derived_mark): idem.
2249         * scm/encoding.scm (make-encoding-mapping): change permutation to
2250         mapping.
2252         * lily/scaled-font-metric.cc (derived_mark): is a const method.
2253         (Modified_font_metric): make alist for coding_description_
2254         (LY_DEFINE): remove coding-name.
2256         * scm/output-tex.scm (text): remove debugging code.
2258         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
2260         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
2261         from infile.
2263         * mf/feta-generic.mf: move fet_beginfont into generic code.
2264         use fetaMusic (without space) as encoding
2266         * mf/feta-autometric.mf: take encoding argument
2268         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
2270         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
2271         use.
2273         * scm/encoding.scm (read-encoding-file): use symbol for glyph
2274         name.
2276 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2278         * input/test/title-markup.ly: Set inputencoding.
2280         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
2282         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
2284         * scm/encoding.scm (get-coding-filename, get-coding-command): New
2285         function.
2286         (coding-alist): Also hold filename, command.
2287         (read-encoding-file): Return symbols.
2289 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2291         * scm/output-tex.scm: remove fontify; text and char take a font
2292         argument.
2294         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
2296         * lily/scaled-font-metric.cc (text_dimension): init
2297         coding_{permutation,table}_ too 
2298         (LY_DEFINE): ly:font-encoding, new function return
2300         * lily/paper-def.cc (find_scaled_font): take input coding from
2301         inputcoding paper var.
2303         * lily/performance.cc (output): remap modulo 16.
2305         * lily/text-item.cc (interpret_markup): whoops, variable
2306         shadowing fixed.
2308 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
2310         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
2311         symbols, not symbols to strings.
2313         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
2314         symbols, not symbols to strings.
2316 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2318         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
2319         (ly:kpathsea-gulp-file): New function.
2321         * scm/encoding.scm (read-encoding-file): Use it.
2323 2004-04-06  Werner Lemberg  <wl@gnu.org>
2325         * scm/encoding.scm (coding-alist): Fix typo.
2327 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2329         * lily/scaled-font-metric.cc (text_dimension): move function from
2330         Font_metric
2331         (make_scaled_font_metric): init coding_scheme_ to TeX
2332         (text_dimension): use get-coding-vector for non TeX coding_scheme_
2334         * lily/include/scaled-font-metric.hh (struct
2335         Modified_font_metric): rename from Scaled_font_metric
2337         * scm/encoding.scm (read-encoding-file): split up large function,
2338         leave caching to (delay)
2340         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
2342 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2344         * lily/my-lily-lexer.cc (set_encoding): New method.
2346         * lily/lexer.ll: Grok \encoding.
2348         * lily/font-metric.cc (get_encoded_index): New function.
2350         * lily/include/font-metric.hh (coding_scheme): New method.
2352         * scm/encoding.scm: New file.
2354         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
2356 2004-04-05  Werner Lemberg  <wl@gnu.org>
2358         * Documentation/user/tutorial.itely: Revised (finished).
2360         * Documentation/user/macros.itexi (@separate): Removed.
2362 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2364         * scm/output-ps.scm (define-fonts): fix scaling.
2366         * lily/scaled-font-metric.cc (design_size): add function.
2368         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
2369         partial cut&paste of ly:font-magnification.
2371 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2373         * scm/output-ps.scm (define-fonts):
2374         (fontify): Update.
2376 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2378         * po/fr.po: update. (backportme).
2380         * po/nl.po: update. (backportme). 
2382         * mf/feta-beugel.mf: document why design size is not fixed.
2384         * mf/feta-braces-a.mf: rename to stress that it's not design size.
2386 2004-04-04  Werner Lemberg  <wl@gnu.org>
2388         * Documentation/user/tutorial.itely: Revised (continued).
2390 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2392         * po/nl.po: Update (backportme).
2394 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2396         * po/de.po: update. (backportme).
2398         * scm/output-tex.scm (font-command): use ly: functions to
2399         construct name.
2400         (define-fonts): don't use alist, just dump \font definitions.
2401         (font-load-command): calculate proper scaling by taking
2402         outputscale from paper argument.
2404         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
2405         expression.
2407         * lily/paper-outputter.cc (output_header): pass paper arg to
2408         define-fonts
2410         * lily/paper-def.cc (font_descriptions): dump list of
2411         Scaled_font_metrics
2412         (find_scaled_font): take Font_metric argument, store
2413         Scaled_font_metrics in hash-table containing (size ->
2414         Scaled_font_metrics) alist.
2415         (get_dimension): rename from get_realvar
2417         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
2418         ly:font-magnification, ly:font-name: new functions
2420 2004-04-03  Werner Lemberg  <wl@gnu.org>
2422         * Documentation/user/dedication.itely,
2423         Documentation/user/preface.itely,
2424         Documentation/user/introduction.itely,
2425         Documentation/user/tutorial.itely: Revised.
2426         Removing leading spaces which distorts output if info files are read
2427         with stand-alone info.
2428         Removing superfluous inter-word spaces which also distorts output
2429         for stand-alone info.
2430         Using ` and ' instead of `` and '' everywhere to improve
2431         legilibility with stand-alone info
2432         Using @samp for single-letter input items and data which contains
2433         spaces, @code for other things.
2435         * lily/grob-interface.cc: Adding copyright.
2436         (check_interfaces_for_property): Improve format of warning message.
2438 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2440         * lily/include/font-metric.hh (struct Font_metric): add
2441         design_size () method.
2443         * buildscripts/mf-to-table.py (base): add DesignSize comment.
2445         * lily/afm.cc (read_afm_file): read design size.
2447         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
2449         * scm/music-functions.scm (unfold-repeats): handle dots too.
2451 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2453         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
2454         (backportme)
2456 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2458         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
2459         lyric indent.  Revert melismaBusyProperties using \unset.
2461 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2463         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
2465         * lily/parser.yy (command_element): allow redefinition of |
2466         meaning.
2468         * lily/break-align-engraver.cc (acknowledge_grob): construct
2469         LeftEdge where the first cause for alignment is coming from.
2470         This makes \override Staff.LeftEdge work as expected.
2472         * lily/slur-performer.cc (Slur_performer): add inits
2474         * lily/beam-performer.cc (Beam_performer): add inits
2476 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2478         * VERSION (PACKAGE_NAME): release 2.2.0