* scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
[lilypond.git] / ChangeLog
blobdbd9be457ca948780bc5ac7db917784ae8476322
1 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
4         compressmusic -> compressMusic.
6         * ly/music-functions-init.ly (oldaddlyrics): idem.
8         * lily/parser.yy: NewLyricCombineMusic ->
9         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
11 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
13         * ly/Welcome_to_LilyPond.ly: typo.
15 2005-05-24  Graham Percival  <gperlist@shaw.ca>
17         * Documentation/user/lilypond.tely: move changing-defaults to be
18         before global issues.
20         * Documentation/user/basic-notation.itely: move Transpose section
21         here from advanced/Other.
23         * Documentation/user/changing-defaults.itely,
24         advanced-notation.itely: move Fonts to advanced, edit.
26 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
28         * lily/parser.yy (bare_int): remove rule.  From now on, we require
29         # before negative integers. 
31 2005-05-23  Graham Percival  <gperlist@shaw.ca>
33         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
35         * Documentation/user/lilypond.tely: change Unified index to
36         LilyPond index.
38         * Documentation/user/advanced-notation.itely,
39         instrument-notation.itely: editing.
41 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
43         * scm/lily.scm (lilypond-all): Bugfix: return failed.
45         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
47 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
49         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
50         ly:port-move.  Needs to be stderr-specific on mingw.
51         Run fixcc.
53 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
55         * lily/general-scheme.cc (ly:port-move): Remove.
57         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
58         windows.
60         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
61         variables.  This eliminates the need for a gs.bat wrapper, which
62         opens a console.
64         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
65         * scm/lily.scm (running-from-gui?): 
66         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
67         artifact of not compiling with -mwindows.
69         * scm/editor.scm: Define PLATFORM.
71 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
73         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
74         can start to cut & paste lilypond-book fragments.  
76         * scm/define-music-types.scm (music-descriptions): remove
77         UntransposableMusic
79 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
81         * scm/output-ps.scm (glyph-string): remove / before CIDs.
83 2005-05-20  Graham Percival  <gperlist@shaw.ca>
85         * Documentation/user/instrument-notation.itely: remove *Engraver.
87         * Documentation/user/advanced-notation.itely: edit, rearrange.
89 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
91         * scm/output-ps.scm (glyph-string): take cid? argument. Use
92         findresource iso. findfont for CID CFF fonts.
94         * VERSION (PACKAGE_NAME): release 2.5.25
96         * ly/Welcome_to_LilyPond.ly: add  \version
98 2005-05-20  Graham Percival  <gperlist@shaw.ca>
100         * Documentation/user/programming-interface.itely: move
101         \displayMusic into its own section.
103         * Documentation/user/basic-notation.itely: finish editing.
105 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
107         * flower/file-path.cc (find): don't throw away file_name.dir, but
108         append to it. Fixes \include with directories.
110         * flower/include/file-path.hh (class File_path): don't derive from
111         Array<String>.
113         * flower/include/file-name.hh (class File_name): remove to_str0()
115         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
116         Hara_kiri_engraver in separate file.
118         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
119         translation went wrong. Fixes vertically translated slurs.
121 2005-05-19  Graham Percival  <gperlist@shaw.ca>
123         * Documentation/user/basic-notaton.itely: editing.
125 2005-05-18  Graham Percival  <gperlist@shaw.ca>
127         * Documentation/user/macros.itexi, basic-notation.itely:
128         add @commonprop (commonly used properties) macro.
130 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
132         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
134         * scripts/lilypond-book.py (invokes_lilypond): new function
135         (main): only run fontextract if invokes_lilypond() is true.
137         * lily/function-documentation.cc (ly_add_function_documentation):
138         duh, use !=
140         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
142         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
144         * scm/lily.scm (running-from-gui?): lowercase Darwin.
146         * lily/function-documentation.cc (ly_add_function_documentation):
147         use scm_hash_table_p() for checking.
149 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
151         * Documentation/user/advanced-notation.itely (Text scripts):
152         Change nonexisting @internalsref{Text markup} to @ref{Text
153         markup}.  Change @internalsref{Text script} to
154         @internalsref{TextScript}.
156         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
158 2005-05-17  Graham Percival  <gperlist@shaw.ca>
160         * Documentation/user/tutorial.itely, basic-notation.itely,
161         changing-defaults.itely: remove duplicate cindex entries
162         that appear on the same page.
164         * scm/define-grobs.scm: change default padding for TextSpanner.
166         * Documentation/topdocs/AUTHORS.texi: update email address.
168         * Documentation/user/global.itely: add info about \include.
170 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
172         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
173         when running-from-gui.
175         * scm/editor.scm (get-editor): Add platform defaults.
177         * scm/backend-library.scm (postscript->pdf): Typo.
179 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
181         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
183         * lily/font-config.cc (init_fontconfig): add warning about cache.
185 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
187         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
189 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
191         * lily/horizontal-bracket.cc (print): Take care of the direction
192         property so brackets above the stave point downwards. 
194         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
195         for HorizontalBracket so it doesn't end up within the stave.
197 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
199         * lily/GNUmakefile (default): Typo.
201         * scm/lily.scm (PLATFORM): Export.
203         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
204         load-font-via-GS, ttftool or fopencookie is broken on windows.
205         
206         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
207         -dSAFER, that is broken on windows.
209 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
211         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
212         for FlexLexer.h
214         * scripts/lilypond-invoke-editor.scm: remove stray -
216 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
218         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
219         Fixes deprecation warning.
221         * flower/include/string.icc (to_string): Only inline if
222         -DSTRING_UTILS_INLINED.
224         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
225         name.  Remove windows comment.
227         * scm/editor.scm (slashify): New function.
228         (get-editor-command): Use it.
229         (get-command-template): Do not alter editor command if
230         environment value includes `%(file)s' magic.
232         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
233         (dissect-uri): Use it.
234         (unquote-uri): Bugfix.
236 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
238         * scm/framework-ps.scm (write-preamble): add TTF rule.
240         * Documentation/topdocs/README.texi (Top): remove note about
241         xdelta.
243         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
244         requirement.
246         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
247         function. Figure out where FlexLexer.h lives
249         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
250         
251 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
253         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
254         with Windows root in file name.
256         * scm/backend-library.scm (ly:system): Only redirect output (using
257         system and shell, ugh) if /dev/null is writable.
259         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
260         windows icon.
262         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
263         on Mingw.
265         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
266         click.
268         * flower/file-path.cc (is_dir, is_file): New function.  Actually
269         use result of stat when available.
271         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
272         absolute file name and root.
274         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
276         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
278         * flower/file-name.cc (slashify): Bugfix, do substitute if no
279         slashes in file name.
281 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
283         * Documentation/user/preface.itely (Preface): Run
284         texinfo-all-menus-update.
286         * scm/editor.scm (get-editor-command): Bugfix: allow full
287         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
289         * Documentation/pictures/lilypond-48.xpm: New file.
291         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
293         * ly/Welcome_to_LilyPond.ly: New file.
295         * lily/main.cc (main): Only identify if we have a terminal.
297         * scm/backend-library.scm (postscript->png)
298         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
299         non-/bin/sh).
301 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
303         * Documentation/topdocs/AUTHORS.texi: polish, update.
305 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
307         * Documentation/user/preface.itely (Notes for version 2.6): new
308         notes for 2.6
310         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
311         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
312         is not fully contained" warnings.
314         * lily/slur-scoring.cc (get_bound_info): remove warning.
316         * lily/staff-symbol-engraver.cc (process_music): start initial
317         spanner in process_music(). This fixes overrides of StaffSymbol
318         properties.
320         * scm/framework-pdf.scm (Module): remove.
322         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
324         * lily/ambitus-engraver.cc: formatting cleanups.
326         * mf/feta-solfa.mf (Module): remove.
328         * ChangeLog: more details about contributions.
330 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
332         * lily/align-interface.cc (align_elements_to_extents): warn if
333         called too early. Fixes: disappearing-staff-lines.ly
335         * VERSION (PACKAGE_NAME): release 2.5.24
337 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
339         * stepmake/aclocal.m4: Typo.
341         * flower/string.cc (substitute): Take two strings or two
342         characters.  Update callers.
344 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
346         * flower/file-name.cc (File_name): Slashify.
348         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
350         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
352         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
354         * configure.in (gui_b): Use it.
356         * lily/lilypond.rc.in: New file.
358         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
360 2005-05-12  Graham Percival  <gperlist@shaw.ca>
362         * Documentation/user/advanced-notation.itely: edit of Text
363         section; clarify text scripts vs. text markup.
365 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
367         * lily/multi-measure-rest-engraver.cc
368         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
369         separation items on start. Fixes mm rests in start of score.
371         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
372         don't access StaffSymbol if not there.
373         Fixes: crash-staff-symbol-engraver.ly.
375         * lily/instrument-name-engraver.cc (class
376         Instrument_name_engraver): data member first_. Create
377         InstrumentName on start. 
379 2005-05-12  Graham Percival  <gperlist@shaw.ca>
381         * Documentation/user/instrument-notation.itely: add guitar
382         position.
384         * Documentation/user/introduction.itely,
385         Documentation/user/lilypond.tely,
386         Documentation/user/tutorial.itely: begin pruning
387         unused (duplicated) cindex entries and misc cleanup.
389 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
391         * input/test/volta-chord-names.ly: Bring the explanation up to
392         date.
394 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
396         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
397         Specify `@documentencoding utf-8' for html, ignore warnings.
399 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
401         * THANKS: Added bughunters.
403 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
405         * lily/main.cc: update help string for `lilypond -H'.
407         * po/fi.po: update.
408         
409 2005-05-10  Graham Percival  <gperlist@shaw.ca>
411         * Documentation/user/advanced-notation.itely: minor fixes.
413 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
415         * scm/editor.scm: New module.
417         * scm/lily.scm (gui-main): Use it.
419         * scm/framework-gnome.scm (spawn-editor): Use it.
421         * scripts/lilypond-invoke-editor.scm: Use it in new script.
423 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
425         * scm/framework-ps.scm (load-font-via-GS):  new function.
427         * lily/pango-font.cc (pango_item_string_stencil): add support for
428         CID keyed font.
430         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
432 2005-05-10  Graham Percival  <gperlist@shaw.ca>
434         * Documentation/user/basic-notation.itely: add @ref.
436         * Documentation/user/advanced-notation.itely: add example
437         of 5/8 beaming.
439 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
441         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
443         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
444         going through ps2pdf wrappers.
446 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
448         * Documentation/user/instrument-notation.itely: petrucci note
449         heads: updated docu
451         * input/regression/note-head-style.ly: updated regression test;
452         indentation fixes
454         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
455         heads as default
457         * mf/parmesan-heads.mf: minor editing; use musicological names
458         (rather than optical description) as note head names
460         * scm/output-lib.scm: complete petrucci heads
462 2005-05-09  Pal Benko  <benkop@freestart.hu>
464         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
465         heads, but bigger)
467 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
469         * lily/main.cc (main_with_guile): Remove no files check.
471         * lily/main.cc (ly:usage): Export to Scheme.
473         * scm/lily.scm (no-files-handler): New function.
475         * scm/lily.scm (lilypond-main): Use it.
477         * configure.in (gui_b): Add mbrtowc checking.
478         Resurrect [utf8/]wchar.h checking.
480 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
482         * Documentation/user/advanced-notation.itely (Metronome marks):
483         Add link to the program reference for MetronomeMark
485         * Documentation/user/lilypond-book.itely (An example of a
486         musicological document): Correct the example using psfonts 
488 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
490         * po/fi.po: update after a lesson how to update entries against
491         source.
492         
493         * po/TODO: document the lesson.
495 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
497         * configure.in (gui_b): remove wcrtomb checking.
499         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
500         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
502 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
504         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
505         keep Scheme expressions and strings unmodified when doing the
506         conversion to postfix notation for slurs and beams. Should
507         hopefully solve most related conversion problems. 
509         * Documentation/user/lilypond-book.itely : Clarify and correct how
510         to call dvips with -h psfonts.
512 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
514         * Documentation/user/instrument-notation.itely (Entering lyrics):
515         Typo.  Fixes build.
517 2005-05-09  Graham Percival  <gperlist@shaw.ca>
519         * Documentation/user/lilypond-book.itely: document PSFONTS file.
521         * Documentation/user/lilypond.tely, lilypond-book.itely,
522         tutorial.itely: change references to 2.5.x to 2.6.x.
524         * Documentation/user/instrument-notation.itely: clarified \addlyrics
525         vs \lyricmode.
527         * Documentation/user/invoking.itely: remove old info about
528         lilypond-profile.
530         * Documentation/topdocs/INSTALL.texi: remove old info about
531         lilypond-profile, add warning about needing international fonts
532         to build docs.
534 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
536         * lily/include/grob-info.hh (class Grob_info): make data member
537         private. Changes throughout.
539         * input/regression/alignment-order.ly: new file. 
541         * lily/vertical-align-engraver.cc (acknowledge_grob): read
542         alignAboveContext and alignBelowContext
544 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
546         * lily/pfb.cc (LY_DEFINE): add cast.
548         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
549         matches .otf
550         (write-preamble): warn about unknown fonts.
552         * lily/pfb.cc (Module): new function ly:otf->cff
554         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
555         (get_otf_table): new function.
557 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
559         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
560         iso. ps2png.
562 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
564         * po/fi.po: apply second round of update.
566 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
568         * scm/x11-color.scm (make-x11-color-handler): don't use
569         #\sp. Apparently doesn't work on all platforms. 
571 2005-05-06  Graham Percival  <gperlist@shaw.ca>
573         * Documentation/user/advanced-notation.itely, putting.itely,
574         tutorial.itely, global.itely, introduction.itely: really minor fixes.
576 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
578         * VERSION (PACKAGE_NAME): release 2.5.23
580 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
582         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
583         convert to utf-8.
585         * THANKS: Add translators for this release, convert to utf-8.
587         * mf/GNUmakefile (MFTRACE_FLAGS):
588         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
589         outdir as option (WAS: hardcoded).
591 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
593         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
594         finished_span_
596         * THANKS: add Hans Forbrich.
598         * Documentation/topdocs/NEWS.tely (Top): document new feature.
600         * Documentation/user/basic-notation.itely (Staff symbol): document
601         start/stop staff. Reference to ossia.ly
603         * input/test/ossia.ly: new example using stop and startStaff.
605         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
606         in other words, don't create "|" barline at start of the score.
607         (start_translation_timestep): don't set whichBar for start of score.
609         * input/regression/staff-halfway.ly: use new functionality.
611         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
612         start and stop staff based on events.
614         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
616         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
618 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
620         * Documentation/user/programming-interface.itely (How markups work
621         internally ): remove \encoding reference.
623 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
625         * scripts/convert-ly.py: Attempt to do a smarter update of 
626         text markups from versions < 1.9.0 with arbitrary nesting.
628 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
630         * po/fi.po: convert to utf-8, and update.
632 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
634         * make/lilypond.suse.spec.in: update from suse 2.4 package.
636         * lily/*.cc: more <? >? to min/max changes
638         * lily/include/interpretation-context-handle.hh: rename
639         Interpretation_context_handle to Context_handle.
641 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
643         * input/regression/GNUmakefile (local_delete): use `find` together 
644         with `xargs` to avoid too long argument-lists in cmd line.
646 2005-05-04  Graham Percival  <gperlist@shaw.ca>
648         * Documentation/user/introduction.itely: updates "About this manual".
650         * Documentation/user/advanced-notation.itely,
651         invoking.itely: minor fixes.
653 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
655         * COPYING: add font exception. Update FSF address. 
657         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
658         should be taken without child context.
660         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
662         * scm/define-markup-commands.scm (triangle): new command, as
663         robust replacement for unicode Delta/Triangle.
665 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
667         * ps/music-drawing-routines.ps: add fillp argument.
669         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
671         * lily/font-config.cc (init_fontconfig): don't add cff/
673         * VERSION (PACKAGE_NAME): release 2.5.22
675         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
677         * lily/grace-engraver.cc (consider_change_grace_settings): use
678         is_alias(). Fixes problem with CueVoice grace notes. 
680         * lily/simultaneous-music-iterator.cc (construct_children): call
681         Music_iterator::quit() for iterators that start out invalid. This
682         fixes indefinitely continuing contexts.
684         * buildscripts/substitute-encoding.py: new file
686         * Documentation/user/basic-notation.itely (Basic polyphony): fix
687         missing @end 
689         * scripts/lilypond-book.py (write_if_updated): print file name.
691         * Documentation/user/basic-notation.itely (Explicitly
692         instantiating voices): idem.
694         * Documentation/user/advanced-notation.itely (Text spanners):
695         remove stray { } 
697         * lily/context.cc (default_child_context_name): the default child
698         is now first in accepts_list_.
700         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
701         \defaultchild to all relevant contexts.  This fixes:
702         drums-pitch.ly.
704         (Probably also fixes similar problems with ancient
705         transcriptions getting CueVoices instead of the desired voices.)
707         * lily/context-def.cc (get_default_child): new function.
708         (get_accepted): place default child in front of list.
710         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
712         * lily/include/context-def.hh (struct Context_def): add
713         default_accept_
715 2005-05-03  Graham Percival  <gperlist@shaw.ca>
717         * scm/define-grobs.scm: remove "remove-first" line, since
718         the absent property is set to #f anyway.
720         * Documentation/user/basic-notation.itely,
721         advanced-notation.itely, instrument-notation.itely: minor
722         fixes.
724         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
726         * Documentation/user/advanced-notation.itely,
727         changing-defaults.itely: consolidate Text stuff in
728         advanced notation.
730         * Documentation/user/global.itely: better docs for \header.
732         * Documentation/user/putting.itely: new chapter; placeholder
733         for future expansion.
735         * Documentation/user/examples.itely: moved "suggestions for
736         writing LP files" section into putting.itely.
738         * Documentation/user/lilypond.itely: added new chapter,
739         fixed the short table of contents.
741 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
743         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
744         infinity for unfeasible beams.
746         * make/lilypond.fedora.spec.in (Group): idem.
748         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
750         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
752         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
753         fonts directly.
755         * buildscripts/gen-emmentaler-scripts.py (i): idem.
757         * mf/GNUmakefile: remove all CFF rules.
759         * scm/framework-ps.scm (ps-embed-cff): reinstate.
761         * lily/open-type-font-scheme.cc (LY_DEFINE):
762         new function ly:otf-font-table-data.
763         (LY_DEFINE): new function otf-font?
765 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
767         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
768         ($(outdir)/Fontmap.lily): idem.
770         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
771         for PFAEmmentaler-XXX.pfa. 
773         * Documentation/user/music-glossary.tely (accidental): NL
774         translation of accidental.
776 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
778         * flower/include/international.hh: Bugfix: include "string.hh".
780         * lily/include/mingw-compatibility.hh: New file.
782         * flower/include/libc-extension.hh (memrev): Rename from strrev.
784         * configure.in: Search for mingw wcrtomb library.
786 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
788         * scripts/convert-ly.py: Bug fix
790         * Documentation/user/changing-defaults.itely (Common tweaks):
791         Added example where the context has to be specified explicitly
792         (MetronomeMark). 
794 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
796         * scripts/lilypond-book.py (ly_options): set timing to #f for
797         notime option.
799         * scripts/convert-ly.py (conv): typo.
801         * flower/*.cc: remove <? and >?
802         
803         * lily/*.cc: remove <? and >?
805         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
806         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
807         editor.
809 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
811         * lily/part-combine-engraver.cc: add space to variable list.
813 2005-04-30  Graham Percival  <gperlist@shaw.ca>
815         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
816         remove-first to false (matches docs)
818         * Documentation/user/advanced-notation.itely: corrected docs
819         concerning remove-first.
821 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
823         * lily/part-combine-engraver.cc: make sure that the relevant
824         properties are included in the documentation.
826 2005-04-28  Graham Percival  <gperlist@shaw.ca>
828         * Documentation/user/lilypond-book.itely: Bernard's docs
829         for \betweenLilyPondSystem.
831 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
833         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
834         remarks.
836 2005-04-28  Pal Benko  <benkop@freestart.hu>
838         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
839         only on vertical lines of flexa shape, and use a constant
840         thickness value for horizontal lines (patch slightly modified by
841         Jürgen Reuter)
843         * lily/include/mensural-ligature.hh: make 2 comments clearer
845 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
847         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
848         to need_extra_horizontal_space; bugfix: use class scope to avoid
849         global namespace pollution
851         * Documentation/user/instrument-notation.itely (ligatures): added
852         comment on possible future syntax change and how to work around
854         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
855         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
856         intervals (fixes agnus dei example)
858         * Documentation/user/instrument-notation.itely (white mensural
859         ligatures): selected a more illustrative example
861 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
863         * Documentation/index.html.in: specify utf-8 charset in meta content.
865 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
867         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
868         empty 2nd page for single page.
870         * scm/lily.scm: remove p&c definitions.
872         * po/zh_TW.po (Module): new translation.
874         * lily/lily-guile.cc (ly_chain_assoc): remove.
876         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
877         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
879 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
881         * lily/beaming-info.cc: remove infinity_i
883         * scripts/abc2ly.py (out_filename): fix thinko with \version.
885 2005-04-26  Graham Percival  <gperlist@shaw.ca>
887         * Documentation/user/basic-notation.itely,
888         instrument-notation.itely, advanced-notation.itely,
889         changing-defaults.itely: minor fixes.  Added docs
890         for colors to advanced-notation.itely.
892         * Documentation/user/advanced-notation.itely: fixed compile
893         problem and added Bernard's x11-color doc patch.
895 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
897         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
898         alright this time round.
900 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
902         * Documentation/topdocs/INSTALL.texi (Top): idem.
904         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
906         * VERSION (MAJOR_VERSION): release 2.5.21
908         * scm/output-ps.scm (grob-cause): bugfix.
910 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
912         * cygwin/*: Update.
914         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
915         stuff.
917         * scm/output-ps.scm (grob-cause): Bugfix.
919         * scm/lily.scm (ly:load): Remove x11-color.
921         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
922         quote executable, fixes getting version from program --with
923         --options.
924         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
925         $ac_exeect.
927         * Documentation/user/GNUmakefile: Only build music-glossary with
928         rendered lilypond snippets during web.
930 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
932         * po/de.po: update.
934         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
936 2005-04-22  Laura Conrad <lconrad@laymusic.org>
938         * scripts/abc2ly:
939         second title line append with punctuation dash character;
940         encode abc2ly python strings in utf-8
941        
942 2005-04-21  Laura Conrad <lconrad@laymusic.org>
944         * scripts/abc2ly fix chords (again)
946 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
948         * scm/x11-color.scm: new file
949         All x11 color names can be accessed with:
950         #(x11-color 'ColorName),
951         #(x11-color "ColorName") or:
952         #(x11-color "color name")
953         If the x11 color name is not recognised then it defaults
954         to black
956         * scm/lily.scm: amended to call scm/x11-color.scm
958 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
960         * Documentation/user/invoking.itely (Reporting bugs): comment out
961         reference to online PNG bug repository.
963 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
965         * lily/translator-scheme.cc (ly:translator-property): Remove.
966         Update callers.
968         * lily/context-scheme.cc (ly:context-now): Move from translator.
969         Update callers.
971 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
973         * input/regression/grid-lines.ly (skips): refine example.
975         * scm/define-context-properties.scm
976         (all-user-translation-properties): doc autoBeamCheck
978         * input/regression/grid-lines.ly (Module): new file.
980         * lily/grid-point-engraver.cc (Module): new file.
982         * lily/grid-line.cc (Module): new file.
984         * lily/grid-line-span-engraver.cc (Module): new file.
986         * lily/grid-line-interface.cc (Module): new file.
988 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
990         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
991         missing parameter, actualy cdr through list.  Actually return a
992         list with ENTRY removed (was '()).
994         * scripts/convert-ly.py: Update.  Print warning if file cannot be
995         opened.
996         (do_conversion): Fix printing of continuation comma.
998         * Documentation/user/advanced-notation.itely (Beam formatting):
999         Remove refbugs about compound time and mixed duration.
1001         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
1002         modulo moments explicitely.
1004         * lily/moment.cc (operator %): New function.
1006         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
1008         * lily/translator-scheme.cc (ly:translator-now,
1009         ly:translator-property): New function.
1011         * scm/auto-beam.scm (default-auto-beam-check): New function.
1013         * lily/auto-beam-engraver.cc (test_moment): Use it.
1015         * flower/rational.cc (operator %): Bugfix.
1017 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
1019         * scripts/abc2ly: Bugfix
1021 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1023         * python/fontextract.py (write_extracted_fonts): bugfix, too many
1024         %'s on EndFont comment.
1026         * lily/ledger-line-spanner.cc: some more words of explanation.
1028 2005-04-20  John Williams <williams@tni.com>  
1029         
1030         * scripts/lilypond-book.py: htmlquote bugfix.
1031         Allow snippets to be given distinct filenames.
1032         Allow the default alt text to be overridden.
1034 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
1036         * ly/performer-init.ly: Bugfix
1038         * THANKS: Added bughunters.
1040 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1042         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
1044         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
1045         position (was: use modulo measure length).
1047         * configure.in (no gui_b): Remove optional gtk+ requirement.
1049 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1051         * Documentation/user/basic-notation.itely (Pitches): add
1052         LedgerLineSpanner.
1054         * lily/dynamic-engraver.cc (process_music): set right bound to
1055         script if present. Else, do not set.
1056         (acknowledge_grob): only set right bound of finished spanner to
1057         note column if no other bound is set.
1059         * python/lilylib.py (make_ps_images): switch back to png16m.
1060         
1061 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1063         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
1064         writing up to date file.  Add dvips usage suggestion.
1066         * scripts/convert-ly.py: Fix error message.
1067         Print usage if no files on command line.
1068         (usage): Add example usage.
1070         * input/test/compound-time.ly: New file.
1072         * input/test/circle.ly: New file.
1074         * Documentation/topdocs/NEWS.tely: Use them.
1076         * input/test/boxed-stencil.ly: Remove \score.
1078         * buildscripts/mf-to-table.py (base): Add .log dependency.
1080         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
1081         pfa's.  Add .log dependency
1083         * scm/define-markup-commands.scm (lower): New command.
1085         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
1086         make it default.
1088 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1090         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
1091         also to finished cresc as right bound. This fixes:
1092         skip-string-decresc.ly
1094         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
1095         relative_coordinate if extent is empty.
1097         * lily/stem.cc (width_callback): determine correct extent if flag
1098         is not there. This fixes slur-no-flag.ly
1100         * lily/grace-engraver.cc (consider_change_grace_settings): new function.
1101         (initialize): also consider_change_grace_settings() on
1102         initialization. Fixes large grace notes at start of score.
1104         * lily/break-align-interface.cc (do_alignment): don't translate if
1105         total_extent is empty.
1107         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
1109 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1111         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
1112         with slash.
1114 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1116         * stepmake/aclocal.m4: Remove tfm_path.
1118 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1120         * scm/music-functions.scm (markup-expression->make-markup): fix
1121         bug with cons arguments of markup commands.
1122         (music->make-music): fix music expression property list building
1124 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1126         * aclocal.m4: Massage package names.
1128         * SCons updates.
1130 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1132         * VERSION (PACKAGE_NAME): release 2.5.20
1134         * lily/stem.cc (calc_stem_info): add minimum Y extent of
1135         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
1137         * lily/percent-repeat-engraver.cc (try_music): add measure before
1138         next_moment to future processing moment. Fixes:
1139         percent-repeat-mm-rest.ly
1140         (process_music): don't add moment for 2nd time.
1142         * input/regression/repeat-percent.ly: add mmrests as extra test.
1144         * lily/axis-group-engraver.cc (acknowledge_grob): read
1145         keepAliveInterfaces to decide what to kill.
1147         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
1148         percent-repeat-interface to keepAliveInterfaces. This fixes
1149         percent-repeat-harakiri.
1151 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1153         * SCons updates.
1155 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1157         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
1159         * aclocal.m4: remove --enable-tfm-path configure option
1161         * input/test/ancient-font.ly (lowerStaff): clef name errors.
1163         * scm/backend-library.scm (postscript->png): newline after
1164         finishing command.
1166         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
1167         (LY_DEFINE): ly:paper-score-paper-systems: new function 
1169         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
1171         * lily/score.cc (default_rendering): use Music_output too.
1173         * input/test/chord-names-languages.ly (Module): rename file.
1175         * lily/text-spanner.cc: add bound-padding.
1177         * lily/paper-book.cc (systems): accept Paper_score
1178         iso. Paper_system vector. 
1180         * input/regression/line-arrows.ly: new file.
1182         * lily/paper-score.cc (process): run get_paper_systems() only once.
1184         * lily/line-spanner.cc (line_stencil): add arrows.
1186 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
1188         * lily/line-interface.cc (make_arrow): new function. 
1189         (arrows): idem.
1191 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
1193         * input/test/chord-names-german.ly: update for italian/french
1194         chords.
1195         
1196         * Documentation/user/instrument-notation.itely (Printing chord
1197         names): update.
1199 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1201         * lily/include/paper-score.hh (class Paper_score): remove unused
1202         prototypes.
1204         * lily/book.cc (process): add -COUNT to midi output.
1206         * lily/score.cc (book_rendering): remove outname argument
1207         (book_rendering): return list of Music_outputs. 
1209         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
1211         * lily/book.cc (process): loop over Music_outputs returned from
1212         Score::book_rendering().
1214         * lily/*.cc (width_callback): remove spurious "unused" warnings
1215         for assert (axis==[XY]_AXIS); 
1217         * lily/include/music-output.hh (class Music_output): smobify class.
1219         * lily/include/paper-score.hh (class Paper_score): make members
1220         private.
1222         * lily/performance.cc (process): return #f iso. #<undefined>. This
1223         prevents #<undefined> leaking into GUILE-userspace.
1225 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1227         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
1229 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
1231         * scm/chord-name.scm : support for italian and french
1232         chords names.
1234         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
1235         a space defined by chordPrefixSpacer when the root name is
1236         direclty followed by a prefix.
1238         * ly/engraver-init.ly : chordPrefixSpacer       
1239         * scm/define-context-properties.scm : chordPrefixSpacer
1240         * ly/property-init.ly : italianChords, frenchChords 
1242 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1244         * mf/feta-din.mf: Remove.
1246         * mf/GNUmakefile (fontdir): Bugfix.
1248         * mf/SConstruct: Some updates.
1250         * SConstruct: Require pkg-config.
1251         (test_program): Bugfix for double digit version compares, use
1252         integer (not string-) compare.
1253         Optionally require gs 8.14.
1255         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
1257         * lily/*: s/ifdef HAVE_*/if have/.
1259         * SConstruct (test_lib): New function.  Update pkg-config and some
1260         other requirements.
1262         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
1263         freetype, pangof2t.
1265 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1267         * po/lilypond.pot, ...: Update using bison-CVS.
1269         * python/lilylib.py (make_ps_images): Fixo.
1271 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1273         * python/lilylib.py (make_ps_images): typo.
1275         * configure.in (gui_b): make bison optional.
1277         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
1279 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
1281         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
1282         with one parameter can be defined in a LaTeX file when processed
1283         by lilypond-book this will be evaluated between the systems of
1284         a multi-system score. The parameter is the number of systems processed.
1286 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1288         * python/lilylib.py (make_ps_images): Escape newline.
1290         * Documentation/user/music-glossary.tely: Run
1291         texinfo-all-menus-update.
1293 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1295         * scm/lily-library.scm (old-relative-not-used-message)
1296         (version-not-seen-message): Add input-file-name-location to message.
1298         * lily/parser.yy (lilypond): Add token aliases.
1300         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
1301         not confuse with alteration.
1302         (alteration): Add.
1304 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1306         * python/lilylib.py (make_ps_images): use -dEPSCrop
1308         * VERSION (PACKAGE_NAME): release 2.5.19 
1310         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1311         only put xrefs in info documentation.
1313         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
1314         .pdf rule to tex-rules.make.
1316         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
1317         from -systems.* output.
1319         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
1320         directly, remove -$(PAGESIZE) target.
1322         * input/test/embedded-postscript.ly: update.
1324 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1326         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
1328         * Documentation/user/changing-defaults.itely (Font selection):
1329         document font-name.
1331         * input/regression/font-name.ly: show Pango fonts for
1332         font-name. Update example. 
1334         * lily/pango-select.cc (properties_to_pango_description): don't
1335         convert symbol font-size to number, but use to lookup.
1337         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
1339         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
1340         (NAME . FILE-NAME) tuples for font descriptions. 
1341         (write-preamble): display BeginFont DSC comments.
1343         * python/fontextract.py (write_extracted_fonts): new file. Extract
1344         font resources from a PS file.
1346         * scripts/lilypond-book.py (option_definitions): --psfonts option.
1347         (Compile_error.process_include): do_file returns chunks.
1349         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
1351         * make/lysdoc-targets.make: .texi is .PRECIOUS
1353         * scripts/lilypond-book.py (write_if_updated): new function.
1355 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1357         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
1359 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1361         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
1363         * input/regression/markup-syntax.ly: remove \score.
1365         * scm/define-markup-commands.scm (draw-circle): add fill argument
1367         * scm/stencil.scm (make-circle-stencil): add fill argument
1369         * ps/music-drawing-routines.ps: add fill argument.
1371         * ly/performer-init.ly: add CueVoice to MIDI too.
1373         * ps/music-drawing-routines.ps: new routine BeginEPSF /
1374         EndEPSF.
1376         * input/regression/markup-eps.ly: new file.
1378         * scm/framework-ps.scm (write-preamble): change order: vars should
1379         be inited before procedures.
1381         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
1382         for EPS files.
1384         * scm/define-markup-commands.scm (epsfile): add epsfile command.
1386 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1388         * configure.in (gui_b): add check for ghostscript 8.15
1390 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1392         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
1393         start of line. Fixes cresc-after-newline.ly
1395         * lily/source-file.cc (file_line_column_string): use get_column().
1397 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1399         * lily/source-file.cc (get_column): utf-8 support for column numbers.
1401 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1403         * lily/*: use message () iso progress_indication () for messages.
1404         Revise/uniformise user messages.
1406         * flower/warn.cc (progress_indication): New function.
1407         (message): Use it.  Fixes newline problems.
1409         * config.make.in (webdir): Sort out install dirs.
1411         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
1413         * python/lilylib.py (command_name): Bugfix.
1414         (make_ps_images):
1416 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
1418         * lily/main.cc: --help says what types of backends are availabe
1420 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1422         Fix ./VERSION dependency, and without need to reconfigure.
1424         * lily/main.cc (setup_paths): Update.
1426         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
1428         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
1430         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
1431         Add \line for some simplistic cases.
1433         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
1435 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1437         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
1438         to compile LY files (useful for adding eg. "-I" args)
1439         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
1440         2Gnome command for gnome backend.
1441         (LilyPond-command-formatgnome): call the 2Gnome command. key
1442         binding: C-c C-g
1444 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1446         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
1447         depend on all PNG images.
1449 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1451         * GNUmakefile.in: Bugfix: also link .map files.
1453 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1455         * scm/music-functions.scm (music->make-music): generate 
1456         a (make-music ...) sexpr from a music expression.
1457         (display-scheme-music): use guile pretty printer to display the
1458         make-music sexpr.
1460 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1462         * ly/engraver-init.ly: reindent.
1463         Add CueVoice.
1465         * scm/music-functions.scm (music-pretty-string): handle moments
1466         too.
1467         (music-pretty-string): only print non-empty lists.
1468         (cue-substitute): create CueVoice context, which has smaller type.
1470         * lily/moment-scheme.cc (LY_DEFINE): new methods
1471         ly:moment-grace-{numerator,denominator}
1473         * lily/context-handle.cc: remove quit() method. 
1475         * lily/font-config.cc (init_fontconfig): be verbose about font path.
1476         (init_fontconfig): success is 0, not !0
1478 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1480         * mf/feta-nummer-code.mf (code): add plus glyph.
1482         * lily/tie.cc (print): idem.
1484         * lily/slur.cc (print): don't use thickness property for
1485         slur shape-thickness.
1487         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
1488         while adding stencils.
1490         * scm/define-markup-commands.scm (with-color): with-color markup
1491         command.
1492         (whiteout): new markup command 
1493         (filled-box): new markup command
1495 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1497         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
1498         test for PDF docs.
1500         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
1501         PFAAybabtu-Regular.  Fixes feta font in PDFs.
1502         
1503         Notes for tetex-3.0 make web:
1504            psclean.map: s/uhv8a/uhvr8a/
1505            config.ps add:
1506                 p +psfonts_t1.map
1507                 p +psclean.map
1508                 p +typeface.map
1510 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1512         * scm/music-functions.scm (music-pretty-string): fix bug with
1513         string argument.
1515 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
1517         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
1519 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1521         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
1522         only process options if they're there.
1523         (write_file_map): add version-seen? to snippet-map.ly
1525 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
1527         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
1528         formatting cleanups.
1530         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
1531         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
1533 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1535         * scm/framework-ps.scm (ps-font-command): don't hash, just use
1536         name directly.
1538         * lily/main.cc (setup_paths): either add mf/out to search path or 
1539         fonts/{otf,type1,etc}
1540         
1541         * lily/font-config.cc (init_fontconfig): either add mf/out to
1542         FontConfig or fonts/{otf,type1,etc}
1544         * GNUmakefile.in: don't put mf/ link in share/ dir.
1546         * lily/staff-spacing.cc: move same-direction-correction to
1547         note-spacing-interface
1549         * scm/lily.scm (lilypond-main): use variable argument count for
1550         exception handler.
1552         * lily/font-config.cc (init_fontconfig): add operator pacification
1553         message.
1555         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
1557         * buildscripts/gen-emmentaler-scripts.py (i): generate
1558         PFAEmmentaler as well.
1560         * scm/framework-ps.scm (munge-lily-font-name): new function
1561         (write-preamble): hack: insert PFA equivalent of CFF into
1562         .PS. This makes LilyPond output printable on normal PS printers
1563         again.
1565         * buildscripts/gen-emmentaler-scripts.py (i): generate
1566         PFAEmmentaler.pfa aswell.
1568 2005-04-06  John Williams <williams@tni.com>  
1569         
1570         * scripts/lilypond-book.py: refactor the compose_ly procedure.
1571         
1572 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1574         * scm/page-layout.scm (default-page-make-stencil): always combine
1575         the header stencil, even if empty. This prevents the body text to
1576         reach up to the margins.
1578         * po/rw.po (Module): new file, for Kinyarwanda.
1580         * input/test/spacing-optical.ly (Module): new file.
1582         * lily/staff-spacing.cc: add same-direction-correction
1584 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1586         * Documentation/user/introduction.itely (Engraving): Comment-out
1587         non-existent file.
1589 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1591         * scm/define-grob-properties.scm (all-user-grob-properties): add
1592         same-direction-correction
1594         * VERSION: release 2.5.18
1596 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1598         * lily/grob.cc (mark_smob): Check pscore->layout_ before
1599         dereferencing.  Fixes make web.
1601         * lily/midi-stream.cc: Handle unwritable midi file.  Include
1602         errno.h.
1604         * Documentation/user/: Fix links.
1606 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1608         * lily/text-interface.cc (Module): rename from text-item.cc
1610         * input/regression/apply-output.ly (texidoc): function naming fix.
1612         * lily/time-signature-performer.cc (derived_mark): new function.
1614         * lily/lily-parser-scheme.cc:  print mapped file name for progress
1616         * scripts/lilypond-book.py (find_linestarts): new function.
1617         (find_toplevel_snippets): keep track of line numbers.
1619         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
1620         all key changes.
1622         * ly/declarations-init.ly (partCombineListener): use
1623         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
1625         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
1627 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1629         * lily/text-item.cc: Fix link.
1631         * Documentation/user/changing-defaults.itely (Changing defaults):
1632         Fix programs reference links.
1634         * Documentation/user/music-glossary.tely: Convert to utf-8.
1636 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1638         * make/lilypond-vars.make: remove TEXMF from variables.
1639         remove DEB_BUILD pk font variables.
1640         remove GUILE_LOAD_PATH
1641         remove TeX memory vars.
1643 2005-04-04  Werner Lemberg  <wl@gnu.org>
1645         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
1647 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1649         * ps/lilyponddefs.ps: remove reencode-font
1651         * lily/simple-spacer.cc (add_columns): also compare
1652         directly. Column rank doesn't distinguish between broken and
1653         unbroken columns. This fixes large spaces before time sig changes.
1655         * Documentation/user/point-and-click.itely: document ly:set-option.
1657         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
1658         point_and_click_global is set.
1660         * lily/scm-option.cc (LY_DEFINE): add point-and-click
1661         ly:set-option argument.
1663 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1665         * GNUmakefile.in: Include symlinks in webball.
1667         * Documentation/user/GNUmakefile (source-links): Add symlinks to
1668         source dir for split and non-split manuals.
1670         * Documentation/user/*y: Fix @uref/@inputfile links for
1671         split/non-split HTML documents.
1673         * Documentation/user/GNUmakefile (local-WWW): Do not generate
1674         .ps.gz.
1675         
1676 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1678         * GNUmakefile.in: Add newline.
1680 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
1682         * tex/lilyponddefs.tex: use color instead of xcolor
1683         * scm/output-tex.scm: minor editing
1685 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1687         * scm/music-functions.scm (display-scheme-music): pretty printer
1688         for music expressions.
1690 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1692         * buildscripts/install-info-html.sh (index_file): Fix link.
1694 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1696         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
1698         * Documentation/index.html.in: Add size estimates with some big pages.
1700         * Documentation/user/tutorial.itely (Running LilyPond for the
1701         first time): Add/replace some @rglos links.  TODO: add more
1702         @rglos links in tutorial, test non-intrusiveness (.css).
1704         * stepmake/bin/add-html-footer.py (do_file): Remove info's
1705         annoying's indication of referencing external document.
1707         * Documentation/user/GNUmakefile: Split version of glossary too.
1708         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
1709         links, not only for html.
1711         * Documentation/user/introduction.itely: Fix some links for other
1712         than html, do not use `here' as link name.
1714 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1716         * scm/documentation-generate.scm (string-append): Fix @usermanref,
1717         @glossaryref.
1719 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1721         * scm/page-layout.scm (default-page-make-stencil): only add header
1722         if existing and not empty. Fixes spurious programming error.
1724         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
1726 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
1728         * scm/output-tex.scm: implement {re,}setcolor
1729         * tex/lilyponddefs.tex: use color package
1731 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1733         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
1734         additions to website.
1736         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
1738         * Documentation/user/macros.itexi: Fix @usermanref html links in
1739         split documents: use @inforef.
1741 2005-03-30  Graham Percival  <gperlist@shaw.ca>
1743         * Documentation/user/programming-interface.itely: minor fix.
1745         * Documentation/user/advanced-notation.itely: added info to
1746         Metronome markings.
1748 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1750         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
1751         use box-stencil.  Remove y-padding argument.
1752         (make-stencil-circler): New function.
1754         * buildscripts/lilypond-words.py (F): 
1755         * elisp/SConscript (a): 
1756         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
1757         * vim/SConscript (a): 
1758         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
1760         * lily/general-scheme.cc: Build fix.
1762         * scm/markup.scm:
1763         * input/regression/markup-scheme.ly: 
1764         * input/regression/markup-syntax.ly: Drop 'new-' from name.
1766         * scm/stencil.scm (make-circle-stencil): New function.
1768         * scm/define-markup-commands.scm (draw-circle): Use it.  New
1769         name (was cicle).  Update callers.
1770         (circle): New markup command, similar to box.
1772         * scm/stencil.scm (circle-stencil): New function.
1774 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
1776         * configure.in: Detect libutf8/wchar.h variant.
1778         * stepmake/aclocal.m4: Modify shared size test.
1780 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1782         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
1784 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1786         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
1787         
1788         * VERSION (PACKAGE_NAME):  release 2.5.17
1790 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1792         * scm/backend-library.scm (postscript->png): Fix comment and png
1793         message.
1795         * GNUmakefile.in (link-tree): Fix locales.
1797 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1799         * lily/stencil-scheme.cc (LY_DEFINE): change to
1800         ly:stencil-aligned-to, non mutating.
1802         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
1804         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
1806         * lily/quote-iterator.cc (derived_mark): call
1807         Music_wrapper_iterator::derived_mark() too.
1809         * lily/grace-engraver.cc (derived_mark): change signature, add
1810         const.
1812 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1814         * SConstruct (symlink): 
1815         * GNUmakefile.in (link-tree): Add scripts to prefix.
1817         * lily/general-scheme.cc (ly:effective-prefix): New function.
1819         * scm/backend-library.scm (postscript->png): Use it.
1821 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1823         * lily/paper-score.cc (process): don't delete grobs after
1824         producing stencils. 
1826         * scm/part-combiner.scm (determine-split-list): switch off
1827         debugging info.
1829         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
1830         if available.
1832         * scm/define-context-properties.scm
1833         (all-user-translation-properties): add stringNumberOrientations.
1835         * lily/new-fingering-engraver.cc (position_scripts): make generic,
1836         so fingering and string-numbers are separately controlled.
1838 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1840         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
1841         not use debugging.
1843 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1845         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
1847         * config.hh.in: add HAVE_FONTCONFIG.
1849         * Documentation/user/instrument-notation.itely (String number
1850         indications): new node.
1852         * input/regression/new-markup-syntax.ly (texidoc): add circle.
1854         * lily/new-fingering-engraver.cc (add_string): new function. 
1855         (acknowledge_grob): accept string-number-event as well.
1857         * scm/define-markup-commands.scm (circle): new markup command.
1859         * scm/output-lib.scm (print-circled-text-callback): new function.
1861         * lily/GNUmakefile: move ifeq after include stepmake.make.
1863 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1865         * config.make.in (HAVE_LIBKPATHSEA_SO):
1866         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
1868         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
1869         add KPATHSEA_LIBS.
1871         * debian/watch: 
1872         * debian/control: Update.
1874 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1876         * input/test/title-markup.ly (spaceTest): remove.
1878         * input/test/embedded-tex.ly (Module): remove.
1880         * input/test/music-box.ly: use 'name property, not ly:music-name.
1882         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
1884         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
1886 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1888         * Documentation/topdocs/INSTALL.texi (Top): Remove information
1889         about xdeltas.  Add information about CVS.
1891         * scm/lily.scm (lilypond-main): Fix invocation of handler,
1892         gracefully handle failed files.
1894         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
1896         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
1897         small fixes.
1899         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
1900         No unnecessarily specific i18n messages.  Remove stray `1'.
1902 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1904         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
1905         documentencoding
1907         * scm/documentation-lib.scm (texi-file-head): set utf-8
1908         documentencoding.
1910         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
1911         Delta, not the Symbol one. 
1913         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
1914         for the .map file.
1916         * Documentation/topdocs/INSTALL.texi (Top): add running
1917         requirement as compilation requirement.
1919 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1921         * buildscripts/mutopia-index.py (headertext): add h1 header and
1922         utf-8 charset meta field.
1924         * input/GNUmakefile: prune example list.
1926         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
1927         options.
1929         * lily/slur-scoring.cc (get_base_attachments): only look at stem
1930         extent for visible stems.
1932         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
1934 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1936         * Documentation/topdocs/INSTALL.texi (Top): Updates.
1938         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
1940 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1942         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
1943         pass inf/nan into slur scoring.
1945         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
1946         page.
1948         * scripts/abc2ly.py (dump_voices): use alphabet().
1950 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
1951         
1952         * mf/GNUmakefile (depth): use $(FONTFORGE). 
1954 2005-03-27 Matthias Neeracher <neeracher@mac.com>
1955         
1956         * flower/include/virtual-methods.hh: simplify. Patch by
1958 2005-03-25  John Williams <williams@tni.com>  
1960         * scripts/lilypond-book.py (main): add png for HTML too, guess
1961         only if necessary. 
1963 2005-03-25  Graham Percival  <gperlist@shaw.ca>
1965         * Documentation/topdocs/INSTALL.texi: now recommends
1966         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
1968         * Documentation/user/basic-notation.itely,
1969         Documentation/user/tutoria.itely: warn about
1970         only one (phrasing) slur at once.
1972 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
1974         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
1976 2005-03-23  Graham Percival  <gperlist@shaw.ca>
1978         * Documentation/user/basic-notation.itely: fixed info about
1979         ending a (de)cresc.
1981         * Documentation/user/lilypond-book.itely: fixed
1982         lilypond-book filter example and warned about not doing
1983         --filter and --process at the same time.
1985 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1987         * lily/parser.yy (bass_number),
1988         Documentation/user/instrument-notation.itely (Figured bass): 
1989         Add the possibility to use text markup in figured bass. 
1991 2005-03-19  Graham Percival  <gperlist@shaw.ca>
1993         * Documentation/user/global.itely: added info about naming
1994         identifiers and breakbefore.
1996         * Documentation/user/invoking.itely: added info about batch
1997         processing files with convert-ly, removed references to TeX
1998         in the jail section.
2000         * Documentation/user/examples.itely: possibly fixed piano
2001         dynamics.
2003         * Documentation/user/advanced-notation.itely: added info
2004         about removing other types of Staff.
2006         * Documentation/user/instrument-notation.itely: possibly
2007         fixed piano staff line switch.
2009         * Documentation/user/changing-defaults.itely: added info
2010         about using normal font in titles.
2012 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2014         * VERSION (PATCH_LEVEL): release 2.5.16
2016         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
2017         explicitly.
2019 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2021         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
2022         whitespace.
2024         * python/lilylib.py (make_ps_images):
2025         * scm/backend-library.scm (postscript->pdf, postscript->png):
2026         Quote file name.  Use format rather than string-append juggling.
2028 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2030         * python/lilylib.py (make_ps_images): add x to -g argument. 
2032         * lily/key-performer.cc (create_audio_elements): don't use
2033         scm_eval_string. Check for minor 3rd directly.
2034   
2035         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
2036         (sarabandeCelloGlobal): key is D minor, not F major.
2038 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2040         Fix truncated --png output (Peter Danenberg).
2041         
2042         * python/lilylib.py (make_ps_images):
2043         * scripts/ps2png.py (copyright): Grok --papersize option.
2045         * scm/backend-library.scm (postscript->png): Add parameter
2046         PAPERSIZE.  Update callers.
2048         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
2049         Fixes symbol placement.
2051         * lily/spanner.cc: 
2052         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
2053         <libc-extension.hh>).
2055 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2057         * Nitpick run.
2059         * buildscripts/fixcc.py: Update.
2061         Builddir run fixes.
2063         * HACKING (datadir): Add VERSION.
2065         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
2066         higher up.
2068 2005-03-15  Werner Lemberg  <wl@gnu.org>
2070         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
2071         diagonal stem doesn't become thinner.
2073 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2075         * buildscripts/fixcc.py: Fixes (Werner).
2077 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2079         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
2080         Emmentaler/Aybabtu.
2082         * GNUmakefile.in: fix lilypond-words path.
2084         * po/tr.po: update to 2.3.21
2086         * lily/new-fingering-engraver.cc (position_scripts): take priority
2087         from head position.
2089         * input/regression/finger-chords-order.ly (texidoc): new file.
2091 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2093         * make/ly-rules.make: 
2094         * stepmake/aclocal.m4: 
2095         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
2097         * buildscripts/fixcc.py (rules): Leave space after operator.
2099 2005-03-14  Werner Lemberg  <wl@gnu.org>
2101         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
2102         top of the glyph with smooth curve.
2104 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2106         * Documentation/user/global.itely (Page layout): remove
2107         printpagenumber.
2109 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
2111         * input/regression/mensural-ligatures.ly: new file (with examples
2112         compiled by Pal Benko).
2114         * Documentation/user/instrument-notation.itely: Bugfix: yet some
2115         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
2116         musicglyph access.  Many small beautifications in ancient
2117         examples.
2119         * input/test/divisiones.ly: fixed indentation; small
2120         beautifications
2122         * ly/engraver-init.ly: added FIXME comment
2124         * scripts/lilypond-book.py,
2125         Documentation/user/lilypond-book.itely: added music fragment
2126         option "packed" to lilypond-book
2128         * Documentation/user/instrument-notation.itely: Bugfix: added
2129         missing LedgerLineSpanner color setting in several places.  Added
2130         music fragment option "packed" to VaticanaContext example.
2132 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2134         * scm/define-grobs.scm (all-grob-descriptions): switch off
2135         Hyphen_spanner::set_spacing_rods 
2137         * lily/lyric-hyphen.cc (print): add padding between syllable and
2138         hyphen.
2139         (print): shorten hyphen in tight situations (determine using
2140         minimum-length)
2142         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
2143         0.4pt.
2145 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2147         * ly/titling-init.ly (bookTitleMarkup): Refinements.
2149         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
2150         header/footer markings for regression-test.
2152         * scm/backend-library.scm (output-scopes, header-to-file): Move
2153         from framework-tex.scm.
2155         * scm/framework-ps.scm (output-framework)
2156         (output-preview-framework):
2157         * scm/framework-eps.scm (output-classic-framework)
2158         (output-framework): Use it.  Fixes collated files.
2160 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2162         * input/sakura-sakura.ly: 
2163         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
2165         * buildscripts/guile-gnome.sh: Update.
2167         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
2169         * mf/aybabtu.pe.in: Capitalize Aybabtu.
2171 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2173         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
2174         culprit: always exit the loop if we find a rod, even if it has
2175         distance < 0. 
2177         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
2178         algorithm.
2180         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
2181         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
2183         * scm/output-svg.scm (dashed-line): new  function body.
2184         
2185         * GNUmakefile.in: create .htaccess.
2187 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2189         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
2191 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2193         * VERSION (PACKAGE_NAME): release 2.5.15
2195         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
2197         * scm/framework-svg.scm (output-framework): put scaling in
2198         document header. Apply scaling only once.
2199         (output-framework): dump page size in px, not mm. 
2201         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
2202         from font-size.
2204         * lily/paper-outputter-scheme.cc (LY_DEFINE):
2205         ly:outputter-output-scheme, new function.
2207         * scm/output-svg.scm (pango-description-to-svg-font): new function
2209 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2211         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
2212         target.
2214         * input/typography-demo.ly: new file.
2216 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2218         * Documentation/user/global.itely (File structure): Add markup blocks
2219         to toplevel expressions.
2220         (Multiple movements, Creating titles): Add markup blocks.
2222         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
2223         <libc-extension.hh>).
2225         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
2227         * flower
2228         * lily
2229         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
2231 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2233         * lily/accidental.cc: special bboxes for natural. 
2235         * mf/feta-toevallig.mf: make stems heavier.
2237         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
2238         texts as well.
2240         * mf/feta-klef.mf: revise. 
2242         * mf/feta-schrift.mf: make thinning of accent less pronounced.
2244         * mf/feta-klef.mf: add rounded curve at top. 
2245         make thinnib a little heavier.
2247 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2249         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
2251         * buildscripts/fixcc.py: New file.
2253         * input/regression/utf8.ly: Update Debian font description.
2255 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2257         * stepmake/aclocal.m4: Fix test.
2259 2005-03-09  Graham Percival  <gperlist@shaw.ca>
2261         * Documentation/user/invoking.itely: added Sebastino Vigna's
2262         docs for the --jail option.
2264 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2266         * lily/stem.cc (print): only produce stemlets if there are no
2267         noteheads on this stem.
2269         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
2270         don't crash on stemlet (visible stem without heads).
2272         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
2273         unbroken situations. 
2275         * scm/output-lib.scm (center-invisible): new function.
2277         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
2278         wishes to determine loose column space.
2280         * lily/font-config.cc (init_fontconfig): add
2281         fonts/{otf,type1,cff}  to path.
2283         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
2285         * mf/GNUmakefile (Module): install all fonts under otf/
2287         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
2288         replace /fonts/otf/ by /ps/ 
2290         
2291 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2293         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
2295         * lily/book.cc (process): Oops, add score_.header_.
2297         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
2299         * lily/parser.yy: Handle toplevel and book texts as score.
2301         * scm/page-layout.scm (default-page-make-stencil):
2302         Bugfix: (page-properties rename.
2304         * scm/backend-library.scm (ly:system): Typo.
2306 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2308         * stepmake/stepmake/executable-targets.make (installexe): don't
2309         strip installed executables
2311         * lily/font-select.cc (get_font_by_design_size): revert
2312         pango_description_string as well.
2314         * lily/system.cc (set_loose_columns): put loose column just left
2315         of next column.
2317         * lily/include/group-interface.hh (extract_grob_array): rename
2318         from Pointer_group_interface__extract_grobs
2320         * input/regression/ledger-line-minimum.ly (texidoc): new file.
2322         * lily/ledger-line-spanner.cc (set_spacing_rods): new
2323         function. Keep ledgered note heads at a minimum distance.
2324         Introduce minimum-length-fraction
2325         (print): introduce length-fraction property.
2327 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2329         * tex/GNUmakefile: remove latin1.enc rules.
2331 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2333         * scm/titling.scm: Typo.
2335         * input/regression/score-text.ly: Really add.
2337         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
2339 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2341         * lily/open-type-font-scheme.cc:  new file.
2343 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2345         * scm/titling.scm (layout-extract-page-properties): Rename from
2346         page-properties.  Update callers.
2348         * lily/lexer.ll (Lily_lexer):
2349         * lily/parser.yy: Junk lyric_markup state.
2351         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
2353         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
2354         Add texts parameter.
2356 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2358         * lily/lexer.ll (lyric_markup): New mode.
2359         (Lily_lexer::push_lyric_markup_state): New method.
2360         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
2362         * lily/parser.yy (book_body):
2363         (toplevel_expression): Grok \markup texts.
2365         * lily/score-scheme.cc (ly:music-scorify): 
2366         * scm/lily-library.scm (collect-music-for-book): Take texts
2367         parameter.
2369         * lily/score.cc (texts_): New member.
2371         * lily/paper-book.cc (systems): Format score texts.
2373         * score-text.ly: New file.
2375         * ttftool/SConscript:
2376         * kpath-guile/SConscript: New file.
2378         * lily/SConscript:
2379         * SConstruct: Update.
2381 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2383         * VERSION (PACKAGE_NAME): release 2.5.14
2385 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2387         * lily/main.cc: Add dummy xgettext markers.
2389 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2391         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
2392         requirements
2394         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
2395         executable is < 40k
2397         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
2398         hack.
2400 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2402         * flower/libc-extension.cc:
2403         * flower/include/libc-extension.hh: [Open]BSD simply cast
2404         cookie/funopen declarations.
2406         * stepmake/aclocal.m4: Check for libkpathsea.so.
2408         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
2409         dl_kpse_find_file.
2411 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2413         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
2414         (open_library): alternative for static library.
2416 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2418         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
2420         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
2422         Drop run-time dependency on teTeX.
2424         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
2426         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
2427         KPATHSEA_LIBS in LIBS.
2428         (STEPMAKE_DLOPEN): New function.
2430         * lily/font-config.cc (init_fontconfig): Use dir for directory,
2431         not path.
2433         * flower/file-path.cc (directories): Rename from paths, as this
2434         return an array of directories (a single path).
2436 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2438         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
2440         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
2441         new ly:kpathsea-find-file
2443         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
2445         * kpath-guile/GNUmakefile: new file
2447         * buildscripts/gen-emmentaler-scripts.py (i): generate
2448         emmentaler-X.fontname as well.
2450         * buildscripts/ps-embed-cff.py: new script
2452         * scm/lily-library.scm: remove ps-embed-cff.
2454         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
2455         font loading. 
2457         * scm/font.scm (add-music-fonts): load dynamics/numbers through
2458         fontconfig as well.
2460         * lily/font-config.cc (init_fontconfig): add cff/ too.
2462         * ly/generate-embedded-cff.ly: capitalize.
2464         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
2465         so as to register the pango font.
2467         * lily/font-config.cc (init_fontconfig): add
2468         prefix/{otf,type1,mf/out} to fontconfig path.
2470         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
2471         overrides all. 
2473         * configure.in (gui_b): remove ec mftrace check
2475         * config.hh.in: use lilypond-Major.Minor as data directory.
2477         * scm/framework-ps.scm (dump-page): use output-units for landscape.
2479         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
2480         name.
2482 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2484         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
2485         error messages.
2487         * flower/libc-extension.cc:
2488         * flower/include/libc-extension.hh: [Open]BSD fixes for
2489         cookie/funopen declarations.
2491 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2493         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
2494         emmentaler.
2496         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
2497         lcrm10.
2499         * scm/define-markup-commands.scm (fontsize): new markup
2500         command. Also set baseline-skip
2502 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
2503         
2504         * lily/main.cc (do_chroot_jail): paranoia security for webserver
2505         use.
2507 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2509         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
2511         * lily/pdf.cc: remove PDF related files
2513 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2515         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
2516         <hamamatsu@gmx.de>
2518 2005-03-05  Graham Percival  <gperlist@shaw.ca>
2520         * Documentation/user/advanced-notation.itely: first draft
2521         of reorg done.
2523         * Documentation/user/global.itely: fixed (sub)section
2524         bits of MIDI.
2526 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2528         * cygwin/mknetrel (extras): Bufix (Bertalan).
2530         * Documentation/user/basic-notation.itely (Chords): @ref fix.
2531         * Documentation/user/instrument-notation.itely (Introducing chord
2532         names): Compile fix: must have unique name.
2534 2005-03-02  Graham Percival  <gperlist@shaw.ca>
2536         * Documentation/user/instrument-notation.itely: reorg.
2538 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2540         * scm/output-gnome.scm:
2541         * scm/output-svg.scm: Fix font scaling.
2543 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2545         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
2546         what link to use best.
2548         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
2549         * Documentation/user/tutorial.itely (Automatic and manual beams):
2550         Fix @ref.
2552         * lily/tweak-registration.cc (replace_grob_tweak): New function.
2553         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
2554         * scm/framework-gnome.scm (tweak): Use it.
2556 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2558         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
2560         * scm/output-ps.scm (white-text): reinstate white-text
2562 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2564         * scm/output-ps.scm (offset-add): Remove.
2566         * scm/lily-library.scm (offset-flip-y): New function.
2567         * scm/framework-gnome.scm (tweak): Use it.
2569         * scm/output-gnome.scm (grob-cause): Add parameter.
2571         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
2572         * scm/output-ps.scm (url-link): Move.
2573         (white-text): Warn user about brokenness.
2575         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
2576         wrt ghostscript.
2578 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2580         * lily/slash-repeat-engraver.cc (try_music): always make slashes
2581         if body length smaller than measure length.
2583         * scm/define-markup-commands.scm (with-url): oops. use Y extent
2584         for Y.
2586         * ly/titling-init.ly (tagline): put default tagline in \paper
2588 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2590         * lily/kpath.cc: 
2591         * lily/pdf.cc (Pdf_file): Use more generic error messages.
2593         * scm/lily-library.scm (version-not-seen-message): New function.
2594         * ly/init.ly: Use it.
2596         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
2597         breaks as progess.
2599         * scripts/lilypond-book.py (do_process_cmd): Do not lump
2600         whitespace with l10n message.
2602         * scm/framework-tex.scm (convert-to-ps):
2603         (convert-to-dvi): Do not use overly specific l10n messages.
2605         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
2607         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
2608         merge stderr with stdout.  
2610 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2612         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
2613         Neeracher).
2615 2005-02-29  Graham Percival  <gperlist@shaw.ca>
2617         * Documentation/user/instrument-notation.teily: moved
2618         \arpeggio to Basic.
2620         * Documentation/user/advanced-notation.itely: Articulation to
2621         Basic, a bunch of stuff from Basic moved to Advanced.
2623         * Documentation/user/basic.itely: swapped various sections,
2624         reorganized Basic.
2626 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2628         * flower/memory-stream.cc: 
2629         * flower/libc-extension.cc: Remove obsolete #undefs.
2631         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
2632         more carefully.
2634 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2636         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
2637         dependency.
2639         * VERSION (PACKAGE_NAME): release 2.5.13
2641         * GNUmakefile.in (web-ext): don't ship ps.gz
2643         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
2644         stdout
2646 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2648         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
2649         without libintl.  Now it compiles too.
2651 2005-02-28  Graham Percival  <gperlist@shaw.ca>
2653         * Documentation/user/basic-notation.itely,
2654         instument-notation.itely, advanced-notation.itely:
2655         split up contents of notation.itely.
2657         * Documentation/user/notation.itely: file removed.
2659         * Documentation/user/invoking.itely, converters.itely:
2660         moved convert-ly info to invoking.itely.
2662         * Documentation/user/global.itely, changing-defaults.itely,
2663         sound-output.itexi: moved global settings, file layout, and
2664         sound into global.itely.
2666         * Documentation/user/sound-output.itexi: file removed.
2668         * Documentation/user/lilypond.tely: removed links to
2669         notation.itely and sound.itely.
2671 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2673         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
2675         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
2677         * THANKS: add sponsor.
2679         * scm/define-markup-commands.scm (with-url): new markup command.
2681         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
2682         tagline.
2683         
2684         * scm/output-tex.scm (url-link): stub.
2686         * scm/output-ps.scm (url-link): new function.
2688         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
2689         ly:set-point-and-click
2691 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2693         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
2694         based on pdf-viewer setting.
2696         * scm/framework-ps.scm (write-preamble): Find and set preferred
2697         pdf-viewer.
2699 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2701         * Documentation/user/point-and-click.itely: update for PDF point &
2702         click.
2704         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
2705         editors based on EDITOR setting.
2707 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2709         * scm/*: Oops, more grand 2005 replace bits.
2711 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2713         * ps/music-drawing-routines.ps: new routine: insert PDF mark
2715         * scm/output-ps.scm (grob-cause): point & click support for
2716         PostScript
2718 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2720         * lily/input-scheme.cc (LY_DEFINE): rename to
2721         ly:input-file-line-column
2723 2005-02-26  Graham Percival  <gperlist@shaw.ca>
2725         * Documentation/user/examples.itely: small fix from Steve Doonan.
2727         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
2729         * THANKS: added Yuval Harel.
2731         * Documentation/user/{various}: inserted two spaces after a period.
2733         * Documentation/user/lilypond.tely: added framework for reorg.
2735         * Documentation/user/basic-notation.itely, instrument-notation.itely,
2736         advanced-notation.itely, global.itely: new files, placeholder for
2737         future reorg.
2739 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
2741         * Documentation/user/notation.itely: revamped Polyphony section
2742         
2743 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2745         * Documentation/user/lilypond-book.itely (Music fragment options):
2746         doc fontload.
2748         * Documentation/user/changing-defaults.itely (Text encoding): add
2749         fontload option to utf8 include
2751         * scripts/lilypond-book.py (compose_ly): add fontload option
2753         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
2754         force-eps-font-include option.
2756         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
2757         black triangle
2759         * Documentation/user/invoking.itely (Editor support): remove
2760         lilypond-latex section.
2762         * scripts/lilypond-latex.py (Module): remove script.
2764         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
2765         overwrite .log. 
2767         * lily/main.cc: remove -m, --no-layout
2769         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
2770         to define. We don't want to override fprintf everywhere.
2772 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
2774         * cygwin/lilypond.hint: 
2775         * cygwin/README.in: Update dependencies.
2777         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
2778         Bugfix: do not pollute CPPFLAGS, LIBS.
2780         * cygwin/mknetrel (extras): Cross compile fixes.
2782         * ttftool/util.c: 
2783         * ttftool/ttfps.c: 
2784         * ttftool/ps.c: #include libc-extension.hh
2786         * flower/include/libc-extension.hh:
2787         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
2788         wrapper using funopen.
2789         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
2790         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
2792         * config.hh.in:
2793         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
2794         (AC_CHECK_HEADERS): Add libio.h
2796         * scripts/convert-ly.py: Uniformize, internationalize.
2797         (2.5.2): Remove fatal encoding rule.
2798         (2.5.13): Handle latin1 encoding gracefully.
2800 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2802         * HACKING: Fix line breaks.
2804 2005-02-23  Werner Lemberg  <wl@gnu.org>
2806         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
2807         contains those two files.
2809 2005-02-21  Werner Lemberg  <wl@gnu.org>
2811         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
2812         to improve overlap removal process.
2814         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
2815         left and right ending.  This ensures better overlapping.
2816         Update all callers.
2817         ("lineprall"): Don't use draw_gridline to get better overlapping.
2819 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2821         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
2823         * Documentation/topdocs/NEWS.tely (Top): oops.
2825 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
2827         * HACKING: new file.
2829         * input/regression/utf8.ly (portuguese): added a portuguese example
2830         to show latin1 accents.
2832 2005-02-21  Pal Benko  <benkop@freestart.hu>
2834         * lily/mensural-ligature-engraver.cc:
2835         * lily/mensural-ligature.cc:
2836         * lily/include/mensural-ligature.hh: new algorithm implemented
2838         * scm/define-grob-properties.scm: join-left killed (add-join may
2839         be used); join-left-amount changed to join-right-amount
2841 2005-02-21  Graham Percival  <gperlist@shaw.ca>
2843         * Documentation/user/notation.itely: small but urgent fix.
2845 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
2847         * lily/duration-scheme.cc: bugfix: correct parameters to
2848         SCM_ASSERT_TYPE.
2850         * THANKS: added Pal.
2852         * Documentation/user/notation.itely: bugfix: unTeXified
2853         $\\backslash$.  Bugfix: yet another glyph renaming victim:
2854         "timesig.*x/y" -> "timesig.*xy".
2856 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2857         
2858         * VERSION (PACKAGE_NAME): release 2.5.12
2860 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2862         * ly/engraver-init.ly: set tieWaitForNote to #t by default
2864         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
2866         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
2868         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
2870 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2872         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
2873         latin1..utf-8.
2875         * input/regression/stanza-number.ly:
2876         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
2878         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
2880 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2882         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
2883         NEWS. Refer to website for older news.  
2885         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
2886         .HTML. This should be done for specific servers only.
2888         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
2889         .ly image examples.
2891         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
2892         in layer 0 too.
2894         * scm/define-context-properties.scm
2895         (all-user-translation-properties): add tieWaitForNote
2897         * scm/define-grobs.scm (all-grob-descriptions): add
2898         Tie_column::before_line_breaking
2900         * lily/tie.cc (get_column_rank): new function
2902         * lily/tie-column.cc (before_line_breaking): new function.
2903         (werner_directions): take into account ties that start on
2904         different columns.  
2906         * lily/score-engraver.cc (set_columns): move add_column() so we
2907         have column rank available.
2909         * lily/tie.cc (get_column_rank): new function.
2911         * input/regression/utf8.ly (japanese): add japanese lyrics.
2913         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
2915         * THANKS: add Steve D
2917         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
2918         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
2920 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
2922         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
2923         to show harmonic notes
2924         * scm/define-markup-commands.scm: in \markup-by-number
2925         "dots-dot" -> "dots.dot" to show dotted notes
2927 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2929         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
2931         * flower/memory-stream.cc (writer): new file.
2933         * configure.in: add endian test.
2935 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
2937         * Documentation/user/examples.itely: small
2938         simplification/beautification
2940         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
2941         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
2942         notation manual.
2944         * lily/mensural-ligature.cc: bugfix: another few victims of the
2945         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
2947         * ly/gregorian-init.ly: commit some experimental code for hi-level
2948         ligature input language lying around here for several months.
2950         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
2951         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
2953         * lily/vaticana-ligature-engraver.cc: bugfix: another few
2954         "x-y-z"->"x.y.s-z" fixes.
2956 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2958         * scm/framework-pdf.scm (scm): new file
2960         * lily/include/pdf.hh (class Pdf_file): new file.
2962         * lily/pdf.cc (write_trailer): new file.
2964 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
2966         * input/regression/color.ly: new file
2968         * lily/stencil.cc (interpret_stencil_expression):
2969         when a color expression is encountered: save current color,
2970         process the rest of the expression, and restore previous color.
2972         * lily/system.cc (get_line): check all grobs for color property and
2973         prepare the stencil scheme expressions for further processing.
2974         Fix layer-loop.
2976         * scm/define-grob-properties.scm: introduce the color property.
2978         * scm/output-lib.scm: color helper functions.
2980         * scm/output-ps.scm: introduce setcolor/resetcolor.
2982 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
2984         * ly/*.ly, input/regression/*.ly: Added missing \version
2985         statements in some files.
2987 2005-02-15  Graham Percival  <gperlist@shaw.ca>
2989         * Documentation/user/notation.itely: minor editing.
2991         * Documentation/user/converters.itely: updated convert-ly bugs.
2993         * Documentation/user/lilypond-book.itely: add info about using
2994         feta characters in latex.
2996 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2998         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
3000 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3002         * scm/define-grob-properties.scm (all-user-grob-properties):
3003         removed 'dashed property.
3005 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3007         * scm/lily.scm (define-safe-public): new macro for defining
3008         variables that can be used in --safe mode. Use it in *.scm
3009         instead of manually setting safe-objects in safe-lily.scm.
3011 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3012         
3013         * lily/slur.cc: Slur-dash patch by Bertalan.
3015         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
3017         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
3019 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
3021         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
3023 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3025         * mf/GNUmakefile: teTeX-3.0 install fix.
3027         * Cygwin patch from Bertalan.
3029         * stepmake/stepmake/metafont-rules.make: Remove bashism.
3031 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3033         * GNUmakefile.in: 
3034         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
3036         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
3037         2.0.x compatibility.
3039 2005-02-08  Werner Lemberg  <wl@gnu.org>
3041         * mf/feta-din-code.mf: Format; clean up code.
3042         Replace `---' with `--' plus explicit path directions.
3043         (linethickness#, stafflinethickness#): Remove.
3044         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
3045         ("dynamic s"): Improve shape.
3046         ("dynamic p"): Improve shape.
3047         Replace `draw' with better outline approximation.
3048         ("dynamic r"): Improve shape.
3049         Don't call `fill' and `draw' at the same time.
3051 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3053         * SConstruct (symlink):
3054         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
3055         build fix: add enc symlink.
3057         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
3059         Support for DESTDIR besides prefix=/foo
3061         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
3063         * stepmake/stepmake/*.make:
3064         * */GNUmakefile:
3065         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
3067         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
3069         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
3070         mawk in fontforge (date) test.
3072 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3074         * scm/font.scm (make-century-schoolbook-tree): add NCS as
3075         font-family=roman. Add Luxi Sans as sans
3077 2005-02-07  Graham Percival  <gperlist@shaw.ca>
3079         * Documentation/user/notation.itely: add warning about
3080         percent repeats and Voice contexts.
3082         * Documentation/user/lilypond-book.itely: clarified the
3083         necessity of dvips -u arguments.
3085 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
3087         * THANKS: Added a bunch of bug hunters.
3089 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3091         * scm/framework-ps.scm (output-preview-framework): bugfix.
3093         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
3094         o/ for chord modifier..
3096         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
3098         * lily/drum-note-performer.cc:  remove unused (thanks Michael
3099         Welsh Duggan). 
3101 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3103         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
3105         * ly/titling-init.ly: Do not also print intstrument in header on
3106         first page.  Do not print page number on first and only page.
3108 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3110         * input/regression/*.ly: remove old-relative everywhere
3112         * lily/music-sequence.cc (simultaneous_relative_callback): do
3113         what-if analysis on copy, not on original. Fixes old-relative
3114         compatibility.
3116         * scm/backend-library.scm (postscript->png): space before
3117         --verbose.
3118         
3119 2005-02-05  Werner Lemberg  <wl@gnu.org>
3121         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
3122         is defined.
3124         * mf/feta-alphabet.mf: Define `staffsize#'.
3125         Include `feta-params.mf'.
3126         s/staffheight/design_size/.
3128         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
3130         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
3132         * mf/feta-nummer-code.mf: Reformatted.
3133         (draw_six): Use outline intersection to avoid a self-intersecting
3134         path.
3135         ("Numeral comma"): Fix serious outline glitches.  This slightly
3136         changes the glyph shape.
3137         ("Numeral dash"): Use `draw_rounded_block'.
3138         ("Numeral dot"): Use `drawdot'.
3139         ("Numeral 1"): Assure identical tangent directions for the
3140         intersection points of paths.  The glyph shape improvement is only
3141         visible at very high magnifications.
3142         ("Numeral 2"): Use `solve' macro to make the lower right part of
3143         the glyph outline touch the x axis exactly.  This changes the
3144         glyph shape.
3145         Minor fixes for better overlap removal support.
3146         ("Numeral 4"): Make lefter corner `rounder'.
3147         ("Numeral 5"): Assure identical tangent directions for the
3148         intersection points of paths.  This improves the glyph shape at
3149         high magnifications.
3150         ("Numeral 7"): Use `solve' macro to make the upper right part of
3151         the glyph outline touch the metrics box exactly.  This changes the
3152         glyph shape.
3153         Avoid corner in the upper left part of the glyph (causing a minor
3154         shape change).
3156         * mf/feta-ital-*.mf: Removed.  Unused.
3158 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3160         * VERSION (PATCH_LEVEL): release 2.5.11
3162         * input/regression/fill-line-test.ly: new file.
3164         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
3165         emmentaler name, eg. emmentaler-23. 
3167 2005-02-04  Christian Hitz  <chhitz@gmx.net>
3169         * scm/scm/define-markup-commands.scm (fill-line): rework for better
3170         alignment with centered texts
3172         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
3173         list of paddings
3175 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3177         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
3179         * lily/note-column.cc (translate_rests): call flush_extent_cache()
3180         of parents when translating rests. Fixes: c-chord-rest.ly 
3182         * lily/include/dimension-cache.hh (struct Dimension_cache): add
3183         dimension_callback_ member.
3185         * lily/grob.cc (flush_extent_cache): new function. Force recompute
3186         of extents.
3188 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
3190         * all but lily/*: The grand 2004/2005 replace.
3192 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3194         * lily/*: add space after ,  
3196         * scm/music-functions.scm (has-request-chord): don't use
3197         ly:music-name anywhere. Fixes <<\\>> notation. 
3199         * scm/define-markup-commands.scm (box): use font-size for
3200         padding. Fixes boxed-rehearsal-marks.ly
3202         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
3203         identifier definition too, so foo = \lyrics { ...   } bar = #1
3204         doesn't complain about "bar" being LYRICS_STRING.
3206         * lily/paper-def.cc (find_pango_font): new routine; Store
3207         pango_fonts in hash tab too. This is necessary for retrieving
3208         Pango_fonts::physical_font_tab() later on.
3210         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
3211         crash if psname is null.
3213         * lily/lily-guile.cc (ly_hash2alist): new function
3215         * Documentation/user/changing-defaults.itely (Text encoding):
3216         rewrite. 
3218         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
3219         -> font_filename mapping.
3221         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
3222         ly_pango_font_physical_fonts
3224         * scm/framework-ps.scm (supplies-or-needs): extract names from
3225         physical Pango_fonts.
3227         * utf8.ly: new file.
3229 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3231         * Documentation/user/changing-defaults.itely (Page layout): add
3232         doco about systemSeparatorMarkup.
3234         * scm/page-layout.scm (default-page-make-stencil): add-to-page
3235         function.
3236         (default-page-make-stencil): insert system separators.
3238         * scm/define-markup-commands.scm (hcenter): add
3239         (beam): add.
3241 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3243         * scm/output-ps.scm (ez-ball): reinstate ez notation.
3245 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3247         * lily/main.cc: Spell backend consistently.  Sort options.
3249 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3251         * scripts/lilypond-book.py (Module): revert @include.
3252         
3253 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3255         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
3256         Bugfix: @include .tex (not .texi).  Small cleanups.
3258         * stepmake/bin/add-html-footer.py (i18n): New function.
3260 2005-01-31  Werner Lemberg  <wl@gnu.org>
3262         * mf/feta-nummer.mf: Removed.  Unused.
3264 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3266         * lily/ : 2004 -> 2005 s&r
3268         * scm/file-cache.scm (cached-file-contents): add file. Read each
3269         file only once.
3271         * scm/font.scm (add-pango-fonts): change order. Medium weight is
3272         now default.
3274         * VERSION: release 2.5.10
3275         
3276         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
3278         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
3280         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
3281         that both X and Y extents of bbox are non-nil.
3283 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3285         * scm/chord-name.scm (alteration->text-accidental-markup): change
3286         - to . 
3288         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
3290         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
3292         * Documentation/user/invoking.itely (Invoking lilypond): add note
3293         about EPS backend.
3295         * scm/framework-eps.scm: new file: create per-system/per-page EPS
3296         files for inclusion in lilypond-book document.
3298         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
3300         * input/tutorial/lbook-texi-test.texi: new file.
3302         * scm/safe-lily.scm (safe-objects): add
3303         {begin,end}-of-line-(in)?visible as safe.
3305 2005-01-30  Graham Percival  <gperlist@shaw.ca>
3307         * Documentation/user/changing-defaults.itely: fixed example
3308         of (dynamics).
3310 2005-01-29  Graham Percival  <gperlist@shaw.ca>
3312         * lily/main.cc: fix info about -o=FILE.
3314 2005-01-29  Werner Lemberg  <wl@gnu.org>
3316         * mf/feta-toevallig.mf ("Natural"): Completely changed the
3317         construction to assure smooth transition from straight to curved
3318         lines.
3320 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3322         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
3323         stencils.
3325         * ps/lilyponddefs.ps: add start-page, start-system doesn't
3326         translate to top of page. Fixes alignment problems of
3327         lilypond-generated EPS files.
3329 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3331         * scm/part-combiner.scm (analyse-spanner-states): trigger on
3332         crescendo-end as well, since Decrescendo maybe ended with Stop
3333         Crescendo.). Fixes: partcombine-diminuendo.ly
3335         * scm/script.scm (default-script-alist): swap portato symbols.
3337         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
3339         * lily/paper-outputter-scheme.cc (LY_DEFINE):
3340         ly:outputter-port. New function.
3342         * scm/framework-ps.scm (output-classic-framework): dump a
3343         -systems.texi too
3344         (output-classic-framework): dump multiple systems on an "infinite"
3345         page EPS including fonts. 
3347         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
3348         .eps files for both texi and tex formats. Use PNG coming from
3349         lilypond.
3350         
3351 2005-01-28  Graham Percival  <gperlist@shaw.ca>
3353         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
3355         * scripts/lilypond-latex.py: fix info about -o=FILE.
3357 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3359         * ly/generate-embedded-cff.ly: write .cff.ps files.
3361         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
3363         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
3364         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
3366 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3368         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
3370 2005-01-28  Werner Lemberg  <wl@gnu.org>
3372         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
3373         macros.
3374         (draw_bulb): Improved.
3376         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
3377         metapost bug.
3378         (draw_pedal_P): Use soft_end_penstroke.
3379         (draw_pedal_d): Use soft_start_penstroke.
3381         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
3382         path.
3383         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
3384         doesn't change the glyph shape.
3386         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
3387         changing the shape) to avoid fontforge warnings.
3389         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
3390         soft_end_penstroke and fix glyph shape.
3392 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3394         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
3396 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3398         * scm/define-markup-commands.scm (line): filter out empty stencils
3399         from line command.
3401         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
3402         amount.
3404 2005-01-27  Graham Percival  <gperlist@shaw.ca>
3406         * Documentation/user/notation.itely: added info about what
3407         \voiceFoo does.  Also rewrote warning about marks at
3408         a line break.
3410         * Documentation/user/changing-defaults.itely: added info
3411         about putting dynamics in parenthesis and brackets.
3413 2005-01-27  Werner Lemberg  <wl@gnu.org>
3415         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
3417 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3419         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
3420         portato-direction.ly
3422         * lily/beam.cc (consider_auto_knees): add beam height to
3423         threshold. Fixes: knee-multiple-beam.ly
3425         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
3426         pedal line spanners. Fixes: instrument-center-pedal.ly
3428         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
3429         if encountering barline. Fixes: auto-beam-repeat.ly
3431 2005-01-26  Werner Lemberg  <wl@gnu.org>
3433         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
3434         overlapping.
3436         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
3437         with inflections for the 1/2 sharp glyph.
3439         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
3440         connection between `t' and `r'.
3441         Unify bulb with the rest of `r' to avoid grazing outlines which
3442         confuses the overlap removal algorithm of fontforge.
3444         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
3445         inflections.
3446         (draw_cross): Fix shape to have uniform thickness in corners.
3448         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
3449         to avoid an uneven number of self-intersections; this confuses
3450         fontforge.
3451         Fix a slight bug in the shape at left bottom (which is visible only
3452         at high magnifications).
3453         `Center' the stem horizontally to avoid overlapping.
3455 2005-01-24  Werner Lemberg  <wl@gnu.org>
3457         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
3458         to `asis'.
3459         (fet_begingroup): Save group name in string `feta_group'.
3460         (fet_endgroup): Updated.
3461         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
3463         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
3465         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
3466         in metapost.
3468 2005-01-24  Graham Percival  <gperlist@shaw.ca>
3470         * Documentation/user/notation.itely: really minor editing.
3472 2005-01-22  Graham Percival  <gperlist@shaw.ca>
3474         * Documentation/user/examples.itely: minor editing.
3476         * Documentation/user/changing-defaults.itely: minor editing.
3478         * Documentation/user/notation.itely: clarified info on polyphony
3479         and \addlyrics.
3481 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
3483         * scm/output-gnome.scm: 
3484         * scm/output-svg.scm:
3485         * scm/lily-library.scm (font-name-style): Update font name
3486         kludging for fontconfig use.
3488 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
3490         * scm/define-markup-commands.scm: Document right-align and
3491         larger markup commands. Remove "TODO" from the topmost comment
3492         "each markup function should have a doc string." More consistent
3493         use of new-lines.
3495 2005-01-22  Graham Percival  <gperlist@shaw.ca>
3497         * Documentation/user/changing-defaults: removed info about
3498         copyright symbol, since it's likely to change soon.
3499         Added info about betweensystemspace.
3501         * Documentation/user/notation.itely: minor fixes.
3503         * Documentation/user/lilypond.tely,
3504         Documentation/user/music-glossary.tely: changed copyright
3505         date to 2005 instead of 2004.
3507         * input/test/volta-chord-names.ly: added old example back.
3509 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3511         * mf/feta-beugel.mf: use design size 20 (not 15).
3513         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
3514         change name to aybabtu completely
3516 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3518         * buildscripts/gen-emmentaler-scripts.py (outdir): add
3519         design_size to fontname
3521 2005-01-19  Werner Lemberg  <wl@gnu.org>
3523         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
3524         mf/feta-schrift.mf: s/p/pat/ if a path variable.
3526         * mf/feta-autometric.mf (set_char_box): Add code which emits
3527         specials for mf2pt1 if run with metapost.
3528         (to_bp): New macro for mf2pt1.
3530 2005-01-18  Graham Percival  <gperlist@shaw.ca>
3532         * Documentation/user/changing-defaults: added info on
3533         creating a copyright symbol.
3535 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3537         * VERSION: release 2.5.9
3538         
3539 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
3541         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
3543         * Documentation/user/notation.itely: Document
3544         score-override-auto-beam-setting Fix documentation for
3545         revert-auto-beam-setting.
3547 2005-01-18  Werner Lemberg  <wl@gnu.org>
3549         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
3550         (procset): New function to define a procset resource.
3551         (ps-embed-pfa): New function to define a font resource.
3552         (setup): New function to define a `Setup' environment.
3553         (preamble): Use new functions.
3555         * ps/lilypond.defs (init-lilypond-parameters): New function to
3556         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
3558 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3560         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
3562 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
3564         * scm/define-markup-commands.scm: Change number->markletter-string
3565         to take two arguments (vector number). Add number->mark-alphabet-vector
3566         and markalphabet markup command.
3568         * scm/translation-functions.scm: Add format-mark-box-alphabet,
3569         format-mark-alphabet, format-mark-box-barnumbers and
3570         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
3572 2005-01-17  Graham Percival  <gperlist@shaw.ca>
3574         * Documentation/user/examples.itely: add SATB automatic piano
3575         reduction template.
3577         * Documentation/user/notation.itely: added info about changing
3578         partcombine texts.  Also adds examples of alternate lyrics.
3580         * Documentation/user/changing-defaults.itely: added warning
3581         about \RemoveEmptyStaffContext overriding previous changes.
3583 2005-01-17  Werner Lemberg  <wl@gnu.org>
3585         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
3586         feta-alphabet*.
3588 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3590         * python/lilylib.py (make_ps_images): don't do final showpage for
3591         multi-page documents.
3592         
3593         * VERSION (MY_PATCH_LEVEL): release 2.5.8
3595 2005-01-16  Graham Percival  <gperlist@shaw.ca>
3597         * Documentation/user/lilypond.tely: changed order of appendices;
3598         unified index should be last.
3600         * Documentation/user/notation.itely: add example of key signatures
3601         and info about Staff.printKeyCancellation.
3603 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3605         * lily/include/repeated-music.hh (class Repeated_music): change
3606         into "namespace" class.
3608         * lily/event.cc: remove Key_change_event.
3610         * lily/include/transposed-music.hh (class Transposed_music): remove.
3612         * lily/transposed-music.cc: remove
3614         * lily/include/relative-music.hh: remove.
3616         * lily/include/music-sequence.hh (struct Music_sequence): change
3617         into "namespace" class.
3619         * lily/untransposable-music.cc (Module): remove
3621         * lily/include/un-relativable-music.hh (Module): remove
3623         * lily/include/untransposable-music.hh (Module): remove
3625         * lily/include/music-list.hh (Module): remove file
3627         * lily/un-relativable-music.cc: remove file.
3629 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3631         * lily/parser.yy: Compile fix.
3633 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3635         * lily/include/music.hh (class Music): unvirtualize transpose().
3637         * lily/sequential-music.cc: remove file.
3639         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
3641         * lily/slur-scoring.cc (get_best_curve): only switch on
3642         DEBUG_SLUR_SCORING for non NDEBUG builds.
3644         * lily/include/music.hh (class Music): replace Music::start_mom()
3645         by start-callback property
3647         * lily/include/grace-music.hh: remove file. 
3649         * lily/stem.cc (height): robustness fix.
3651         * lily/time-scaled-music.cc: remove file.
3653         * lily/include/music.hh (class Music): include SCM init argument.
3654         (class Music): replace Music::get_length() virtual by
3655         length-callback property everywhere.
3657         * scripts/convert-ly.py (conv): add  # to \property scalar value.
3659         * mf/GNUmakefile: don't install *list.ly
3661 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3663         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
3665 2005-01-12  Werner Lemberg  <wl@gnu.org>
3667         This patch addresses the following problems in the feta sources
3668         files which contribute to the fetaXX fonts.
3670         . Many fixes for rasterization at low resolutions (consistent use of
3671           `vround' and `hround', integer shift values for paths, applying
3672           `eps' for mirrored paths, use of `define_whole_pixels' and
3673           friends, etc.) -- while this probably looks like a waste of time
3674           it has revealed deficiencies in some glyph shapes.  See comment at
3675           the end of feta-params.mf how vertical symmetry is achieved.
3677         . The `---' operator has been replaced everywhere with `--'; this
3678           both improves and considerably reduces the font size after
3679           conversion with mf2pt1.
3681         These change aren't explicitly mentioned below since virtually all
3682         glyphs are affected.
3684         Other notable differences:
3686         . Glyphs from feta-accordion.mf now have charboxes around the
3687           outline.
3689         . Fixed incorrect charbox for `accDot'.
3691         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
3693         . Fixed position of the bow in the `upprall' glyph and its siblings.
3695         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
3696           dependent on the staff line thickness to avoid touching the middle
3697           staff line at smaller sizes.
3699         . Largely extended output for feta-testXX: Where useful, glyphs
3700         are shown both between and on staff lines.
3703         * mf/feta-params.mf (staff_space_rounded,
3704         stafflinethickness_rounded, linethickness_rounded,
3705         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
3706         Update all code which uses them where appropriate.
3707         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
3708         New variables used to control rasterization at low resolutions.  Set
3709         to zert if feta code is processed with metapost.
3711         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
3712         (draw_rounded_block, draw_square_block): Updated to use `--' only.
3713         (flare_path): Updated.
3714         Make it work with `filldraw' (but only circular pens).
3715         (hfloor, vfloor, hceiling, vceiling): New macros.
3717         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
3718         Use `draw' again in mf mode to have good pixel dropout control.
3719         Fix intersection points of horizontal lines with circle.
3720         ("accDot"): Fix parameters for set_char_box.
3721         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
3722         control.
3724         * mf/feta-banier.mf: Updated.
3726         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
3727         testing.
3728         (undraw_inside_ellipse): Remove `center' argument.  Update all
3729         callers.
3730         (draw_brevis): New macro, called by "Brevis notehead".
3731         (draw_whole_triangle_head): New macro, called by "Whole
3732         trianglehead".
3733         (draw_small_triangle_head): Use `filldraw'.
3735         * mf/feta-eindelijk.mf: Remove useless global group.
3736         Updated.
3738         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
3739         `filldraw'.
3741         * mf/feta-pendaal.mf: Updated.
3743         * mf/feta-puntje.mf: Updated.
3745         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
3746         less points.
3747         ("Flageolet"): Use `draw' again in mf mode to have good pixel
3748         dropout control.
3749         ("Varied Coda"): Use `draw_block'.
3750         (draw_comma): Fix typo.
3751         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
3752         pixel dropout control.
3754         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
3755         position of bow.
3757         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
3758         sizes.
3760         * mf/feta-toevallig.mf (remember_pic): New variable, used for
3761         testing.
3762         (draw_meta_sharp): Much simplified.
3763         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
3765         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
3767 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3769         * Documentation/user/notation.itely (Ancient rests): Fix typo
3770         (thanks Anthony)
3772 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3774         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
3776         * lily/main.cc (setup_paths): Add cff.
3778         * mf/GNUmakefile (foe): Include actual target %.cff.
3779         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
3781 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3783         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
3784         suffix for main_input_b_.
3786         * scm/music-functions.scm (toplevel-music-functions):
3787         precompute music lengths for music expressions.  
3789 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3791         * lily/include/input.hh (class Input): new `end_' slot for end of
3792         input. Renamed defined_str0_ to start_.
3794         * lily/input.cc (Input): Add Input::Input (Input const &) and
3795         remove Input::Input (Source_file*, char const *). Use the new
3796         slots.
3797         (set_location): method used by bison to propagate input
3798         locations (YYLLOC_DEFAULT).
3799         (end_line_number, end_column_number, step_forward): new methods
3800         
3801         * lily/input-scheme.cc (ly:input-both-locations): new function,
3802         similar to ly:input-location, but also return the end line and
3803         column.
3805         * lily/include/includable-lexer.hh: 
3806         * lily/includable-lexer.cc: 
3807         * lily/include/lily-lexer.hh (class Lily_lexer): 
3808         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
3809         Includable_lexer to Lily_lexer, in order to update lexloc (the
3810         yylloc), a new slot of Lily_lexer.
3811         (here_input, LexerError): simplify by using the lexloc slot (aka
3812         yylloc)
3814         * lily/lexer.ll: #define yylloc to use input locations (it may
3815         be useless here?). Fixed the #embedded_scm rule (step the location
3816         forward in order to skip the sharp sign before parsing the scheme
3817         expression)
3819         * lily/include/lily-parser.hh (class Lily_parser): 
3820         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
3821         here_input()
3822         (parser_error): overload for more precise locations of errors.
3824         * lily/parser.yy (YYLTYPE): set location type to Input
3825         (YYLLOC_DEFAULT): use Input::set_location()
3826         (yylex): add the YYLTYPE* location parameter.
3827         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
3828         Give an Input parameter to THIS->parser-error() for more accurate
3829         messages.
3831 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3833         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
3835         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
3836         on BEAMQUANTING for non-NDEBUG builds.
3838         * lily/stem.cc (head_count): performance: avoid String::String()
3839         inside oft called function.
3841 2005-01-09  Graham Percival  <gperlist@shaw.ca>
3843         * Documentation/user/examles.itely: attempted fix for broken
3844         string quartet template.
3846         * Documentation/user/notation.itely: remove unnecessary broken
3847         link.
3849 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3851         * VERSION (PACKAGE_NAME): release 2.5.7
3853 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3855         * config.make.in (METAFONT): Append -progname=mf, fixes use with
3856         mf-nowin for teTeX-3.0.  Backportme.
3858         * scm/output-svg.scm (utf8-string): New function.
3860         * scm/output-gnome.scm (utf8-string): New function.
3861         (otf-name-mangling): Remove.
3863         * lily/pango-font.cc (Pango_font): Use font string iso font
3864         filename for utf8-text.
3866         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
3867         name.
3869 2005-01-08  Graham Percival  <gperlist@shaw.ca>
3871         * Documentation/user/notation.itely: add info about
3872         Staff.extraNatural = ##f in Pitches section.  Also
3873         fixed some minor issues in the Vocal music section.
3875 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3877         * scm/output-ps.scm (white-text): comment out Helvetica font,
3878         which is broken for my GS install.
3880         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
3881         which provides a tighter bbox.
3883         * scm/define-grobs.scm (all-grob-descriptions): remove all
3884         extra-offsets from definitions.
3886 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
3888         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
3889         add tuning for 4-string bass and some common 4/5-string banjo
3890         tunings.  New function (four-string-banjo) turns a 5-string tuning
3891         into a 4-string tuning.  New function
3892         (fret-number-tablature-format-banjo) computes correct fret numbers
3893         on 5-string banjos.
3895         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
3896         Add beam correction to TabVoice.
3898         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
3899         using bold font; makes tabs more readable.
3901 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3903         * lily/font-select.cc (get_font_by_design_size): don't make
3904         Modified_font_metric; this causes trouble, since we don't know the
3905         font magnification from inside Pango_font::text_stencil()
3907         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
3909         * Documentation/user/notation.itely (The Lyrics context): comment out
3910         broken {Small ensembles} link.
3912         * scm/framework-svg.scm (output-framework): change calling convention.
3914         * lily/object-key-dumper-scheme.cc: new file.
3916         * lily/object-key-undumper-scheme.cc: new file.
3918         * lily/tweak-registration-scheme.cc: new file.
3920         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
3922         * Documentation/user/examples.itely (String quartet): uncomment
3923         broken example.
3925         * lily/font-config.cc: new file.
3927 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3929         * scm/output-svg.scm: 
3930         * scm/output-gnome.scm: s/bigcheese/emmentaler.
3932         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
3934 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3936         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
3937         Add headers.
3939         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
3941 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3943         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
3945         * lily/include/main.hh: lose _b hungarian suffixes for global
3946         variables.
3948         * lily/include/lily-guile-macros.hh: new file.
3950         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
3952         * lily/general-scheme.cc: new file. 
3954         * lily/font-select.cc (get_font_by_design_size): retrieve
3955         PangoFont for (designsize . "pango-descr") entries.
3957         * lily/lily-parser-scheme.cc: new file.
3959         * lily/output-def-scheme.cc: new file.
3961         * lily/paper-book-scheme.cc: new file.
3963         * lily/duration-scheme.cc (LY_DEFINE): new file.
3965         * lily/pitch-scheme.cc:  new file.
3967         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
3969 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3971         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
3973 2005-01-06  Graham Percival  <gperlist@shaw.ca>
3975         * Documentation/user/notation.itely: minor editing.
3977         * Documentation/user/changing-defaults: minor editing.
3979         * Documentation/user/examples.itely: add template for
3980         string quartet part extraction; demonstrates tag.
3982 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
3984         * Documentation/user/notation.itely: documents
3985         format-mark-box-letters and format-mark-box-numbers
3987         * scm/define-context-properties.scm: change comment.
3989 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3991         * scm/framework-ps.scm (output-classic-framework): new function:
3992         dump systems as separate .eps files (without fonts) and write a
3993         single collecting .tex file.
3995 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3997         * Documentation/user/notation.itely (Setting simple songs):
3998         Correct several errors in the equivalent formulation of
3999         \addlyrics. 
4000         (The Lyrics context): Corrected link to the SATB example.
4002 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4004         * scm/lily.scm (completize-formats): new function
4005         (postprocess-output): new function
4007         * lily/paper-book.cc (classic_output): change calling
4008         convention. Give basename as first argument. 
4009         remove Paper_book::post_processing().
4011         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
4013 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4015         * lily/paper-outputter.cc (LY_DEFINE): new function
4016         ly:outputter-close.
4018         * lily/main.cc: change --format,-f to --backend,-b
4020         * lily/include/main.hh: rename format to backend.
4022         * scm/translation-functions.scm (format-mark-box-numbers): add.
4023         patch by Erlend Aasland
4025 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4027         * lily/pango-font.cc (text_stencil): dump string as
4028         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
4030 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4032         * configure.in (gui_b): Remove handy developer-only
4033         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
4034         CVS source installations (but break other non-default but correct
4035         PKG_CONFIG_PATH setups), as this is no longer developer-only.
4037         * SConstruct: 
4038         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
4039         compatibility (backportme).
4041         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
4043 2005-01-03  Werner Lemberg  <wl@gnu.org>
4045         Prepare glyph shapes for mf2pt1 conversion.
4047         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
4048         (accDiscant, accFreebase, accStdbase): Replace `draw' with
4049         `penstroke'.
4050         (accDot): Use `drawdot'.
4051         (accBayanbase): Replace `draw' with `draw_gridline'.
4052         (print_penpos): Moved to feta-macros.mf.
4053         (accOldEE): Replace `filldraw' with `penstroke'.
4054         Replace `draw' with `penstroke' and `drawdot'.
4056         * mf/feta-banier.mf: Code clean-up.
4057         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
4058         `fill'.
4060         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
4062         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
4063         paremeter to control drawing of labels.  Update all callers.
4065         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
4066         (new_bulb): Return a bulb as a single path.  To do that, it now
4067         takes some more parameters.  Updated all callers.
4068         (draw_gclef): Major clean-up.  `draw' has been replaced with
4069         `penstroke', unnecessary outlines have been removed.
4070         Remove (unused) gnome-canvas code.
4072         * mf/feta-macros.mf (print_penpos): New macro (from
4073         feta-accordion.mf).
4074         Other minor fixes.
4076         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
4077         ("Pedal dot"): Use `drawdot'.
4078         (draw_pedal_P): Add parameter to control drawing of labels.  Update
4079         all callers.
4080         Fix shape at top.
4081         (draw_pedal_e): Add parameter to control drawing of labels.  Update
4082         all callers.
4083         (draw_pedal_d): Add parameter to control drawing of labels.  Update
4084         all callers.
4085         Revert drawing direction.
4087         * mf/feta-schrift.mf (draw_fermata): Use single path.
4088         (draw_short_fermata): Replace `filldraw' with `fill'.
4089         (draw_long_fermata, draw_very_long_fermata): Replace calls to
4090         `draw_rounded_block' with a single path.
4091         ("Thumb"): Draw full circle instead of mirroring segments.
4092         (draw_accent): New macro.
4093         ("> accent", "espr"): Use it.
4094         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
4095         ("open (unstopped)"): Draw full circle instead of mirroring
4096         segments.
4097         (draw_vee): Removed.
4098         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
4099         ("Downbow"): Replace calls to `draw_rounded_block' with a single
4100         path.
4101         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
4102         partial pieces drawn with `fill' -- these do still overlap with the
4103         stem of the `t' but just once, not multiple times so that fontforge
4104         can handle it gracefully.
4105         Change other parts of the glyph so that fontforge's overlapping
4106         algorithm reliably works.
4107         (draw_heel): Replace `draw' with `fill'.
4108         (draw_toe): Use `draw_accent' instead of `draw_vee'.
4109         ("Flageolet"): Replace `draw' with `penstroke'.
4110         ("Segno"): Replace `filldraw' with `penstroke'.
4111         Replace `draw' with `drawdot'.
4112         ("Coda"): Replace `fill' with `penstroke', using a single path.
4113         ("Varied Coda"): Use less overlapping paths.
4114         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
4115         single path.
4117         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
4118         group to better control the `labels' command.
4119         Rename argument to `offset' and use it actually.  Update all
4120         callers.
4121         Replace `filldraw' with `fill'.
4122         ("mordent", "prallmordent", "upmordent", "downmordent",
4123         "lineprall"): Replace `draw' with `draw_gridline'.
4124         ("upprall", "downprall"): Replace `draw' with `fill'.
4126         * mf/feta-timesig.mf: Formatting.
4128         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
4129         to...
4130         ("Flat"): Here.
4131         (draw_paren): Move code to draw labels to...
4132         ("Right Parenthesis"): Here.
4134 2005-01-02  Graham Percival <gperlist@shaw.ca>
4136         * Documentation/user/notation.itely: add example of \setTextDecresc
4137         and \setTextDim.
4139 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
4141         * scm/define-markup-commands.scm :  fix glyph-strings of
4142         accidentals and \note-by-number
4144 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4146         * VERSION: 2.5.6 released.
4147         
4148         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
4150         * input/regression/new-markup-scheme.ly: oops. font-family=music
4151         -> font-encoding fetaMusic.  
4153         * lily/main.cc: put default to PS.
4155         * lily/tfm.cc: idem.
4157         * lily/afm.cc: idem.
4159         * lily/include/modified-font-metric.hh (struct
4160         Modified_font_metric): remove coding_scheme() method.
4162         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
4164         * scripts/convert-ly.py (conv): crash on encountering \encoding.
4166         * input/les-nereides.ly: convert to utf8
4168         * lily/modified-font-metric.cc (text_dimension): idem.
4170         * lily/parser.yy (TODO): idem.
4172         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
4174         * lily/lexer.ll: remove encoding
4176         * scm/framework-ps.scm (output-variables): separately scale the
4177         page to mm 
4179         * lily/pango-font.cc (Pango_font): fix scaling.
4181         * lily/font-metric.cc (design_size): design_size returns a
4182         dimension now as well.
4184 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4186         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
4187         brace generation. 
4189         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
4191 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4193         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
4194         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
4196 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4198         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
4199         in first run as well.
4201         * scm/paper.scm (layout-set-staff-size): use text-font-size in
4202         dimension less points (ie. 12 = 12 point)
4204         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
4206         * lily/all-font-metrics.cc (find_pango_font): set description_
4208         * lily/pango-font.cc (text_stencil): export size as well.
4209         (text_stencil): fix scaling and extents box.
4211 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4213         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
4215         * Documentation/user/invoking.itely (Invoking lilypond): document
4216         texstr
4218         * scripts/convert-ly.py (conv): add ancient rules.
4220         * scm/clef.scm (c0-pitch-alist): replace - with .
4222         * scripts/lilypond-book.py (process_snippets): add texstr support.
4224         * scm/framework-texstr.scm (header): change extension to .textmetrics
4226         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
4227         -f tex.
4229         * lily/text-metrics.cc: new file.
4230         (try_load_text_metrics): new function
4232         * lily/include/text-metrics.hh: new file.
4234 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4236         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
4237         ly_scheme_function to ly_lily_module_constant.
4239         * lily/modified-font-metric.cc (text_dimension): try
4240         lookup_tex_text_dimension() first.
4242         * lily/tfm.cc: new function ly:load-text-dimensions
4244 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4246         * scm/output-texstr.scm (text): use \lilygetmetrics
4248         * scm/framework-texstr.scm (header): dump in new format.
4250         * tex/lilypond-tex-metrics: new file.
4251         
4252 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4254         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
4255         mapping.
4256         (index_to_charcode): New method.
4258         * scm/output-ps.scm (glyph-string): 
4259         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
4261 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
4263         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
4264         implement fully, need FONT to get to charcode.
4266         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
4268         * scm: Cleanups.
4270         * Documentation/user/changing-defaults.itely: Fix internalsrefs
4271         {Tunable context properties},
4272         {All layout objects},
4273         {Music definitions}.
4275 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4277         * VERSION: release 2.5.5
4278         
4279         * lily/main.cc: use TeX as default output format.
4281         * flower/file-path.cc (find): try to open directly as well, so we
4282         find absolute path files. 
4284         * lily/pango-select.cc: new file.
4286         * scm/framework-ps.scm: remove all encoding code. 
4287         load pfb/pfa for PangoFont too.
4288         
4289         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
4291 2004-12-22  Werner Lemberg  <wl@gnu.org>
4293         Prepare glyph shapes for mf2pt1 conversion.
4295         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
4297         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
4298         (define_triangle_shape): Use it to replace `draw' with `fill' and
4299         `unfill'.  Update all callers.
4300         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
4301         (draw_cross): Ditto.
4302         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
4303         Use penrazor for better conversion with mf2pt1.
4304         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
4305         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
4306         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
4307         draw_la_head, draw_ti_head): Replace `filldraw' with
4308         `fill'.  Update all callers.
4310 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4312         * lily/paper-book.cc (output): revert: only allow a single output
4313         format.
4315         * lily/include/pango-font.hh: new file.
4317         * lily/pango-font.cc: new file.
4319         * lily/font-metric.cc (text_stencil): new routine
4321         * lily/all-font-metrics.cc (find_pango_font): new routine.
4323         * lily/include/font-metric.hh (struct Font_metric): add
4324         text_stencil()
4326         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
4328 2004-12-22  Werner Lemberg  <wl@gnu.org>
4330         Prepare glyph shapes for mf2pt1 conversion.
4332         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
4334         * mf/feta-toevallig.mf: Formatting.
4335         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
4336         ("Natural"): Fix paths to allow better postprocessing.
4337         (draw_meta_flat): Use `z3l' as additional point in path to get
4338         better conversion with mf2pt1.
4339         Other minor cleanups.
4340         ("3/4 Flat"): Add auxiliary points and modify path to replace
4341         `draw' with `fill'.
4342         ("Double Sharp"): Mirror path segments instead of picture elements
4343         to get a single outline.
4344         Modify path to replace `filldraw' with `fill'.
4346 2004-12-22  Graham Percival  <gperlist@shaw.ca>
4348         * input/test/unfold-all-repeats.ly: added file back.
4350         * Documentation/user/notation.itely,
4351         Documentation/user/programming-interface.itely
4352         Documentation/user/changing-defaults.itely: fixed misc broken
4353         links to input/test/ files.
4355 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4357         * tex/texinfo.tex: Update.  We should not be distributing this,
4358         but since we do, use latest version.
4360         * Documentation/user/macros.itexi: Comment-out \fetaflat,
4361         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
4362         macros for feta glyphs.
4364 2004-12-22  Graham Percival  <gperlist@shaw.ca>
4366         * Documentation/user/changing-defaults.itely: fix index for set.
4368         * Documentation/user/converters.itely: added convert-ly bugs list
4369         from CVS.
4371 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4373         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
4374         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
4375         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
4376         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
4378         * mf/GNUmakefile (pfa_warning): Use less broken check.
4380         * python/lilylib.py (setup_environment): Remove cruft from
4381         GS_FONTPATH.
4383         * configure.in: Bump mftrace requirement to 1.1.1.
4385 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4387         * scm/output-svg.scm (beam): Use polygon.
4389         * scm/lily-library.scm: Bugfix.
4391         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
4393         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
4395 2004-12-19  Werner Lemberg  <wl@gnu.org>
4397         Prepare glyph shapes for mf2pt1 conversion.
4399         * mf/feta-eindelijk: Some formatting.
4400         (multi_rest_x, multi_beam_height): Removed.  Unused.
4401         ("Quarter rest"): Use `intersectiontimes' to create a single
4402         outline.
4403         (rest_crook): Removed.  Unused.
4404         (draw_rest_bulb): Return path (wihtout filling).  Update callers.
4405         Simplified.
4406         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
4407         "128th rest"): Simplify `pat'.
4408         Create single outline.
4410 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4412         * mf/GNUmakefile (ALL_GEN_FILES):
4413         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
4415         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
4416         function.
4418 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4420         * scm/output-texstr.scm (placebox): add routine
4422         * VERSION (PACKAGE_NAME): release 2.5.4
4424         * scm/framework-texstr.scm (output-framework): new file.  
4426         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
4427         processing.
4429         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
4431         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
4432         rule.
4434         * configure.in (gui_b): bump mftrace requirement to 1.1.0
4436         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
4438         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
4440 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4442         * scm/framework-svg.scm (dump-page): Implement landscape.
4444 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4446         * lily/main.cc (setup_paths): Add svg to search path.
4448         * scm/output-svg.scm:
4449         * scm/framework-svg.scm: Add pageSet.  Update.
4450         (dump-fonts): New function.
4451         (output-framework): Use it.
4453         * mf/GNUmakefile: 
4454         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
4456 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4458         * tex/lilyponddefs.tex: comment out new ifpdf code.
4460 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4462         * GNUmakefile.in: 
4463         * SConstruct (symlink): Replace afm by otf.
4465         * scm/framework-gnome.scm (gnome-main): Remove invocation of
4466         ly:pango-add-afm-decoder.
4468         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
4470 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4472         * scm/output-ps.scm (new-text): don't access t glyph for getting
4473         space dimension.
4475         * ly/init.ly: warn about \version
4477         * lily/lexer.ll: set version-seen?
4479 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4481         * scm/output-svg.scm (string->entities): Update.
4483 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4485         * lily/main.cc (setup_paths): replace afm by otf for path. 
4487         * lily/pangofc-afm-decoder.cc: remove.
4489         * lily/include/pangofc-afm-decoder.hh: remove.
4491         * scm/framework-scm.scm (output-framework): new file.
4493         * mf/GNUmakefile: remove SAUTER_FONTS.
4494         remove SVG/sodipodi hacks.
4496         * scm/lily-library.scm (stderr): move stderr.
4498         * mf/GNUmakefile: remove AFM support.
4500         * buildscripts/mf-to-table.py (base): remove AFM support.
4502         * lily/open-type-font.cc (design_size): use design_size
4504 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
4506         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
4508 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4510         * mf/GNUmakefile: Generate combined aybabtu info.
4511         * mf/aybabtu.pe.in (i): Load it.
4513         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
4514         are not symbols.
4516         * lily/include/open-type-font.hh (count): New method.
4518         * mf/aybabtu.pe.in: Typo.
4520         * Documentation/user/out/lilypond-internals.nexi (Scheme
4521         functions): Typo.
4523         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
4525 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4527         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
4528         subfonts.
4530         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
4532         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
4533         (tex-font-command-raw): new function.
4535         * lily/include/virtual-font-metric.hh (Module): remove file
4537         * lily/virtual-font-metric.cc (Module): remove file.
4538         
4540         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
4541         (get_indexed_char): read bbox from lily table if present.
4543 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4545         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
4546         aybabtu.subfonts
4548         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
4549         global glyphname. Enables more than 64 glyphs in the OTF.
4551 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4553         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
4554         braces.
4556         * lily/open-type-font.cc (design_size): Use 12 as default for
4557         design size.
4559         * mf/aybabtu.pe.in: New file.  Merge all our braces.
4561         * mf/GNUmakefile: Generate aybabtu.
4563         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
4565 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4567         * scm/lily-library.scm (char->unicode-index): Remove.
4569         * scm/output-gnome.scm (text): Bugfix for plain string input.
4570         Updates.
4572         * scm/output-svg.scm (svg-font): Add weight to font selection.
4574 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4576         * Documentation/topdocs/INSTALL.texi (Top): Point to
4577         buildscripts/out/clean-fonts instead of
4578         buildscripts/clean-fonts.sh. 
4580 2004-12-13  Graham Percival  <gperlist@shaw.ca>
4582         * input/regression/figured-bass.ly: attempt to clarify text.
4584         * Documentation/user/notation.tely: add cindex for tag, attempt to
4585         add figured bass example.
4587         * Documentation/user/changing-defaults: basic editing.
4589 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4591         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
4593         * lily/open-type-font.cc (LY_DEFINE): new function
4594         ly:font-sub-fonts
4596         * lily/include/font-metric.hh (struct Font_metric): new method
4597         sub_fonts()
4599         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
4600         . with - in add.stem.
4601         
4602 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4604         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
4605         and fetaDynamic.
4607         * lily/rest.cc (glyph_name): Change - to . .
4609         * scm/output-gnome.scm (text): Hello world, again.
4611         * scm/output-svg.scm (named-glyph): New function.  Hello world!
4613         * lily/modified-font-metric.cc (index_to_charcode): New method.
4615         * lily/include/font-metric.hh (index_to_charcode): New function.
4617         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
4618         new function.
4619         (ly:font-glyph-to-index): Remove.
4621 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4623         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
4625         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
4627         * lily/open-type-font.cc (load_scheme_table): new function
4629         * lily/dots.cc (print): replace - 
4631         * lily/open-type-font.cc (attachment_point): new function.
4632         (load_table): read LILC table
4634         * buildscripts/gen-bigcheese-scripts.py (Module): new
4635         file. Generate FF scripts.
4637         * mf/feta-din10.mf: idem.
4639         * mf/feta-nummer10.mf: remove mf files.
4641         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
4643 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4645         * lily/lily-guile.cc: Use scm_from_locale_stringn.
4647         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
4648         compatibility.
4650 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4652         * lily/open-type-font.cc (get_indexed_char): scale metrics by
4653         design-size and units_per_EM.
4655         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
4657 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4659         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
4660         does not crash fontforge.
4662         * scm/lily-library.scm (char->unicode-index): Hack to map onto
4663         PUA.
4665 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4667         * scm/framework-ps.scm (ps-embed-cff): new function.
4669         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
4671 2004-12-12  Werner Lemberg  <wl@gnu.org>
4673         * mf/bigcheese.pe.in: Add PUA mapping.
4674         Don't create Type 42 but bare CFF font.
4676 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4678         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
4679         within canvas boundaries.
4681         * mf/merge.pe.in: Set font names, version, license GPL.
4683         * make/substitute.make: Add FONTFORGE.
4685         * config.make.in (FONTFORGE): Add.
4687         * configure.in (gui_b): Use PATH_PROG for fontforge.
4689 2004-12-11  Graham Percival  <gperlist@shaw.ca>
4691         * scm/define-markup-commands.scm: add baseline-skip to info
4692         about \column.
4694 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4696         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
4698         * scm/output-gnome.scm (named-glyph): Use it.
4700         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
4702         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
4703         (upper_string, lower_string, reverse_string): Remove.
4705         * configure.in (fontforge): Reinstate version check.
4707         * ly/engraver-init.ly: Fix clef glyph names.
4709         * lily/time-signature.cc (special_time_signature): Fix fraction
4710         glyph names.
4712 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4714         * mf/merge.pe: new file.
4716         * lily/freetype.cc: new file.
4718         * lily/include/open-type-font.hh (class Open_type_font): new file.
4720         * lily/include/freetype.hh: new file.
4722         * lily/open-type-font.cc: new file.
4724         * lily/all-font-metrics.cc (find_otf): new function.
4726 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4728         * lily/time-signature.cc (special_time_signature): Fix.
4730         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
4731         GTK2 before checking for pango.  Fixes -fgnome.
4733         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
4734         Scheme name.
4736         * scm/define-markup-commands.scm:
4737         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
4739         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
4741         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
4742         date versions.  Fixes configure.
4743         (STEPMAKE_CHECK_VERSION): Support optional actual program version
4744         argument.
4746 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4748         * buildscripts/mf-to-table.py (write_ps_encoding): write real
4749         names in .enc
4751         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
4753 2004-12-09  Graham Percival  <gperlist@shaw.ca>
4755         * Documentation/user/changing-defaults.itely: add info about
4756         make-dynamic-script
4758         * Documentation/user/notation.itely: add link in dynamics to
4759         section about make-dynamic-script.
4761 2004-12-09  Christian hitz  <chhitz@gmx.net>
4763         * lily/lily-guile.cc: change MACOS_X to __APPLE__
4765 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4767         * buildscripts/mf-to-table.py (parse_logfile): use . for
4768         concatting name and group.
4769         (parse_logfile): use M for Minus (negative.)
4771         * lily/include/type-swallow-translator.hh
4772         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
4774         * lily/*.cc: cosmetics around = sign.
4776         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
4777         lyric spacing on the penultimate column.
4779 2004-12-05  Christian Hitz  <chhitz@gmx.net>
4781         * configure.in:
4782         * lily/accidental-placement.cc:
4783         * lily/bar-line.cc:
4784         * lily/beam-concave.cc:
4785         * lily/beam-quanting.cc:
4786         * lily/beam.cc:
4787         * lily/bezier-bow.cc:
4788         * lily/bezier.cc:
4789         * lily/break-align-interface.cc:
4790         * lily/custos.cc:
4791         * lily/dimension-cache.cc:
4792         * lily/dot-column.cc:
4793         * lily/font-metric.cc:
4794         * lily/font-select.cc:
4795         * lily/gourlay-breaking.cc:
4796         * lily/grob-property.cc:
4797         * lily/grob.cc:
4798         * lily/lily-guile.cc:
4799         * lily/line-spanner.cc:
4800         * lily/lookup.cc:
4801         * lily/lyric-extender.cc:
4802         * lily/lyric-hyphen.cc:
4803         * lily/mensural-ligature.cc:
4804         * lily/midi-def.cc:
4805         * lily/misc.cc:
4806         * lily/note-collision.cc:
4807         * lily/note-column.cc:
4808         * lily/note-head.cc:
4809         * lily/paper-outputter.cc:
4810         * lily/percent-repeat-item.cc:
4811         * lily/rest-collision.cc:
4812         * lily/side-position-interface.cc:
4813         * lily/simple-spacer.cc:
4814         * lily/slur-configuration.cc:
4815         * lily/slur-scoring.cc:
4816         * lily/slur.cc:
4817         * lily/spaceable-grob.cc:
4818         * lily/spacing-spanner.cc:
4819         * lily/spanner.cc:
4820         * lily/staff-symbol-referencer.cc:
4821         * lily/stem.cc:
4822         * lily/stencil.cc:
4823         * lily/system-start-delimiter.cc:
4824         * lily/system.cc:
4825         * lily/text-item.cc:
4826         * lily/tie.cc:
4827         * lily/tuplet-bracket.cc:
4828         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
4829         <cmath> beacause isinf/isnan is undefined in <cmath>
4831 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4833         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
4835 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4837         * VERSION: release 2.5.3
4838         
4839 2004-11-29  Arno Waschk <arno@arnowaschk.de>
4841         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
4843 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4845         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
4847         * lily/note-head.cc (internal_print): always try the "s" head if
4848         u/d not found.
4850         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
4852 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4854         * mf/parmesan-heads.mf (overdone_heads): typos.
4856 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4858         * lily/parser.yy (markup): in markups, { .. } without command
4859         before are also flattened, ie \line must be explicitely used.
4861         * Documentation/user/changing-defaults.itely:
4862         * Documentation/user/notation.itely: 
4863         * input/wilhelmus.ly: 
4864         * input/regression/instrument-name-markup.ly: 
4865         * input/regression/markup-score.ly: 
4866         * input/regression/new-markup-scheme.ly: 
4867         * input/regression/new-markup-syntax.ly: 
4868         * input/test/coriolan-margin.ly: use \line in markups where
4869         appropriate
4870         
4871 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4873         * scm/new-markup.scm (map-markup-command-list): helper function
4874         used in parser.yy to map markup commands on a markup list.
4876         * lily/parser.yy: get rid off < > in markups by treating { } as
4877         real lists.
4879         * lily/lexer.ll: remove < > from markup lexer mode.
4881         * scripts/convert-ly.py (conv): add rule for converting 
4882         \markup < > to \markup { }
4884         * ly/titling-init.ly: 
4885         * input/test/coriolan-margin.ly: 
4886         * input/regression/new-markup-syntax.ly: 
4887         * input/regression/new-markup-scheme.ly: 
4888         * input/regression/multi-measure-rest-text.ly: 
4889         * input/regression/markup-stack.ly: 
4890         * input/regression/markup-score.ly: 
4891         * input/regression/instrument-name-markup.ly: 
4892         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
4893         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
4894         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
4895         * input/wilhelmus.ly: 
4896         * Documentation/user/notation.itely: 
4897         * Documentation/user/music-glossary.tely: 
4898         * Documentation/user/changing-defaults.itely: change < > to { } in
4899         markups
4901 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4903         * lily/accidental-placement.cc (position_accidentals): shortcut if
4904         no accidentals to place.
4906 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4908         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
4909         typo s/ly:dimension ?/ly:dimension?/
4911         * input/regression/lily-in-scheme.ly: 
4912         * input/regression/music-function.ly: 
4913         * ly/spanners-init.ly (assertBeamSlope): 
4914         * scm/music-functions.scm (def-grace-function): add the paper
4915         argument to music function definitions.
4917 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4919         * lily/moment.cc (LY_DEFINE):
4920         ly:moment-main-{denominator,numberator}, new function.
4922         * lily/score-engraver.cc (typeset_all): assign to column on basis
4923         of axis-group-parent-X setting.
4925         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
4926         add_element() on basis of axis-group-parent-Y setting.
4928         * lily/grob.cc: add axis-group-parent-{XY} properties.
4930         * input/regression/spacing-stick-out.ly: new file.
4932         * lily/simple-spacer.cc (add_columns): use binary search for
4933         setting column rods. Changes O(n^2) to O(n log(n)) for
4934         constructing spacing problem from columns.
4935         (add_columns): read allow-outside-line to make sure no texts stick
4936         out.
4937         (solve): Simple_spacer::is_active() only determines
4938         satisfies_constraints_ for non-ragged typesetting.
4940         * lily/simultaneous-music.cc (to_relative_octave): only set
4941         old_relative_used if return pitch actually changed.
4943         * scm/define-context-properties.scm
4944         (all-user-translation-properties): change to match implementation.
4946         * python/lilylib.py: Replace re.match by re.search and adds "-c
4947         showpage" to the gs command line (Johannes Schindelin)
4949         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
4950         before processing. Prevents crash when inf is in the extent.
4952         * scm/define-markup-commands.scm (note-by-number): add "s" to
4953         "noteheads-" glyphname.
4955         * lily/parser.yy (Generic_prefix_music): supply parser argument to
4956         music function as well.
4957         
4958 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4960         * VERSION: release 2.5.2
4962         * Documentation/user/changing-defaults.itely (Creating titles):
4963         add breakbefore variable.
4965         * lily/paper-book.cc (set_system_penalty): new function. Set
4966         penalty_ based on breakBefore setting
4968         * lily/context-specced-music-iterator.cc (construct_children):
4969         interpret special context id $uniqueContextId 
4971         * lily/context.cc (create_unique_context): new method. Move
4972         creation of unique (\new) contexts into interpreting phase. This
4973         makes
4975           foo= \new Staff ..
4976           << \foo \foo >>
4978         produce 2 staves.
4979         
4981         * scm/define-music-properties.scm (all-music-properties): add
4982         quoted-voice-direction
4984         * ly/music-functions-init.ly: killCues function.
4986         * scm/music-functions.scm (cue-substitute): move creation of voice
4987         contexts further to the back. 
4989 2004-11-25  Werner Lemberg  <wl@gnu.org>
4991         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
4992         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
4994 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
4996         * buildscripts/guile-gnome.sh: Fixed typo.
4998 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5000         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
5002         * scripts/abc2ly.py (dump_slyrics): add ord(). 
5004         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
5005         to regular engraver. 
5007 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5009         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
5011 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5013         * scm/define-markup-commands.scm (fill-line): Typo.
5015         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
5016         and newer.
5018 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
5020         * ly/dynamic-scripts-init.ly: Fixed typo.
5022 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5024         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
5025         note-head, to have different attachment points for up and down.
5027         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
5029         * mf/feta-generic.mf (else): remove solfa.
5031         * mf/feta-bolletjes.mf (tishape): remove unicode test.
5033         * scm/define-context-properties.scm
5034         (all-user-translation-properties): add shapeNoteStyles property.
5036         * lily/shape-note-heads-engraver.cc (process_music): new file.
5038         * lily/event.cc (transpose): call Event::transpose() for
5039         transposing the tonic.
5041 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5043         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
5044         Unicode/OpenType and AFM.
5046         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
5048 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5050         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
5052         * lily/context.cc (Context): unprotect key from ctor.
5054         * scm/stencil.scm (stack-lines): return empty-stencil if argument
5055         is '()
5056         (stack-stencils): idem.
5058         * Documentation/user/changing-defaults.itely (Creating titles):
5059         document new title layout options.
5061         * lily/parser.yy (lilypond_header_body): copy previous
5062         $globalheader if present.
5064         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
5065         ly:module-copy
5066         
5067         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
5069         * scm/titling.scm: remove old titling functions
5071         * lily/stencil.cc (translate): remove absolute dimension.
5073         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
5074         via markup.
5076         * scm/page-layout.scm (marked-up-headfoot): create header/footer
5077         field from user-supplied markup
5079         * scm/define-markup-commands.scm (on-the-fly): new markup
5080         command. Enter SCM markup procedure directly in Scheme.
5081         (fromproperty): new markup command. Read markup from props argument.
5083         * scm/titling.scm (marked-up-title): create title via
5084         user-specified markup. 
5086         * scm/define-markup-commands.scm (column): remove empty stencils
5087         from column.
5089         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
5090         not have side-effect of creating variable stub.
5092         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
5094 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5096         * scm/encoding.scm (coding-alist): 
5097         * scm/font.scm (add-ec-fonts):
5098         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
5099         Extended-TeX-Font-Encoding---Latin.
5101         * lily/side-position-interface.cc (general_side_position): Add
5102         actual offset to error message (avoid constant error messages).
5104         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
5105         block.
5107         * lily/font-select.cc (select_encoded_font)
5108         (get_font_by_mag_step, get_font_by_design_size): 
5109         * lily/modified-font-metric.cc (Modified_font_metric): 
5110         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
5112         * scm/encoding.scm (coding-alist): Add fetaDynamic.
5113         (read-encoding-file): Bugfix: do not require space after bracket.
5115         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
5116         these do not exist.
5118 2004-11-20  Graham Percival  <gperlist@shaw.ca>
5120         * Documentation/user/notation.itely: added info about typesetting
5121         boxed bar numbers.
5123 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5125         * flower/interval.cc (T_to_string): gcc4 fixes.
5127         * scm/define-markup-commands.scm (fill-line): use
5128         stack-stencils. This fixes problems with putting already centered
5129         stencils in a line.
5131         * VERSION: release 2.5.1
5133         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
5135 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5137         * input/example-[1-3].ly: simplify.
5139         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
5141         * scm/output-ps.scm (new-text): new function. Use glyphshow to
5142         show glyphs.
5144         * scm/encoding.scm (decode-byte-string): new function.
5146         * scripts/convert-ly.py (conv): add warning about
5147         set-global-staff-size.
5149         * Doxyfile: add. 
5151         * scripts/convert-ly.py (conv): add raggedlastbottom rule
5152         (conv): warn for TextSpanner split.
5153         (conv): warn for textheight.
5155 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5157         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
5158         building the documentation, info with images are installed.
5159         (final-install): Fix description.  Mention sourcing of login
5160         scripts (instead of running).
5162 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5164         * Debian lmodern support.  Note that LilyPond will issue warnings
5165         
5166             no such encoding: "FontSpecific"
5168           The font selection mechanism wants to get the encoding from the
5169           font itself, but the idea of lmodern is that it is usable with
5170           different encodings, ie, Lily should get the encoding from the
5171           font tree, rather than the font itself.  This would require some
5172           more work.
5173         
5174         * configure.in: Test for and accept lmodern if EC fonts not found.
5176         * scm/framework-tex.scm (font-load-command): TeX font name
5177         mangling for latin1 encoded cork-lm fonts.
5178         (convert-to-ps): Load lm.map if available.
5180         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
5181         available.
5183         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
5185         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
5186         available.
5188         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
5189         path for absolute file name, that is silly.
5191         * lily/score-engraver.cc (initialize): 
5193         * Documentation/user/GNUmakefile (local-install-info): Invoke
5194         install-info --remove first.
5196         * #include cleanup (Andreas Scherer).
5198 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
5200         * input/test/script-abbreviations.ly: fix typos.
5202 2004-11-17  Werner Lemberg  <wl@gnu.org>
5204         * python/lilylib.py (options_help_str): Support pretty-printing of
5205         newlines in fourth element of option description.
5207         * scripts/lilypond-book.py (option_definitions): Use new lilylib
5208         feature.
5209         Sort options.
5211         * Documentation/user/lilypond-book.itely: Finish update.
5213 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5215         * Documentation/user/macros.itexi: Add comment about \command.
5217         * Documentation/user/lilypond.tely:
5218         * Documentation/user/lilypond-book.itely: Fix names of lilypond
5219         and lilypond-book nodes, so that `info lilypond' visits the manual
5220         at top level, and `info lilypond-book' visits the lilypond-book
5221         section.
5223         * Documentation/user/GNUmakefile (local-install-info): Fix rules
5224         and packager messages.
5226         * lily/pangofc-afm-decoder.cc: Update test.
5228 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5230         * scm/lily-library.scm (char->unicode-index): New function.
5232         * scm/output-gnome.scm: 
5233         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
5235         * Proper naming of file name throughout; s/filename/file[-_]name/.
5237         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
5239         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
5241 2004-11-16  Werner Lemberg  <wl@gnu.org>
5243         * scripts/lilypond-book.py: The Lord has commanded me to use only
5244         tabs for indentation.  Your humble servant obeys.
5246 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5248         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
5249         including font, if LilyPond-feta font is only feta font in path.
5251         * scm/output-gnome.scm (text): Revert to file name of font if font
5252         has no name.  Fixes ec font selection.
5253         (char): Bugfix: do not utf8 twice.  Fixes clefs.
5255         * scm/framework-svg.scm:
5256         * scm/output-svg.scm: New file.  TODO: figure out how to
5257         do character by index in font.
5259         * scm/output-sodipodi.scm: Remove.
5261         * scm/output-ps.scm (stem): Remove.
5263 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5265         * scm/output-gnome.scm (beam): New function.
5266         (slur): Round corners.
5267         (round-filled-box): Round corners.
5269 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5271         * scm/output-gnome.scm (beam): add function.
5272         (draw-line): new routine.
5273         (dashed-line): stub; call draw-line
5274         (polygon): new routine.
5276 2004-11-15  Werner Lemberg  <wl@gnu.org>
5278         * Documentation/user/lilypond-book.itely: Revise section on
5279         lilypond-book options.
5280         Other minor fixes.
5282         * scripts/lilypond-book.py: Change indentation to 4.
5283         Minor formatting.
5285 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5287         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
5288         grobs that have tweaks specced.
5289         
5290 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
5292         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
5294 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5296         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
5297         actual char #, not 0 based index.
5299         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
5301         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
5302         Warning: do make -C mf clean.
5304         * lily/context-property.cc: Compile fix.
5306         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
5307         Grok ec-fonts, braces and dynamics.
5309         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
5311 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5313         * lily/include/tweak-registration.hh: new file.
5315         * lily/tweak-registration.cc: new file.
5317         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
5318         saving tweaks.
5320         * scm/output-gnome.scm (text): comment dribble.
5322 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5324         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
5326         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
5327         path-def before using.  Fixes muchtomany slurs in wrong places
5328         bug.
5330 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5332         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
5334         * lily/include/object-key-undumper.hh (Module): new file.
5336         * lily/object-key-undumper.cc (Module): New file. Deserialize
5337         keys. SCM bindings
5339         * lily/object-key-dumper.cc (Object_key_dumper): idem.
5340         Provide SCM bindings.
5342         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
5343         new file. Serialize object keys.
5344         
5345         * lily/object-key.cc (dump): new function.
5346         (as_scheme): new virtual function
5347         (undump): new function
5348         (undumpers): new table.
5350         * lily/include/global-context.hh (Context): take \score key upon init.
5352         * lily/object-key-dumper.cc (serialize_key): new file.
5354         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
5356         * lily/lily-lexer.cc: remove \quote.
5358         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
5360         * lily/context.cc (Context): take key argument in ctor.
5361         (create_context): new function
5363         * lily/grob.cc (Grob): take key argument in ctor.  
5365         * lily/lilypond-key.cc (do_compare): new file.
5367         * lily/object-key.cc (Object_key): new file.
5369         * lily/include/object-key.hh (class Object_key): new file.
5371         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
5373 2004-11-13  Graham Percival  <gperlist@shaw.ca>
5375         * Documentation/user/lilypond-book.itely: add small warning about
5376         noindent default in lilypond-book.
5378         * Documentation/user/converters.itely: add examples for convert-ly.
5380         * Documentation/user/examples.itely: change version string in templates
5381         to 2.4.0.
5383 2004-11-12  Karl Hammar  <karl@aspodata.se>
5385         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
5386         cmdline, use xargs instead (backportme)
5388 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
5389         
5390         * Documentation/user/: Numerous fixes in the user manual.
5392 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5394         * lily/parser.yy (re_rhythmed_music): search music expression for
5395         context-id, surround by \new Voice if not found. Fixes:
5396         addlyrics-second-staff.ly
5398         * VERSION: 2.5.0 released.
5399         
5400 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5402         * Documentation/index.html.in: Fix url to one big page.  (backportme)
5404         * Documentation/user/GNUmakefile: Separate rules for split and
5405         unsplit html documents.  Remove perl massaging.  (backportme)
5407 2004-11-11  Graham Percival  <gperlist@shaw.ca>
5409         * Documentation/user/lilypond-book.itely: add short warning about
5410         \lilypond{} in LaTeX docs.
5412 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5414         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
5415         found.  (backportme)
5417         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
5418         version requirement.  (backportme)
5420         * configure.in: Be explicit about old versions of
5421         ec-fonts-mtraced.  (backportme)
5423         * lily/context-selector.cc (set_tweaks): New function.
5424         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
5425         web with -DTWEAK.
5427         * Documentation/user/introduction.itely (Automated engraving):
5428         Remove fragment option.  Fixes web.
5430         * lily/context-property.cc (make_item_from_properties):
5431         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
5432         #ifdef.
5434         * scm/define-context-properties.scm
5435         (all-internal-translation-properties): Add tweakRank and tweakCount.
5437         * lily/grob.cc: 
5438         * scm/define-grob-properties.scm (all-internal-grob-properties):
5439         Add tweak-rank and tweak-count.
5441 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5443         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
5444         New function.
5445         (text): Use them.
5447         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
5448         animated/opaque grob dragging tweaks.
5450         * buildscripts/guile-gnome.sh: Update.
5452 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5454         * scm/define-grobs.scm (all-grob-descriptions): Added
5455         line-interface to the LigatureBracket object.
5457 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5459         * scm/framework-gnome.scm (item-event): Support non-animated mouse
5460         dragging tweaks.
5462         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
5464         * lily/context-selector.cc (store_context): New function.
5466         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
5467         (store_grob): New function.
5468         (identify_grob): Add Moment parameter.
5470         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
5471         exists.
5473         * scm/framework-gnome.scm (save-tweaks): Write as alist.
5475 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5477         * scm/framework-gnome.scm (item-event): Print grob id.
5478         (save-tweaks): New function.
5479         (tweak): New funtion.
5480         (item-event): Use it, bound to arrow keys.
5482         * lily/context-property.cc (make_item_from_properties): Register grob.
5483         * lily/context.cc (add_context): Register context.
5485         * lily/include/context-selector.hh:
5486         * lily/include/grob-selector.hh:
5487         * lily/context-selector.cc:
5488         * lily/grob-selector.cc: New file.
5490 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5492         * lily/slur.cc: add 'positions to interface
5494         * lily/main.cc: reinstate PS as standard output format. 
5496         * scm/framework-tex.scm (output-preview-framework): print systems
5497         up to first non title system.
5499         * lily/grace-engraver.cc (start_translation_timestep): split
5500         scm_cadddr
5501         
5502 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5504         * lily/quote-iterator.cc (Module): remove old quote-iterator
5506         * scm/define-music-types.scm (music-descriptions): move
5507         NewQuoteMusic over QuoteMusic
5509         * Documentation/user/notation.itely (Formatting cue notes): use
5510         \cueDuring.
5512         * lily/new-quote-iterator.cc (quote_ok): new function.
5514         * input/regression/quote-cue-during.ly: new file.
5516         * input/regression/quote-grace.ly: new file.
5518         * scm/define-context-properties.scm (Module): change definition of
5519         graceSettings
5521         * lily/context-property.cc (Module): rename from
5522         translator-property.cc
5524         * lily/context.cc (context_name_symbol): new function
5526         * lily/grace-engraver.cc: new file. Set properties for grobs based
5527         on the grace-ness of now_moment().
5529         * scm/music-functions.scm (add-grace-property): use list
5530         iso. vector for graceSettings
5531         remove set-{start,stop}-grace-properties. 
5533         * lily/new-quote-iterator.cc (construct_children): set
5534         quote_outlet_ if no quoted-context-{id,type} specified.
5536         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
5538         * lily/parser.yy (command_element): remove \quote.
5540         * ly/music-functions-init.ly (location): add quoteDuring music
5541         function. 
5543         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
5544         optional semicolon. (backportme)
5546 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5548         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
5549         need to link to GUILE et al.
5551 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5553         * scm/define-music-properties.scm (all-music-properties): add
5554         quoted-context-type, quoted-context-id.
5556         * scm/lily.scm (type-check-list): new function.
5557         
5558         * scm/lily-library.scm: new file. Generic library routines.
5560         * lily/parser.yy (Generic_prefix_music): move typechecking out of
5561         parser.
5563         * ly/music-functions-init.ly: add quoteDuring function.
5565         * lily/include/music-iterator.hh (class Music_iterator): rename
5566         set_translator -> set_context
5568         * lily/parser.yy (Generic_prefix_music_scm): add
5569         MUSIC_FUNCTION_SCM_SCM_MUSIC
5571         * scm/lily.scm (sanitize-command-option): new function. (backportme)
5573         * scm/framework-tex.scm (header): sanitize TeX paper size.
5574         (backportme)
5576 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5578         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
5580         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
5582         * scm/framework-tex.scm (font-load-command): Use T1 if no
5583         font-encoding set.  (backportme)
5585         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
5586         exists before converting.  (backportme)
5588         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
5589         exists before converting.  (backportme)
5590         (convert-to-ps): Remove .ps file if it exists before
5591         converting.  (backportme)
5593         * lily/lexer.ll: Remove extra progress newline, use present tense.
5595         * scm/paper.scm (paper-alist): public.
5596         * scm/framework-tex.scm (convert-to-ps):
5597         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
5598         command line.
5600 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5602         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
5604         * lily/recording-group-engraver.cc (derived_mark): mark
5605         now_events_. (backportme)
5607 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5609         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
5611         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
5612         invoking latex. (backportme.)
5614         * lily/stem.cc (off_callback): center stems for all rest stems.
5616 2004-11-05  Werner Lemberg  <wl@gnu.org>
5618         * Documentation/user/lilypond.tely: Add more guidelines for writing
5619         lilypond texinfo documents.
5621 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
5623         * Documentation/index.html.in: remove <hr>.
5625         * THANKS: change 2.3 to 2.4.
5627 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
5629         * scm/output-gnome.scm: More fontconfig comment.
5631 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
5633         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
5634         <package> directory in $(builddir)/share according with
5635         PACKAGE_NAME defined in the VERSION file.
5637 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5639         * lily/beam.cc (rest_collision_callback): use local beam
5640         multiplicity.
5642         * input/regression/stem-stemlet.ly: new file.
5644         * lily/stem.cc (add_head): store rests as well.
5646         * scm/define-grob-properties.scm (all-user-grob-properties): add
5647         stemlet-length
5649         * lily/stem.cc: store rests as well.
5650         
5651         * input/regression/new-slur.ly: mention forcing.
5653 2004-11-04  Werner Lemberg  <wl@gnu.org>
5655         * Documentation/user/*: A new round of layout fixes and document
5656         structure cleanup.
5658 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
5660         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
5662 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5664         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
5666 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5668         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
5670         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
5672         * lily/main.cc (main): Invoke identify.
5674         * scm/lily.scm (postscript->pdf): Remove progress newline.
5675         Write progress to stderr.
5677         * lily/paper-book.cc (output): Remove progress newline.
5679         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
5680         gettext on user messages, and remove whitespace.
5682         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
5684         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
5685         argv[0] (Thomas Scharkowski).
5687         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
5688         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
5689         for ec-fonts-mtraced.
5691         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
5692         --srcdir build (Bertalan).
5694         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
5695         headers and library too (Laura Conrad).
5697         * Documentation/topdocs/INSTALL.texi (Top): Mention development
5698         package for guile too (Laura Conrad).
5700         * lily/main.cc (usage): Typo.
5702 2004-11-02  Werner Lemberg  <wl@gnu.org>
5704         * Documentation/user/notation.ly: More fixes to improve appearance.
5706         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
5707         better output for multicolumn tables.
5709 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5711         * lily/main.cc (dir_info): Fixed typo in the printouts.
5713 2004-11-01  Werner Lemberg  <wl@gnu.org>
5715         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
5716         of output.
5717         Set `per_line' to 2; replace hard-coded value with it.
5719         * Documentation/user/*: Many fixes to improve appearance of
5720         printed manual.
5722 2004-11-01  Werner Lemberg  <wl@gnu.org>
5724         * Documentation/user/changing-defaults.itely,
5725         Documentation/user/notation.ly,
5726         Documentation/user/programming-interface.itely: Use @/.
5727         Fix formatting of some lilypond snippets and tables.
5729         * scripts/lilypond-book.py (compose_ly): Provide useful default
5730         for LINEWIDTH in `override'.
5732 2004-10-31  Graham Percival  <gperlist@shaw.ca>
5734         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
5736 2004-10-31  Werner Lemberg  <wl@gnu.org>
5738         Resetting @exampleindent to `5' gives ugly results with texinfo's
5739         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
5740         (if not quoting) to change @exampleindent only locally.
5742         * scripts/lilypond-book.py (NOQUOTE): New variable.
5743         (output) [LATEX]: Remove AFTER and BEFORE.
5744         [TEXINFO]: Remove AFTER and BEFORE.
5745         Fix QUOTE and VERBATIM pattern.
5746         Add NOQUOTE pattern.
5747         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
5748         and BEFORE.
5749         [output_texinfo]: Use NOQUOTE.
5751 2004-10-31  Graham Percival  <gperlist@shaw.ca>
5753         * Documentation/user/changing-defaults.itely: clarify paper
5754         size commands with correct info.
5756         * Documentation/user/lilypond-book.itely: add more docs for
5757         filename extensions.
5759 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5761         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
5762         (PATCH_LEVEL): start 2.5.0.
5764 2004-10-30  Graham Percival  <gperlist@shaw.ca>
5766         * Documentation/user/notation.itely: add warning about bar numbers
5767         in multistaff music, add warning about quoting grace notes.
5769         * Documentation/user/changing-defaults.itely: clarify paper size commands,
5770         add missing subsubtitle entry to Creating titles.
5772         * Documentation/user/tutorial.itely: change 3.0 references to 2.4.
5774 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5776         * scripts/convert-ly.py (conv): fixed \context Foo = mixedCaps
5777         case.
5778         (conv): add dummy 2.4.0 conversion rule.
5780         * Documentation/user/lilypond.tely: add @finalout.
5782         * lily/slur-scoring.cc (enumerate_attachments): use stem_extent_
5783         for attaching, fixes slur/stem left attachment of
5784         downslur/downstem.
5786         * lily/quote-iterator.cc (process): use <= for comparisons. Fixes
5787         quote problem if for last note of quoted sequence. 
5789         * input/regression/part-combine-text.ly (comm): add expect strings.
5791 2004-10-30  Werner Lemberg  <wl@gnu.org>
5793         * Documentation/user/examples.itely: Improved layout.
5795         * Documentation/invoking.itely: Use `@/' to insert breakpoints.
5797         * Documentation/macros.itexi (@inputfileref) [@tex]: Use `@/'.
5799         * Documentation/notation.itely: Use `@/'.
5800         Other layout fixes.
5802 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5804         * lily/part-combine-iterator.cc (unisono): examine last_playing_
5805         (not state_), this fixes a2 printing after chord.
5807         * input/regression/no-staff.ly: fix octave, revise syntax.
5809         * input/regression/lyrics-bar.ly (texidoc): fixes.
5811         * input/regression/beam-dir-functions.ly (Module): remove from regtest
5813         * input/regression/accidentals.ly (Module): remove from regtest.
5815         * lily/parser.yy (Prefix_composite_music): 
5816         oops. Chords should be unrelativable, not bass figures untransposable.
5818         * VERSION: 2.3.26 released.
5819         
5820         * lily/completion-note-heads-engraver.cc (try_music): only return
5821         something when is_first_ is true. Fixes lyrics with completion_heads. 
5823         * make/lilypond-vars.make: add scripts/out/ to PATH, to find ps2png. 
5825         * scm/lily.scm (ly:system): new function. Catches uninstalled
5826         ps2png.
5828 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5830         * Documentation/user/notation.itely: remove
5831         @hyphenatedinternalsref.
5833 2004-10-29  Werner Lemberg  <wl@gnu.org>
5835         * scm/framework-tex.scm (dump-line): Fix dimensions for \lybox.
5837         * scripts/lilypond-book.py (no_options): New dictionary.
5838         (simple_options): New list.
5839         (ly_options): Remove NOINDENT and EXAMPLEINDENT patterns.
5840         (compose_ly): Use `no_options' and `simple_options'.
5841         Fix logic of option handling.
5842         Handle `linewidth' option without parameter.
5844 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5846         * lily/lookup.cc (triangle): use (0, interval.length()) for X
5847         extent, since the stencil is translated later on.
5849         * lily/ledger-line-spanner.cc (print): swap linear_combination
5850         arguments, effectively shortens ledger line. 
5852         * Documentation/user/GNUmakefile
5853         ($(outdir)/lilypond/lilypond.html): use find to remove files.
5855         * lily/main.cc: --no-pages option.
5857 2004-10-28  Carl Sorensen  <carldsorensen@comcast.net>
5859         * Documentation/user/notation.itely (Fret diagrams): add extra
5860         notes to example to avoid collisions between fret diagrams.
5862 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5864         * Documentation/user/notation.itely (Automatic note splitting):
5865         note about lyrics. 
5867         * Documentation/user/converters.itely (Invoking convert-ly): note
5868         about version numbers. 
5870         * scripts/abc2ly.py (dump_score): revise lyric dumping
5872         * scripts/mup2ly.py (pre_processor_commands): always open file.
5874         * scripts/etf2ly.py (Frame.calculate): always close \grace.
5875         (Etf_file.dump): add \version
5877         * VERSION: 2.3.25 released.
5879         * lily/scm-option.cc: add 'resolution to ly:get-option argument
5880         list.
5882 2004-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5884         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-origin
5886 2004-10-28  Werner Lemberg  <wl@gnu.org>
5888         * Documentation/user/music-glossary.tely: More fixes to improve
5889         appearance with DVI output.
5891         * scripts/lilypond-book.py (compose_ly): Use 0.4in for
5892         EXAMPLEINDENT.  This is the maximum value for quotation environments
5893         used in `texinfo.tex' -- many warnings in lilypond.dvi are now gone.
5895 2004-10-27  Werner Lemberg  <wl@gnu.org>
5897         * Documentation/user/music-glossary.tely: Revised.
5899 2004-10-26  Carl Sorensen  <carldsorensen@comcast.net>
5901         * input/test/fret-diagram.ly: insert breaks, remove raggedright to
5902         improve fret diagram spacing in printed output.
5904         * Documentation/user/notation.itely (Fret diagrams): Remove raggedright
5905         from options for the example so fret-diagrams won't overlap
5906         one another.
5908 2004-10-26  Werner Lemberg  <wl@gnu.org>
5910         * scripts/lilypond-book.py: Some additional formatting for
5911         orthogonality.
5912         (ly_options) [*]: Format strings.
5913         [RAGGEDRIGHT]: Don't set `indent'.  This is now properly handled
5914         by `compose_ly'.
5915         (output) [LATEX][OUTPUT]: Format string and simplify.
5916         (PREAMBLE_LY, FRAGMENT_LY): Format string.
5917         (classic_lilypond_book_compatibility): Take key/value pair as
5918         parameter.
5919         Return key/value pair.
5920         (compose_ly): Rewritten, taking the snippet type as third parameter. 
5921         The default values are now set more sensible, and a `linewidth'
5922         option is no longer overwritten under some circumstances.
5924         * Documentation/user/music-glossary.tely: Replace all accented
5925         character macros with latin-1 codes.
5927 2004-10-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5929         * lily/music-function.cc (ly_make_music_function): when an
5930         argument predicate is markup?, the signature keyword becomes
5931         "markup" iso "scm".
5933         * lily/lexer.ll (music_function_type): new MUSIC_FUNCTION_*MARKUP*
5934         tokens, for functions which signatures contain "markup".
5936         * lily/parser.yy (Generic_prefix_music_scm): add treatment for new
5937         MUSIC_FUNCTION_*MARKUP* tokens.
5939 2004-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5941         * input/regression/lyrics-bar.ly: Make StaffGroup accept the new
5942         Lyrics context.
5944 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5946         * python/lilylib.py (make_ps_images): return list of output files.
5948         * lily/simple-spacer.cc (LY_DEFINE): for ragged, we can end with
5949         all springs tight, and still satisfy the constraints.
5951 2004-10-25  Werner Lemberg  <wl@gnu.org>
5953         * scripts/lilypond-book.py: s/option-sep/option_sep/.
5954         (format_res) [LATEX, TEXINFO]: Skip whitespace before comma also.
5955         (snippet_res): Fix regexps and make them ignore whitespace properly.
5956         (compose_ly): Use `re.split' instead of `string.split' to remove
5957         surrounding whitespace.
5958         Some formatting to get more consistency.
5960 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5962         * VERSION: 2.3.24
5963         
5964         * scm/define-context-properties.scm
5965         (all-user-translation-properties): add verticallySpacedContexts.
5967         * scm/define-grob-interfaces.scm (vertically-spaceable-interface):
5968         add interface
5970         * scm/define-grob-properties.scm (all-internal-grob-properties):
5971         add spaceable-staves
5973         * scm/define-grobs.scm (all-grob-descriptions): set
5974         vertically-spaceable-interface for VerticalAxisGroup and
5975         RemoveEmptyVerticalGroup
5977         * lily/system.cc (get_line): determine staff_refpoints_
5978         using spaceable-staves.
5980         * lily/score-engraver.cc (acknowledge_grob): ack
5981         vertically-spaceable-interface and verticallySpacedContexts to
5982         set spaceable-staves.
5984         * input/regression/new-slur.ly: add slur under 16th subbeam case.
5986         * lily/slur-scoring.cc (fill): init has_same_beam_ before use.
5988 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5990         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): tune
5991         minimumVerticalExtent tweaks. 
5993         * mf/feta-schrift.mf: include size of thumb appendix in
5994         bbox. Fixes: c-thumb-notehead.ly  
5996         * THANKS: add Meisters to the Development team.
5998         * scm/framework-tex.scm (convert-to-dvi): redirect output to
5999         /dev/null for non-verbose.
6001         * Documentation/user/invoking.itely (Invoking lilypond): add note
6002         about resource usage.
6004         * tex/GNUmakefile (TEX_FILES): add texinfo.cnf
6006         * stepmake/stepmake/texinfo-vars.make (MAKEINFO): add
6007         --enable-encoding
6009         * Documentation/user/lilypond.tely: add -*- coding: latin-1 -*- everywhere. 
6011         * Documentation/user/changing-defaults.itely (Text encoding):
6012         change to latin1.
6014         * Documentation/user/lilypond.tely: add language and encoding.
6016         * scm/define-grobs.scm (all-grob-descriptions): add
6017         line-interface.
6019         * configure.in (PKG_CONFIG_PATH): bump makeinfo version to 4.7
6021         * input/test/ossia.ly: font sizes for ossia.
6023         * scripts/convert-ly.py (conv): \context Foo = NOTENAME
6024         -> \context Foo = "NOTENAME".
6026         * lily/main.cc (determine_output_options): fix ordering.
6028 2004-10-24  Erik Sandberg  <ersa9195@student.uu.se>
6030         * THANKS: Added bughunters for 2.3.
6032 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6034         * Documentation/user/macros.itexi: use findex functions/internals
6035         objects.
6037         * scm/documentation-generate.scm (string-append): add syncodeindex
6039         * Documentation/user/tutorial.itely (A lead sheet): use \chords
6040         for tutoring chord names.
6042         * Documentation/user/lilypond.tely: remove @authors.
6044 2004-10-23  Werner Lemberg  <wl@gnu.org>
6046         * scm/framework-tex.scm (dump-page): Add width to \lybox call.
6047         Remove first two parameters of \lybox.
6048         Don't emit \vbox around \lybox.
6049         (dump-line): Add width to \lybox call.
6050         Remove first two parameters of \lybox.
6052         * tex/lilyponddefs.tex (\topalign, \leftalign): Removed.
6053         (\lyitem): Updated.
6054         (\lybox): Only take three parameters.
6055         Create box which has zero depth, only height.
6056         Center box vertically along the x-height of current font.
6058 2004-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6060         * VERSION (PACKAGE_NAME): release 2.3.23
6062         * scm/framework-tex.scm (convert-to-ps): add -E if filename
6063         contains .preview.
6065 2004-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6067         * lily/lyric-extender.cc (print): only run to right-bound if
6068         broken. This fixes input/regression/lyric-extender.ly
6070         * input/regression/beamed-chord.ly: removed.
6072         * Documentation/user/macros.itexi: add \global to definitions for
6073         feta macros.
6075         * po/fr.po: updated po file.
6077         * po/de.po: updated po file.
6079 2004-10-22  Werner Lemberg  <wl@gnu.org>
6081         * tex/lilyponddefs.tex (\lilypondend): Undo change from 2004-10-20.
6083 2004-10-21  Werner Lemberg  <wl@gnu.org>
6085         * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex
6086         (\lilypondexperimentalfeatures): Removed.
6088 2004-10-20  Jürgen Reuter  <reuter@ipd.uka.de>
6090         * Documentation/user/notation.itely: fixed 2 typos
6092 2004-10-20  Werner Lemberg  <wl@gnu.org>
6094         * scm/framework-tex.scm (header-end): Don't set \outputscale.
6095         (dump-line): Produce prettier output.
6097         * tex/lilyponddefs.tex: Comment all macros extensively.
6098         (\lilypondstart): Set \outputscale.
6099         Define \lilypondpagebreak and \lilypondnopagebreak here.
6100         Don't test for positive \lilypondpaperlinewidth -- this is always
6101         positive in the normal case (LilyPond produces bad output otherwise
6102         so we can safely ignore negative or zero values).
6103         (\lilypondend): Remove useless test for \lilypondbook.
6104         (\fetasixteen, \fetafont, \fetachar): Removed, unused.  We also
6105         don't input `feta20.tex'.
6107 2004-10-19  Graham Percival  <gperlist@shaw.ca>
6109         * Documentation/user/examples.itely: added texidoc lilypond-book
6110         template.
6112 2004-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6114         * cygwin/lilypond.hint: Update.
6116 2004-10-18  Carl Sorensen  <carldsorensen@comcast.net>
6118         * Documentation/user/notation.itely (Fret diagrams): Add documentation
6119         for fret diagram markups to user manual
6121         * scm/fret-diagrams.scm (fret-diagram-terse): Fix mistake in internal
6122         documentation for fret-diagram-terse
6124         * Documentation/user/notation.itely: Added section on fret diagrams.
6126 2004-10-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6128         * scripts/convert-ly.py (usage): Fix --help description.  Apply
6129         range also for --show-rules.
6131 2004-10-18  Werner Lemberg  <wl@gnu.org>
6133         * scripts/lilypond-book.py (Snippet, Include_snippet)
6134         [replacement_text]: Use group `match'.
6136 2004-10-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6138         * Documentation/user/macros.itexi: Use @ref instead of @inforef
6139         for html.  Apparently, ``you should'' in texinfo documentation is
6140         merely a guideline that can safely be ignored.
6142         * elisp/lilypond-init.el (auto-mode-alist): Add .ily to
6143         auto-mode-alist.
6145         * input/test/engraver-example.ily: 
6146         * input/regression/allfontstyle.ily: Rename, update users.
6148 2004-10-16  Graham Percival  <gperlist@shaw.ca>
6150         * Documentation/user/lilypond-book.itely: add more details about
6151         building .lytex files.
6153         * Documentation/user/examples.itely: added piano-lyrics template
6155         * input/template/piano-4-voices.ly, piano-lyrics.ly: remove.
6157         * input/GNUmakefile: remove "templates" from build subdirs.
6159         * input/template: removed.
6161 2004-10-16  Werner Lemberg  <wl@gnu.org>
6163         * scripts/lilypond-book.py (snippet_res): Define group `match'
6164         everywhere.
6165         Accept more spaces between commands and its arguments and options.
6166         Fix some regexps.
6167         (output): Remove some newlines in string values and suppress spaces
6168         in output.
6169         (output_texinfo): Output `output_print_filename' only if not empty.
6170         (Lilypond_snippet)[find_toplevel_snippets]: Use group `match'.
6172 2004-10-16  Werner Lemberg  <wl@gnu.org>
6174         * scm/framework-tex.scm (font-load-command, define-fonts): Protect
6175         some TeX line ends with `%' to avoid additional horizontal space in
6176         output.
6178         * scripts/lilypond-book.py: Unexpand spaces to tabs.
6179         (snippet_res): Use `x' modifier to represent regular expressions
6180         in a friendlier way.
6181         Fix `lilypond_block' for LaTeX to accept `%\end{lilypond}'.
6182         (find_toplevel_snippets): Don't use indices from match group 0,
6183         which is the whole pattern space, but group 1.
6185 2004-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6187         * flower/include/direction.hh (enum Direction): add
6188         DIRECTION_LIMIT
6190 2004-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6192         * po/fr.po: new po file.
6194 2004-10-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6196         * Documentation/user/macros.itexi: Do not construct external
6197         references using @uref.  That results in broken links.
6199         * lily/slur.cc (outside_slur_callback): Use int in for loop;
6200         avoids g++-3.4.1 enum beature.
6202 2004-10-13  Graham Percival  <gperlist@shaw.ca>
6204         * Documentation/user/examples.itely: added lilypond-book template.
6206         * Documentation/user/lilypond-book.itely: added filename extension
6207         page.
6209 2004-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6211         * debian/rules (binary-indep): Link images for info.
6213         * elisp/lilypond-mode.el (LilyPond-command): Set XEDITOR.  Cool
6214         feature nicked from jEdit.
6216 2004-10-12  Pedro Kroger  <kroeger@pedrokroeger.net>
6218         * Documentation/user/introduction.itely: Minor corrections.
6220         * Documentation/user/notation.itely: Minor corrections.
6222         * Documentation/user/tutorial.itely: Minor corrections.
6224 2004-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6226         * scm/framework-ps.scm (page-header): Fix Layout renaming bug.
6228         * scm/*.scm:
6229         * ly/paper-defaults.ly: Use papersizename only.
6231 2004-10-11  Werner Lemberg  <wl@gnu.org>
6233         * tex/lilyponddefs.tex (\lyitem): Don't use \topalign to make
6234         \raise work with positive values.
6236 2004-10-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6238         * Documentation/user/notation.itely (Multi measure rests): Update
6239         the docs corresponding to the implementation change from 2004-10-08.
6241 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6243         * VERSION (MY_PATCH_LEVEL): release 2.3.22
6245         * scm/part-combiner.scm (determine-split-list): reinstate
6246         playing+resting case. 
6248         * Documentation/user/invoking.itely (Reporting bugs): rename.
6250         * lily/lexer.ll (Lily_lexer): bump version req to 2.3.22.
6252         * lily/parser.yy (Prefix_composite_music): change no-transposition
6253         for mode_changing_head to figures too.
6255         * lily/phrasing-slur-engraver.cc (acknowledge_grob): do something
6256         with normal slurs too.
6257         
6258         * lily/slur-scoring.cc (move_away_from_staffline): new function.
6259         (get_base_attachments): move away attachment point for breaks
6260         similar to attachment points on slurs (staffline collision, and
6261         half a space of padding)
6263         * scm/page-layout.scm (ly:optimal-page-breaks): don't compute
6264         force twice.
6266         * lily/simple-spacer.cc (LY_DEFINE): if line too long in ragged
6267         mode, return #f.        
6269         * scm/page-layout.scm (ly:optimal-page-breaks): set force = 0.0
6270         for last page if raggedlast. 
6272         * lily/parser.yy (Prefix_composite_music): untransposable is for
6273         FiguredBass, not ChordNames
6275 2004-10-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6277         * scm/framework-tex.scm: Merge fix.
6279 2004-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6281         The grand \paper -> \layout, \bookpaper -> \paper renaming.
6283 2004-10-10  Graham Percival  <gperlist@shaw.ca>
6285         * Documentation/user/notation.itely: add raggedright to a whole
6286         bunch of places.
6288 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6290         * scm/paper.scm (set-paper-dimension-variables): new
6291         function. Define dimension-variables explicitly in \paper too.
6292         This allows overriding linewidth inside \score { \paper { } }
6293         blocks
6295         * scm/framework-tex.scm (convert-to-ps): invoke dvips with -t
6296         landscape.
6297         (header): add landscape and papersize options.
6299 2004-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6301         * lily/*.cc: use robust_scm2moment() where appropriate.
6303         * lily/moment.cc (robust_scm2moment): new function.
6305         * scm/titling.scm (default-score-title): remove caps for piece.
6307         * VERSION: 2.3.21 released.
6308         
6309         * lily/include/slur-scoring.hh (struct Slur_score_state): new file
6311         * lily/include/slur-configuration.hh (class Slur_configuration):
6312         new file.
6314         * lily/slur-configuration.cc: new file. move scoring functions
6315         into Slur_configuration.
6317         * lily/slur-scoring.cc (Slur_score_state): change static functions
6318         to methods of Slur_score_state.
6320         * lily/bezier-bow.cc (Message): 
6322         * flower/include/interval-set.hh (Message): new file.
6324         * flower/interval-set.cc (Message): new file.
6326 2004-10-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6328         * lily/multi-measure-rest-engraver.cc (process_music): always
6329         generate MultiMeasureRestNumbers.
6331         * SConstruct (txt_files): switch of make dist
6333         * lily/bezier-bow.cc (get_slur_indent_height): change recipe to
6334         make sure that (indent < len / 3). This fixes progerror-max_h.ly
6336         * lily/multi-measure-rest-engraver.cc (process_music): make
6337         MultiMeasureRestNumber too.
6339 2004-10-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6341         * Documentation/user/notation.itely (Bar lines): Added a note that
6342         defaultBarType is to be changed in the Timing context.
6344 2004-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6346         * lily/include/guile-compatibility.hh: add file.
6348         * scm/framework-tex.scm (convert-to-dvi): use max of current
6349         extra_mem_top and 1M.
6351         * lily/kpath.cc (LY_DEFINE): ly_kpathsea_expand_variable. New
6352         function.
6354 2004-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6356         * scm/framework-tex.scm (convert-to-dvi): set extra_mem_top to 1M.
6358 2004-10-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6360         * lily/slur-scoring.cc (struct Slur_score_state): add
6361         has_same_beam_, edge_has_beams_, is_broken_ bools.
6362         (get_base_attachments): simpler Y attachment determination for
6363         broken slurs.
6365 2004-10-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6367         * buildscripts/texi2omf.py: Add hashbang.  Starting the script in
6368         bash without that is quite interesting.  Add xml and some omf
6369         keys.
6371 2004-10-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6373         * Documentation/user/macros.itexi: Add xml macros.
6375         * Documentation/user/GNUmakefile (extra-local-help): Add xml rules.
6377         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): Fix location.
6379 2004-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6381         * lily/break-substitution.cc (substitute_mutable_property_alist):
6382         only put property back into value if != SCM_UNDEFINED
6384         * lily/lyric-extender.cc (print): don't take common refpoint of
6385         null object if right_text isn't there.
6387         * lily/slur-scoring.cc (struct Slur_score_state): new
6388         struct. Collect scoring function arguments.
6389         (struct Slur_score_state): add musical_dy_
6390         (get_extra_encompass_infos): new function. Split off state
6391         computations.
6393         * scm/part-combiner.scm (determine-split-list): remove playing1
6394         and playing2.
6396 2004-10-02  Graham Percival  <gperlist@shaw.ca>
6398         * Documentation/index.html.in: remove link to templates.
6400         * Documentation/user/notation.itely: more small fixes.
6402 2004-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6404         * lily/timing-engraver.cc (process_music): move setting
6405         measure-length. This fixes spacing-whole-rest.ly
6407         * VERSION (PACKAGE_NAME): release 2.3.20
6408         
6409         * input/regression/quote-transposition.ly: update example
6411         * scm/define-music-properties.scm (all-music-properties): change
6412         meaning of instrumentTransposition.  It is now the pitch played
6413         that sounds as middle C. This means that instrumentTransposition
6414         can be \transposed. 
6415         Fixes: transpose-quote.ly
6417         * lily/parser.yy (command_element): reverse setting of
6418         instrumentTransposition
6420         * lily/pitch.cc (pitch_interval): rename.
6422         * lily/recording-group-engraver.cc (stop_translation_timestep):
6423         remove macrameing of accumulator and set_car/cdr.
6424         Fixes: transposition-quote.ly
6426         * lily/music.cc (transpose): fold Event::transpose() in.
6428         * lily/event.cc: remove Transpose. 
6430         * lily/recording-group-engraver.cc: cleanup.
6432         * ly/music-functions-init.ly (displayMusic): add function.
6434         * make/lilypond.fedora.spec.in: rename file.
6436         * lily/lily-lexer.cc (mark_smob): don't use ly_cdr() for getting
6437         to-be-marked objects. Use SCM_CELL_WORD_1 instead. 
6439         * Documentation/user/changing-defaults.itely (Changing context
6440         properties on the fly): typo.
6442         * lily/slur.cc (outside_slur_callback): try three sample points
6443         for determining collisions. This fixes: slur-script.ly.
6445 2004-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6447         * scripts/lilypond-book.py (ext2format): Add latex as Latex.
6449 2004-10-01  Graham Percival  <gperlist@shaw.ca>
6451         * Documentation/user/notation.itely: more small fixes.
6453         * Documentation/user/examples.itely: make new sections.
6455         * input/test/bar-lines.ly: improve output, fix bug.
6457         * Documentation/user/changing-defaults.itely: small fixes.
6459 2004-10-01  Werner Lemberg  <wl@gnu.org>
6461         * tex/lilyponddefs.tex (\lilypondECencoding): New command to handle
6462         T1 encoding in texinfo mode.
6463         (\lilypondstart): Use it.
6464         (\lilypondloop, \lilyponditerate): Removed.  Unused.
6466 2004-09-30  Werner Lemberg  <wl@gnu.org>
6468         * tex/lilyponddefs.tex (\lilypondstart): Define
6469         \lilypondfontencoding for both texinfo and latex mode.
6471         * scm/framework-tex.scm (font-load-command): Use
6472         \lilypondfontencoding.
6474 2004-09-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6476         * scm/framework-tex.scm (dump-page): take with-extents?
6477         argument. If true, output Y extents. Used for lilypond-book
6478         documents.
6480         * scripts/lilypond-book.py (PREAMBLE_LY): set dump-extents for
6481         \bookpaper.
6483         * lily/slur.cc (outside_slur_callback): epsilon-delta management
6484         for slur edges. Fixes: progerror-no-bezier-intersection.ly
6486         * scm/framework-tex.scm (dump-page): put stencil height in dumped
6487         page.
6489 2004-09-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6491         * Documentation/user/notation.itely (Multi measure rests):
6492         Improved example.
6494 2004-09-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6496         * lily/auto-beam-engraver.cc (test_moment): robustify.
6498 2004-09-28  Werner Lemberg  <wl@gnu.org>
6500         * scm/framework-tex.scm (font-load-command): Define proper font
6501         macro which sets font encoding if available.
6502         (define-fonts): Define \lilypondpaperinputencoding, to be taken
6503         from the \bookpaper block.
6505         * tex/lilyponddefs.tex (\lilypondstart): Use
6506         \lilypondpaperinputencoding for global input encoding.
6508 2004-09-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6510         * lily/score.cc (Score): oops. Copy error_found_ too.
6512 2004-09-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6514         * stepmake/stepmake/texinfo-rules.make: 
6515         * Documentation/GNUmakefile: --srcdir build fixes.
6517         * input/test/coriolan-margin.ly: Put papersize settings in \bookpaper.
6519         * Documentation/user/latex-lilypond-example.latex:
6520         * Documentation/user/latex-example.latex: Fix compile errors.
6521         Still buggy, need more love.
6523 2004-09-27  Werner Lemberg  <wl@gnu.org>
6525         * tex/lilyponddefs.tex (\lilypondstart): Use \frenchspacing.
6527 2004-09-26  Juergen Reuter  <reuter@ipd.uka.de>
6529         * Documentation/user/examples.itely: removed \midi block to
6530         simplify the example
6532         * Documentation/user/notation.itely: Removed superfluous
6533         TextSpanner tweakings (is already done by engraver-init.ly).
6534         Documented bug: vertical alignment of articulations.
6536         * Documentation/user/notation.itely, ly/engraver-init.ly
6537         (VaticanaVoice, GregorianTranscriptionVoice): Bugfix: TextSpanner
6538         padding.
6540         * Documentation/user/notation.itely, ly/engraver-init.ly: moved
6541         docu about TextSpanner padding bug from manual to engraver.ly
6542         (since it's workarounded and hence not user-visible any more)
6544 2004-09-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6546         * VERSION: release 2.3.19
6548 2004-09-26  Graham Percival  <gperlist@shaw.ca>
6550         * ly/property-init.ly: fix bug in displaying ledger lines while
6551         \hideNotes is on.
6553         * Documentation/user/notation.itely: more editing.
6555         * Documentation/user/examples.itely: add piano-dynamics template.
6557         * input/template/piano-dynamics.ly: remove.
6559         * Documentation/user/sound-output.itexi: more editing
6561 2004-09-25  Graham Percival  <gperlist@shaw.ca>
6563         * Documentation/user/notation.itely: more editing.
6565 2004-09-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6567         * scm/ly-from-scheme.scm (read-lily-expression): use ~s in format
6568         instead of ~a, to get #{ #"foo" #} actually printed to #"foo".
6570 2004-09-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6572         * lily/hairpin.cc (print): check columns of bounds, not bounds
6573         themselves.
6574         (print): robustify bound-padding lookup.
6576         * lily/*: ly_c[ad]+r -> scm_XXX , ly_c_pair_p -> scm_is_pair.
6578         * scripts/lilypond-book.py (Compile_error.process_include): catch
6579         Compile_error exception, and remove output .texi.
6581         * scm/define-music-properties.scm (all-music-properties): add
6582         error-found
6584         * lily/parser.yy (Music_list): add error-found to music with errors.
6586         * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors.
6588         * lily/book.cc (process): ignore books with errors
6590         * lily/include/score.hh (class Score): add error_found_ member.
6592         * lily/drum-note-engraver.cc (try_music): idem.
6594         * lily/note-heads-engraver.cc: remove start-playing-event.
6596         * lily/part-combine-iterator.cc (Part_combine_iterator): use
6597         BusyPlayingEvent to determine which voice was active last.
6598         (unisono): use last active to where to get unisono information
6599         from. This fixes: partcombine-rest.ly (again).
6601         * scm/part-combiner.scm (determine-split-list): cleanups
6603 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6605         * input/regression/lyric-extender.ly: simplify.
6606         complexify.
6608         * lily/lyric-extender.cc (print): use it to determine size of
6609         extender. Remove Lyric_extender::is_visible().
6611         * lily/extender-engraver.cc (acknowledge_grob): store lyric in
6612         next property.
6614         * lily/lyric-engraver.cc: remove get_current_rest().
6615         
6616 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6618         * input/regression/lyric-extender.ly: Fix and add test.
6620         * lily/extender-engraver.cc (stop_translation_timestep): Oops, typo.
6622 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6624         * lily/note-head.cc: remove Note_head::extent.
6626 2004-09-23  Graham Percival  <gperlist@shaw.ca>
6628         * Documentation/user/tutorial.itely: do manual style 2-space
6629         indents in examples
6631         * Documentation/user/notation.itely: more editing.
6633 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6635         * lily/lyric-engraver.cc (get_current_rest): New function.
6637         * lily/extender-engraver.cc (stop_translation_timestep): Use it:
6638         stop at rest.
6640         * lily/lyric-extender.cc (print): Fix crash (Russ Ross).
6642         * lily/slur-scoring.cc (get_bezier): Fix for broken beziers.
6644 2004-09-23  Juergen Reuter  <reuter@ipd.uka.de>
6646         * Documentation/user/examples.itely (Small ensembles): added
6647         example for transcription of mensural music
6649         * Documentation/user/notation.itely (The Lyrics context): fixed broken
6650         link to SATB vocal score
6652         * Documentation/user/notation.itely (System start delimiters):
6653         fixed typo: GrandStaff->StaffGroup
6655         * Documentation/user/notation.itely (Ancient articulations):
6656         removed obsolete comment on \episem bug
6658 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6660         * scm/framework-tex.scm (output-preview-framework): Fix invocation
6661         of header.
6663 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6665         * lily/dynamic-engraver.cc (acknowledge_grob): attach hairpin
6666         start to note-column.
6668         * lily/hairpin.cc (print): check text-interface, to attach to
6669         dynamic texts.  
6671         * lily/include/text-item.hh (class Text_interface): rename
6672         Text_item -> Text_interface
6674         * lily/piano-pedal-bracket.cc (print): robustify.
6676 2004-09-22  Pedro Kroger  <kroeger@pedrokroeger.net>
6678         * scm/paper.scm (set-paper-dimensions): add printfirstpagenumber.
6680         * scm/page-layout.scm (plain-header): if printfirstpagenumber is
6681         true will print the page number in the first page.
6683         * Documentation/user/changing-defaults.itely: Document
6684         printfirstpagenumber.
6686 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6688         * lily/phrasing-slur-engraver.cc (acknowledge_grob): avoid more
6689         objects.
6691         * lily/beam-concave.cc (calc_concaveness): take absolute value of
6692         dy for scaling. This fixes various downbeams.
6693         
6695         * lily/beam-quanting.cc (best_quant_score_idx): 
6697 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6699         * scm/framework-tex.scm (header-to-file): Fix.
6701 2004-09-22  Werner Lemberg  <wl@gnu.org>
6703         * lily/parser.yy <score_body>: Fix typo.
6705 2004-09-22  Graham Percival  <gperlist@shaw.ca>
6707         * Documentation/user/tutorial.itely: modified a "future planning"
6708         comment.
6710         * Documentation/user/notation.itely: more editing.
6712 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6714         * scm/define-markup-commands.scm (note-by-number): read font-size
6715         to determine stem length. Fixes: markup-note.ly
6717 2004-09-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6719         * lily/slur.cc (outside_slur_callback): read #'padding for
6720         slur-padding. Fixes: slur-script.ly
6722         * lily/parser.yy (score_body): disallow \bookpaper in \score.
6724 2004-09-21  Juergen Reuter  <reuter@ipd.uka.de>
6726         * Documentation/user/notation.itely (ancient flags): documented
6727         flags-related known bugs
6729         * lily/include/ligature-engraver.hh: added comment about why and
6730         how of (non-)use of abstract virtual methods
6732         * ly/engraver-init.ly (VaticanaVoice,
6733         GregorianTranscriptionVoice): bugfix (workaround): TextSpanner:
6734         unset dash-fraction property in order to get solid lines
6736         * ly/engraver-init.ly (MensuralStaff): fixed bad comment
6738 2004-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6740         * scripts/convert-ly.py (ly): Corrected replacement of \scriptBoth
6742 2004-09-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6744         * lily/parse-scm.cc (internal_ly_parse_scm): Eval in module, not
6745         in function.
6747         * scm/framework-tex.scm (convert-to-dvi): Use nonstopmode.  Set
6748         openout_any=p.  Throughout: progress to stderr, translate user
6749         messages.
6751         * scm/output-gnome.scm: Fix font dir description.
6753 2004-09-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6755         * input/test/mensural-ligatures.ly (voice): move linethickness
6756         settings to bookpaper.
6758         * lily/simple-spacer.cc (Module): use force to stretch to 
6759         line length as force measure for ragged spacing.
6760         
6761         * lily/lily-parser.cc (get_paper): don't set parent for \paper
6762         blocks in the parser. This eliminates ordering dependency for
6763         \bookpaper and \paper
6765         * ly/part-paper-init.ly: remove file.
6767         * lily/includable-lexer.cc (new_input): elucidate message.
6769         * VERSION: 2.3.18 released.
6770         
6771 2004-09-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6773         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: 
6774         * input/mutopia/R.Schumann/romanze-op28-2.ly:
6775         * input/mutopia/F.Schubert/standchen.ly: Remove obsolete
6776         #'Slur.attachment setting.
6778         * elisp/lilypond-mode.el (LilyPond-command-alist): Use -ftex,
6779         friendlier for point and click.
6781 2004-09-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6783         * ly/init.ly: reverse collected scores.
6785         * scm/page-layout.scm (ly:optimal-page-breaks): use non-ragged
6786         layout to determine force.
6787         
6788 2004-09-18  Werner Lemberg  <wl@gnu.org>
6790         * ly/engraver-init.ly <Score> [quotedEventTypes]: Add tuplets and
6791         ties.
6793         * ly/declarations-init.ly (escapedBiggerSymbol,
6794         escapedSmallerSymbol): Fix typos.
6796         * scripts/convert-ly.py: s/removeTag/removeWithTag/.
6798 2004-09-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6800         * input/{input,regression}/*.ly: run convert-ly
6802         * VERSION: release 2.3.17
6804         * lily/slur-scoring.cc (enumerate_attachments): make stem_extent a
6805         little wider for attachment calculation. This prevents stem and
6806         slur touching.
6808         * lily/parser.yy (direction_less_char): soft code \< \> \! \( \) (
6809         ) 
6811         * input/regression/tie.ly (texidoc): cleanup.
6813         * ly/declarations-init.ly (tildeSymbol): soft-code meaning of [ ]
6814         and ~
6816         * lily/slur-scoring.cc (score_extra_encompass): check if extra
6817         objects are on boundary column. 
6819         * lily/main.cc (parse_argv): process --tex too.
6821         * ly/music-functions-init.ly (keepWithTag): add music functions
6822         keepWithTag and removeWithTag.
6824         * lily/quote-iterator.cc (Quote_iterator): init transposed_musics_.
6826         * lily/accidental-engraver.cc (recent_enough): interpret laziness
6827         = #t. This fixes no-reset accidental-style.
6829         * input/regression/accidental-piano.ly (Module): new file.
6831         * lily/lily-guile.cc (LY_DEFINE): ly_assoc_get: new function.
6833 2004-09-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6835         * lily/slur-scoring.cc (score_extra_encompass): widen X extent of
6836         extra encompass.
6837         (score_extra_encompass): use Y coordinate of attachment if X
6838         attachment falls in extra encompass X extent.
6840         * buildscripts/guile-gnome.sh (SLIB_PATH): add SLIB_PATH to
6841         GUILE_LOAD_PATH
6843 2004-09-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6845         * scm/output-gnome.scm: Small fixes.
6847         * buildscripts/guile-gnome.sh: Getting close to 2.6.0 release.
6849 2004-09-16  Juergen Reuter  <reuter@ipd.uka.de>
6851         * Documentation/user/notation.itely (Ancient flags): Removed
6852         documentation on adjust-if-on-staffline (this property was removed
6853         by Han-Wen).
6855         * Documentation/user/notation.itely (Ancient notation): Minor
6856         cleanups and fixes.  Renamed "Vaticana style contexts" ->
6857         "Gregorian Chant contexts".  Added section "Mensural contexts".
6858         Added section "Ancient articulations".
6860         * ly/engraver-init.ly: Added "MensuralVoice" and "MensuralStaff".
6862 2004-09-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6864         * buildscripts/guile-gnome.sh: Add missing bit.
6866 2004-09-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6868         * buildscripts/guile-gnome.sh (LD_LIBRARY_PATH): new script.
6870         * lily/slur-scoring.cc (get_y_attachment_range): set end point
6871         using base_attachment.
6873         * scm/page-layout.scm (default-page-make-stencil): whoops. Add
6874         page header back.
6876         * scm/documentation-generate.scm (top-node): move version to top
6877         node.
6879         * lily/ledger-line-spanner.cc: add ledgered-interface, with
6880         property no-ledgers.
6882 2004-09-16  Heikki Junes  <hjunes@cc.hut.fi>
6884         * Documentation/user/{changing-defaults,examples,invoking,
6885         tutorial}.itely: Expand 's to is.
6887         * Documentation/user/notation.itely: Capitalize only first letter.
6889         * Documentation/user/programming-interface.itely: Capitalize Scheme.
6891         * Documentation/user/lilypond-book.itely: use @refbugs.
6893         * THANKS: sort.
6895         * input/mutopia/F.Schubert/morgenlied.ly,
6896         input/mutopia/J.S.Bach/baerenreiter-sarabande.ly,
6897         input/mutopia/R.Schumann/romanze-op28-2.ly: Add lifetime and full
6898         name.
6900 2004-09-15  Juergen Reuter  <reuter@ipd.uka.de>
6902         * mf/parmesan-heads.mf: bugfixes: (i) removed duplicate
6903         lneomensural char entry; (ii) fixed mensural/neomensural naming
6904         clash typo; (iii) lneomensural char: fixed stem attachment point.
6905         WARNING: FONT CHANGED!
6907 2004-09-15  Graham Percival  <gperlist@shaw.ca>
6909         * Documentation/user/introduction.itely: update \stemBoth to
6910         \stemNeutral.
6912         * Documentation/user/notation.itely: more editing of the manual.
6914 2004-09-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6916         * lily/slur-scoring.cc (score_edges): add exp(slope*dir*leftright)
6917         factor in edge attraction. This reflects that the left edge may
6918         have a larger gap for an ascending up-slur.
6919         (get_base_attachments): copy bound Y from right bound, if there is
6920         only one note-column after the line break.
6922 2004-09-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6924         * buildscripts/guile-gnome.sh: Update with tarball [pre]releases.
6926 2004-09-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6928         * lily/phrasing-slur-engraver.cc (process_music): Create
6929         PhrasingSlur instead of Slur.
6931         * Documentation/user/changing-defaults.itely (Defining new
6932         contexts): Fixed misprinted context name.
6934 2004-09-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6936         * ly/property-init.ly (hideStaffSwitch): remove turnOff.
6938         * scripts/convert-ly.py (conv): change Both to Neutral in property
6939         settings.
6941         * ly/engraver-init.ly: increase extent of Staff. 
6943 2004-09-13  Graham Percival  <gperlist@shaw.ca>
6945         * scm/script.scm: change behaviour of slur and accent.
6947         * Documentation/user/music-glossary.tely: de-gender a few entires.
6949         * Documentation/user/introduction.itely: de-gender a few sentences.
6951 2004-09-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6953         * input/regression/rehearsal-mark-number.ly: Reuse the existing
6954         formatting routine when adding boxed numbers. Makes it easier to
6955         extrapolate how to do for boxed letters.
6957 2004-09-12  Graham Percival  <gperlist@shaw.ca>
6959         * Documentation/user/notation.itely: fixed Time Signature numbers bug.
6961         * Documentation/user/invoking.itexi: updated the "reporting bugs"
6962         section.
6964 2004-09-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6966         * scm/define-grobs.scm (all-grob-descriptions): longer
6967         ideallengths for stems in higher order beams.
6969         * Documentation/user/changing-defaults.itely (Page layout):
6970         document them.
6972         * scm/page-layout.scm (ly:optimal-page-breaks): use new parameters
6973         to get sane spaces for titles.
6975         * ly/book-paper-defaults.ly: new parameters aftertitlespace,
6976         beforetitlespace, betweentitlespace.
6978         * input/regression/beam-quant-standard.ly (primeSixteenths): add
6979         16th notes.
6981         * lily/beam.cc (set_minimum_dy): new function. Round non-zero
6982         small slope up to smallest quant. This prevents small slopes from
6983         getting rounded to zero.
6985         * lily/beam-quanting.cc (quanting): don't allow dy_mus slopes that
6986         are smaller than the smallest quant.
6988         * input/tutorial/brahms*.ly: remove.
6990         * input/*: update all .ly files.
6991          
6992         * ly/a4-init.ly (vsize): remove papersize init files.
6994         * scripts/convert-ly.py (conv): add conversion.
6996         * lily/parser.yy: change mode changing commands to XXXmode,
6997         eg. drummode.
6998         (mode_changing_head): group mode changes.
6999         (mode_changing_head_with_context): new commands: create context as
7000         well as change mode.
7002         * input/regression/system-overstrike.ly: new file.
7004         * scm/page-layout.scm (ly:optimal-page-breaks): add
7005         betweensystempadding also to fixed distance for the spring.
7007         * scm/define-grobs.scm (all-grob-descriptions): fix order of
7008         key-cancellation.
7010         * input/regression/beam-concave-damped.ly: new file.
7012         * lily/beam-concave.cc: new file, with new routines for concave
7013         decisions. There are now two types of concaveness: 1. a sharp
7014         logic decision forcing a beam horizontal, and 2. a number that
7015         measures how concave beams are that are not caught by 1.
7017         This fixes: morgenlied.ly and input/regression/beam-concave.ly
7018         
7019         * lily/new-fingering-engraver.cc (stop_translation_timestep): new
7020         property: add-stem-support
7022 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7024         * lily/slur-scoring.cc (get_bound_info): only do
7025         broken trend at the end of the line.
7027         * VERSION (PACKAGE_NAME): release 2.3.16.
7029         * input/regression/phrasing-slur.ly (Module): remove (duplicate
7030         with phrasing-slur-slur-avoid.ly)
7032         * lily/slur-scoring.cc (struct Extra_collision_info): collect
7033         parameters for extra offset.
7034         (get_bezier): add slurs mid-points for curve determination
7035         (score_extra_encompass): add slur end points for scoring.
7037 2004-09-11  Matthias Neeracher  <neeracher@mac.com>
7039         * scm/framework-ps.scm (reencode-font): Handling font scaling
7040         and reencoding differently to work around a bug in gs 8.30 and
7041         earlier.
7042         Update callers.
7044 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7046         * lily/slur-scoring.cc (broken_trend_y): always take use vdir
7047         extent index of other system. Fixes slurs across line breaks.
7049         * lily/tuplet-engraver.cc (start_translation_timestep): use
7050         Tuplet_description::stop_ for determining when to stop producing
7051         tuplet brackets. This fixes: tuplet-overwrite.ly
7053         * lily/*-engraver.cc: remove all Protected_scm objects to fix GC
7054         errors with GUILE 1.7 CVS.
7056         * lily/translator.cc (derived_mark): new function.
7058         * lily/slur-scoring.cc (score_encompass): new penalty type:
7059         variance penalty demerits slurs where one head/stem is much
7060         closer to the slur than average.
7062         * lily/tuplet-bracket.cc (print): use robust_relative_extent
7063         iso. extent()
7064         (calc_position_and_height): use robust_relative_extent(). This
7065         fixes a couple of programming_errors
7067         * input/regression/part-combine-mmrest-after-solo.ly (Module): new
7068         file.
7070         * lily/part-combine-iterator.cc (unisono): bugfix for the case
7071         that voice-2 plays solo, and voice-1 has an mmrest that starts
7072         earlier. In that case, we switch to voice-2, so we catch the
7073         mmrest of voice-2. This fixes: partcombine-rest.ly.
7075 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7077         * scm/define-grob-properties.scm (all-internal-grob-properties):
7078         add adjacent-hairpins property.
7080         * lily/hairpin.cc: lengthen hairpin if space is available.
7082         * input/regression/dynamics-hairpin-length.ly (Module): new file.
7084 2004-09-10  Graham Percival  <gperlist@shaw.ca>
7086         * Documentation/user/notation.itely: small fixes to docs.
7088 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7089         
7090         * VERSION (PACKAGE_NAME): release 2.3.15
7092         * make/lilypond.redhat.spec.in (Requires): bump requirement for
7093         ec-fonts-mftraced
7095         * mf/GNUmakefile (SAUTER_FONTS): remove ecb10. This is provided by
7096         the latest ec-fonts-mftraced package.
7098         * scm/define-context-properties.scm
7099         (all-internal-translation-properties): add property. Remove
7100         definition of quotes property.
7102         * Documentation/user/notation.itely (Quoting other voices):
7103         document it
7105         * lily/quote-iterator.cc (moment_less): add quotedEventTypes
7106         property, to determine what events are processed in \quote.
7108 2004-09-10  Juergen Reuter  <reuter@ipd.uka.de>
7110         * (many files): removed most occurrences of underscore ("_")
7111         from font characters; made font character naming more
7112         consistent
7114         * input/test/gregorian-scripts.ly: fixed another victim of grand
7115         replacement operations
7117         * lily/vaticana-ligature-engraver.cc: caught some more "_"
7118         inconsistencies
7120         * input/puer-fragment.ly: bugfix: lyrics hyphen: syntax update
7122 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7124         * Documentation/user/changing-defaults.itely (Paper size): doc
7125         landscape
7126         
7128         * scm/framework-ps.scm (eps-header): bugfixes. 
7130         * scm/titling.scm (default-score-title): remove opus from the
7131         \score title.
7133 2004-09-08  Pedro Kroger  <kroeger@pedrokroeger.net>
7135         * scripts/convert-ly.py (program_name): changed to sys.argv[0]
7137         * scripts/abc2ly.py (program_name): changed to sys.argv[0]
7139         * scripts/etf2ly.py (program_name): changed to sys.argv[0]
7141         * scripts/lilypond-book.py (program_name): changed to sys.argv[0]
7143         * scripts/lilypond-latex.py (program_name): changed to sys.argv[0]
7145         * scripts/midi2ly.py (program_name): changed to sys.argv[0]
7147         * scripts/mup2ly.py (program_name): changed to sys.argv[0]
7149         * scripts/ps2png.py (program_name): changed to sys.argv[0]
7151 2004-09-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7153         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Increment
7154         character position.  Huh?
7156         * scm/output-gnome.scm (placebox): Shield affine-relative.
7158         * buildscripts/guile-gnome.sh: Update.  Do not use GUILE CVS,
7159         cater for system's pango 1.5.1.
7161         * input/regression/new-slur.ly: Add ugly slur from scsii-sarabande.
7163         * scm/slur.scm: Tweak.
7165 2004-09-08  Graham Percival  <gperlist@shaw.ca>
7167         * Documentation/user/{first couple of chapters}: more editing.
7169 2004-09-07  Graham Percival  <gperlist@shaw.ca>
7171         * Documentation/topdocs/AUTHORS.texi, THANKS: add/modify my name
7172         and summary.
7174         * Documentation/user/{first couple of chapters}: the big "Graham's
7175         moved to a new city, his friends haven't arrived, and he has no
7176         internet access" patch.  Numerous editorial and stylistic changes
7177         to the manual.
7179 2004-09-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7181         * scm/framework-ps.scm (output-framework): handle landscape settings.
7183         * ps/lilyponddefs.ps: cleanup.
7185 2004-09-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7187         * scm/define-grobs.scm (all-grob-descriptions): unset
7188         threshold. This fixes morgenlied. 
7190         * scm/page-layout.scm (ly:optimal-page-breaks): whoops. Thinko in
7191         rod calculation.
7193         * lily/system.cc (get_line): don't take piano-pedal & dynamic line
7194         spanners into account for staff-extents.
7196         * lily/ottava-bracket.cc (print): take common refpoint of dots
7197         into account as well.
7199 2004-09-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7201         * lily/lookup.cc (triangle): translate by interval.
7203         * VERSION (PACKAGE_NAME): release 2.3.14
7205         * Documentation/user/changing-defaults.itely (Page layout): add
7206         betweensystempadding
7208         * scm/page-layout.scm (ly:optimal-page-breaks): typo.
7210         * input/regression/quote-cyclic.ly (Module): new file.
7212         * scm/lily.scm (print): add function.
7214         * scm/music-functions.scm (quote-substitute): new
7215         function. Substitute \quote when putting music into \score.
7217         * input/regression/key-signature-cancellation.ly (Module): new file.
7219         * lily/*.cc: more ly_scm2 -> scm_to converions.
7221         * lily/key-signature-interface.cc (print): take position
7222         difference into account when spacing naturals.
7224         * lily/key-engraver.cc (create_key): create KeyCancellation grob
7225         separately, so the cancellation can be put before the staff-bar
7227         * scm/define-grobs.scm (all-grob-descriptions): add a
7228         KeyCancellation grob.
7230         * lily/tuplet-engraver.cc (struct Tuplet_description): new
7231         struct. Use to clean-up Tuplet_engraver
7233 2004-09-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7235         * lily/*: ly_scm2int -> scm_to_int
7236         ly_scm2double -> scm_to_double
7238         * lily/include/lily-guile.hh (scm_from_double): more compat glue.
7240 2004-09-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7242         * lily/simple-spacer.cc (LY_DEFINE): return something sensible for
7243         0 springs
7245         * lily/system.cc (post_processing): 
7247         * scm/page-layout.scm (ly:optimal-page-breaks): implement uniform
7248         density for vertical spacing by means of force penalty.
7249         
7250         * scm/paper.scm (paper-set-staff-size): add betweensystemspace as
7251         dimension-variables
7253         * Documentation/user/changing-defaults.itely (Page layout): add
7254         betweensystemspace variable.
7256         * ly/book-paper-defaults.ly: set betweensystemspace: 20 mm
7258         * scm/page-layout.scm (space-systems): new function. Use spring
7259         and rod approach for vertically spacing systems.
7261         * ly/engraver-init.ly: tune down minimumVerticalExtent.
7263         * scm/define-grobs.scm (all-grob-descriptions): set threshold for
7264         vertical alignment.
7266         * lily/slur-engraver.cc (process_music): add warning for slur.
7268 2004-09-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7270         * lily/include/lily-guile.hh (scm_is_number): add scm_is_number
7272         * lily/simple-spacer.cc (LY_DEFINE): ly_solve_spring_rod_problem:
7273         export spacing routine to SCM.
7275         * lily/include/simple-spacer.hh (struct Simple_spacer_wrapper):
7276         new class, separate Grobs from interface.
7278 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7280         * lily/include/lily-guile.hh: compatibility glue for 1.6
7282         * lily/*.cc (acknowledge_grob): ly_string_p -> scm_is_string.
7284         * lily/lily-guile.cc: remove ly_scm2str0.
7286 2004-09-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7288         * Documentation/user/macros.itexi: Use @inforef iso @uref for
7289         external references.  Fixes HTML cross references with makeinfo 4.7.
7291 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7293         * lily/include/simple-spacer.hh (struct Simple_spacer): remove
7294         expand_only option.
7296 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7298         * lily/system.cc (get_line): add System stencil to exprs. Fixes
7299         system-extents.ly.
7301         * ly/engraver-init.ly: decrease minimumVerticalExtent to (-5,5).
7303         * scm/define-grobs.scm (all-grob-descriptions): decrease padding
7304         for MultiMeasureRestNumber
7306         * VERSION (PACKAGE_NAME): release 2.3.13
7308 2004-08-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7310         * lily/context-scheme.cc (LY_DEFINE): ly:context-grob-definition
7311         takes two arguments.
7313 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7315         * input/regression/slur-stem-broken.ly: remove.
7317         * lily/slur.cc: add quant-score.
7319         * input/regression/slur-staccato.ly (texidoc): remove
7321         * make/lilypond.redhat.spec.in (Group): remove musedata2ly
7323 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7325         * lily/include/bezier-bow.hh: remove.
7327         * lily/slur-bezier-bow.cc (Module): remove.
7329         * lily/include/slur.hh (Module): remove.
7331         * lily/slur.cc: remove
7333         * input/test/slur-beautiful.ly (Module): remove
7335         * input/test/slur-attachment-override.ly (Module): remove
7337         * lily/slur-quanting.cc (after_line_breaking): only do scoring
7338         when less than 4 control-points.
7340         * lily/key-signature-interface.cc: add style.
7342         * Documentation/user/notation.itely (Automatic staff changes):
7343         document new behavior.
7345         * input/regression/slur-extreme.ly: new file.
7347         * ly/engraver-init.ly (Score): set bassStaffProperties to \clef
7348         bass. Obviates \clef bass in the bass staff, when using \autochange 
7350         * lily/auto-change-iterator.cc (construct_children): instantiate
7351         up/down Staff, create Voice on up staff initially. Obviates
7352         explicit instantiation of up/down contexts for \autochange. 
7354         * lily/slur-quanting.cc (get_bezier): new functionality, blow up
7355         slur depending on extents of note heads.
7356         
7357 2004-08-28  Graham Percival  <gperlist@shaw.ca>
7359         * Documentation/user/tutorial.itely: minor editing.
7361         * Documentation/user/examples.itely: tiny editing.
7363 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7365         * lily/slur-quanting.cc (init_score_param): read scoring
7366         parameters from slur-details property
7368         * scm/define-grobs.scm (all-grob-descriptions): add inside-slur to
7369         Accidental
7371         * Documentation/user/advanced.itely: removed.
7373         * Documentation/user/programming-interface.itely (How markups work
7374         internally): new subsection.
7376         * Documentation/user/converters.itely (Invoking abc2ly): remove
7377         musedata2ly.
7379 2004-08-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7381         * Documentation/user/point-and-click.texi (Point and click): new file.
7382         put point & click in appendix.
7383         
7384         * Documentation/user/changing-defaults.itely (Vertical spacing):
7385         corrections
7387 2004-08-27  Graham Percival  <gperlist@shaw.ca>
7389         * Documentation/user/introduction.itely: add note about the
7390         "example templates" section of the manual, and remove link to
7391         input/template/
7393 2004-08-27  Juergen Reuter   <reuter@ipd.uka.de>
7395         * Documentation/user/lilypond-book.itely: fix parse error: @LaTeX
7396         -> La@TeX
7398         * mf/parmesan-heads.mf: draw_diamond_head: fixed pen width; added
7399         missing lneo_mensural head; editorial cleanups
7401         * lily/mensural-ligature.cc: added more comments
7403 2004-08-26  Graham Percival  <gperlist@shaw.ca>
7405         * Documentation/user/examples.itely: second, third, fourth, and fifth
7406         sections added.
7408         * input/template/{various}: removed files included in examples.itely.
7410 2004-08-26  Juergen Reuter   <reuter@ipd.uka.de>
7412         * lily/stem.cc: bugfix: adjust-if-on-staffline: use
7413         Stem::stem_end_position instead of broken
7414         Staff_symbol_referencer::get_position
7416 2004-08-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7418         * debian/changelog: debian patch by Anthony Fok.
7420         * lily/stem.cc (flag): bugfix for mensural flags (thanks Juergen!)
7422         * lily/slur-engraver.cc (try_music): ignore slurs_. Otherwise we
7423         get spurious messages with skipTypesetting on.
7425 2004-08-25  Graham Percival   <gperlist@shaw.ca>
7427         * Documentation/user/lilypond-book.itely: slight clean-up.
7429         * Documentation/user/examples.itely: began section.
7431 2004-08-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7433         * lily/script-interface.cc: add slur property.
7435         * lily/slur-quanting.cc (score_extra_encompass): avoid other slurs
7436         too.
7438         * input/regression/phrasing-slur-slur-avoid.ly: new file.
7440         * lily/ottava-bracket.cc (print): always start from right edge of
7441         a broken bound. This fixes ottava-clef.ps 
7443 2004-08-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7445         * input/regression/slur-script-inside.ly: new file.
7447         * lily/new-slur.cc (outside_slur_callback): new function, to make
7448         scripts avoid slurs 
7450         * lily/slur-engraver.cc (finalize): 
7452         * lily/script-interface.cc: add inside-slur property.
7454         * lily/slur-engraver.cc (finalize): read inside-slur property.
7456         * scm/lily.scm (postscript->png): use ~a iso. ~s in progress
7457         message.
7459         * ly/property-init.ly (unHideNotes): hide accidentals at staff
7460         level. Fixes: hideNotes-accidental.ly
7462 2004-08-23  Pedro Kroger  <kroeger@pedrokroeger.net>
7464         * scm/page-layout.scm (plain-header): fix bug that print page
7465         number in the first page if firstpagenumber was different than 1.
7467 2004-08-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7469         * scm/framework-ps.scm (define-fonts): use UPCASE for Bluesky
7470         fonts. Fixes triangle markup for chords.
7472         * lily/slur-quanting.cc (score_extra_encompass): make score depend
7473         on distance. This fixes slur-tenuto.ly and slur-tie.ly
7475         * flower/include/interval.hh (T>): add distance() function
7477         * lily/ottava-bracket.cc (print): add dots to extent. Fixes
7478         octaviation-dot.ly 
7480         * lily/context-scheme.cc: ly_context_grob_definition: new function.
7482         * VERSION (MY_PATCH_LEVEL): release 2.3.12
7484         * lily/new-slur.cc (add_column): remove set_interface()
7486 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7488         * input/regression/slur-double.ly: new file. 
7490         * lily/slur-engraver.cc: add doubleSlurs property
7492         * scm/fret-diagrams.scm (label-fret): use cond instead of case for
7493         symbols.
7495         * Documentation/user/notation.itely (Easy Notation note heads):
7496         revise notation Chapter.
7498         * ly/music-functions-init.ly (makecluster): add makeClusters music
7499         function.
7501         * lily/part-combine-engraver.cc: rename soloADue ->
7502         printPartCombineTexts
7504         * scripts/convert-ly.py (conv): junk script{Up|Down|Both}.
7506         * lily/horizontal-bracket.cc (print): use
7507         Tuplet_bracket::make_bracket, so it supports bracket-flare,
7508         edge-eight and shorten-pair.
7510 2004-08-22  Pedro Kroger  <kroeger@pedrokroeger.net>
7512         * Documentation/user/changing-defaults.itely (Page layout):
7513         description of firstpagenumber. Moved @refbugs about rightmargin
7514         to the end of the section (it was looking like the documentation
7515         after the refbugs was part of the bug comment).
7517         * scm/framework-ps.scm (output-framework): set the first
7518         postscript page number to firstpagenumber
7520         * scm/page-layout.scm (ly:optimal-page-breaks): print the first
7521         page number according to firstpagenumber
7523         * scm/paper.scm (set-paper-dimensions): added firstpagenumber
7524         parameter
7526 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7528         * lily/slur-engraver.cc (class Slur_engraver): simplify: remove
7529         nested slurs. 
7531         * scripts/convert-ly.py (lilypond_version_re_str): handle
7532         \version "bar" % "foo"
7534         * lily/completion-note-heads-engraver.cc (process_music): set
7535         duration-log before announcing object.
7536         
7537         * lily/staff-symbol.cc (print): subtract thickness from staff line
7538         length
7540         * lily/parser.yy (book_body): disallow { ..music.. } inside \book
7541         
7542 2004-08-21  Carl Sorensen  <carldsorensen@comcast.net>
7544         * scm/stencil.scm: remove fontify-text and fontify-text-white
7546 2004-08-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7548         * scm/part-combiner.scm: skip name string. Fixes segfault problem.
7550         * Documentation/user/sound-output.texi (Sound): new file. Move all
7551         MIDI related information.
7553 2004-08-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7555         * lily/script-engraver.cc (acknowledge_grob): only take into
7556         account note heads with a music cause. Fixes ambitus-accent.ly
7558         * scm/define-markup-commands.scm (finger): set encoding to
7559         fetaNumber.
7561 2004-08-20  Erik Sandberg <ersa9195@student.uu.se>
7563         * scripts/convert-ly.py: typo
7565 2004-08-19  Carl Sorensen  <carldsorensen@comcast.net>
7567         * scm/fret-diagrams.scm: Eliminate use of fontify-text; make 
7568         font calls for diagrams based on paper and props
7570 2004-08-19  Graham Percival <gperlist@shaw.ca>
7572         * scripts/convert-ly.py: add \newpage -> \pageBreak rule.
7574 2004-08-19  Erik Sandberg <ersa9195@student.uu.se>
7576         * ly/spanners-init.ly: Correct meanings of setTextDecresc/Dim,
7577         added setHairpinDecresc/Dim
7579 2004-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7581         * lily/include/lily-guile.hh: Cosmetics.
7583 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7585         * input/regression/fermata-rest-position.ly: new file
7587         * ly/property-init.ly (hideNotes): remove \setMmRestFermata
7589         * scripts/convert-ly.py (conv): add rule for \setMmRestFermata
7591 2004-08-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7593         * scm/framework-tex.scm (output-preview-framework) 
7594         (output-classic-framework): 
7595         * scm/framework-ps.scm (output-preview-framework):
7596         s/ly:paper-book-lines/ly:paper-book-systems/g
7598         * scm/fret-diagrams.scm (ss-font-encoding):
7599         s/my-font-encoding/ss-font-encoding
7601 2004-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7603         * scm/music-functions.scm (direction-polyphonic-grobs): Set
7604         direction also on fingerings.
7606         * lily/clef-engraver.cc: Add forceClef to list of read properties.
7608 2004-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7610         * po/nl.po: Some updates.
7612         * scm/lily.scm (_): New function.
7613         (postscript->pdf, postscript->png, lilypond-main)
7614         (postscript->pdf): Use it.  Write messages to stderr.
7616         * stepmake/stepmake/po-targets.make (ALL_PO_SOURCES): Add SCM_FILES.
7618         * scm/GNUmakefile (XGETTEXT_FLAGS): Set language to Lisp.
7619         xgettext does not recognise scheme yet.  Patch submitted.
7621         * lily/scm-option.cc (LY_DEFINE):
7622         * lily/main.cc: The program is now called lilypond (WAS:
7623         lilypond-bin).
7625         * lily/rest-collision.cc (do_shift): Uniformise two too many rests
7626         messages.
7628         * lily/include/paper-book.hh
7629         * lily/include/paper-system.hh: Finish renaming of paper-line to
7630         system.  Fix users.
7632 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7634         * scm/documentation-generate.scm (string-append): add version.
7636         * scm/define-markup-commands.scm (box): add box-padding and
7637         thickness props for the box command.
7639         * Documentation/user/changing-defaults.itely (Text encoding):
7640         elucidate use of \encoding for \header strings.
7642         * lily/parser.yy (lyric_element): use \encoding for lyrics strings.
7644         * lily/score.cc (LY_DEFINE): check if length of music > 0. Fixes:
7645         staff-change.ly
7647         * lily/output-def.cc (assign_context_def): use set_variable().
7649         * lily/text-item.cc (interpret_string): accept string input
7650         encoding too.
7652         * scm/encoding.scm (read-encoding-file): print warning when file
7653         can't be found.
7655         * tex/latin1.enc: remove.
7657         * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS.
7659         * lily/rod.cc (columnize): robustness fix. Don't crash for
7660         nil span points. Fixes: appoggiatura-segfault.ly
7661         (add_to_cols): extra robustness fix.
7663 2004-08-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7665         * lily/text-item.cc (interpret_string): use lookup_variable() to
7666         fidn inputencoding. Now, \paper inherits inputencoding from
7667         \bookpaper.
7669         * lily/script-engraver.cc (stop_translation_timestep): remove slur
7670         collision kludge.
7672         * lily/dynamic-engraver.cc (typeset_all): remove slur collision
7673         kludge.
7675 2004-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7677         * lily/main.cc (parse_argv): Bugfix: handle 'p'.  Add warning.
7679 2004-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7681         * lily/spanner.cc (spanned_rank_iv): Bugfix.
7683         * lily.scm: Mark un-internationlised user messages (with FIXME).
7685         * lily/include/modified-font-metric.hh (struct
7686         Modified_font_metric): New file.  (WAS: incorrectly named
7687         scaled-font-metric.hh ?)
7689         * lily/include/scaled-font-metric.hh: Remove.
7691         * lily/text-item.cc (interpret_string): Identify and document
7692         input-encoding problem.
7694         * lily/paper-book.cc (pages): Do not use `paper' as variable name
7695         for a Bookpaper.
7697         * tex/latin1.enc: Replace /minus with /hyphen.
7699         * scm/encoding.scm: For latin1 (input-)encoding, use
7700         latin1.  (Cork.enc is NOT latin1 -- see man latin1).
7702         * ly/book-paper-defaults.ly: Add a comment about suspicious TeX
7703         inputencoding.
7705 2004-08-12  Heikki Junes  <hjunes@cc.hut.fi>
7707         * Documentation/topdocs/INSTALL.html: fixes.
7709 2004-08-12  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7711         * buildscripts/builder.py: Fix for scons CVS.
7713 2004-08-11  Heikki Junes  <hjunes@cc.hut.fi>
7715         * Documentation/user/notation.itely,
7716         Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly,
7717         input/test/ambitus-mixed.ly: fix plurals:
7718         english: ambit, pl. ambits; latin: ambitus, pl. ambitus.
7720 2004-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7722         * lily/dynamic-engraver.cc (typeset_all):
7723         * lily/script-engraver.cc (stop_translation_timestep): Handle
7724         collisions with new-slur.
7726 2004-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7728         * scm/define-grobs.scm (all-grob-descriptions): Add
7729         new-slur-interface.
7731 2004-08-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7733         * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now
7734         produces .PS
7736 2004-08-09  Carl Sorensen  <carldsorensen@comcast.net>
7738         * scm/define-grob-properties.scm (all-user-grob-properties): fix
7739         definition of number-type
7741 2004-08-08  Carl Sorensen  <carldsorensen@comcast.net>
7743         * scm/fret-diagrams.scm : change sans-serif font encoding from 
7744         TeX-text to ec (uses ecss fonts instead of cmss fonts)
7746         * scm/define-grob-interfaces.scm (fret-diagram-interface): add
7747         number-type and label-dir
7749         * scm/define-grob-properties.scm: add number-type and label-dir
7751         * scm/fret-diagrams.scm (label-fret): allow fret label to be on either
7752         left or right.  Allow choice of upper-case roman, lower-case roman, or
7753         arabic numerals in fret label
7755 2004-08-04  Werner Lemberg  <wl@gnu.org>
7757         * lily/slur-quanting.cc: Include libc-extension.hh.
7758         s/round/my_round/.
7759         * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice):
7760         s/autobeaming/autoBeaming/.
7762 2004-08-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7764         * VERSION: 2.3.11 released.
7766         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate
7767         renameinput.
7769 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7771         * lily/lookup.cc (round_filled_box): remove warnings about blot
7772         diameter.
7774         * scm/paper.scm (paper-set-staff-size): make linethickness more
7775         easily tunable.
7777         * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics,
7778         \newlyrics -> \addlyrics
7780         * lily/text-spanner.cc (print): use it.
7782         * lily/dynamic-text-spanner.cc (print): use it.
7784         * lily/grob.cc (robust_relative_extent): new function.
7786         * scripts/lilypond-book.py (main): add -f tex as default process.
7788         * lily/text-spanner.cc (print): only take linear_combination of
7789         nonempty interval.
7790         
7792 2004-08-02  Pedro Kroger  <kroeger@pedrokroeger.net>
7794         * scm/page-layout.scm (default-page-make-stencil): If leftmargin
7795         isn't specified by the user in \bookpaper center the music in the
7796         page.
7798 2004-08-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7800         * Fix some problems after the renaming of my-lily -> lily
7802 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7804         * lily/lily-parser.cc (parse_string): don't overwrite keytable_.
7806         * lily/slur-quanting.cc (enumerate_attachments): apply center on
7807         stem-X in more cases. 
7809         * lily/stem.cc (dim_callback): solve todo.
7811 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7813         * input/test/README: new file.
7815         * lily/lily-parser.cc: rename my-lily* files.
7817         * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect
7818         parser.
7820         * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer.
7822         * lily/include/my-lily-parser.hh: rename My_lily -> Lily
7824         * make/mutopia-targets.make (local-WWW): don't make ps.gz
7825         examples. They take a huge amount of space.
7827         * Documentation/user/GNUmakefile: fix symlinks.
7829         * VERSION: 2.3.10 released.
7830         
7831         * input/test/lyrics-skip-notes.ly: remove
7833         * input/test/stem-cross-staff.ly (noFlag): fold into manual
7835         * input/test/{spacing-2,staff-space,tablature,textscript}.ly:
7836         remove.
7838 2004-08-01  Heikki Junes  <hanwen@xs4all.nl>
7840         * Documentation/user/{changing-defaults,notation,tutorial}.itely:
7841         fixes.
7843 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7845         * input/regression/beam-dir-functions.ly: move from test/
7847         * Documentation/user/notation.itely (Feathered beams): new node.
7849         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7850         new node
7852         * input/regression/lyric-hyphen-retain.ly: move to regression.
7854         * input/regression/harmonic.ly: fold into manual
7855         
7856         * input/test/{hshift,move-accidentals,crescendi,feathered-beam,
7857         stem-length,chord-names-no-inversions}.ly: remove
7858         
7859         * input/test/tie-cross-voice.ly: move to regression.
7861         * Documentation/user/notation.itely (Running trills): new node.
7863         * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner
7865         * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent
7867         * lily/trill-spanner-engraver.cc: new file.
7869         * input/regression/trill-spanner.ly: new file.
7871         * input/test/timing.ly: fold into manual.
7873         * input/test/time.ly: remove
7875         * input/test/trill.ly: remove
7876         
7877         * input/test/time-signature-double.ly: fold into manual
7879         * input/test/separate-staccato.ly: remove
7881         * input/test/spanner-after-break-tweak.ly: fold into manual.
7883         * input/test/script-priority.ly: fold into manual.
7885         * input/test/scheme-interactions.ly: remove.
7886         
7887         * input/test/unfold-all-repeats.ly (mel),
7888         input/test/repeat.ly,input/test/repeat-shorter-bracket.ly,
7889         input/test/polymetric-differing-notes.ly input/test/polymetric.ly:
7890         fold into manual.
7892         * input/regression/no-staff.ly: move from input/test/
7894         * input/regression/markup-score.ly: move from input/test/
7896         * input/test/lyrics-melisma-faster.ly: fold into manual
7897         
7898         * input/test/lyrics-melisma-variants.ly: fold into manual
7900         * Documentation/user/notation.itely (Popular music): new node. 
7902         * input/test/gourlay.ly: remove
7903         
7904         * input/test/improv.ly: fold into manual.
7906         * input/test/figured-bass-alternate.ly (fl): remove
7908         * lily/dynamic-text-spanner.cc (print): new file.
7910         * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner
7912         * lily/engraver-group-engraver.cc (do_announces): reorder logic:
7913         keep recursing into children in case a parent context inserts a
7914         grob into a child context.
7916         * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to
7917         
7918 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
7920         * scm/define-markup-commands.scm (postscript): new markup command
7921         \postscript
7923         * Documentation/user/notation.itely (Formatting cue notes): new
7924         section.
7926         * input/test/clef-end-of-line.ly: fold into manual.
7928         * input/test/scales-greek.ly: remove.
7930         * input/test/chords-without-melody.ly: fold into manual.
7932         * input/test/cadenza-skip.ly: remove.
7934         * input/test/clef-8-syntax.ly: remove.
7936         * input/test/clef-manual-control.ly: move into manual.
7938         * Documentation/user/notation.itely (Aligning to cadenzas): fold
7939         in cadenza-skip.ly
7941         * mf/parmesan*.mf: change neo_mensural to neomensural.
7943         * input/test/trills.ly: remove.
7945         * input/test/transposition.ly: remove.
7947         * input/test/to-xml.ly: move to no-notation.
7949         * buildscripts/lilypond-profile.sh: change zsh bomb to warning.
7951         * lily/ledger-line-spanner.cc (print): use staff variable, not
7952         me. Fixes ledger lines on differently sized staves.
7954         * input/test/rhythm-excercise.ly: remove file.
7956         * lily/stem.cc (dim_callback): only do something if visible. Fixes
7957         spurious flag not found warning for 128th rest.
7959         * input/regression/rest-dot-position.ly: new file.
7960         
7961         * input/test/rest-dot-positions.ly: remove
7963         * lily/staff-symbol-referencer.cc (get_position): emergency
7964         fallback: use coordinate * 2.
7966         * input/no-notation/midi-scales.ly: move from test/
7968         * scm/define-markup-commands.scm (score): remove debugging code.
7970         * input/test/incipit.ly (violin): remove. 
7972         * lily/system-start-delimiter.cc (print): only draw system
7973         delimiter to staves that reach up to left bound of the delimiter.
7975         * input/no-notation/embedded-scm.ly: move from test/
7977         * input/test/follow-voice.ly: remove
7979         * input/no-notation/dynamic-absolute-volume.ly: move from test/.
7981         * input/test/drarn*: remove
7982         
7983         * input/test/count-systems.ly: remove.
7985         * lily/bar-line.cc (compound_barline): fix : for staff without
7986         lines.
7988         * lily/accidental.cc (print): use music_font_alist_chain(). This
7989         fixes smaller cautionaries.
7991         * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
7992         encoding for accidental.
7994         * Documentation/user/notation.itely (Educational use): new section
7996         * input/test/*.ly: clean up directory: move examples into manual
7997         or regtest.
7998         
8000         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add
8001         mode as well. This fixes resolution errors.
8003 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8005         * scm/lily.scm (postscript->png): show commands for --verbose.
8007         * flower/include/getopt-long.hh: opps. short option should be
8008         char, not int.
8010         * Documentation/user/GNUmakefile: use symlinks to save space.
8012         * VERSION: 2.3.9 released.
8014         * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.
8016         * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
8017         manual.
8019         * Documentation/user/tutorial.itely (Integrating text and music):
8020         remove \score and \notes from manual.
8022         * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note
8023         mode in the beginning.
8025 2004-07-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8027         * Documentation/user/changing-defaults.itely (Horizontal spacing):
8028         Correct the documentation of the spacing parameters. 
8030         * Documentation/user/tutorial.itely (Integrating text and music), 
8031         Documentation/user/lilypond-book.itely (Integrating LaTeX and
8032         music): Document that you need to add the map file ec-mftrace.map
8033         in the dvips command.   
8035 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8037         * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not
8038         found.
8040         * lily/text-item.cc (interpret_string): insert encoding setting
8041         here
8043         * scm/framework-ps.scm (ps-font-command): remove feta/parmesan
8044         encoding kludge.
8046         * Documentation/user/changing-defaults.itely (Text encoding): node
8047         on encoding.
8049         * lily/lyric-engraver.cc (try_music): remove superfluous check.
8051         * lily/book-paper-def.cc (find_scaled_font): remove default
8052         encoding, because it messes up font loading for feta and
8053         parmesan. Encoding should only be specified for running texts.
8055         * lily/modified-font-metric.cc (text_dimension): support coding
8056         scheme ""
8057         
8058 2004-07-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8060         * lily/tie-engraver.cc (stop_translation_timestep): remember tie
8061         definition, so \override works as expected.
8063         * lily/measure-grouping-engraver.cc: clarify
8065 2004-07-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8067         * lily/parser.yy (context_def_mod): remove \consistsend
8069         * lily/context-def.cc (instantiate): use Translator::must_be_last
8070         to determine engraver order.
8072         * lily/translator.cc (must_be_last): new function
8074         * scripts/convert-ly.py (conv): rule.
8076         * lily/bar-line.cc (print): return '() for height == 0.0 too.
8078 2004-07-27  Heikki Junes  <hjunes@cc.hut.fi>
8080         * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs.
8082 2004-07-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8084         * lily/include/lily-guile.hh (scm_is_int): compat glue.
8086 2004-07-25  Pedro Kroger  <kroeger@pedrokroeger.net>
8088         * input/regression/page-layout.ly: new file.
8090         * scm/paper.scm (set-paper-dimensions): Preliminary support for
8091         left and right margins.
8093         * Documentation/user/changing-defaults.itely (Page layout):
8094         Explain the leftmargin option.
8096 2004-07-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8098         * input/test/lyrics-melisma-variants.ly (texidoc): new file.
8100         * input/test/lyrics-melisma-faster.ly: new file.
8102         * lily/new-lyric-combine-music-iterator.cc (find_voice): allow
8103         change of melody by setting associatedVoice.
8105         * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode.
8107         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy
8108         file contents, rather \include them, so default linewidth is set.
8109         (ly_options): make BOOKPAPER set of options. Move linewidth
8110         settings there.
8112         * Documentation/user/examples.itely: new file. Templates are to be
8113         moved here.
8115         * Documentation/user/programming-interface.itely: move chapter.
8117         * scm/document-markup.scm (doc-markup-function): add @code
8119         * stepmake/stepmake/texinfo-rules.make: remove chmod.
8121 2004-07-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8123         * scm/page-layout.scm (plain-header): add printpagenumber boolean
8124         to bookpaper.
8126         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
8127         $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary.
8129         * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere.
8131         * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin 
8133         * scripts/lilypond-latex.py: move from lilypond.py
8135         * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting.
8136         (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book.
8138         * scm/lily.scm (postscript->png): new function
8139         (postscript->pdf): new function
8141         * lily/paper-book.cc (post_processing): call
8142         convert-to-{dvi,ps,png,pdf}
8144         * scripts/ps2png.py (option_definitions): new file.
8146         * lily/paper-book.cc (output): call output-preview-framework
8147         (post_processing): new function. Do PDF/PNG conversion.
8149         * lily/paper-outputter.cc (close): new function.
8151         * scm/framework-ps.scm (convert-to-pdf): new function. Call
8152         ps2pdf.
8153         (output-preview-framework): new function. Generate a preview .ps
8154         
8156 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8158         * VERSION: release 2.3.8
8159         
8160         * lily/note-head.cc: remove ledger line handling.
8162         * lily/ambitus.cc (print): strip away accidental / note head code,
8163         and associated properties.
8165         * lily/ambitus-engraver.cc (create_ambitus): change name to
8166         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
8167         other ambitus parts.
8168         (create_ambitus): group grobs in Ambitus grouping object. 
8170         * lily/include/pitch-interval.hh (Pitch>): new file.
8172         * lily/pitch-interval.cc (add_point): new file.
8174         * lily/ledger-line-engraver.cc: new file.
8176         * lily/ledger-line-spanner.cc (print): new file. Set limits to
8177         ledger line length to avoid clashes.
8179 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8181         * Documentation/user/invoking.itexi (Invoking lilypond): remove
8182         deprecated options
8184 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8186         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
8187         to command line option: fast=1 (default on).
8189         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
8190         This brings SCons run-time on up-to-date tree down from 48s with
8191         only checksums, to 34s without 2day checksums, to 14s (make needs
8192         4 seconds).
8193         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
8194         necessary.
8196 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8198         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
8199         (score_extra_encompass): process scripts at edges too, by checking
8200         control points directly. 
8202 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8204         * po/nl.po: Update.
8206         * lily/main.cc: Fix ly:option-usage help.
8208         * input/regression/slur-script.ly: More collision tests.
8210         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
8212 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8214         * VERSION: release 2.3.7
8216         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
8217         files.
8219         * Documentation/user/notation.itely (Slurs): document ^ and _ for
8220         slurs.
8222         * input/regression/slur-script.ly: new file.
8224         * lily/accidental-engraver.cc (process_acknowledged_grobs):
8225         make accidental appear to come from note head engraver.
8227         * lily/slur-quanting.cc: new file.
8228         (score_extra_encompass): new function. Avoid scripts and
8229         accidentals
8231 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8233         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
8234         This greatly reduces the number of files that get recompiled
8235         after touching config.hh.
8237         * config.hh.in: Remove GUILE_*_VERSION.
8239         * lily/new-slur.cc: Resolve conflicts.
8241         * lily/stem-engraver.cc (make_stem): New method.
8243         * lily/include/script-interface.hh:
8244         * lily/script-interface.cc: New file.
8246         * lily/include/script.hh:
8247         * lily/script.cc: Remove.
8249         * lily/music.cc (duration_log): New method.
8251         * lily/script.cc (struct Skript): Remove.
8253         * lily/new-slur.cc (get_base_attachments): Try at articulations.
8254         Lots of coding cleanups (Stom).
8256 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8258         * lily/new-slur.cc (avoid_staff_line): new function: avoid
8259         collisions with staff lines.
8261         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
8262         global_path
8264         * scm/define-grobs.scm (all-grob-descriptions): set ratio
8265         .25. This flattens short slurs.
8267         * lily/new-slur.cc (enumerate_attachments): move X of attachment
8268         points for tilted slurs.
8270         * input/regression/slur-tilt.ly: new file.
8272         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
8273         stems of 16th graces too.
8275         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
8276         quant penalty dependent on how much the line is in the gap.
8278         * input/regression/grace-stem-length.ly: new file.
8280         * lily/beam-quanting.cc (score_forbidden_quants): remove
8281         interquant check. The penalty of 1000 is much too harsh, and the
8282         inter case should be caught by check-staff-line-in-gap check.
8284         * lily/scm-option.cc: move debug-beam to \paper.
8286         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
8287         .txt files to appease makeinfo.
8289         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
8290         remove texttagline.
8291         
8292         * lily/new-slur.cc: cleanup, split in functions.
8294         * lily/parser.yy (chord_body_element): allow octave-check = inside
8295         chord body. 
8297         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
8299         * lily/stem.cc (height): call Beam::after_line_breaking().
8301         * lily/rest-collision.cc (force_shift_callback): only call shift
8302         for columns containing rests.
8304         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
8306         * input/regression/font-postscript.ly: invoke afm2tfm. 
8308 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8310         * mf/SConscript: Build map files.
8312         * SConstruct: Rename $out to out-www in web.
8314 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8316         * SConstruct (web_kluts): Have make web build in out-www.  Not.
8318 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8320         * Documentation/user/music-glossary.tely (Top): add fragment to
8321         pertinent @lilypond entries.
8323         * scm/define-grobs.scm: switch on new-slur by default.
8325         * lily/scm-option.cc: symbol != string.
8327         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
8328         really work yet.
8329         (set_end_points): make X coord of attachment dependent on  Y.
8330         (score_encompass): add edges too.
8332 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8334         * lily/stem.cc (get_beaming): new function.
8336         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
8337         for fragment snippets. This fixes inclusion of toplevel-music
8338         examples (such as new-slur.ly)
8340 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8342         * scripts/lilypond-book.py: Remove second import of stat.
8344         * More SCons cleanups.
8346         * Documentation/bibliography/computer-notation.bib (note): Remove
8347         extraneous closing brace.
8349 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8351         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
8352         stat calls.
8354         * Documentation/bibliography/SConscript (bibs): failed try to get
8355         bib2html find html-long.bst.
8357         * buildscripts/bib2html.py (stat): fail if bibtex fails.
8359         * make/stepmake.make: use usescons for using scons. 
8361 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8363         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
8364         for lilypondend.  Import stat (huh?).
8366 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8368         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
8369         bypass dvi. 
8371         * input/regression/font-postscript.ly: new file. 
8373         * scm/framework-ps.scm (load-fonts): load pfb files too.
8375         * lily/pfb.cc (pfb2pfa): new file.
8377 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8379         * scripts/lilypond-book.py (PREAMBLE_LY): set
8380         toplevel-music-handler too.
8382 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8384         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
8385         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
8387         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
8389         * python/SConscript:
8390         * python/vim:
8391         * input/mutopia/*SConscript: New file.
8393         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
8395         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
8396         fixes web build.
8398         * make/stepmake.make (scons): re-route to SCONS if user has been
8399         running scons in this tree.
8401         * SConstruct (config_vars): Add CPPDEFINES.
8402         (env): Set checksums type to "content".
8403         (save_config_cache): Do not exit after configuring when using
8404         checksums (the default) instead of timestamps.
8406 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8408         * SConstruct: Further development.
8410         * input/test/SConscript: 
8411         * input/template/SConscript: 
8412         * input/regression/SConscript: 
8413         * Documentation/bibliography/SConscript:
8414         * Documentation/bibliography/index.html.in: New file.
8416         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
8417         generation.
8419         * buildscripts/builder.py: Add new builders.
8421         * make/stepmake.make: 
8422         * stepmake/stepmake/*.make: 
8423         * configure.in:
8424         * lily/*:
8425         * flower*: Use config.hh (Was config.h).
8427         * scm/encoding.scm (get-coding): Print friendly error message when
8428         no encoding is found, rather than crashing.
8430 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8432         * lily/new-slur.cc (score_slopes): strong sloping score only when
8433         stems point in same dir. 
8435 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8437         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
8438         for beam start.
8440         * lily/parser.yy (context_prop_spec): check grob name for
8441         alphanumericness..
8443         * lily/lyric-engraver.cc: creates LyricText objects
8445 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8447         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
8449 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8451         * SConstruct: Configure only pristine build tree or on user
8452         request.  Cleanups.  Add Documentation/topdocs to subdirs.
8453         Use checksums instead of timestamps.
8454         (CheckYYCurrentBuffer): Return result.
8456         * Documentation/topdocs/SConscript: New file.
8458 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8460         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
8462         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
8463         scm_from_int instead.
8465 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8467         * SConstruct: Updates.  Add targets: tar, dist, release.
8469 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8471         * input/mutopia-header.ly: Generate output.
8473         * SConstruct:
8474         * buildscripts/builder.py:
8475         * Documentation/user/SConscript: SCons fixes.
8477 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8479         * lily/new-slur.cc (class New_slur): new file. Score based slur
8480         computations.
8482 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8484         * mf/SConscript: Remove Builders.
8486         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
8488         * input/SConscript: 
8489         * Documentation/user/SConscript: New file.
8491 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8493         * Documentation/topdocs/NEWS.texi (Top): add note about new
8494         emacs electric-|
8496         * scm/*.scm: adapt ly:warn calls.
8498         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
8500         * lily/repeat-acknowledge-engraver.cc (process_music): look at
8501         main timing, not grace timing. Fixes volta-repeat-grace.
8503         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
8504         remove ly:kpathsea-gulp-file.
8506         * scm/translation-functions.scm (format-metronome-markup): make
8507         note smaller, align to bottom.
8509         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
8511         * lily/metronome-engraver.cc (stop_translation_timestep): attach
8512         metronome to musical column. Don't ack time sigs or bar lines.
8514 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
8516         * THANKS: sort, add David. Kristof contributed code, he is a
8517         contributor.
8519 2004-07-09  David Svoboda      <svoboda@cmu.edu>
8521         * elisp/lilypond-mode.el,
8522         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
8523         count beats between last measure stop | and point in emacs.
8524         
8525 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8527         * tex/GNUmakefile (TEX_FILES): don't dist
8528         music-drawing-routines.ps, latin1.enc 
8530         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
8531         --no-pdf, --pdftex
8532         (copyright): add --latex option
8533         (ic_p.make_include_option): use direct PS as default.
8535         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
8537         * input/regression/beam-concave.ly (rossFourBeams): add cases from
8538         Ross
8540         * scm/script.scm (default-script-alist): marcato should follow
8541         into staff
8542         
8543 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8545         * buildscripts/builder.py:
8546         
8547         * Documentation/SConscript (outdir): New file.  Add *list.ly
8548         dependencies.  Fixes PDF doc build.
8550 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8552         * SConstruct: Add Tar target (incomplete), fix install issues, fix
8553         run from build-dir.
8555         * ly/SConscript:
8556         * scm/SConscript: New file.
8558         * lily/main.cc (dir_info): Print variables in sh format.
8560         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
8562         * mf/SConscript: Update multiple target rules.
8564         * SConstruct (assert_version): Add.
8566 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8568         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
8570 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8572         * buildscripts/mf-to-table.py: Do not try to open ''.
8574         * mf/SConscript: New file.
8576 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
8578         * scm/fret-diagrams.scm : Convert many properties to constants,
8579         reducing the pollution of the property namespace.
8581         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
8582         unnecessary properties for fret-diagram
8584         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
8585         for interface
8587 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8589         * SConstruct: Update.
8591 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8593         * input/regression/beam-quant-standard.ly (seconds): print desired
8594         quants when failing.
8596 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8598         * SConstruct:
8599         * flower/SConscript:
8600         * lily/SConscript: New file.
8602 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
8604         * scm/define-grob-properties.scm (all-user-grob-properties): Add
8605         descriptions for all fret-diagram properties.
8607         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
8608         fret-diagram interface code
8610 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8612         * ly/book-paper-defaults.ly: set default encoding to ec.
8614         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
8615         installed.
8617         * tex/latin1.enc: new file, from a2ps. 
8619 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
8621         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
8622         add a faint, green border line.
8624         * Documentation/index.html.in: drop <table>, add a faint border line.
8626 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8628         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
8630         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
8632 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
8634         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
8636         * scm/output-tex.scm (white-text): Add scale parameter to allow font
8637         scaling
8639         * scm/stencil.scm (fontify-text-white) : Adjust to better center,
8640         properly scale white text
8642         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
8643         position for numbered dots so dot will touch fret.
8644         (various routines): move to font-metric interface, rather than
8645         name, size interface.  Clean up comments.
8647         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
8648         size and offset to better center white text.
8650 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
8652         * ChangeLog: Remove pre-2.1 changes.
8654         * Documentation/misc/ChangeLog-2.1: New file.
8656         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
8657         from ChangeLog.
8659 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8661         * input/test/chords-below-volta-bracket.ly,
8662         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
8664 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8666         * VERSION: release 2.3.6
8668         * input/regression/beam-quant-standard.ly: new file: test standard
8669         beam quants.
8671         * scm/beam.scm (check-quant-callbacks): new function
8672         (check-beam-quant): new function: check whether current beam
8673         quants match argument.
8675         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
8676         forbidden quant for sitting (upstem)/hanging (downstem) on outer
8677         staffline line.
8679 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8681         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
8682         functions.
8684         * lily/note-collision.cc (do_shifts): align colliding notes to
8685         their leftmost note.
8687         * input/regression/collision-alignment.ly: new file.
8689         * ly/init.ly: don't print gc stats.
8691         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
8692         extra newline
8694         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
8695         for dimensions. This fixes ottava-remove-empty-staff.ly
8697         * input/regression/lyrics-tenor-clef.ly: new file.
8699         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
8700         cyclic parents when two axis-group-engravers are
8701         present. Fixes: crash-axis-group-engraver.ly. 
8702         
8703         * input/test/volta-chord-names.ly: new file.
8705         * scm/define-context-properties.scm
8706         (all-user-translation-properties): change voltaOnThisStaff
8707         definition. 
8709         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
8710         if necessary.
8712         * lily/volta-bracket.cc (print): handle volta brackets without
8713         bars. 
8715 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8717         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
8718         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
8720 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8722         * scm/output-gnome.scm: updated instructions for running gnome
8723         backend
8725 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
8727         * scm/fret-diagrams.scm (draw-dots): default values for dot size
8728         and dot-position now depend on finger-code value; in-dot makes
8729         dots larger and centered.
8730         (draw-barre): added straight-barre indicator option
8731         (draw-dots): made fontify-text-white work.
8733         * music-drawing-routines.ps: added /draw_white_text
8735         * scm/output-tex.scm:  added white-text
8737         * scm/output-ps.scm:  added white-text
8739         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
8740         list of stencil expressions
8742         * scm/stencil.scm: Added fontify-text-white
8744 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
8746         * input/regression/+.ly: use @unnumbered section.
8748 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8750         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
8751         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
8753 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8755         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
8757 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8759         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
8760         was causing an error. (was not actually commited in 2004-06-20)
8762         * input/regression/lily-in-scheme.ly (withPaddingC): does not
8763         breaks anymore
8765 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8767         * VERSION: 2.3.5 released.
8768         
8769         * lily/my-lily-parser.cc (parse_string): switch module too.
8771 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
8773         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
8774         ec-fonts-mftraced to running requirements.
8776 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8778         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
8779         assignments don't reach the original file.
8781         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
8782         exists
8784 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8786         * scm/output-gnome.scm: 
8787         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
8789         * debian/: Apply Debian patch (Anthony Fok).
8791 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
8793         * Documentation/user/music-glossary.tely: fix titling; @top is already
8794         an @unnumbered @chapter.
8796 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8798         * debian/GNUmakefile (EXTRA_DIST_FILES):
8799         (CONF_FILES): update file list.
8801         * lily/stencil.cc (interpret_stencil_expression): bugfix.
8803 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8805         * debian/: Remove cruft (requested Anthony Fok.)
8807         * buildscripts/guile-gnome.sh: Build without gcc libtool version
8808         juggling.
8810         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
8811         Add popup menu with grob properties.
8813         * lily/grob-scheme.cc (ly:grob-properties):
8814         (ly:grob-basic-properties): New function.
8816         * lily/stencil.cc (interpret_stencil_expression): Comment-out
8817         "no-origin" call.  Fixes -fps output.
8819         * scm/output-ps.scm (no-origin): Add dummy implementation.
8821         * scm/output-gnome.scm (define-origin): Remove
8822         (grob-cause): Add.
8824         * scm/output-ps.scm (scm):
8825         * scm/output-tex.scm (scm): Remove define-origin from exports list.
8826         (define-origin): Remove.
8828         * scm/output-gnome.scm (define-origin): 
8830         * scm/lily.scm (ly:all-output-backend-commands): Remove
8831         define-origin.  Add grob-cause.
8833 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
8835         * buildscripts/lilypond-words.py: add ly/portugues.ly.
8837 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
8839         * Documentation/user/GNUmakefile:
8840         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
8841         --include-css=.../texinfo.css; command includes css into the html.
8843         * Documentation/texinfo.css: add file.
8844         define <hr> as black and thin.
8846 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8848         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
8849         stencil expression. Junk define-origin.
8851         * lily/my-lily-parser.cc (parse_string): init parser variable when
8852         lexer_ is set, ie. in parse_string and parse_file.
8854         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
8855         ly:score-bookify.
8857         * scm/lily.scm (collect-scores-for-book): new function.
8859         * ly/init.ly: print collected scores/musics.
8861         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
8862         scope, not in lily module.
8864         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
8866         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
8867         encapsulate gtk/pango tests.
8869         * po/tr.po: Turkish translation.
8871 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8873         * input/regression/lily-in-scheme.ly: regression test for #{
8874         ... #} syntax
8876         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
8877         was causing an error.
8879         * Documentation/user/programming-interface.itely (Using LilyPond
8880         syntax inside Scheme): documentation for #{ ... #} syntax.
8882 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
8884         * Documentation/index.html.in: use black thin <hr>.
8886         * buildscripts/mutopia-index.py: use thin black <hr>.
8888 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8890         * scm/fret-diagrams.scm: Use UNIX style line endings.
8891         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
8892         typo.  Fixes compile.
8894         * scm/output-ps.scm (white-dot): Remove second incarnation.
8896         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
8898 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8900         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
8901         single file error.
8903         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
8905 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
8907         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
8908         remove size as argument to fret-diagram interface;
8909         improved white-circle dots for fret;
8910         improved top-fret thick line/
8912         * scm/output-ps.scm: added white-dot function
8914         * scm/output-tex.scm: added white-dot function
8916         * tex/music-drawing-routines.ps: added draw_white_dot function
8918         * ps/music-drawing-routines.ps: added draw_white_dot function
8920         * input/test/fret-diagram.ly: examples to show multiple
8921         functions and multiple interfaces
8923 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8925         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
8926         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
8928         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
8929         conflict.  Have I told you lately how much I love autotools?
8931 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8933         * lily/lily-guile.cc: 
8934         * lily/pangofc-afm-decoder.cc:
8935         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
8936         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
8938         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
8939         developers.
8941         * lily/paper-outputter.cc (file): New method.
8942         (dump_string): Use it.
8944         * scm/output-gnome.scm: Update with pango CVS info, lilylib
8945         musing.
8947         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
8948         of them has a comma :-).
8950         * scm/framework-gnome.scm: Add pango decoders.
8952         * lily/include/pangofc-afm-decoder.hh: 
8953         * lily/pangofc-afm-decoder.cc: New file.
8955         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
8957         * configure.in: Check for pango.
8959         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
8960         autoconf).
8961         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
8963         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
8965 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8967         * Documentation/user/tutorial.itely (Integrating text and music):
8968         fix grammar & punctuation.
8970 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8972         * lily/: Stray janitorial cleanups.
8974         * scm/lily.scm (ly:all-stencil-expressions):
8975         * scm/lily.scm (ly:all-output-backend-commands): New function.
8977         * scm/safe-lily.scm (safe-objects): Add them.
8979         * scm/framework-gnome.scm (<gnome-outputter>): New class.
8981         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
8983 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8985         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
8987 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
8989         * scm/page-layout.scm (default-page-make-stencil): add
8990         raggedbottom, raggedlastbottom.
8992         * Documentation/user/changing-defaults.itely (Page layout): add doc.
8994         * scm/framework-tex.scm (define-fonts): fix export of
8995         papersize.
8997         * lily/paper-book.cc (classic_output): strip suffixes from
8998         framework functions.
9000         * lily/tuplet-bracket.cc (before_line_breaking): do not return
9001         SCM_UNDEFINED to Scheme.
9003 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9005         * lily/book.cc: remove Book::to_stencil().
9006         (process): whoops. Score::book_rendering returns vector, not list.
9008         * scripts/convert-ly.py (conv): remove \notes.
9009         apply to input examples.
9011         * lily/paper-outputter.cc (output_stencil): don't use
9012         smobify_self() but self_scm()
9014         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
9015         from smobify_self().
9017         * lily/paper-book.cc (output): load framework module
9018         scm_c_resolve_module().
9020         * python/lilylib.py (exit): exit with argument i.
9022 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9024         * scm/framework-gnome.scm (output-framework-gnome): Try loading
9025         gnome modules from non-toplevel.
9027         * lily/ly-module.cc (ly:import-module): Export to ly:.
9029         * lily/paper-score.cc (process): Do not show progress newline.
9031         * lily/paper-book.cc (output, classic_output): Show progess
9032         newline after score.
9034 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
9036         * buildscripts/lilypond-words.py: add ly/vlaams.ly
9038 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9040         * lily/score.cc (ly:run-translator): Do not crash on empty music
9041         list.
9043         * lily/book.cc (process): Do not render score when systems is empty.
9045         * input/simple-song.ly: Down one octave.
9047         * scm/output-gnome.scm: Remove script again; re-add modules fix
9048         (CVS conflict resolve?)
9050         * lily/stencil.cc (ly:interpret-stencil): Was:
9051         interpret_stencil_expression.
9053 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9055         * buildscripts/guile-gnome.sh: New file.
9057         * scm/output-gnome.scm: White background, better window size, sane
9058         canvas size.  Cleanups.
9060 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9062         * VERSION: release 2.3.4
9064         * Documentation/user/invoking.itexi (Invoking the lilypond
9065         binary): document --safe.
9067         * scm/output-gnome.scm: set PATH in script.
9069         * scm/page-layout.scm (default-page-make-stencil): don't stretch
9070         if there is too few systems on a page.
9072         * lily/parser.yy (relative_music): start at middle C without pitch
9073         argument.
9075         * Documentation/user/changing-defaults.itely (Page layout): new node.
9076         (Paper size): rename node
9077         (Page breaking): new node.
9078         (Titling): move from invoking.
9079         (File structure): new node.
9081         * lily/parser.yy (score_body): allow \header and music anywhere in
9082         \score body.
9084 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9086         * scm/lily.scm (ly:load): Remove page-breaking.scm.
9088 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9090         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
9092         * lily/include/paper-line.hh: rename to Paper_system.
9094         * lily/include/paper-book.hh: doc class.
9096         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
9098         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
9099         (plain-header): add instrument-name.
9100         (default-page-make-stencil): bugfixes.
9102         * lily/parser.yy (book_body): allow \header anywhere in \book{}
9104         * lily/paper-book.cc: remove copyright & tagline. Remove
9105         interactions with Page
9107         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
9108         here, 
9109         (default-page-make-stencil): new function
9110         (default-page-music-height): new function
9111         (page-headfoot): new function
9112         (ly:optimal-page-breaks): generate stencils directly from here
9114         * scm/titling.scm: new file, group titling functions
9116 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9118         * scm/output-gnome.scm: Handle multiple pages.
9120         * scm/framework-gnome.scm: Do not load output-gnome.
9121         (framework-gnome): Invoke output-gnome::header and
9122         output-gnome::end-output as faked stencils.  Fixes experimental
9123         gnome output.
9125 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9127         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
9128         octavation compatibility fixes. Backportme. 
9130         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
9131         pages.
9132         (ly:optimal-page-breaks): combine-penalties: no shortcut for
9133         negative. Now we handle negative penalties (ie. \pageBreak)
9134         correctly.
9136         * lily/system.cc (get_line): extract page-penalty from the left
9137         bound.
9139         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
9141 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9143         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
9145 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9147         * scm/output-gnome.scm: Update script.  Move development to
9148         lilypond_2_3_2 branch for now.
9150 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9152         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
9153         negative penalties.
9154         cleanups.
9156         * Documentation/user/changing-defaults.itely (Creating contexts):
9157         index entries
9159         * scm/page-breaking.scm (ly:optimal-page-breaks): new
9160         file. Rewrite function. 
9162         * lily/paper-book.cc (pages): new interface: page-breaking returns
9163         list of line-list.
9165         * lily/page.cc (Page): take lines argument.
9167         * scm/document-translation.scm (all-engravers-doc): link to user man
9169         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty
9170         iso. score.
9172         * Documentation/user/notation.itely (Relative octaves): typo.
9174         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
9176 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9178         * scm/output-gnome.scm: Update build script.
9180 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9182         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
9183         gnome backend.
9185         * scm/framework-gnome.scm: New file.
9187         * scm/lily.scm: Use it.
9189         * lily/paper-outputter.cc: Janitorial cleanups.
9190         (ly:outputter-dump-string): Remove unreachable statement.
9192         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
9193         (ice-9): Bugfix: Add srfi-1.
9195         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
9197 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9199         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
9200         in do_quit()
9202 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9204         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
9206 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9208         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9209         override of Beam::position-callbacks. Why would grace beams not be
9210         quantized? Fixes: weird-stem-size-grace. 
9212         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
9213         warning only once. Backportme.
9215         * lily/accidental-engraver.cc (number_accidentals_from_sig):
9216         bugfix, 2nd try. Backportme.
9218         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
9220 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9222         * Documentation/user/notation.itely (Instrument transpositions):
9223         Correct the name of the instrumentTransposition property.
9225 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9227         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
9229 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9231         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
9232         and postLilyPondExample are called when defined.
9234 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9236         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
9237         This fixes setting notenames with `\include "nederlands.ly" '
9239         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
9240         new function.
9242 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9244         * scm/page-layout.scm: don't do piece, it should be in score-title
9245         only.
9247         * lily/lexer.ll: lex \score separately.
9249         * lily/paper-book.cc: junk stencil2line.
9251         * lily/paper-line.cc (Paper_line): construct from Stencil
9252         directly. No futzing with the dimensions.
9254         * lily/include/paper-line.hh (class Paper_line): 
9256         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
9257         takes arbitrary number of arguments.
9259         * input/test/markup-score.ly (tuning): simplify example. 
9261 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9263         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
9265         * scm/define-markup-commands.scm (score): define score-markup
9267         * lily/parser.yy (markup): use score-markup.
9269         * lily/score.cc: add ly:score? 
9271 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
9273         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
9274         fret-parse-string so it prepares for calls to fret-diagram-verbose
9275         Changed display constants to props so they are available for
9276         \override.
9278 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9280         * VERSION: release 2.3.3
9282         * stepmake/stepmake/generic-vars.make: unset LANG.
9284         * input/regression/tuplet-nest.ly: bugfix.
9286         * lily/tie-performer.cc (stop_translation_timestep): reset
9287         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
9289         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
9290         clear repeat_ directly after setting stem_tremolo_. Fixes:
9291         tremolo-repeat.ly
9293         * input/regression/span-bar-break.ly: new file.
9295         * scm/define-grobs.scm (all-grob-descriptions): remove
9296         break-visibility from SpanBar. Fixes: piano-repeat.ly
9298 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9300         * python/lilylib.py (make_ps_images): only compute bbox when needed.
9302         * scripts/lilypond-book.py (process_snippets): use lily -f ps
9303         files for generating pngs. (failed experiment)
9305         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
9306         file with PFA fonts included.
9308         * lily/score.cc (default_rendering): put header in too.
9310         * lily/paper-line.cc (LY_DEFINE): change function to
9311         ly:paper-line-extent
9313         * scm/page-layout.scm (default-book-title): only add lines for
9314         non-nil fields.
9315         (default-score-title): idem.
9317         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
9319         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
9321         * lily/include/paper-book.hh (class Paper_book): remove height_
9322         member.
9324         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
9326         * lily/ly-module.cc (LY_DEFINE): bugfix.
9328         * lily/paper-book.cc (book_title): separate function for the book
9329         title.
9331         * scm/page-layout.scm (default-book-title): only account for
9332         markup fields.
9334         * scm/framework-ps.scm: new file. Move high level interface from
9335         output-ps.scm
9337         * scm/music-functions.scm (def-grace-function): move macros from
9338         ly/music-functions-init.ly
9340         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
9341         framework-tex.scm
9343         * scm/framework-tex.scm (dump-line): new file. High level
9344         interface for output (pages, systems, header). 
9346         * lily/include/page.hh (class Page): add is_last_ field.
9348         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
9350         * lily/paper-book.cc (split_string): new function
9351         (output): output multiple formats, i.e. --format=ps,tex
9353         * scm/output-ps.scm (output-scopes): dump variables directly.
9354         (define-fonts): rewrite for new interface
9356         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
9358         * lily/paper-outputter.cc (Paper_outputter): take format argument.
9360         * lily/main.cc (parse_argv): don't set extension for output.
9362         * lily/clef-engraver.cc (create_clef): remove
9363         Staff_symbol_referencer::set_position() call. 
9365 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9367         * ly/music-functions-init.ly (addlyrics): set the 'origin property
9368         with the location argument in music function definitions.
9370 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9372         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
9373         staffsymbol dependency.
9375         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
9376         cleanups.
9378         * lily/book.cc (process): return Paper_book
9379         (to_stencil): use Book::process().
9381         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
9382         header_ field. Store in $globalheader
9384         * lily/parser.yy (book_body): book header is initted to
9385         $globalheader.
9388 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9390         * input/test/fill-a4.ly: removed.
9392         * lily/parser.yy (output_def): push scope of parent_ Output_def
9393         too.
9395 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9397         * scm/output-gnome.scm: Update info.
9399 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9401         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
9403         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
9404         than 1 module.
9406         * lily/include/ly-module.hh (ly_use_module): rename is_module to
9407         ly_c_module_p.
9409         * scm/page-layout.scm (default-book-title): move Scheme titling
9410         functions to here.
9412         * lily/parser.yy (book_paper_block): remove scope too.
9414         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
9416         * lily/rest.cc: add direction to rest properties.
9418         * lily/include/output-def.hh: new file, move from
9419         music-output-def.hh
9421 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9423         * scm/output-gnome.scm: Describe feta-cork hack.
9425 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9427         * lily/include/book-paper-def.hh: derive from Output_def 
9429         * lily/include/paper-def.hh: move all functionality out of class.
9430         Junk header.
9432         * lily/include/music-output-def.hh: rename Music_output_def to
9433         Output_def.
9435         * input/wilhelmus.ly: only set space for Paper formatting. 
9437         * lily/include/midi-def.hh: remove file, remove class.
9438         Move functions to Music-output-def.
9440         * lily/music-output-def.cc (Music_output_def): remove separate
9441         translator table. Lookup translators in scope directly. This
9442         obviates Context suffix for context identifiers, i.e.
9444         \context {
9445           \Staff
9446           .. 
9447           }
9450         will work.
9453         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
9455         * Documentation/user/changing-defaults.itely (Horizontal spacing):
9456         document spacing override hack.
9458 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9460         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
9461         installation info.  Support point-and-click.  Add +/- zoom
9462         keybindings.
9464 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9466         * VERSION: 2.3.2 released
9468         * lily/parser.yy (book_body): set default bookpaper.
9470         * scm/output-tex.scm (header): kludge: hard code linewidth. 
9472         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
9474 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9476         * lily/score.cc (default_rendering): scale outputdef before
9477         starting.
9479 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9481         * scm/fret-diagrams.scm: Add header.
9483         * scm/output-gnome.scm: Hello world :-)
9485 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9487         * scripts/lilypond.py (run_dvips): only add papersize if present.
9489         * lily/accidental-engraver.cc (update_local_key_signature): new
9490         function, fold code from initialize() and process_music().
9491         (update_local_key_signature): use deep copy. This fixes one
9492         problem from custom-key-signatures.ly.
9493         (number_accidentals_from_sig): tighter check for
9494         accidental-too-old.
9496         * ly/engraver-init.ly: remove localKeySignature
9497         definition from ChoirStaff, StaffGroup, Score.
9499         * lily/percent-repeat-engraver.cc (try_music): add moments for
9500         barlines too. Fixes: skipbars-percent-repeat.ly.
9502 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9504         * lily/context-def.cc (filter_performers): don't go to cdrloc if
9505         skipping last pair. Fixes: crash-bar-number.
9507         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
9508         D. Sorensen)
9510         * input/test/fret-diagram.ly: new file.
9512         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
9513         (scale-paper): divide by scale.
9515 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9517         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
9518         case.
9520 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9522         * scm/stencil.scm (fontify-text): reinstate function
9524         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
9526         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
9528         * lily/parser.yy (book_paper_head): \bookpaper {} 
9530         * python/midi.c: remove config.h
9532 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9534         * scm/output-gnome.scm: Update.
9536 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9538         * scm/output-gnome.scm: New file.
9540         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
9542 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9544         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
9545         (find_scaled_font): move from Paper_def
9547 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9549         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
9550         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
9552         * po/fr.po: update po.
9554         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
9556         * lily/book-paper-def.cc (print_smob): new file.
9558 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
9560         * buildscripts/lilypond-words.py: search words also from
9561         music-functions-init.ly.
9563 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9565         * ly/music-functions-init.ly (def-music-function): new helper
9566         macro for defining music functions. \addlyrics \appoggiatura
9567         \acciaccatura \grace \partcombine \autochange \applycontext
9568         \applyoutput and \breathe are now defined here thanks to it.
9570         * lily/parser.yy: 
9571         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
9572         \grace \partcombine \autochange \applycontext \applyoutput and
9573         \breathe keywords removed from the parser.
9575         * lily/parser.yy: 
9576         * lily/music-function.cc (ly_make_music_function): 
9577         * lily/lexer.ll (music_function_type): added a case for 0-arg
9578         music functions.
9580 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9582         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
9583         refering to a music expression can be used in lily-inside-scheme:
9584         #{ $music #}
9586         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
9587         and ly:parser-define, and change ly:parser-parse-string in order
9588         to make #{ $music #} work.
9590         * scm/new-markup.scm (compile-markup-expression): when an argument
9591         is a string, use `make-simple-markup'.
9593 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9595         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
9597 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9599         * scripts/convert-ly.py (FatalConversionError.func): handle + in
9600         font-size. (backportme)
9602 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9604         * lily/paper-outputter.cc (output_stencil): dump font definitions
9605         before each stencil.
9607         * lily/include/paper-book.hh (struct Score_lines): new
9608         struct. Collect info per Paper-score.
9610         * lily/include/page.hh (class Page): to_stencil() returns Stencil
9611         everywhere.
9613         * lily/stencil.cc (find_expression_fonts): new function
9615         * lily/paper-outputter.cc (output_stencil): use
9616         interpret_stencil_expr
9618         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
9619         (interpret_stencil_expr): new function. Generic stencil
9620         interpretation.
9622         * lily/paper-def.cc (find_scaled_font): divide lookup
9623         magnification by outpuscale for non-virtual fontmetrics. This
9624         fixes ludicrously long font definitions for text
9625         fonts. (backportme)
9627         * lily/score-engraver.cc: remove
9628         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
9630 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9632         * input/test/markup-score.ly: Remove \notes.
9634         * lily/parser.yy (book_body): Grok Composite_music and \header.
9635         (markup): Push NOTES mode before score_block.
9637         * VERSION: release 2.3.1
9639         * mf/feta-klef.mf: 
9640         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
9642         * Documentation/user/programming-interface.itely: Use @emph (was:
9643         @em).
9645         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
9647 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9649         * scm/output-tex.scm (output-tex-string): tighten safe security.
9651         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
9653         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
9654         allowed ly functions.
9656         * lily/ly-module.cc (ly_module_define): only define variable if
9657         bound.
9658         (ly_make_anonymous_module): take safe option.
9660 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9662         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
9664 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9666         * input/regression/newaddlyrics.ly: Fix.
9668         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
9669         \score \notes.
9671 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
9673         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
9675 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9677         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
9679         * lily/paper-line.cc (Paper_line): don't store list of stencils,
9680         but convert to single Stencil immediately.
9682         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
9684 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9686         * scm/output-sodipodi.scm: Resurrect sodipodi output.
9688 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
9690         * elisp/lilypond-mode.el: Changed the way defaults are created for
9691         LilyPond-command-master.  LilyPond-mode will now check the
9692         timestamps of the files to see which command has to run next.
9694 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9696         * scm/bass-figure.scm (format-bass-figure): don't set
9697         number-markup for strings. This fixes string in bass
9698         figure. (backportme)
9700         * lily/parser.yy (bass_number): insert number-markup into figure
9701         definition.
9703         * scm/define-music-properties.scm (all-music-properties): make
9704         'figure a markup.
9706         * scripts/convert-ly.py (conv): \apply -> \applymusic
9708 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
9710         * elisp/lilypond-mode.el: changed the order of some commands
9711         ("Midi" after "2Midi"), use the user-defined
9712         LilyPond-command-default as default instead of "LilyPond"
9714         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
9715         to set the master file for the next command.
9717         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
9718         with font-lock-reference-face.
9720 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
9722         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
9724         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
9726 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9728         * ly/music-functions-init.ly (TODO): new file.
9730         * lily/parser.yy (Generic_prefix_music_scm): add more
9731         music_function symbols.
9732         (Prefix_composite_music): change \apply to music-function   
9734         * lily/include/music-function.hh: rename to music-function
9736 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9738         * lily/music-head.cc (LY_DEFINE): change order of args.
9740         * input/regression/music-head.ly (texidoc): new file.
9742         * lily/parser.yy (Generic_prefix_music): allow generic
9743         music-transformation functions. 
9745         * lily/include/music-head.hh (is_music_head): new file.
9747         * lily/music-head.cc (get_music_head_transform): new file.
9749 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9751         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
9752         empty extent. This fixes ottava brackets on rests. (backportme)
9754         * make/lilypond.redhat.spec.in (Group): ln png files for info.
9756         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
9758         * cygwin/lily-wins.py: update for the lily-wins.py script.
9760 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9762         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
9763         code. This will obviate typeset_grob () in the future.  The effect
9764         of this is that improperly written spanner handling will result in
9765         invalid spanner bounds.
9766         (announce_grob): add to elems_ from here
9767         (typeset_grob): comment out.  
9769         * lily/include/engraver.hh (make_spanner): new calling interface
9770         for make_{item,spanner}. This obviates most calls to
9771         announce_grob().
9773         * scm/music-functions.scm (set-accidental-style): use GrandStaff
9774         iso. PianoStaff for piano styles.
9776 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
9778         * Documentation/user/music-glossary.tely: add segno after d.s.
9780 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9782         * lily/include/audio-column.hh: remove unused variables.
9783         (patch by Michael Welsh Duggan)
9785         * flower/include/axes.hh (other_axis): inline Axes function
9786         (thanks to David Brandon).
9788 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9790         * cygwin/mknetrel: Install image links (backportme).
9792         * Documentation/user/GNUmakefile (local-install-info): Activate
9793         actual installing of image links (backportme).
9795 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9797         * Documentation/user/notation.itely (Measure repeats): Removed
9798         unnecessary (and confusing) \context Voice{.
9800 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9802         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
9804         * lily/page.cc (Page): Do not use ly_scheme_function for
9805         volatile/configurable variables (FIXME: better name).
9807         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
9808         get_scmvar).
9810 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9812         * scripts/convert-ly.py (FatalConversionError.subst): use
9813         \transposition.
9815 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
9817         * lily/include/page.hh (class Page): Declare left_margin ().
9819         * lily/page.cc: Remove paper var caching.
9821 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9823         * Documentation/user/music-glossary.tely: Add name to @top node.
9824         Remove comment from @table definitions (workaround for makinfo
9825         bug).
9827         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
9828         ly:stencil-get-expr).  Update callers.
9829         (ly:stencil-align-to!):  Return stencil too.
9831         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
9832         stencil.  Remove looped line-based page output.
9833         (output_line): Use line stencil.  Remove looped stencil-based line
9834         output.
9836         * lily/page.cc (ly:page-paper-lines): New function.
9838         * input/test/markup-score.ly: New file.
9840         * scm/define-markup-commands.scm (stencil): New markup.
9842         * lily/book.cc (to_stencil): New method.
9844         * lily/parser.yy (markup): Use it to grok \score.
9846 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9848         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
9850         * lily/paper-book.cc (pages): Change signature.  Update callers.
9852         * lily/include/page.hh:
9853         * lily/page.cc: New file.
9855         * lily/paper-line.cc (to_stencil): New method.
9857         * lily/paper-outputter.cc (output_stencil): New method.
9859         * lily/paper-outputter.cc (output_line): Use them.
9861         * lily/warn.cc: Remove.
9863         * lily/my-lily-parser.cc (distill_inname): Remove.
9865         * flower/include/file-name.hh: 
9866         * flower/file-name.cc: New file.  Update users.
9868         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
9869         (find): New method of same name.
9871         * lily/my-lily-parser.cc (ly:parse-file): Use it.
9873         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
9874         constant error message.
9876 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
9878         * input/test/{blank-notes.ly,staff-container.ly}: typos.
9880 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9882         * Documentation/user/music-glossary.tely: @table @strong' replaced
9883         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
9884         (backportme).
9886 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9888         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
9890         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
9891         #{ lily music expression #} that returns an equivalent scheme
9892         music expression by parsing the string.
9894 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
9896         * lily/my-lily-parser.cc:
9897         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
9898         SCM string (foo.ly/toto.scm support).
9900 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
9902         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
9904 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9906         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
9908         * scripts/lilypond-book.py: LY code that includes \header is
9909         not assumed to be a fragment.
9911 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9913         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
9914         tremolo beams up.
9916         * lily/stem.cc (chord_start_y): Return 0 if no heads.
9917         (get_default_stem_end_position): No tremolo head juggling if no
9918         heads.  Fixes tremolo crash on rests (backportme).
9920         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
9922 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9924         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
9925         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
9927         * lily/lexer.ll: Allow \encoding in NOTES mode.
9929         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
9930         for lyrics, not for commands.
9932         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
9933         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
9935         * input/regression/newaddlyrics.ly: New file.
9937         * Documentation/topdocs/NEWS.texi: Update.
9939         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
9940         (Music_list): Allow embedded scm.
9942         * lily/score.cc (ly:score-bookify): New function.
9944         * lily/music.cc (ly:music-scorify): Idem.
9946         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
9947         (ly:parser-print-score): Idem.
9949         * scm/lily.scm (default-toplevel-book-handler): Idem.
9950         (default-toplevel-music-handler): Idem.
9951         (default-toplevel-score-handler): Idem.
9953         * ly/declarations-init.ly: Set default toplevel handlers.
9955         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
9957         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
9958         printer for score at toplevel.
9960 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9962         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
9963         Fix for simple case: input/simple-song.ly, more complex stuff
9964         does not work yet.
9966 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
9968         * lily/parser.yy (Prefix_composite_music): split Composite_music
9969         in Prefix_composite_music and Grouped_music_list.
9970         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
9972 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9974         * scm/lily.scm (toplevel-expression): New define.
9976         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
9978         * lily/parser.yy (toplevel_expression): Use it.
9980         * lily/include/my-lily-parser.hh: Smobbify.
9982         * lily/my-lily-parser.cc (parse_string): New method.
9984         * lily/my-lily-parser.cc (ly:parse-string): New function.
9986         * Documentation/user/lilypond.tely: Add comment and workaround for
9987         gs-8.01 crash.  Fixes make web.
9989         Simplification of toplevel music.
9991         * lily/lexer.ll, lily/parser.yy:
9993         * In LYRICS mode, return LYRICS_STRING.  This fixes one
9994         shift/reduce problem.
9996         * Use NOTES mode at start of maininput.
9998         * Grok toplevel composite music expression, put in score and book.
10000         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
10002         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
10004         * input/simple.ly: New file.
10006         * input/simple-song.ly: Idem.
10008 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10010         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
10011         Sandberg.
10013 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10015         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
10017 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
10019         * input/regression/accidental-octave.ly: doc automatic showing
10020         of note names.
10022 2004-04-16  Heikki Junes <janneke@gnu.org>
10024         * po/fi.po: do "make po && make -C po po-update" at top-level,
10025         then "cp po/out/fi.po po/fi.po" and update fields.
10027         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
10029 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10031         * Documentation/user/introduction.itely (About this manual): Fix
10032         templates and regression urls (backportme).
10034 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10036         * ly/engraver-init.ly (Score:graceSettings): Increase
10037         beamed-lengths, especially for 32nd notes.
10039         * Documentation/user/notation.itely (Grace notes): Correct the
10040         syntax for add-grace-property example.
10042 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10044         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
10045         `Generated' tag.
10047         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
10048         Severely broken (the Debian package, at least).
10050 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10052         * lily/context.cc (find_create_context): assign to lvalue.
10054 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10056         * lily/include/translator.hh (class Translator): rename
10057         get_parent_context() to context () to avoid confusion.
10059         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
10061         * lily/lexer.ll: change is_string -> ly_c_string_p 
10063         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
10065         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
10067 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10069         * VERSION: release 2.3.0
10071         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
10073         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
10074         if nonempty.
10076         * lily/include/context.hh (class Context): make members protected.
10077         (children_contexts): new accessor function.
10079         * lily/include/translator.hh (class Translator): make
10080         daddy_context_ protected.
10081         (class Translator): clean up. 
10083         * lily/include/context.hh (class Context): make daddy_context_
10084         private.
10086         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
10087         higher for finding Voice. (backportme)  
10089         * lily/include/context.hh (class Context): remove
10090         find_context_below() as a method.
10092         * Documentation/user/notation.itely (The Lyrics context): add note
10093         about manual durations
10095         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
10096         encoding.
10098         * scm/output-tex.scm (text): dump \inputencoding{} for text.
10100 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10102         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
10103         \usepackage{inputenc}
10105         * lily/paper-book.cc (classic_output): don't advance Offset for
10106         TeX output.
10108         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
10109         ec-sauter.map in rules
10111         * mf/ecb.mf (font_identifier): new file, based on ecbx
10113         * mf/ecb10.mf (gensize): new file.
10115         * Documentation/topdocs/NEWS.texi (Top): document some more new
10116         features.
10118         * ly/declarations-init.ly: run convert-ly
10120         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
10121         from input-file-results. Remove input-file-results.* 
10123 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10125         * scm/output-ps.scm (font-command): Fix, again.
10127         * input/test/title-markup.ly: Add \noPagebreak test.
10129         * lily/score-engraver.cc (try_music): Bugfix.
10131 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10133         * lily/main.cc (main_with_guile): excise dependency options -M and
10134         --dep-prefix
10136         * lily/input-file-results.cc: excise Makefile dependency code
10138         * Documentation/user/invoking.itexi (Invoking the lilypond
10139         binary): remove dep doco
10141         * lily/main.cc (main_with_guile): call lilypond-main
10143         * scm/lily.scm (lilypond-main): new function: handle multiple files.
10145         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
10146         exception.
10148         * lily/my-lily-parser.cc: remove paper_description function
10150         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
10151         new function.
10153         * lily/main.cc: remove global_score_count.
10155         * lily/book.cc (process): don't take header from global_input_file.
10157         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
10159         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
10161         * lily/music-output-def.cc (LY_DEFINE): new function
10162         ly_output_description. This function does the bulk for  setting,
10163         parsing and breaking down of an input file.
10165         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
10166         anonymous modules globally. Let's hope they get GCd
10168         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
10170 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10172         * scm/output-ps.scm (header): Papersize from paper.
10174         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
10175         for classic output.
10177         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
10178         lilypondclassic is defined.
10179         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
10181         * input/regression/between-systems.ly: Remove.
10183         * python/lilylib.py (get_bbox): Fix regular expression
10184         for bounding box.
10186         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
10188         * scm/output-tex.scm (stop-page): Use it.
10190         * scm/output-ps.scm (define-fonts): Bugfix.
10192         * lily/grob.cc: Add penalty to interface.
10194         * lily/include/paper-line.hh (class Paper_line): New member
10195         var penalty_.
10197         * lily/system.cc (get_line): Initialise Paper_line with
10198         page-penalty's from original grobs.
10200         * scm/define-music-properties.scm (all-music-properties): Add
10201         page-penalty.
10203         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
10205         * lily/score-engraver.cc (try_music): Handle page-penalty.
10207         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
10209 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10211         * ly/declarations-init.ly (melismaEnd): typo
10213         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
10215         * scm/output-ps.scm (text): split string into spaces, use moveto
10216         for setting space. 
10218 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10220         * po/nl.po: Update.
10222         * scm/font.scm (add-cmr-fonts): Typo.
10224 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10226         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
10227         font-encoding.
10229         * scm/define-grobs.scm (all-grob-descriptions): idem.
10231         * lily/time-signature.cc (numbered_time_signature): idem.
10233         * scm/font.scm (add-cmr-fonts): use real encoding names for
10234         font-encoding.
10236 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10238         * lily/paper-book.cc (classic_output): 
10239         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
10240         Fixes classic output.
10241         (lilypondstart):
10242         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
10243         kludge.
10245         * scripts/old-lilypond-book.py: Remove.
10247         Page layout for SCOREs enclosed in a BOOK:
10249         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
10250         layout tweaking.
10252         * input/les-nereides.ly (theScore): Add \book.
10254         * input/test/title-markup.ly: Add \book.
10256         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
10257         only if 'verbose.
10259         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
10261         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
10263         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
10264         * scm/output-tex.scm (start-system): Update for page layout by
10265         LilyPond.
10267         * scm/output-ps.scm (start-system): Previously (new-start-system).
10269         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
10270         passed to define-fonts.
10272         * lily/paper-column.cc: 
10273         * lily/system.cc (get_line):
10274         * ly/property-init.ly (newpage): 
10275         * scm/define-grob-properties.scm:
10276         * scm/output-ps.scm: 
10277         * scm/output-tex.scm: Remove between-system-string kludge.
10279         * scm/output-ps.scm (define-fonts, font-command,
10280         font-load-encoding): Handle ENCODING = #f.
10282         * scm/output-tex.scm (output-scopes): Check if variable is bound.
10284         * scm/define-markup-commands.scm (fill-line): Use
10285         make-simple-markup (WAS: unexisting make-word-markup).
10287         * lily/text-item.cc (interpret_markup): Bugfix, transpose
10288         ENCODING, MARKUP parameters for interpret_string.
10290         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
10292         * lily/score.cc (book_rendering): New method.
10293         (default_rendering): Create Paper_book helper locally, dump
10294         output.
10296         * lily/my-lily-lexer.cc (the_key_tab): Add book.
10298         * lily/parser.yy: Handle \book.
10300         * lily/include/book.hh: 
10301         * lily/book.cc: New file.
10303 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10305         * lily/text-item.cc (interpret_string): new file, select font with
10306         encoding.
10308         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
10310         * scm/define-markup-commands.scm (encoded-simple): new markup command.
10312         * lily/parser.yy (markup): take encoding from lexer.
10314 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10316         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
10318         * scm/output-ps.scm: Remove some cruft.
10320 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10322         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
10324         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
10326 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10328         * scm/font.scm (add-century-schoolbook-fonts):
10329         (make-century-schoolbook-tree): New function.
10331         * input/test/title-markup.ly: Use Century Schoolbook font.
10333 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10335         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
10336         to Erik Sandberg) 
10338         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
10340         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
10342         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
10344         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
10346 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10348         * scm/part-combiner.scm (determine-split-list): bugfix: if no
10349         solo-state (at end of solo), we can set the solo status
10350         too. (backportme.)
10352         * input/regression/part-combine-solo-end.ly: new file.
10354 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10356         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
10357         flavour abc files.  Really ignore unknown keys (backportme).
10359 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10361         * lily/scaled-font-metric.cc (text_dimension): only multiply with
10362         magnification_ when looking up in orig_.
10364         * scm/output-tex.scm (text): switch off char-mapping.
10366         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
10367         because AFM's encoding field cannot have spaces.
10369 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10371         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
10373 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10375         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
10377         * mf/cmr.enc: new file, without hi-bit ascii info. 
10379         * lily/bezier-bow.cc (slur_shape): make indent dependent on
10380         width. This removes the 'hook' at the end of a long slur.
10382         * buildscripts/mf-to-table.py (parse_logfile): don't append
10383         encoding to fontname.
10385 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10387         * scm/output-ps.scm (define-fonts): Load .enc only once.
10389         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
10390         too.
10392 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10394         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
10395         encoding field.
10397         * lily/stencil-scheme.cc: remove ly:fontify-atom 
10399         * ly/portuges.ly (pitchnames): new file.
10401         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
10402         Michael Welsh Duggan
10404         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
10406         * ly/nederlands.ly: add comment about digits.
10408         * lily/scaled-font-metric.cc (derived_mark): idem.
10410         * scm/encoding.scm (make-encoding-mapping): change permutation to
10411         mapping.
10413         * lily/scaled-font-metric.cc (derived_mark): is a const method.
10414         (Modified_font_metric): make alist for coding_description_
10415         (LY_DEFINE): remove coding-name.
10417         * scm/output-tex.scm (text): remove debugging code.
10419         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
10421         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
10422         from infile.
10424         * mf/feta-generic.mf: move fet_beginfont into generic code.
10425         use fetaMusic (without space) as encoding
10427         * mf/feta-autometric.mf: take encoding argument
10429         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
10431         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
10432         use.
10434         * scm/encoding.scm (read-encoding-file): use symbol for glyph
10435         name.
10437 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10439         * input/test/title-markup.ly: Set inputencoding.
10441         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
10443         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
10445         * scm/encoding.scm (get-coding-filename, get-coding-command): New
10446         function.
10447         (coding-alist): Also hold filename, command.
10448         (read-encoding-file): Return symbols.
10450 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10452         * scm/output-tex.scm: remove fontify; text and char take a font
10453         argument.
10455         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
10457         * lily/scaled-font-metric.cc (text_dimension): init
10458         coding_{permutation,table}_ too 
10459         (LY_DEFINE): ly:font-encoding, new function return
10461         * lily/paper-def.cc (find_scaled_font): take input coding from
10462         inputcoding paper var.
10464         * lily/performance.cc (output): remap modulo 16.
10466         * lily/text-item.cc (interpret_markup): whoops, variable
10467         shadowing fixed.
10469 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
10471         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
10472         symbols, not symbols to strings.
10474         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
10475         symbols, not symbols to strings.
10477 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10479         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
10480         (ly:kpathsea-gulp-file): New function.
10482         * scm/encoding.scm (read-encoding-file): Use it.
10484 2004-04-06  Werner Lemberg  <wl@gnu.org>
10486         * scm/encoding.scm (coding-alist): Fix typo.
10488 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10490         * lily/scaled-font-metric.cc (text_dimension): move function from
10491         Font_metric
10492         (make_scaled_font_metric): init coding_scheme_ to TeX
10493         (text_dimension): use get-coding-vector for non TeX coding_scheme_
10495         * lily/include/scaled-font-metric.hh (struct
10496         Modified_font_metric): rename from Scaled_font_metric
10498         * scm/encoding.scm (read-encoding-file): split up large function,
10499         leave caching to (delay)
10501         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
10503 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10505         * lily/my-lily-lexer.cc (set_encoding): New method.
10507         * lily/lexer.ll: Grok \encoding.
10509         * lily/font-metric.cc (get_encoded_index): New function.
10511         * lily/include/font-metric.hh (coding_scheme): New method.
10513         * scm/encoding.scm: New file.
10515         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
10517 2004-04-05  Werner Lemberg  <wl@gnu.org>
10519         * Documentation/user/tutorial.itely: Revised (finished).
10521         * Documentation/user/macros.itexi (@separate): Removed.
10523 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10525         * scm/output-ps.scm (define-fonts): fix scaling.
10527         * lily/scaled-font-metric.cc (design_size): add function.
10529         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
10530         partial cut&paste of ly:font-magnification.
10532 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10534         * scm/output-ps.scm (define-fonts):
10535         (fontify): Update.
10537 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10539         * po/fr.po: update. (backportme).
10541         * po/nl.po: update. (backportme). 
10543         * mf/feta-beugel.mf: document why design size is not fixed.
10545         * mf/feta-braces-a.mf: rename to stress that it's not design size.
10547 2004-04-04  Werner Lemberg  <wl@gnu.org>
10549         * Documentation/user/tutorial.itely: Revised (continued).
10551 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10553         * po/nl.po: Update (backportme).
10555 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10557         * po/de.po: update. (backportme).
10559         * scm/output-tex.scm (font-command): use ly: functions to
10560         construct name.
10561         (define-fonts): don't use alist, just dump \font definitions.
10562         (font-load-command): calculate proper scaling by taking
10563         outputscale from paper argument.
10565         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
10566         expression.
10568         * lily/paper-outputter.cc (output_header): pass paper arg to
10569         define-fonts
10571         * lily/paper-def.cc (font_descriptions): dump list of
10572         Scaled_font_metrics
10573         (find_scaled_font): take Font_metric argument, store
10574         Scaled_font_metrics in hash-table containing (size ->
10575         Scaled_font_metrics) alist.
10576         (get_dimension): rename from get_realvar
10578         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
10579         ly:font-magnification, ly:font-name: new functions
10581 2004-04-03  Werner Lemberg  <wl@gnu.org>
10583         * Documentation/user/dedication.itely,
10584         Documentation/user/preface.itely,
10585         Documentation/user/introduction.itely,
10586         Documentation/user/tutorial.itely: Revised.
10587         Removing leading spaces which distorts output if info files are read
10588         with stand-alone info.
10589         Removing superfluous inter-word spaces which also distorts output
10590         for stand-alone info.
10591         Using ` and ' instead of `` and '' everywhere to improve
10592         legilibility with stand-alone info
10593         Using @samp for single-letter input items and data which contains
10594         spaces, @code for other things.
10596         * lily/grob-interface.cc: Adding copyright.
10597         (check_interfaces_for_property): Improve format of warning message.
10599 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10601         * lily/include/font-metric.hh (struct Font_metric): add
10602         design_size () method.
10604         * buildscripts/mf-to-table.py (base): add DesignSize comment.
10606         * lily/afm.cc (read_afm_file): read design size.
10608         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
10610         * scm/music-functions.scm (unfold-repeats): handle dots too.
10612 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10614         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
10615         (backportme)
10617 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
10619         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
10620         lyric indent.  Revert melismaBusyProperties using \unset.
10622 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10624         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
10626         * lily/parser.yy (command_element): allow redefinition of |
10627         meaning.
10629         * lily/break-align-engraver.cc (acknowledge_grob): construct
10630         LeftEdge where the first cause for alignment is coming from.
10631         This makes \override Staff.LeftEdge work as expected.
10633         * lily/slur-performer.cc (Slur_performer): add inits
10635         * lily/beam-performer.cc (Beam_performer): add inits
10637 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
10639         * VERSION (PACKAGE_NAME): release 2.2.0