*** empty log message ***
[lilypond/patrick.git] / ChangeLog
blobf82997e681b561dc33921a31902bcb6b2563541d
1 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * input/mutopia/claop.py: Update.
5 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
9         * lily/tie-formatting-problem.cc
10         (set_ties_config_standard_directions): use abs iso fabs for ints.
12         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
14         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
15         little less than noteheight, to prevent overlaps in chords.
17         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
18         head, and fudge stem-attachment.
20         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
22         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
24 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
26         * lily/main.cc (main): Debugging aid: catch exceptions.
28         * flower/std-string.cc (to_string): Robustification.  Fixes midi
29         output with std::string.
31 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
33         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
35 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
37         * Fix -DSTRING_UTILS_INLINED.
39 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
41         * VERSION (PATCH_LEVEL): release 2.7.29
43         * lily/relocate.cc (setup_paths): mingw uses std string too.
45         * lily/*.cc: various fixes for substr(ARG).
47         * lily/sustain-pedal.cc (print): 
49         * flower/file-name.cc (slashify): use std strings.
51         * flower/string-convert.cc: remove publib.h
53         * scm/define-markup-commands.scm (verbatim-file): new markup
54         command \verbatim-file
56         * Documentation/topdocs/NEWS.tely: fixup URLs
58         * input/regression/alignment-vertical-manual-setting.ly (Module):
59         new file.
61         * lily/align-interface.cc (align_elements_to_extents): overwrite
62         translations with numbers in alignment-offsets from left bound
64         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
65         (page-translate-systems): new function: take into account Y-offset.
67         * Documentation/topdocs/NEWS.tely (Top): document new features.
69         * input/regression/page-layout-manual-position.ly (Module): new
70         file.
72 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
74         * flower/file-path.cc (path::parse_path): Oops.
76         * Finish std::string interface.  For now, use std:: marker
77         throughout for easy s/r.
79 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
81         * Documentation/user/putting.itely (Score is a single musical
82         expression): typo.
83         (Score is a single musical expression): more typos.
85         * scm/page.scm (annotate-space-left): thinko.
86         (annotate-page): more thinkos.
88 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
90         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
91         for different \score blocks separately.
92         (post-process-pages): put write-page-layout into paper block.
94         * lily/output-def.cc (get_parser): new file.
96         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
97         file.
99         * lily/include/output-def.hh (class Output_def): add parser_ member.
101         * input/regression/page-layout-twopass.ly (Module): new file.
103         * scm/lily.scm: remove cpp hack.
105         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
107 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
109         * GNUmakefile.in (c-clean): New target.
111         * flower/include/std-string.hh: String/std::string compatibility:
112         Use NPOS for `not found' (iso -1), use ssize for length () and pos
113         type.
115         * flower/rational.cc: 
116         * flower/include/rational.hh: 
118         * flower/offset.cc: 
119         * flower/include/offset.hh: 
121         * flower/interval.cc: 
122         * flower/include/interval.hh: 
124         * flower/string-convert.cc: 
125         * flower/include/string-convert.hh: Use std::string [interface].
126         Update callers.
128 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
130         * Documentation/index.html.in: clean up.
132 2006-01-25  Graham Percival  <gpermus@gmail.com>
134         * Documentation/user/putting.itely: another new untested doc section.
136 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
138         * scm/layout-page-layout.scm (write-page-breaks): write
139         \spacingTweaks #ALIST. Handle grace timing.
141         * scm/: more imports.
143         * scm/page.scm (make-page): add footer/header.
144         (annotate-space-left): revise: only take page argument.
145         (layout->page-init): new function.
147         * scm/layout-page-layout.scm (write-page-breaks): preliminary
148         version of the system/spacing/linebreak hack writing to the output
150         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
151         ly:make-prob.
153         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
154         ly:spanner-bound
156 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
158         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
160         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
162         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
163         handling to page.scm
165         * lily/prob-scheme.cc (LY_DEFINE): new file.
166         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
168         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
169         prob functions.
171         * lily/music.cc (derived_mark): derive Music from Prob.
173         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
175         * lily/prob.cc (Module): Implement Prob (Property Object), object
176         with shared and r/w property alists.  
178         * lily/include/prob.hh (Module): new file. Declare Prob.
180         * flower/string.cc: remove is_empty().
182         * flower/include/string.hh (class String): remove String:: qualifier.
184         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
185         substitute appropriate functions.
187         * flower/include/string.hh (class String): remove to_str0 and
188         is_empty(). S&R everywhere.
190 2006-01-23  Graham Percival  <gpermus@gmail.com>
192         * Documentation/user/basic-notation.itely: add hairpin
193         after-linebreak tweak to commonprop.
195         * Documentation/user/putting.itely: added two new sections.
197 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
199         * flower/international.cc: 
200         * flower/include/international.hh: 
202         * flower/getopt-long.cc: 
203         * flower/include/getopt-long.hh: Use std::string [interface].
204         Update callers.
206         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
208         * stepmake/stepmake/executable-rules.make: Add dependency on
209         module libraries.
211 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
213         * flower/file-path.cc: 
214         * flower/include/file-path.hh: Use std::string [interface].
215         Update callers.
217         * flower/direction.cc: 
218         * flower/axis.cc: Unused.  Remove.
220         * configure.in (--enable-std-string): New option.
222         * flower/std-string.cc: 
223         * flower/include/std-string.hh: New file.
225         * flower/file-name.cc[STD_STRING]:
226         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
228 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
230         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
232         * scm/define-markup-commands.scm (with-dimensions):
233         with-dimensions markup command.
235         * input/test/font-table.ly: use it.
237         * lily/open-type-font.cc (glyph_list): new function.
239         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
241         * lily/ttf.cc: remove ly:font-glyph-list scheme function
243 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
245         * ly/music-functions-init.ly (parallelMusic): new music function
246         for parallel music entry.
248         * scm/define-music-properties.scm (all-music-properties): new
249         'void music property
251         * scm/music-functions.scm (ly:music-message): make public, to be
252         used in music function definitions
254         * scm/lily-library.scm (collect-music-for-book): discard music
255         when the 'void property is set.
257 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
259         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
261         * mf/GNUmakefile: idem.
263         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
265         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
267         * Documentation/user/notation-appendices.itely (The Feta font):
268         use it.
270         * input/test/font-table.ly: new file. Generate font table within lily.
272         * Documentation/user/notation-appendices.itely (The Feta font):
273         use new font-table.ly file. 
275         * stepmake/stepmake/install-out-targets.make
276         (local-install-outfiles): only create directory if
277         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
279 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
281         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
283         * VERSION (PACKAGE_NAME): release 2.7.28
285         * scm/framework-ps.scm (write-preamble): use it to pick exactly
286         the right font from a Mac dfont.
287         (write-preamble): don't forget directory, only look at files.
289         This fixes problems with TTF files in dfonts that don't match
290         their PostScript names.
291          
292         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
293         PS name from TTF font.
295         * input/regression/tie-manual.ly: document new feature.
297         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
299         * VERSION (MY_PATCH_LEVEL): bump to .28
301         * Documentation/user/basic-notation.itely (Ties): add tie examples
302         refs.
304         * lily/tie-formatting-problem.cc (score_ties_configuration):
305         symmetry penalties for outer ties.
307 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
309         * lily/tie-formatting-problem.cc (generate_configuration) 
310         (set_manual_tie_configuration): skip non-pair manual
311         tie-configuration, so you can set individual ties as
313           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
315         * input/regression/tie-chord.ly: use generateTiePattern to
316         simplify file.
318         * lily/tie-formatting-problem.cc (peak_around): new function.
319         (score_configuration): use sliding criterion for staff line collisions. 
320         (score_configuration): idem for dot collisions.
321         (generate_configuration): use separate stem_gap for gap to stem.
323         * lily/include/tie-formatting-problem.hh (struct Tie_details):
324         separate penalty factors for x and y distance.
325         (struct Tie_details): separate penalties for tip and center line collisions.
327 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
329         * lily/tie-formatting-problem.cc (generate_configuration): make
330         large ties avoid stafflines in the horizontal section.
331         (score_configuration): use softcoded penalties
332         (score_aptitude): idem.
334         * lily/tie-helper.cc (from_grob): softcode tie details
336         * lily/staff-symbol-referencer.cc (on_staff_line): new function
338         * lily/staff-symbol-referencer.cc (on_line): rename from
339         on_staffline 
341 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
343         * ly/music-functions-init.ly: remove duplicate tag.
345         * lily/include/*.hh: GCC 4.1 fixes.
347 006-01-16  Erlend Aasland  <erlenda@gmail.com>
349         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
351         * scm/define-music-types.scm: fix bug in desc. string
352         for OverrideProperty
354 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
356         * scripts/lilypond-book.py: bugfix
358         * scm/define-music-types.scm: fix typos.
360 2006-01-14  Graham Percival  <gpermus@gmail.com>
362         * Documentation/user/ basic-notation.itely, global.itely,
363         advanced-notation.itely, instrument-notation.itely: small
364         additions (bugs and commonly tweaked properties).
366 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
368         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
369         detection of mingw build.
370         (MINGW_BUILD): opps.
372 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
374         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
375         i686-mingw32.
377 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
379         * scm/music-functions.scm (skip->rest): add skip->rest
381 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
383         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
384         explicitly.
386         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
387         config dirs. Aids debugging. 
388         (display_config): also display config files.
390 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
392         * VERSION: release 2.7.27
394         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
395         for determining bar size.
397         * lily/staff-symbol.cc (print): place lines at distance line-positions
399         * scm/define-grob-properties.scm (all-user-grob-properties): add
400         line-positions.
402         * lily/staff-symbol.cc (height): new function.
404         * input/regression/staff-line-positions.ly:  new file.
406 2006-01-06  Graham Percival  <gpermus@gmail.com>
408         * input/test/add-staccato.ly: remove reference to old file.
410 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
412         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
413         lilypond binary too.
415 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
417         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
419 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
421         * scripts/midi2ly.py: Bugfix: Declare datadir.
423         * make/ly-rules.make:
424         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
425         that seems to be gone). Fixes make web.
427         * The grand 2005-2006 replace.
429         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
431 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
433         * make/lilypond-vars.make: set LILYPOND_BINARY variable
434         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
435         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
436         like -dgs-font-load.
438         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
439         remove absolute path to lilypond binary.
440         
441 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
443         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
445 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
447         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
449         * mf/GNUmakefile: remove broken dvips map symlink.
451 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
453         * lily/main.cc: 
454         * configure.in: Cosmetic fixes.
456 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
458         * Documentation/user/music-glossary.tely (Pitch names): Added
459         Spanish pitch names and durations, thanks to Ernesto Gancedo
461 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
463         * scm/lily.scm (define-scheme-options): use quasi-quote for option
464         init. Fixes verbose printing of .scm files.
466         * stepmake/aclocal.m4: add spaces before - options.
467         
468 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
470         * lily/relocate.cc (setup_paths): Bugfix: do not store result
471         of path search in local block variable.
473 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
475         * configure.in (NCSB_DIR): --enable-ncsb-dir
476         (LINK_GXX_STATICALLY): denko.
478         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
480         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
481         use locate to find c059033l.pfb. 
482         
483 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
485         * lily/tie-formatting-problem.cc
486         (problem::generate_base_chord_configuration): Use my_round (was
487         round).
489         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
490         do not invoke mbrtowc.
492         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
494 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
496         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
498 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
500         * Documentation/user/invoking.itely (svg): revise.
502 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
504         * lily/lexer.ll: use sourcefilename iso. renameinput.
506 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
508         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
509         <PostScriptName>.ttf instead of c059XXXttf.
511         * lily/program-option.cc (LY_DEFINE): special support for
512         --verbose, so it works before option init too.
514         * mf/GNUmakefile (local-install): oops.
516         * lily/lyric-hyphen.cc (print): oops.
518         * buildscripts/pfx2ttf.fontforge: new file.
519         
520         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
521         ($(outdir)/%.ttf): new rule. 
523         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
524         to LyricHyphen.
526         * lily/lyric-hyphen.cc (print): multiply hyphen height by
527         font-size
529 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
531         * VERSION: release 2.7.26
532         
533         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
535 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
537         * lily/font-config.cc (init_fontconfig): verbosity.
539         * THANKS: add Muziekacademie Lede. 
541         * scripts/musicxml2ly.py (print_voice_definitions): new function 
542         (print_score_setup): new function
543         (convert): read part definition to output staves properly.
545         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
546         Music_xml notes.
548         * python/musicexp.py (Output_printer.__init__): use _ in data
549         members.
550         (Output_printer.unformatted_output): new function: no formatting,
551         but count braces.
552         (Duration.get_length): remove isinstance() checks for
553         Output_printer everywhere.
555         * input/regression/lyrics-bar.ly (texidoc): add
556         Separating_line_group_engraver.
558 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
560         * lily/relocate.cc (framework_relocation): New function,
561         factored from set_relocation ().
562         (prefix_relocation): Rename from set_relocation ().
563         (setup_paths): Use it.
565 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
567         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
568         numbers. Patch by Erlend Aasland.
570 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
572         * lily/font-config.cc (init_fontconfig): print warning if cache
573         file is not existant.
575         * lily/main.cc: don't use #ifdef but #if
577 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
579         * lily/grob-property.cc (internal_set_property): don't abort on
580         calculation-in-progress.
582         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
584         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
585         connect-to-neighbor property not connect-to-other
587         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
588         (LY_DEFINE): oops. don't forget protection.
590         * flower/parse-afm.cc (Module): strip AFM handling completely.
592         * lily/stencil-expression.cc: idem.
594         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
596         * lily/function-documentation.cc (ly_add_function_documentation):
597         use static member iso. Protected_scm
599         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
601         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
603 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
605         * lily/relocate.cc (set_env_dir): New function.
606         (set_relocation): Use it to fix setting PANGO_PREFIX.
608 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
610         * input/regression/stem-direction-context.ly: remove rest.
612         * lily/melody-engraver.cc (process_music): restart for bar lines.
613         (acknowledge_slur): restart for slurs.
615 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
617         * Documentation/user/invoking.itely: describe how to view SVG 
618         output using Inkscape which replace embedded fonts with OTF fonts.
620 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
622         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
624 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
626         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
627         comment.
629 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
631         * VERSION (PACKAGE_NAME): release 2.7.25
633         * Documentation/topdocs/NEWS.tely (Top): document new feature.
635         * input/regression/stem-direction-context.ly: new file.
637         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
639         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
640         on rest.
642         * ly/engraver-init.ly: add Melody_engraver
644         * lily/beam.cc (calc_direction): use default-direction
645         iso. get_default_direction()
647         * scm/define-grob-properties.scm (all-user-grob-properties): add
648         default-direction property.
650         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
652         * lily/stem.cc (calc_default_direction): remove
653         Stem::get_default_direction, use default-direction with callback
654         instead.
656         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
658         * lily/melody-engraver.cc: new file. Acknowledge stems for
659         interpolated stem directions. 
661         * lily/melody-spanner.cc: new file. Interpolate stem directions.
663         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
665         * lily/slur-configuration.cc (fit_factor): more robust check for
666         point in curve X-extent.
668         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
669         (outside_slur_callback): check for 'outside avoidance.
671         * lily/slur-configuration.cc (score_extra_encompass): don't use
672         bound->column() == avoid->column() for checking extents, as this
673         doesn't work for accidentals. 
675         * lily/slur-engraver.cc (acknowledge_extra_object): remove
676         DynamicText hardcoding.
678         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
679         crash if bound stem is NULL
681         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
682         pedals.
684 2005-12-22  Graham Percival  <gpermus@gmail.com>
686         * scm/define-markup-commands.scm: typo.  @code{\raise}
687         => @code{\\raise}.
689         * darwin.patch: now used again, includes a
690         required patch from fink.
692 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
694         * po/TODO: mention gtranslator along with kbabel.
695         * po/fi.po: update translations.
697 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
699         * lily/relocate.cc (setup_paths): Bugfix.
701 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
703         * lily/slur-configuration.cc (score_extra_encompass): don't use
704         "avoid" choice for avoid-slur.
706         * stepmake/bin/install.py (dest): don't create existing dir.
708 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
710         * stepmake/bin/install.py: Remove file before copying.
712         * config.make.in: 
713         * stepmake/aclocal.m4: Do not substitute INSTALL.
715 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
717         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
718         depend on link-tree.
720         * lily/relocate.cc (setup_paths): only check path for non-absolute
721         dir without directory part.
723         * flower/file-name.cc (is_absolute):  new method.
724         (is_absolute): check root_ too.
726 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
728         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
729         relocation code.  Oops, don't comment out too much.
731         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
732         iso itself.
734         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
735         compile.
737 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
739         * .cvsignore: Add install-sh.
741         * autogen.sh (srcdir): Typo.
743 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
745         * autogen.sh (srcdir): urg. Touch install-sh.
747         * stepmake/bin/install-sh (Module): remove.
749         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
751         * lily/include/relocate.hh: new file.
753         * lily/relocate.cc: new file. Contain relocation logic.
755         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
756         (main): read LILYPOND_VERBOSE as the first thing.
758         * stepmake/aclocal.m4: remove INSTALL variable.
760         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
761         separate target for making font symlinks.
762         (documentation-dir): use $(if $(findstring )) for switching off
763         Documentation.
765         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
766         something if DOCUMENTATION is no.
768 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
770         * VERSION: release 2.7.24
772         * lily/script-column-engraver.cc (stop_translation_timestep):
773         delay adding to script-column.
775         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
777         * python/convertrules.py (conv): rule for number-visibility
779         * lily/slur-configuration.cc (score_extra_encompass): different
780         distance measure for avoid and inside avoidance.
781         (score_extra_encompass): use 1/(distance+eps) as penalty.
783         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
784         encompass objects for generating slur curves.
786         * lily/slur.cc: use details iso. slur-details property.
788         * input/regression/slur-tuplet.ly: new file.
790         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
792         * flower/include/offset.hh (class Offset): new operator /=
794         * lily/tuplet-number.cc (print): new file, new interface.
796         * scm/define-grob-properties.scm (all-user-grob-properties):
797         remove number-visibility property.
799         * lily/tuplet-bracket.cc (calc_control_points): new function
800         (calc_connect_to_neighbors): new function.
801         (print): remove text handling for tuplet numberdef.
803         * lily/tuplet-engraver.cc (struct Tuplet_description): create
804         TupletNumbers too. 
806         * lily/lily-guile.cc (robust_scm2booldrul): new function
808         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
810         * lily/tuplet-bracket.cc (calc_position_and_height): use
811         staff-padding to control whether tuplet brackets are over staves.
813         * lily/grob.cc (suicide): clear dim_caches_.
815         * lily/dimension-cache.cc (clear): new function.
817         * lily/grob.cc (extent): swap order of min-extent and extent
818         calculations. This fixes hara kiri staves. 
820 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
822         * lily/main.cc: Nitpick: relocation is not based on path, but on
823         directory (location).
825 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
827         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
829         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
831         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
833         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
835         * stepmake/stepmake/generic-vars.make (Module): idem.
837         * stepmake/stepmake/executable-targets.make (default): use it.
839         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
841         * make/GNUmakefile: don't install make rules.
843         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
844         slashes.
845         (prepend_env_path): more verbosity.
847 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
849         * GNUmakefile.in: add dir argument for find command.
851         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
852         fixes weird line numbers for point & click.
854         * lily/source-file.cc (get_counts): init line/column/char counts.
856 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
858         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
860 2005-12-16  Graham Percival  <gpermus@gmail.com>
862         * Documentation/user/basic-notation.itely, advanced-notation.itely:
863         minor fixes from Fredric.  Thanks!
865 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
867         * ly/music-functions-init.ly: add \bar and \clef music function 
869         * lily/lily-lexer.cc: idem.
871         * lily/parser.yy (FIXME): remove BAR and CLEF.
873 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
875         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
877         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
878         function arguments too
880         * lily/main.cc (set_relocation): new function.
882         * scripts/musicxml2ly.py (convert): add \version
884         * lily/tie.cc: remove get_default_attachments()
886         * VERSION (PACKAGE_NAME): release 2.7.23
887         
888         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
889         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
891         * Documentation/topdocs/NEWS.tely (Top): document new feature.
893         * lily/tie-formatting-problem.cc (score_ties): new function
894         (get_variations): new function. Try flipping dirs for collisions.
895         (generate_optimal_chord_configuration): new function. 1-opt search
896         for better configuration.
898         * lily/tie-configuration.cc: new file.
900         * lily/tie.cc: junk Tie::get_configuration()
902         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
903         (score_ties_configuration): new function.
904         (generate_ties_configuration): new function.
905         (generate_base_chord_configuration): new function.
906         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
907         (set_manual_tie_configuration): Move body from tie-column-format.cc 
909         * input/regression/tie-dot.ly: new file.
911         * lily/tie-formatting-problem.cc (score_configuration): score
912         tie/dot collisions.
914         * lily/tie-helper.cc (get_transformed_bezier): new function
916         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
918         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
919         -undefined suppress iso. -framework Python 
921         * scm/define-grobs.scm (all-grob-descriptions): set
922         springs-and-rods (thanks Joe Neeman!)
924 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
926         * input/no-notation/display-lily-tests.ly (test): 
927         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
928         changed from \tag #'(a b) to \tag #'a \tag #'b
930 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
932         * Documentation/topdocs/NEWS.tely: strip out-www.
934         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
936         * config.make.in (AR): add AR and RANLIB
938         * flower/libc-extension.cc: include cassert
940         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
941         darwin check.
943 2005-12-11  Graham Percival  <gpermus@gmail.com>
945         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
947         * stepmake/stepmake/python-modules-vars.make: define
948         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
950         * THANKS: added Johannes Schindelin.
952 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
954         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
956         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
957         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
959         * lily/parser.yy: reorganize file layout.
961         * ly/music-functions-init.ly: add tweak music function.
963         * lily/grob-info.cc (ultimate_music_cause): new function:
964         recursively lookup causes. 
966         * lily/parser.yy (chord_body_element): allow music functions for
967         post-events, allow music functions for chord elements. 
969         * lily/font-config-scheme.cc (display_fontset): add cast.
971         * python/convertrules.py (FatalConversionError.sub_syms): \tag
972         #'(a b) -> \tag #'a \tag #'b rule.
974         * python/musicexp.py (Output_printer.dump_version): new function
976 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
978         * lily/parser.yy (FIXME): remove \tag
979         (FIXME): remove tag_music() function.
981         * lily/lily-lexer.cc: remove \tag
983         * ly/music-functions-init.ly: define music-function "tag"
985         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
987 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
989         * VERSION (PATCH_LEVEL): release 2.7.22
991         * input/regression/lyric-hyphen-retain.ly: renew.
993         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
994         grob
996         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
997         iso. minimum-length property for rods.
999         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
1000         LyricSpace item to keep lyrics spaced apart.
1002         * ly/engraver-init.ly: remove Separating_line_group_engraver
1004         * Documentation/user/music-glossary.tely: do setfilename before
1005         music-glossary.
1007 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
1009         * Documentation/user/lilypond-book.itely: use `,´ after xref:
1010         See xref documentation, for example.
1012 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1014         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
1015         pending_skip iso. ly_voice[-1]
1016         (main): add if __main__ for debugging.
1018         * python/musicxml.py (Accidental.__init__): new class.
1020         * scripts/musicxml2ly.py (progress): new function
1021         (musicxml_key_to_lily): don't barf on modeless keys.
1022         (create_skip_music): new function.
1023         (musicxml_spanner_to_lily_event): new function. Handle beams too.
1024         (musicxml_note_to_lily_main_event): new function.
1026         * python/musicexp.py (Music.__init__): add comment field.
1027         (NestedMusic.append): new routine.
1028         (SequentialMusic.print_ly): print comment.
1029         (ArpeggioEvent.ly_expression): new class
1030         (BeamEvent.ly_expression): new class
1031         (NoteEvent.__init__): support for cautionary/forced accs.
1033         * lily/lookup.cc (slur): normal order for array loop.
1035         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
1036         to 0.0.
1038         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
1039         collapsed.
1041 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
1043         * scm/music-functions.scm: Make phrasing slurs follow voice direction
1045         * scripts/lilypond-book.py: Introduce option
1046         --preserve-line-breaks, for usage with srcltx
1048 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1050         * scm/output-lib.scm (print-circled-text-callback): draw circle
1051         around text using make-circle-markup.
1053         * Documentation/user/*: strip out-www from file names.
1055 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
1057         * Documentation/user/lilypond.tely (direntry): remove empty lines;
1058         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
1060 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1062         * Documentation/user/GNUmakefile: idem.
1064         * Documentation/user/macros.itexi: strip out-www
1066         * python/rational.py: python 2.3 compat.
1068         * VERSION (PATCH_LEVEL): release 2.7.21
1070         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
1071         option formatting, lilypond style.
1073         * python/musicexp.py: grab from Ikebana: a library for composing
1074         ly music expressions. 
1075         (Output_printer): class for advanced .ly printing.
1076         (eg. tupletting) 
1078         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
1079         convert to pythonesque structure.
1081         * python/rational.py: PD rational number class.
1083         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
1085 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
1087         * lily/part-combine-iterator.cc: Minor bugfix
1088         
1089         * THANKS: Update bughunters
1091 2005-12-02  Werner Lemberg  <wl@gnu.org>
1093         * mf/README: Document process for proper mf2pt1 conversion.
1095         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
1096         overlapping.
1098         * mf/feta-harmonica.mf: Removed.  Unused.
1100 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1102         * scripts/lilypond-book.py (do_file): fix thinkos.
1104 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1106         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
1107         ($(outdir)/parser.cc): 
1108         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
1110 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
1112         * ly/titling-init.ly (tagline): it should be a space between
1113         "Music engraving by LilyPond" and the version number.
1115 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1117         * VERSION (PACKAGE_NAME): release 2.7.20
1119 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1121         * scm/define-markup-commands.scm (pad-to-box): new markup command.
1123         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
1124         1.0.
1125         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
1127 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1129         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
1131         * kpath-guile/: remove directory
1133         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
1134         file. Encapsulate kpathsea using commandline tools.
1136         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
1137         kpathsea) module.
1139 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1141         * Documentation/user/advanced-notation.itely (Setting automatic
1142         beam behavior): Correct a few typos. Thanks to David Bobroff.
1144         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
1145         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
1147 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1149         * scripts/*.py: gmane address for bugs.
1151 2005-11-28 Pal Benko <benkop@freestart.hu>
1152         
1153         * make/ly-rules.make: add -f switch to mv
1155         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
1157         * lily/bar-line.cc: interpret it
1159 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1161         * configure.in (--disable-documentation): New switch.
1163         * GNUmakefile.in: Use it.
1165         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
1167 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1169         * scripts/lilypond-book.py (do_file): search chunks for
1170         \\begin{document}
1172         * GNUmakefile.in: add copy step in between so we can lose the
1173         out-www directories.
1175 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1177         * lily/pango-font.cc (pango_item_string_stencil): put
1178         geometry.width into glyph-string too.
1180 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1182         * scm/define-music-display-methods.scm (RevertProperty):
1183         (OverrideProperty): Use grob-property-path property, a list of
1184         symbols, instead of grob-property, which used to be a single
1185         symbol.
1186         (BassFigureEvent): a figure can be a plain number, not necessarily a
1187         markup.
1189 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1191         * VERSION: release 2.7.19
1192         
1193         * lily/figured-bass-engraver.cc (process_music): check
1194         figuredBassCenterContinuations first.
1196         * scm/translation-functions.scm (format-bass-figure): make double
1197         sharp larger. 
1199         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
1200         determine X-parent.
1202         * lily/system-start-delimiter-engraver.cc: move from
1203         Nested_system_start_delimiter_engraver, rename
1204         Nested_system_start_delimiter_engraver ->
1205         System_start_delimiter_engraver.
1207         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
1208         bracket type from hierarchy.
1210 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1212         * lily/rest.cc (y_offset_callback): read staff-position.
1214         * scm/define-grob-properties.scm (all-user-grob-properties): don't
1215         mark after-line-breaking-callback as internal.
1217         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
1219 2005-11-25  Werner Lemberg  <wl@gnu.org>
1221         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
1223 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1225         * stepmake/bin/add-html-footer.py (do_file): add google
1227         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
1228         staff if first_start_ is true.
1230 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1232         * scripts/midi2ly.py (split_track): add __repr__ members.
1233         (track_first_item): only return Item if not None. This fixes a
1234         problem when dumping a track that starts with an empty channel.
1236         * python/midi.c: doc module.
1238 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1240         * Documentation/user/global.itely (Creating MIDI files): Fix
1241         compilation problem.
1243 2005-11-22  Graham Percival  <gpermus@gmail.com>
1245         * Documentation/user/basic-notation.itely: clarify dynamic
1246         padding text.
1248         * Documentation/user/advanced-notation.itely: add unicode
1249         escape control example, whatever that is.  :)
1251         * Documentation/user/global.itely: added "removing dynamics
1252         from MIDI" code.
1254 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1256         * VERSION (PATCH_LEVEL): release 2.7.18
1258         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
1259         System_start_delimiter_engraver by
1260         Nested_system_start_delimiter_engraver.
1262         * lily/nested-system-start-delimiter-engraver.cc (struct
1263         Bracket_nesting_node): new class.
1264         (struct Bracket_nesting_group): new class
1265         (struct Bracket_nesting_staff): new class.
1266         (process_music): create hierarchy of grobs. This allows separate
1267         tuning of different SSDs. 
1269         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
1270         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
1272 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1274         * lily/side-position-interface.cc (aligned_side): multiply
1275         staff_radius by 2.
1277         * lily/script-engraver.cc (make_script_from_event): allow setting
1278         values to '()
1280 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1282         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
1284         * scm/define-grobs.scm (all-grob-descriptions): new grob
1285         NestedSystemStartDelimiter.
1287         * input/regression/system-start-heavy-bar.ly: new file.
1289         * lily/nested-system-start-delimiter-engraver.cc: new file.
1291         * lily/nested-system-start-delimiter.cc: new file.
1293         * input/regression/system-start-nesting.ly: new file.
1295         * scm/define-grobs.scm (all-grob-descriptions): use X side
1296         positioning for positioning braces for nested contexts.
1298         * lily/system-start-delimiter.cc (print): don't divide extent by
1299         staff_space.
1300         (print): use style iso. glyph.
1301         (staff_bracket): translate glyph inside routine already.
1303 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
1305         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
1306         names.
1308 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1310         * scm/define-context-properties.scm
1311         (all-user-translation-properties): rename figuredBassFormatter
1312         from newFiguredBassFormatter.
1314         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
1316         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
1318         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
1320         * lily/beam.cc (calc_beaming): new function.
1321         (calc_shorten): new function.
1323         * THANKS: add Edward Neeman.
1325         * input/regression/accidental-clef-change.ly: new file.
1327         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
1329         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
1331         * lily/clef-engraver.cc (inspect_clef_properties): reset
1332         localKeySignature for clef changes.
1334 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1336         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
1337         add dummy definition that works in Linux and add information in
1338         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
1340         * Documentation/user/changing-defaults.itely (Modifying context
1341         plug-ins): Add index for \with.
1343         * Documentation/user/music-glossary.tely (dal segno): Updated
1344         example to version >=2.6.
1346 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1348         * Documentation/user/instrument-notation.itely (Printing chord
1349         names): Reorder \chordmode and \repeat in one example.
1351 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1353         * VERSION: release 2.7.17
1354         
1355         * Documentation/topdocs/NEWS.tely (Top): add note about
1356         refactoring.
1358         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
1359         new function. Search region of 3 positions for best tie.
1360         (score_configuration): new function.
1361         (score_aptitude): new function.
1362         (generate_configuration): new function.
1363         (get_configuration): new function.
1364         (Tie_formatting_problem): new function
1366         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
1368         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
1370         * THANKS: add Eduardo Vieira & Ralph Little
1372         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
1373         narrower.
1375         * lily/include/tie-formatting-problem.hh (class
1376         Tie_formatting_problem): add Tie_details to
1377         Tie_formatting_problem. Update calling conventions.
1379         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
1380         config.make.
1382         * Documentation/user/lilypond.tely: remove musedata2ly entry.
1384 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
1386         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
1387         scm/define-context-properties.scm: Maintenance bugfix: make
1388         ligature brackets work again by removing obsolete ligature
1389         primitive callback push/pop.
1391         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
1392         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
1393         value.
1395 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1397         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
1398         used and do not call it a path.
1399         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
1401 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1403         * lily/include/tie-formatting-problem.hh (class
1404         Tie_formatting_problem): new file.
1406         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
1408         * Documentation/misc/ChangeLog-2.3:  new file.
1410         * lily/audio-staff.cc (output): degarianize.
1412 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1414         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
1415         Unset PYTHONOPTIMIZE.  Fixes install if set.
1417 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1419         * python/convertrules.py (conv): add warning about drums. 
1421         * make/stepmake.make: include toplevel-version.make after config.make.
1423         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
1424         also allow python2.4
1426         * config.make.in (configure-srcdir): remove GXX GCC vars.
1428         * stepmake/aclocal.m4: don't do non-srcdir build with
1429         symlinks. Use inclusion, so the src directory name can be changed.
1431 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1433         * make/mutopia-vars.make:
1434         * make/ly-vars.make: Use src-wildcard iso wildcard for source
1435         files.
1437 2005-11-13  Werner Lemberg  <wl@gnu.org>
1439         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
1440         but the affected path.  This ensures that the (overlapping) outlines
1441         have the same direction, which is a necessary prerequisite for
1442         FontForge's algorithm to remove overlaps.
1443         Formatting.
1445         * mf/feta-haak.mf: Formatting.
1446         (draw_bracket): Slightly modify outline to avoid an unnecessary
1447         corner.
1448         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
1449         them from the affected paths.
1451 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1453         * mf/README: remove xpm / accordion notes.
1455         * lily/tie-column-format.cc (set_chord_outline): add dots into
1456         skyline extents. This fixes tie formatting if the left head has dots.
1458         * lily/tie.cc (get_configuration): only shift tie by a whole staff
1459         space inside the staff.
1460         (get_configuration): shift another position if necessary in case
1461         of left head tie  
1463 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1465         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
1466         buildscript-dir iso. $(depth)/buildscripts.
1468         * tex/GNUmakefile (local-uninstall): remove
1469         music-drawing-routines.ps juggling.
1471         * stepmake/stepmake/install-targets.make (local-install-files):
1472         prepend src-dir to install targets.
1474         * lily/system-start-delimiter-engraver.cc
1475         (acknowledge_system_start_delimiter): use
1476         add_offset_callback(). This fixes translation of nested
1477         staffgroups.
1479         * lily/grob-closure.cc (add_offset_callback): only encaps in
1480         simple_closure if it's a procedure.
1481         
1482         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
1483         from bar-line.
1485         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
1486         remove-empty where pertinent.
1488 2005-11-12  Graham Percival  <gpermus@gmail.com>
1490         * Documentation/user/instrument-notation.itely: added
1491         Cameron Horsburgh's multiple stanzas docs.  Thanks!
1493 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1495         * lily/GNUmakefile
1496         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
1497         make picture in builddir, not srcdir.
1499 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1501         * VERSION: release 2.7.16
1502         
1503         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
1504         shell arguments. 
1506 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1508         * Documentation/user/examples.itely (Piano templates): Minor
1509         modification to the Piano centered lyrics example.
1511 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1513         * scripts/lilypond-invoke-editor.scm (run-browser): look at
1514         $BROWSER.
1516         * Documentation/user/point-and-click.itely: simplify p&c
1517         instruction: don't configure firefox. Put lilypond-invoke-editor
1518         in front of the browser.
1520         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
1521         (run-browser): new function.
1523         * lily/parser.yy (Lily_lexer): recognize Book
1525         * lily/book.cc (clone): new function
1527         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
1529 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
1531         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
1532         Maintenance bugfix: reduce number of font related warnings by
1533         updating naming conventions for glyph-name.
1535 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1537         * scm/define-grobs.scm (all-grob-descriptions): add
1538         rhythmic-grob-interface to TabNoteHead.
1540         * scm/layout-beam.scm (check-quant-callbacks): remove
1541         set_stem_lengths()
1543 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
1545         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
1546         alignment of centered divisiones.
1548         * scm/scripts.scm (articulations): Maintenance bugfix:
1549         follow-into-staff -> quantize-position.
1551         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
1552         plica head in porrectus deminutus.
1554 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1556         * make/lilypond.fedora.spec.in (Group): add %clean section.
1558         * lily/tuplet-bracket.cc (print): change check: remove bracket if
1559         less then 1/5th of total length.  
1560         (print): use gap too.  Fixes tupletUp-single-bracket.ly
1562         * scm/music-functions.scm (glue-mm-rest-texts): also put other
1563         events into EventChord. This fixes textspanners on mm rests. Fixes
1564         spanner-rest.ly
1566         * lily/side-position-interface.cc (get_axis): read side-axis
1567         (set_axis): set side-axis.
1569         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
1570         properties everywhere.
1572         * lily/spacing-spanner.cc (breakable_column_spacing): add
1573         average-spacing-wishes. Take maximum if not set.
1574         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
1576         * scm/define-grobs.scm (all-grob-descriptions): add
1577         average-spacing-wishes.
1579         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
1580         offset callbacks. This fixes alignment for Fingering objects.
1582         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
1583         space for key - timesig combination. 
1585         * input/regression/script-stem-tremolo.ly (Module): new file.
1587         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
1588         to key sig.
1590         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
1591         Fixes: c-tremolo-script.ly.
1592         
1593         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
1595         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
1596         
1597         * scm/define-grobs.scm (all-grob-descriptions): remove
1598         self-X-offset. Fixes alignment of octavate-8.
1600         * scripts/lilypond-book.py (datadir): look in
1601         LILYPONDPREFIX/share/lilypond/current/
1603         * GNUmakefile.in: symlink current to <VERSION>. 
1605 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
1607         * lily/main.cc: eps listed as a backend.
1609 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1611         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
1613 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1615         * lily/include/score.hh (class Score): remove texts_ member.
1617         * lily/beam.cc (set_stem_lengths): force direction callback.
1618         (print): read quantized-positions, so we can force
1619         Beam::set_stem_lengths to occur.
1620         (rest_collision_callback): use common X parent. 
1622 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1624         * flower/file-path.cc (find): Bugfix: Return name of file found.
1626         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
1627         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
1628         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
1630 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1632         * flower/offset.cc: idem.
1634         * mf/*.mf: update email address.
1636         * lily/font-config-scheme.cc:  new file.
1638         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
1640         * lily/*:  cs.uu.nl -> xs4all.nl
1642         * VERSION (PATCH_LEVEL): release 2.7.15
1644         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
1645         spec files.
1647         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
1649 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1651         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
1653         * lily/staff-performer.cc (process_music): add audio
1654         elements. This makes MIDI instrument changes work once again.
1656         * lily/main.cc (LY_DEFINE): add gmane address.
1658         * lily/beam.cc: remove calc_positions()
1660         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
1661         original_ in private scope.
1662         (class Grob): drop pscore_ pointer, change to output_def pointer.
1663         (class Grob): cleanup class definition.
1665         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
1667 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1669         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
1670         absolute.  Better diagnostics.
1672         * GNUmakefile.in: Add bin/ to tree and populate with some links.
1673         This makes lilypond run from the build directory using argv0
1674         relocation (without any --prefix or LILYPONDPREFIX setting).
1676 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1678         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
1680         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
1681         with simple-closure.
1683         * lily/self-aligment-interface.cc (set_align_self): new function
1684         (set_center_parent): new function.
1686         * lily/side-position-interface.cc (set_axis): new function.
1688         * lily/new-fingering-engraver.cc (position_scripts): use drul for
1689         generic code. 
1691         * scm/define-grob-properties.scm (all-user-grob-properties):
1692         remove [XY]-offset-callbacks add [YX]-offset
1693         
1694 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1696         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
1697         entry for time signatures after breathing signs. Bug report by
1698         Scott Russell.
1700 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1702         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
1703         not absolute, make it absolute using PATH.
1705 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1707         * python/midi.c (initmidi): Fix type for mingw.
1709 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1711         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
1713         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
1714         cross compiling.
1716         * stepmake/aclocal.m4: Support python cross compiling.
1718         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
1719         Add mingw section.
1721 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1723         * scm/output-lib.scm (chain-grob-member-functions): replace
1724         chained-callback.cc
1726         * lily/chained-callback.cc (Module): remove file.
1728         * lily/rest-collision.cc (force_shift_callback_rest): change to
1729         chained callback.
1731         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
1733         * lily/grob.cc (y_parent_positioning): remove axis argument from
1734         parent_positioning callbacks.
1735         (Grob): junk init code
1736         (get_offset): use generic property callbacks for
1737         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
1738         (axis_parent_positioning): new function
1739         (axis_offset_symbol): new function
1740         (chain_offset_callback): new function
1741         (add_offset_callback): new function
1743         * lily/beam.cc (rest_collision_callback): change signature; this
1744         is now a chained callback.
1746         * lily/include/dimension-cache.hh (class Dimension_cache): remove
1747         callback administration.
1749         * lily/simple-closure.cc: new file. Smob type that allows "grob
1750         member functions",
1752             (ly:make-simple-closure FUNC A B)
1754         is evaluated as (FUNC grob A B). This allows chaining of callbacks
1755         in various ways.
1757         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
1758         callbacks.
1760         * lily/slur.cc (outside_slur_callback): take 2 arguments.
1762         * lily/rest.cc (polyphonic_offset_callback): remove.
1764         * lily/script-engraver.cc (try_music): remove bool* argument.
1766         * scm/script.scm (default-script-alist): set quantize-position
1767         appropriately.
1769         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
1771         * lily/side-position-interface.cc (aligned_side): move staff
1772         position quantization from
1773         Side_position_interface::quantised_position().
1774         (quantised_position): remove
1775         
1776 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1778         * input/regression/beam-quant-standard.ly: reindent, set
1779         debug-beam-quanting to #t.
1781         * lily/beam-concave.cc (calc_concaveness): set concaveness to
1782         10000 if this is a "hard" concave beam.
1784         * lily/beam.cc (calc_least_squares_positions): change from
1785         calc_least_squares_dy
1786         (set_stem_lengths): this is now a chained callback.
1788         * lily/context-property.cc (execute_general_pushpop_property):
1789         bugfix override with procedure should have effect.
1791         * scm/define-grob-properties.scm (all-internal-grob-properties):
1792         remove position-callbacks.
1794         * scm/define-grobs.scm (all-grob-descriptions): use
1795         ly:make-callback-chain for positions property.
1797         * scm/layout-beam.scm (check-quant-callbacks): return list of
1798         chained callbacks.
1800         * scm/lily.scm (type-p-name-alist): add callback-chain
1802         * lily/lily-guile.cc (type_check_assignment): type check failure
1803         is warning not message.
1805         * lily/grob-property.cc (try_callback): walk callback chain if
1806         appropriate.
1808         * lily/chained-callback.cc: new file. new smob type.
1810         * lily/lily-guile.cc (procedure_arity): new function.
1812 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1814         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
1816 2005-10-25  John Mandereau  <john.mandereau@free.fr>
1818         * Documentation/user/instrument-notation.itely (Figured bass):
1819         describe new features
1821 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1823         * lily/beam.cc (calc_least_squares_dy): use property callback.
1825         * lily/beam-concave.cc (calc_concaveness): use property callback.
1827         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
1829 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1831         * HACKING: Update.
1833 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1835         * scm/layout-page-layout.scm (page-headfoot): annotate
1836         pagetopspace too.
1838         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
1840         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
1841         doesn't take y-space.
1843         * scm/paper.scm (paper-alist): fix A7 dimensions. 
1845 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
1847         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
1848         src-wildcard, remove $(wildcard).
1850         * po/GNUmakefile (PO_FILES): 
1851         * ps/GNUmakefile (PS_FILES): 
1852         * tex/GNUmakefile (TEX_FILES): 
1853         * cygwin/GNUmakefile (POSTINSTALLS):
1854         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
1855         some wildcard calls.
1857 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1859         * THANKS: add Thomas Bushnell.
1861 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1863         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
1864         (lilypond-main): Redirect to gui-main if 'gui is set.
1865         Backportme.
1867         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
1868         for alternative installations kludging s/share/lib/g
1869         LILYPONDPREFIX. Backportme.
1871         * SConstruct (libdir_package_version): Define.
1873         * python/SConscript: 
1874         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
1875         module in libdir.  Backportme.
1877 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1879         * lily/main.cc: clarify --safe.
1881 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1883         * VERSION: release 2.7.14
1884         
1885         * Documentation/user/*.itely: remove minimumVerticalExtent.
1887         * scm/define-grobs.scm (all-grob-descriptions): remove
1888         RemoveEmptyVerticalGroup
1890         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
1892         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
1893         compile on MOSX
1895         * python/convertrules.py (conv): add rules.
1897         * lily/grob.cc: remove is_empty()
1899         * lily/grob-property.cc: remove add_to_list_property().
1901         * scripts/convert-ly.py (datadir): add prefix switching hack to
1902         .py too.
1904         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
1905         space-function tweak.
1907         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
1909         * scm/define-grob-properties.scm (all-user-grob-properties):
1910         remove callback property.
1912         * lily/include/grob.hh (class Grob): remove property_callbacks_
1913         member. Properties of procedure type are assumed to be callbacks.
1915         * lily/ligature-engraver.cc (override_stencil_callback):
1916         rewrite. Use noteHeadLigaturePrimitive as source.
1918         * scm/define-grob-properties.scm (all-internal-grob-properties):
1919         remove ligature-primitive-callback
1921         * lily/include/dimension-cache.hh (class Dimension_cache): make
1922         class, with Grob as friend.
1924         * lily/grob.cc: remove set_extent_callback(), set_extent() and
1925         has_extent_callback()
1927         * scm/translation-functions.scm (format-new-bass-figure): read
1928         figuredBassPlusDirection
1930         * scm/define-context-properties.scm
1931         (all-user-translation-properties): add figuredBassPlusDirection.
1933         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
1935         * lily/align-interface.cc (set_ordered): new function.
1937         * lily/grob.cc (flush_extent_cache): rewrite.
1939         * lily/dimension-cache.cc (Dimension_cache): cache extent as
1940         Interval pointer directly.
1942         * lily/main.cc (setup_paths): insert extra / .
1943         (setup_paths): junk cff entry.
1945         * lily/font-config.cc (init_fontconfig): only add type1 / otf
1946         directories.
1948         * lily/axis-group-engraver.cc (finalize): remove
1949         extraVerticalExtent, minimumVerticalExtent verticalExtent.
1951         * lily/grob.cc (Grob): don't set extent from ctor.
1952         (extent): use property callbacks. 
1954         * lily/axis-group-interface.cc: remove set_axes() function.
1956         * lily/grob-property.cc (del_property): new function.
1958 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1960         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
1961         
1962 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1964         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
1966 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1968         * mf/SConscript: Updates.
1970         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
1972         * stepmake/stepmake/*:
1973         * */GNUmakefile:
1974         * config.make.in:
1975         * GNUmakefile.in:
1976         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
1977         from any directory in build-dir.  Cleanups.
1979         * make/srcdir.make.in: Remove.
1981         * lily/main.cc (setup_paths): Fix and document build-dir hack.
1983         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
1984         main).
1986         * lily/SConscript: Remove ttftools.
1988         * SConstruct: Resurrect.
1990 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1992         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
1993         Y coordinate. 
1995         * lily/paper-book.cc (add_score_title): put Paper_score title into
1996         systems_ list.
1998         * scm/translation-functions.scm (format-new-bass-figure): also
1999         allow plus in combination with _
2001 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2003         * VERSION: 2.7.13 released.
2005         * lily/note-collision.cc (check_meshing_chords): don't wipe
2006         stencil, merely set transparent.
2008         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
2009         (Top): document #'callbacks.
2010         (Top): document nested \override.
2012         * input/regression/figured-bass.ly: update for slash and pluses.
2014         * input/regression/figured-bass-continuation-forbid.ly (Module):
2015         new file.
2017         * scm/translation-functions.scm (format-new-bass-figure): use
2018         slashed-digit if diminished is set.
2019         (format-new-bass-figure): add + if 'augmented is set.
2021         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
2023         * input/test/piano-staff-distance.ly: remove file.
2025         * Documentation/user/advanced-notation.itely (Formatting cue
2026         notes): use length-fraction for making stems/beams smaller.
2028         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
2029         modifications.
2031         * lily/new-figured-bass-engraver.cc: new property
2032         centerFiguredBassContinuations
2034         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2035         use callbacks.
2037         * lily/context-property.cc (execute_general_pushpop_property):
2038         robustness checks.
2040         * input/regression/override-nest.ly: new file.
2042         * python/convertrules.py (FatalConversionError.subber): conversion
2043         rule for #'callbacks
2045         * input/regression/override-nest.ly: new function.
2047         * lily/parser.yy (music_property_def): allow \override #'a #'b =
2048         #c too. 
2050         * lily/context-property.cc (lookup_nested_property): new function.
2051         (evict_from_alist): new function.
2052         (general_pushpop_property): new function.
2053         (execute_general_pushpop_property): rewrite. Support nested
2054         properties too.
2056 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2058         * lily/beam.cc: use length-fraction too.
2060         * scm/define-grob-properties.scm (all-user-grob-properties):
2061         remove property flag-width-function
2062         (all-user-grob-properties): remove space-function.
2064         * scm/layout-beam.scm: remove flag-width-function.
2066         * lily/beam.cc: remove flag-width-function
2068         * scm/layout-beam.scm: remove beam dir functions.
2070         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
2072         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
2073         for easier grace tweaks.
2075         * lily/beam.cc: remove dir-function.
2077         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
2079         * lily/grob.cc: remove spacing-procedure.
2081         * lily/note-head.cc (calc_stem_attachment): new function.
2082         (internal_print): use callback to get glyph-name.
2084         * lily/grob-property.cc (get_interfaces): new function.
2086         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
2088         * lily/stem.cc (calc_stem_end_position): new function.
2089         (calc_length): new function.
2090         document details for stem.
2091         remove Stem::get_direction()
2093         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
2095         * lily/grob-property.cc (set_callback): new function.
2097         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
2099         * lily/item-scheme.cc: new file.
2101         * lily/bar-line.cc (before_line_breaking): remove function.
2102         remove bar-size-procedure, break-glyph-function
2104         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
2106         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
2108         * lily/system-start-delimiter.cc (print): suicide from
2109         here. Remove after_line_breaking_callback.
2111         * lily/script-interface.cc (calc_direction): use callback for direction.
2113         * lily/side-position-interface.cc (aligned_side): don't use
2114         Side_position_interface::get_direction directly. Use callback. 
2116         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
2117         calculate stencil.
2118         (get_print_stencil): rename from get_stencil: create stencil with
2119         transparency, color and cause. 
2121         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
2123         * python/convertrules.py (conv): insert temporary warning rule.
2125         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
2127         * lily/grob-property.cc (try_callback): remove marker if applicable.
2129         * lily/grob.cc: elucidate doc about after/before-line-breaking
2131         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
2133         * lily/stem.cc (height): idem.
2135         * lily/stem-tremolo.cc: idem.
2137         * lily/slur.cc (height): don't use get_uncached_stencil()
2139         * lily/rest.cc (y_offset_callback): use offset callback
2140         iso. after-line-breaking callback.
2142         * lily/grob.cc: change after/before-line-breaking-callback to
2143         after/before-line-breaking dummy properties.
2145         * lily/include/grob.hh: remove Grob_status.
2147         * scm/define-context-properties.scm
2148         (all-user-translation-properties): remove verticalAlignmentChildCallback
2150         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
2151         (calc_direction): use callback
2152         (calc_positions): use callback.
2154         * lily/tie.cc (calc_direction): use callback. Only call parent
2155         positioning for more than one tie.
2157         * lily/tie-column.cc (calc_positioning_done): use callback
2159         * lily/slur-scoring.cc (calc_control_points): use callback
2161         * lily/slur.cc (calc_direction): use callback.
2163         * lily/note-collision.cc (force_shift_callback): remove.
2165         * lily/dot-column.cc (force_shift_callback): remove. Use
2166         other_axis_parent_positioning.
2168         * lily/grob.cc (other_axis_parent_positioning): new function.
2169         (same_axis_parent_positioning): new function
2171         * lily/align-interface.cc (alignment_callback): remove function.
2173         * lily/note-collision.cc (calc_positioning_done): use callback.
2175         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
2176         (calc_direction): idem.
2177         remove print function.
2179         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
2181         * lily/dot-column.cc (calc_positioning_done): use callback.
2183         * lily/break-align-interface.cc (calc_positioning_done): use callback.
2185         * lily/beam.cc (calc_direction): use pseudo-property for beam
2186         direction callback.
2187         (calc_positions): use callback 
2189         * lily/align-interface.cc (calc_positioning_done): use
2190         callback. Fold fixed  distance and normal alignment in one function.
2192         * lily/stem.cc (calc_stem_end_position): use callback.
2193         (calc_positioning_done): idem.
2194         (calc_direction): idem.
2195         (calc_stem_end_position): idem
2196         (calc_stem_info): idem.
2198         * lily/grob-property.cc (get_property_data): new function: 
2199         (try_callback): new function.
2201         * scm/define-grob-properties.scm (all-user-grob-properties): doc
2202         callbacks property.
2204         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
2206 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2208         * lily/tie.cc (get_position): robustness fix. Don't crash if a
2209         tie
2210         has no heads.
2211         
2212         * lily/include/*.hh (Module): compile fixes.
2214 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
2216         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
2217         as an argument for char-syntax: use (char-syntax (or nil 0)) 
2218         instead of (char-syntax nil), thanks to Milan Zamazal.
2220 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2222         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
2223         dist.
2225         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
2226         themselves.
2228 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2230         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
2231         add class_name() method.
2233         * lily/music-scheme.cc: remove ly:music-name.
2235 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2237         * cygwin/postinstall-lilypond.sh: Remove cruft.
2239         * cygwin/postremove-lilypond.sh: Remove.
2241         * cygwin/GNUmakefile (default): Remove postremove rules.
2243 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2245         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
2246         even header too.
2247         
2248         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
2249         MacOS 9 users.
2251         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
2252         consider break index for broken spanner.
2254         * scm/define-markup-commands.scm (wordwrap-string): remove \r
2255         characters from string before splitting.
2257 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2259         * scm/framework-ps.scm (output-preview-framework): use
2260         is-book-title to determine whether to chop off the booktitle.
2262         * lily/paper-book.cc (systems): init from book-title-properties
2263         (add_score_title): init score-title-properties.
2265         * ly/paper-defaults.ly: add {score,book}-title-properties.
2267         * scm/document-backend.scm (lookup-interface): error message if
2268         using unknown interface.
2270         * lily/volta-bracket.cc (after_line_breaking): new function. Set
2271         edge-height.
2273         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
2274         make_bracket.
2275         (make_bracket): new function.
2277         * scm/lily.scm (define-scheme-options): add paper-size option.
2279         * ly/declarations-init.ly (laissezVibrer): get paper size from
2280         -dpaper-size
2282         * scm/translation-functions.scm: use \fontsize for changing the
2283         fontsize.
2285         * scm/define-grobs.scm (all-grob-descriptions): set
2286         between-length-limit to 1.0
2288         * lily/tie-helper.cc: add between_length_limit_ detail property.
2290         * mf/feta-bolletjes.mf: typos.
2292         * lily/note-head.cc (internal_print): don't shadow idx
2293         parameter. This fixes wrong attachment for do shape heads.
2295 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2297         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
2299         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
2301         * scm/layout-slur.scm: rename from slur.scm
2303         * scm/layout-page-layout.scm: rename from page-layout.scm
2305         * scm/layout-beam.scm: rename from beam.scm
2307         * scm/define-grob-interfaces.scm (bass-figure-interface): add
2308         bass-figure-interface
2310         * lily/new-figured-bass-engraver.cc (process_music): add
2311         implicitBassFigures property.
2312         
2313         * scm/define-markup-commands.scm (pad-x): new markup.
2315         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
2316         minimumVerticalExtent on FiguredBass context.
2318         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
2319         case the continuation crosses a line break.
2321 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2323         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
2324         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
2325         absolute file name bug.  Backportme.
2327 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2329         * VERSION (PACKAGE_NAME): release 2.7.12
2331         * input/regression/figured-bass-continuation-center.ly: new file.
2333         * input/regression/beam-outside-beamlets.ly: new file.
2335         * lily/beam.cc (set_beaming): don't clip edges.
2336         (connect_beams): don't clip edges.
2338         * lily/beaming-info.cc (clip_edges): new function.
2340         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
2342         * Documentation/user/instrument-notation.itely (Figured bass):
2343         demonstrate extenders, update seealso links.
2345         * scm/titling.scm (marked-up-headfoot): change tagline
2346         handling. tagline = ##f will blank the tagline as well.
2348 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2350         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
2352         * lily/new-figured-bass-engraver.cc (struct
2353         New_figured_bass_engraver): add new_music_found_ member.
2355         * lily/lilypond-version.cc (Lilypond_version): deal with
2356         incorrectly formatted version strings. 
2358         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
2359         New_figured_bass_engraver by default.
2361         * lily/ttf.cc (print_trailer): only define glyph names when
2362         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
2364 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2366         * lily/horizontal-bracket.cc (make_bracket): new function.
2368         * scm/define-grobs.scm (all-grob-descriptions): new grobs
2369         NewBassFigure, BassFigureBracket, BassFigureContinuation,
2370         BassFigureLine, BassFigureAlignment
2372         * lily/new-figured-bass-engraver.cc (process_music): new file.
2374         * lily/figured-bass-continuation.cc: new file.
2376         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
2377         new file.
2379 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2381         * scripts/lilypond-book.py: Bug fix, put the quote around the
2382         actual score for LaTeX documents.
2384         * scm/define-grobs.scm (all-grob-descriptions): Change
2385         collapse-height of the SystemStartBracket grob to 5.0, 
2386         so the bracket disappears for single stave score lines (similarly
2387         to SystemStartBraces). 
2389         * Documentation/user/advanced-notation.itely (Polymetric
2390         notation): Clarify the use of compressMusic.
2392         * Documentation/user/basic-notation.itely (Grace notes): Clarify
2393         that the grace spacer note in other staves need the same duration
2394         and document the stroke-style property.
2396 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2398         * Documentation/user/global.itely (Vertical spacing): document
2399         alignment-extra-space and fixed-alignment-extra-space.
2401         * Documentation/topdocs/NEWS.tely (Top): add entry.
2403         * input/regression/alignment-vertical-spacing.ly: new file.
2405         * python/convertrules.py (conv): add rule.
2407         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
2409         * lily/align-interface.cc (stretch_after_break): new
2410         function. Read fixed-alignment-extra-space property.
2411         (align_elements_to_extents): read alignment-extra-space property.
2413         * lily/lily-guile.cc (robust_scm2dir): new function.
2415         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
2416         (annotate-space-left): new function. Annotate space left on page. 
2417         (annotate-y-interval): new function.
2418         (paper-system-annotate-last): new function. Annotate bottom-space.
2420         * mf/feta-beugel.mf (y): 
2422 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2424         * VERSION (PACKAGE_NAME):  release 2.7.11
2426         * scm/lily-library.scm (interval-translate): new function
2427         (interval-center): new function. 
2429         * scm/page-layout.scm (paper-system-annotate): new function. Add
2430         arrows for dimensions.
2432         * scm/stencil.scm (dimension-arrows): new function.
2434         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
2436         * input/regression/page-spacing.ly: add annotatespacing
2438         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
2439         (LY_DEFINE): new function ly:paper-system-set-property!
2441         * Documentation/user/global.itely (Paper size): explain how to add
2442         sizes.
2444         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
2445         correspond to GS's definition.
2447         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
2448         tuplet bracket.
2449         (print): only connect to next bracket if the next one is alive.
2450         (print): set padding to 0.0 if the bound is a breakable
2451         column. This makes tupletFullLength brackets reach up to the staff
2452         line if it doesn't connect to the next line.
2454 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2456         * lily/bar-number-engraver.cc: correct docs.
2458         * scm/output-lib.scm (first-bar-number-invisible): rename from
2459         default-bar-number-visibility
2461 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2463         * scm/define-music-properties.scm (all-music-properties): remove
2464         predicate property.
2466 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
2468         * po/fi.po: refresh.
2470 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2472         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
2473         superfluous s1.
2474         (disappear): bugfix.
2476         * lily/stem-tremolo.cc (raw_stencil): read slope property.
2478         * lily/include/paper-system.hh (class Paper_system): remove
2479         staff_extents_ member.
2481         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
2483         * lily/include/paper-system.hh (class Paper_system): remove
2484         number_ variable. Remove is_title_. Remove break_before_penalty_
2486         * lily/paper-book.cc (systems): use 'number property iso. number_
2487         member.
2489         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
2490         remove ly:paper-system-number.
2492         * scm/lily-library.scm (paper-system-title?): new function.
2494         * lily/book.cc (process): bugfix: flip ?: cases. 
2496         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2497         add outputProperty.
2499         * ly/music-functions-init.ly: add outputProperty music function.
2501         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
2503         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
2504         and next-padding.
2505         (optimal-page-breaks): rename from ly:optimal-page-breaks.
2507         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
2509         * lily/paper-system.cc (internal_get_property): new function.
2511         * Documentation/user/global.itely (Vertical spacing): refer to
2512         page-spacing.ly
2514         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
2515         pagetopspace
2517         * input/regression/page-spacing.ly: new file.
2519         * input/regression/page-top-space.ly: new file.
2521         * lily/spacing-spanner.cc: cmath -> math.h
2523         * lily/paper-system.cc (read_left_bound): new function. Read
2524         line-break-system-details from left bound to determine extents.
2526         * Documentation/user/programming-interface.itely (Using LilyPond
2527         syntax inside Scheme): change applyxxx -> applyXxx.
2529         * ly/music-functions-init.ly: add outputProperty music function.
2531         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
2533         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
2535         * python/convertrules.py (conv): rule
2537         * ly/music-functions-init.ly: applyxxx -> applyXxx
2539         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
2540         TabVoice to Voice.
2542 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2544         * flower/include/real.hh: include <math.h> iso. <cmath>
2546         * flower/include/offset.hh: include real.hh
2548 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2550         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2551         fix example, now that 'interfaces is no longer directly available.
2553         * lily/book.cc (process): don't crash if paper == NULL.
2555         * po/fr.po: update.
2557 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2559         * scm/define-music-types.scm (music-descriptions): set length and
2560         start-callback for QuoteMusic
2562 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2564         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
2565         arguments. Fixes compilation error with gcc 3.3.
2567 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2569         * VERSION: release 2.7.10
2571         * stepmake/stepmake/python-module-rules.make
2572         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
2574         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
2575         real.hh
2577 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2579         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
2580         -Werror. Otherwise GCC barfs over various optimizations.
2582         * scm/define-grob-properties.scm (all-internal-grob-properties):
2583         add note-head property
2585         * Documentation/user/instrument-notation.itely (Laissez vibrer
2586         ties): new node.
2588         * input/regression/laissez-vibrer-ties.ly: new file.
2590         * lily/laissez-vibrer-engraver.cc: new file.    
2592         * lily/include/tie-column-format.hh: new file.
2594         * lily/tie-column-format.cc: new file. 
2596         * lily/tie-column.cc (set_manual_tie_configuration): new function.
2598         * lily/laissez-vibrer-tie.cc: new file.
2600         * lily/include/laissez-vibrer-tie.hh: new file.
2602         * ly/engraver-init.ly: add Laissez_vibrer_engraver
2604         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
2606         * scm/define-grobs.scm (all-grob-descriptions): add
2607         LaissezVibrerTie, LaissezVibrerTieColumn
2609         * lily/tie-column.cc (set_tie_config_directions): new function
2610         (final_shape_adjustment): new function.
2611         (shift_small_ties): new function.
2613         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
2615         * lily/include/tie.hh (struct Tie_details): add x_gap_
2616         (struct Tie_configuration): add head_position_
2618         * lily/tie-column.cc (set_chord_outline): new function.
2620         * mf/cmr.enc.in:  remove file.
2622 2005-09-11  Graham Percival  <gpermus@gmail.com>
2624         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
2626 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2628         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
2629         reduce aliasing effects.
2631         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
2632         box in skyline.
2634 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2636         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
2638         * flower/include/real.hh: std::fabs too.
2640 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2642         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
2644         * lily, flower: Include C++ iso C headers.  Import namespace std
2645         throughout.
2647         * lily/side-position-interface.cc: 
2648         * lily/scm-hash.cc: 
2649         * lily/note-head.cc: 
2650         * lily/include/includable-lexer.hh: 
2651         * flower/include/string-data.icc: Remove using std::*.
2653         * lily, flower: Include C++ iso C headers.  Import namespace std
2654         throughout.
2656         * lily/side-position-interface.cc: 
2657         * lily/scm-hash.cc: 
2658         * lily/note-head.cc: 
2659         * lily/include/includable-lexer.hh: 
2660         * flower/include/string-data.icc: Remove using std::*.
2662         * Documentation/user/instrument-notation.itely (Entering lyrics):
2663         Multiple latin-1->utf-8 conversion fix.
2665         * Documentation/user/*tely: Update Emacs cookie to utf-8.
2667 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2669         * lily/tie.cc (get_configuration): also avoid dots for non-space
2670         situations.
2672 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2674         * Documentation/user/instrument-notation.itely: Bugfix.
2676 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2678         * tex/GNUmakefile: don't install texinfo.tex
2680         * tex/ : cleanup: remove unused files.
2682         * lily/general-scheme.cc: remove my_{isinf,isnan}.
2684         * flower/include/real.hh: using std::{isnan,isinf}
2685         
2686         * VERSION (PATCH_LEVEL): release 2.7.9
2688 2005-09-05  Graham Percival  <gpermus@gmail.com>
2690         * Documentation/user/ instrument-notation.itely,
2691         advanced-notation.itely: minor tweaks.
2693         * input/test/script-chart.ly: add item padding.
2695 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2697         * flower/offset.cc: use math.h iso. <cmath>
2699         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
2700         of IE users.
2702         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
2703         (widen-left-stencil-edges): new function. Fix alignment problems
2704         with LaTeX includegraphics.
2706         * lily/text-interface.cc (interpret_markup): use abort().
2708 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2710         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
2712         * lily/tie.cc (get_configuration): update bezier shape as we
2713         change Y positions.
2714         (get_configuration): don't move large ties if we're outside of the
2715         staff.
2717 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2719         * scm/define-markup-commands.scm (strut): swap X and Y dims.
2720         
2721 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2723         * .cvsignore: Add auto-generated configure files and then some.
2725 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2727         * scm/define-grobs.scm (DynamicLineSpanner): Add
2728         X-extent-callback.  Fixes hairpin-slur collision.
2730 2005-08-31  Graham Percival  <gpermus@gmail.com>
2732         * Documentation/user/advanced-notation.itely,
2733         basic-notation.itely: minor changes.
2735 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2737         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
2738         \linebreak between each .eps file if \betweenLilyPondSystem is
2739         undefined. 
2741         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
2742         music): Document the \linebreak
2744         * Documentation/user/lilypond-book.itely,
2745         input/tutorial/lbook-latex-test.tex,
2746         Documentation/user/examples.itely: Remove \usepackage{graphics}
2748 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2750         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
2752         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
2753         compat bugfix.
2755         * scripts/lilypond-book.py (PREAMBLE_LY): define
2756         inside-lilypond-book
2757         (modify_preamble): new function. Insert \RequirePackage{graphics}
2758         when no {graphics found in preamble.  
2760 2005-08030  Graham Percival  <gpermus@gmail.com>
2762         * Documentation/user/basic-notation.itely, global.itely,
2763         tutorial.itely: misc small changes.
2765 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2767         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
2768         VERSION.
2770 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2772         * lily/tie-column.cc (new_directions): put Tie down on center
2773         staff line. 
2775         * lily/script-interface.cc (before_line_breaking): use
2776         Grob::programming_error
2778         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
2780         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
2781         of splitext.
2783 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2785         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
2787 2005-08-29  Werner Lemberg  <wl@gnu.org>
2789         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
2790         the `*.scale.pfa' files to avoid warnings.
2792 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2794         * lily/tempo-performer.cc (process_music): idem.
2796         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
2798 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2800         * Documentation/user/advanced-notation.itely (Text markup): not a
2801         fragment.
2803         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
2805         * lily/staff-performer.cc (initialize): add tempo/name to
2806         audio_staff_
2809 2005-08-26  Graham Percival  <gpermus@gmail.com>
2811         * Documentation/user/advanced.itely: add text-only example.
2813         * Documentation/user/invoking.itely: add index entries for
2814         convert-ly.
2816         * Documentation/user/ tutorial.itely, basic-notation.itely:
2817         small fixes suggested by Steve D.  Thanks!
2819 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2821         * input/regression/markup-bidi-pango.ly: new file.
2823         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
2824         standard. Remove #ifdef. Remove memleak.
2825         (text_stencil): use text_dir to decide how to composite items.
2826         (text_stencil): determine uniform text direction for the entire
2827         string.
2829         * scripts/lilypond-book.py (output_name): remove
2830         latex_filter_cmd. Non-portable to non-Unix systems. 
2831         (get_latex_textwidth): use File.write and os.unlink() instead.
2833         * THANKS: add Vicente & Trevor.
2835         * lily/grob.cc (discretionary_processing): look up origin for
2836         programming_error too. 
2838         * input/regression/tie-broken.ly: new file.
2840         * lily/tie-column.cc (set_chord_outlines): set outline for line
2841         break case too.
2842         
2843 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2845         * lily/pango-font.cc (text_stencil): don't translate glyphs in
2846         unscaled transform, just translate stencils.
2848         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
2849         MIDI.
2851         * scm/define-markup-commands.scm (wordwrap-string): use
2852         text-direction
2853         (wordwrap-stencils): idem.
2854         (line): idem.
2855         (fill-line): idem.
2856         (wordwrap-stencils): translate last line to right for
2857         text-direction = LEFT.
2859         * scm/define-grob-properties.scm (all-user-grob-properties): add
2860         text-direction.
2862 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2864         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
2865         when copying a Lily_parser object.
2867 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2869         * scm/define-markup-commands.scm (null): add null markup.
2871 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2873         * lily/item.cc: Add documentation of center-invisible
2875 2005-08-24  Graham Percival  <gpermus@gmail.com>
2877         * Documentation/user/advanced-notation.itely: add info about
2878         raising text.
2880         * Documentation/user/programming-interface.itely: fix example
2881         involving raised text.
2883 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2885         * lily/beam.cc (print): fix X start/end points of isolated
2886         beamlets.
2888         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
2890         * lily/multi-measure-rest.cc (set_text_rods): new function.
2892         * lily/vertical-align-engraver.cc (process_music): call
2893         Align_interface::set_axis(). This forces #'elements to be ordered,
2894         preventing random vertical reordering of staves.
2896         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
2897         add avoid-slur property. 
2899         * Documentation/user/basic-notation.itely (Measure repeats): add
2900         countPercentRepeats example.
2902         * Documentation/user/advanced-notation.itely (Other text markup
2903         issues): remove remark about normal-font.  We have \normal-text
2905         * input/regression/tie-chord.ly: add note about remaining bugs.
2907         * lily/tie.cc (print): try Tie_column::set_directions () if
2908         control-points not yet defined.
2910 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2912         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
2913         extent. This fixes braces falling out of the EPS bbox.
2915         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
2916         exactly to bbox.
2918 2005-08-23  Graham Percival  <gpermus@gmail.com>
2920         * {various} : change #up->#UP and #down->#DOWN.
2922         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
2924         * Documentation/user/advanced-notation.itely: clarify
2925         what objects handles text on a multimeasure rest.
2927 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2929         * VERSION (PATCH_LEVEL): release 2.7.7
2931 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2933         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
2935         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
2937         * input/regression/*.ly: formatting clean-up. Default layout
2938         before music expression.
2940         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
2941         romanze28-2 example.
2943         * scm/ps-to-png.scm: remove dir-re function.
2944         (make-ps-images): generate page names, instead of globbing them.
2945         This brings down LilyPond memory usage for make web by a factor
2946         10. (backportme?) 
2948         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
2949         don't use glob. With 3000 files, globbing
2950         Documentation/user/out-www/ can take too much time. (backportme?)
2951         
2952         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
2954         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
2956         * input/regression/tie-manual.ly: new file
2958         * input/regression/tie-chord.ly: update.
2960         * flower/include/interval.hh (struct Interval_t): 
2962         * lily/tie.cc (distance): new function 
2963         (height): new function.
2964         (init): new function
2965         (Tie_details): new struct.
2967         * lily/skyline.cc (skyline_height): new function.
2969         * lily/tie-column.cc (set_chord_outlines): new function.
2970         (new_directions): read tie-configuration
2972         * lily/skyline.cc: fix ASCII art.
2973         
2974 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2976         * python/convertrules.py (string_or_scheme): Fix spelling error
2978 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2979         
2980         * lily/tie-column.cc (set_directions): set directions only once.
2981         (add_configuration): new function.
2983         * lily/tie.cc (set_control_points): new function
2985         * lily/tie-column.cc (new_directions): new function.
2987         * ly/music-functions-init.ly: set 'pitch property
2988         iso. trill-pitch. This makes \relative work with \pitchedTrill
2990         * lily/tie.cc (get_configuration): new function. Don't generate
2991         control points, rather, generate configuration.
2992         remove head-pair property.
2994         * lily/include/tie.hh (struct Tie_configuration): new struct.
2996 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
2998         * Documentation/topdocs/NEWS.tely: clarify.
3000 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3002         * lily/tie.cc: remove minimum-length
3004         * scm/define-grob-properties.scm (all-user-grob-properties):
3005         remove staffline-clearance, y-offset 
3007         * input/regression/tie-dots.ly (Module): remove.
3009         * lily/tie.cc (get_control_points): rewrite. Put short ties in
3010         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
3012         * input/regression/tie-single.ly: new file.
3014 2005-08-21  Graham Percival  <gpermus@gmail.com>
3016         * ly/bagpipe.ly: fix compile problem.
3018 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3020         * lily/midi-item.cc (name): new method.
3022         * lily/staff-performer.cc (acknowledge_audio_element): use
3023         signature of baseclass.
3025         * lily/engraver-group.cc (do_announces): move recursion call out
3026         of while loop. 
3028         * lily/drum-note-performer.cc (class Drum_note_performer): use
3029         process_music everywhere.
3031         * ly/performer-init.ly: add default children everywhere.
3033         * lily/paper-book.cc (output): call paper-book-write-midis
3034         directly: always write MIDI, even if no \layout {} block. 
3036 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3038         * VERSION (PACKAGE_NAME): release 2.7.6
3040         * lily/percent-repeat-engraver.cc (try_music): don't print warning
3041         about not being able to handle repeat.
3043 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3045         * Documentation/user/examples.itely (Piano templates):
3046         * lily/include/performer-group.hh: Remove last traces of
3047         Performer_group_performer.  Fixes make web.
3049 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3051         * Documentation/user/examples.itely (Piano templates): change
3052         Engraver_group_engraver -> Engraver_group
3054         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
3055         scm_stand_in_procs is not weak_any.
3057         * lily/volta-bracket.cc (print): don't use strcmp().
3059         * lily/volta-engraver.cc (process_music): use
3060         Text_interface::is_markup() for setting the 'text property of the
3061         volta bracket.
3063         * input/mutopia/claop.py (accents): update syntax to 2.6
3065         * scm/define-context-properties.scm
3066         (all-user-translation-properties): add countPercentRepeats.
3068         * Documentation/user/basic-notation.itely (Measure repeats): add
3069         isolated percent example.
3071 2005-08-18  Graham Percival  <gpermus@gmail.com>
3073         * input/ {various}: change direction #1, #-1 to
3074         #up/#down or \fooUp, \fooDown.
3076         * Documentation/user/music-glossary.tely: #-1 to #down.
3078         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
3079         to #up, #-1 to #down.
3081 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3083         * lily/include/engraver-group.hh: rename.
3085         * lily/include/performer-group.hh: rename.
3087 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3089         * input/test/script-abbreviations.ly: Removed some old LaTeX
3090         left overs.
3092 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3094         * python/convertrules.py (conv): inside-slur -> avoid-slur.
3095         Remove functions.  Remove if 1: constructs, reindent.
3097         * scripts/convert-ly.py (add_version): Add functions from
3098         convertrules.py
3100         * scm/script.scm (default-script-alist):
3101         s/priority/script-priority.  Fixes script stacking.  Backportme.
3102         (Fermata): Very low priority.
3104 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3106         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
3108         * input/regression/slur-script.ly: remove padding tweaks. Add
3109         comment strings.
3111         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
3112         time sigs and related stuff.
3114         * scm/define-grob-properties.scm (all-user-grob-properties): add
3115         @code{} tags to property description.
3117         * lily/include/line-group-group-engraver.hh (Module): remove file.
3119         * python/convertrules.py (conv): add rule for
3120         Engraver_group_engraver -> Engraver_group.
3122         * lily/include/performer-group-performer.hh: analogous.
3124         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
3126         * lily/context-def.cc (instantiate): check for
3127         Engraver_group_engraver and Performer_group_performer not
3128         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
3130 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3132         * input/les-nereides.ly: Remove three fingering tweaks, update
3133         remaining one.
3135         * input/regression/slur-script-inside.ly: Update, fix doc.
3137         * scm/script.scm: Update to avoid-slur.
3139         * scm/define-grob-properties.scm (avoid-slur): New property.
3141         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
3142         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
3143         outside_slur_callback if avoid-slur != #'inside.
3145         * scm/define-grobs.scm (Fingering, Textscript): No
3146         inside-slur/outside-slur preference.
3147         (DynamicLineSpanner): Always outside slur.
3149         * input/regression/slur-script.ly: More tests.
3151 2005-08-17  Graham Percival  <gpermus@gmail.com>
3153         * Documentation/user/lilypond-book: fix notime entry.
3155         * Documentation/user/advanced-notation.itely: add info on
3156         getting an I rehearsal mark.
3158         * Documentation/user/putting.itely: reinstate "I", re-enforce
3159         the fact that \override numbers are the result of
3160         experimentation and personal taste.
3162         * Documentation/user/invoking.itely: update convert-ly bugs.
3164 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3166         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
3167         to #t.
3169         * lily/timing-translator.cc (initialize): don't initialize timing.
3171         * input/regression/stem-spacing.ly (Module): remove file.
3173         * input/regression/spacing-stick-out.ly: specify Score context for
3174         \override
3176         * input/regression/clefs.ly: remove spurious {}s 
3178 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
3180         * Documentation/topdocs/NEWS.tely,
3181         input/regression/repeat-percent-count.ly: clarify a bit.
3183 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3185         * input/no-notation/display-lily-tests.ly: delete
3186         display-lily-init call.
3188         * ly/music-functions-init.ly (displayLilyMusic): move
3189         display-lily-init call at top level, so that the user should not
3190         have to call it.
3192         * scm/define-music-display-methods.scm (note-name->lily-string):
3193         retrieve note names directly from pitchnames using new function `rassoc'.
3194         (display-lily-init): note names list construction removed.
3196 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3198         * THANKS: spello.
3200         * lily/lily-parser.cc (get_header): copy module, instead of
3201         returning it.
3203         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
3204         counters.
3206         * Documentation/user/basic-notation.itely (Measure repeats): add
3207         links to Counter grobs.
3209         * scm/define-grobs.scm (all-grob-descriptions): add
3210         DoublePercentRepeatCounter
3211         (all-grob-descriptions): add PercentRepeatCounter
3213         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
3214         also create counter grobs.
3216         * lily/separation-item.cc (extremal_break_aligned_grob): don't
3217         return grob without space-alist.
3219         * input/proportional.ly: tune staff-padding.
3221         * input/regression/repeat-percent-count.ly: new file. 
3223 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3225         * input/no-notation/display-lily-tests.ly: moved from
3226         input/regression/ to input/no-notation. Be sure to call
3227         `display-lily-init' before trying to use the display function.
3229 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3231         * scripts/lilypond-book.py (option_definitions): Don't localize
3232         the empty string. Fixes bug when --psfonts was used with
3233         non-English locale.
3235 2005-08-15  Graham Percival  <gpermus@gmail.com>
3237         * lily/tuplet-bracket.cc: simple build fix.
3239         * Documentation/user/putting.itely: use "we" instead of "I".
3241         * Documentation/user/basic-notation.itely: cautionary accidentals
3242         work with naturals, too.
3244 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3246         * lily/tuplet-bracket.cc (calc_position_and_height): add
3247         staff-padding support.
3249         * input/proportional.ly: set staff-padding.
3250         
3251         * VERSION (PATCH_LEVEL): release 2.7.5
3253         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
3254         fixes. Remove tweaks.
3256         * input/regression/tuplet-slope.ly: add a test case.
3258         * lily/tuplet-bracket.cc (calc_position_and_height): revert
3259         erroneous fix. Add spanner bounds to offset array with relative X
3260         positions.
3262         * ly/engraver-init.ly: add Rest_engraver only once.
3264         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
3265         (*parser*) lookup if (*parser*) != #f.
3267 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3269         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
3270         Cut-and paste update.
3272         * input/regression/slur-script.ly: Add example of reverting
3273         inside-slur for fingering.
3275         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
3276         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
3278         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
3279         outside_slur_callback if inside-slur == #f (as opposed to unset).
3281 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3283         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
3284         encoding files are already removed.
3286 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3288         * Documentation/user/advanced-notation.itely (Instrument names):
3289         Document a workaround for instrument names that collide with
3290         system start braces/brackets.
3292 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3294         * lily/rest-collision.cc (do_shift): spello.
3296         * input/proportional.ly: use #'used property. Set break-overshoot
3297         property.
3299         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
3301         * lily/paper-column.cc: add #'used property
3303         * lily/mark-engraver.cc (stop_translation_timestep): set grob
3304         array for staves found.
3306         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
3307         array for stavesFound.
3309         * lily/staff-spacing.cc (next_note_correction): add fixed and
3310         space to calling convention. This fixes spacing of accidentals
3311         after barlines.
3313         * input/regression/spacing-accidental-stretch.ly: add barline -
3314         accidental case.
3316         * scm/framework-ps.scm (page-header): add version number to
3317         creator
3318         (eps-header): idem.
3320         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
3321         
3322 2005-08-13  Graham Percival  <gpermus@gmail.com>
3324         * Documentation/user/global.itely: add "fit as much as
3325         possible onto this page" example (Vertical spacing).
3327 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3329         * *: Nitpick run.
3331         * buildscripts/fixcc.py: Fixes.
3333 2005-08-12  Graham Percival  <gpermus@gmail.com>
3335         * Documentation/user/advanced-notation.itely: add markup
3336         example to Text spanners.
3338 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3340         * Documentation/user/basic-notation.itely (Ties): Add example of
3341         tying a tremolo to a chord. Thanks to Steve Doonan. 
3343         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
3344         properties and move tieMelismaBusy to the list of written
3345         properties. 
3347 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
3349         * po/TODO: suggest to use a dedicated tool like kbabel.
3351         * po/fi.po: update using kbabel.
3353 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3355         * *: Remove obsolete files.  Nitpick run.
3357         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
3359 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3361         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
3362         too.
3364         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
3366         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
3367         whitespace as symbol separator.
3369         * lily/side-position-interface.cc: Add slur-padding.
3371         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
3372         quite a large fix, and it never worked in a stable release; so not
3373         really a regression.
3375         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
3376         Update cut and paste code from Slur_engraver.
3378         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
3379         Add.
3381         * scm/define-grobs.scm (DynamicLineSpanner): Add
3382         dynamic-line-spanner-interface.
3383         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
3385 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3387         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
3388         to_boolean () so that non-set 'inside-slur means false.
3390         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
3391         slur has control-points.  Skip script without direction.  Always
3392         do_shift if script inside slur, even if slur not contained in
3393         script y-extent.  Increment k in loop.
3395 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3397         * scm/define-markup-commands.scm: Improved regexp to search for
3398         EPS bounding boxes and corrected call to ly:warning.
3400 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3402         * Documentation/user/programming-interface.itely (Displaying music
3403         expressions): doc for \displayLilyMusic. Also some precisions in
3404         "Markup construction in Scheme"
3406 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3408         * scm/define-markup-commands.scm (normal-text): Added 2 new
3409         markup commands, \normal-text and \medium (the latter thanks to
3410         Bruce Fairchild). 
3412 2005-08-08  Graham Percival  <gpermus@gmail.com>
3414         * Documentation/user/programming-interface.itely: fix @{ @}.
3416         * scm/define-markup-commands.scm: add linewidth info to
3417         \justify and \wordwrap, add "upright is the opposite of italic".
3419         * Documentation/user/advanced-notation.itely: shaped->shape,
3420         add (cons (markup "foo")) type of example to text markup,
3421         reword multi-measure rests section.
3423         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
3424         comment.  No actual code was touched.
3426         * Documentation/user/invoking.itely: add more info about
3427         \include.  Thanks, Bruce!
3429         * THANKS: add Bruce Fairchild, alphabetise.
3431         * Documentation/user/global.itely: document \score{\header{}}
3432         behavior.
3434         * Documentation/user/basic-notation.itely: reword multi-measure
3435         rest discussion in Rests.
3437 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3439         * Documentation/user/programming-interface.itely (Markup
3440         construction in Scheme): Corrected example and tried to clarify
3441         the implicit \line in the table.
3443 2005-08-07  Graham Percival  <gpermus@gmail.com>
3445         * Documentation/user/instrument-notation.itely: moved
3446         some bagpipe info back into the bagpipe section.  Somehow
3447         it ended up in the "other vocal issues" section?!  :o_O
3449 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3451         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
3452         directories, not paths).
3454 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3456         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
3457         plain emmentaler/aybabtu.  Backportme.
3459         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
3460         missing dir correction.
3462 2005-08-05  Graham Percival  <gperlist@shaw.ca>
3464         * scm/define-markup-commands: fix reversed justify/wordwrap
3465         doc strings.
3467 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
3469         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
3470         lily/gregorian-ligature-engaver.cc,
3471         lily/include/ligature-engraver.hh,
3472         lily/include/coherent-ligature-engraver.hh,
3473         lily/include/gregorian-ligature-engraver.hh: make these classes
3474         truely abstract.  This should fix some internal oddities such as
3475         duplicate as well as dead translator/property declarations, and
3476         also some dead code.
3478         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
3479         bugfix: avoid message "junking empty ligature" on ligature
3480         brackets by collecting dummy grobs.
3482 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3484         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
3486         * input/proportional.ly (staffKind): bugfix.
3487         (staffKind): updates by Trevor Baca.
3489         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
3490         default layout. 
3492         * lily/tuplet-bracket.cc (print): check whether edge-text is a
3493         pair.
3495         * lily/beam.cc (rest_collision_callback): call position_beam() if
3496         necessary.
3498         * VERSION: release 2.7.4
3500         * input/regression/spacing-uniform-stretching.ly: new file.
3502         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
3504         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
3505         contributor.
3507         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
3509         * input/proportional.ly: new file.
3511         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
3512         columns is empty
3514         * lily/tuplet-engraver.cc (finalize): new function. Reset right
3515         bounds to currentCommandColumn for the last step.
3516         (start_translation_timestep): if tupletFullLength is set, set
3517         bound to Paper Column
3519         * input/regression/tuplet-full-length.ly (indent): new file.
3521         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
3522         clique of loose columns, eg. a set of grace notes in strict
3523         notespacing.
3525         * input/regression/spacing-strict-spacing-grace.ly: new file.
3527         * lily/key-signature-interface.cc: change property name to
3528         alteration-alist
3530         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
3531         keyAccidentalOrder
3533         * python/convertrules.py (conv): keyAccidentalOrder ->
3534         keyAlterationOrder
3536         * lily/key-engraver.cc (create_key): always print a cancellation
3537         for going to C-major/A-minor, regardless of printKeyCancellation.
3538         (create_key): remove typecheck for visibility. This fixes key
3539         signature not being printed.
3541         * lily/spacing-determine-loose-columns.cc: new file.
3543         * input/regression/spacing-strict-notespacing.ly: new file.
3545         * lily/spacing-spanner.cc (generate_springs): rename from
3546         do_measure. 
3547         (generate_pair_spacing): new function.
3548         (init, generate_pair_spacing): set between-cols for floating
3549         nonmusical columns.
3551         * lily/spaceable-grob.cc (get_spring): new function. 
3553         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
3554         relative to the right edge of the prefatory matter.
3556         * lily/beam.cc (print): read break-overshoot to determine where to
3557         stop/start broken beams.
3559         * input/regression/spanner-break-overshoot.ly: new file.
3561 2005-08-04  Graham Percival  <gperlist@shaw.ca>
3563         * ly/bagpipe.ly: updated.
3565         * Documentat/user/instrument.itely: un-comment out bagpipe example.
3567 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3569         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
3570         support: now (de)crescs avoid slurs as well.
3572         * Documentation/user/instrument-notation.itely (Bagpipe example):
3573         comment out non-functioning bagpipe example.
3574         (Bagpipe definitions): idem.
3576         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
3577         (Top): add proportionalNotationDuration example.
3579         * input/regression/spacing-proportional.ly: new file.
3581         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
3582         synched to a beam.
3584         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
3585         fixes beams with a single stem (eg. beams across linebreaks.)
3587         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
3589         * flower/rational.cc (operator +): prevent overflow. This fixes
3590         heavily nested tuplets.
3592         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
3593         have to protect even those unlikely to be corrupted data members.  
3595 2005-08-04  Graham Percival  <gperlist@shaw.ca>
3597         * ly/bagpipe.ly: new file.
3599         * THANKS: added Sven Axelsson.
3601 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3603         * lily/spacing-engraver.cc (stop_translation_timestep): directly
3604         copy proportionalNotationDuration into currentMusicalColumn if
3605         set.
3607         * lily/spacing-spanner.cc (musical_column_spacing): if
3608         uniform-stretching set, fixed space is 0.0
3610         * input/regression/spacing-multi-tuplet.ly: show
3611         uniform-stretching property.
3613         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
3615         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
3616         (struct Spacing_options): new struct.
3618         * lily/spacing-basic.cc: new file.
3620         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
3621         delta_t doesn't have to be smaller than shortest_playing_len
3623 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3625         * input/regression/markup-arrows.ly:  new file.
3627         * lily/tuplet-bracket.cc: document new behavior.
3629         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
3630         with line breaks.
3632         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
3634         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
3635         default 
3637         * lily/tuplet-bracket.cc: add edge-text property.
3638         add break-overshoot.
3639         (print): read break-overshoot.
3640         (print): read edge-text, add stencils.
3642         * mf/feta-arrow.mf: new file.
3644         * mf/feta-generic.mf: add feta-arrow.
3646 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3648         * Documentation/user/lilypond-book.itely (An example of a
3649         musicological document): Added flag -o to dvips for people who use
3650         the default setting in teTeX where output is sent to the printer. 
3652         * Documentation/user/global.itely (Vertical spacing): Added
3653         reference to the Axis_group_engraver which documents the *Extent
3654         properties.
3656 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3658         * Documentation/user/basic-notation.itely (Tuplets): add note
3659         about nested tuplets. Remove BUG. 
3661         * input/regression/tuplet-nest.ly: update: remove manual hack. 
3663         * lily/tuplet-bracket.cc (print): use robust_scm2drul
3664         (print): manually call print() for subtuplets.
3665         (calc_position_and_height): add subtuplets to the
3666         support. Vertically shift outer tuplet 
3668         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
3669         remove-first for Lyrics, ChordNames and FiguredBass
3671         * scm/define-grob-properties.scm (all-internal-grob-properties):
3672         use ly:grob-array? iso. grob-list?
3673         (all-internal-grob-properties): add tuplets grob-array.
3675         * lily/tuplet-bracket.cc (add_tuplet_bracket):
3676         new function
3678 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3680         * input/test/time-signature-staff.ly: new file.
3682         * ly/declarations-init.ly (center): escape to Scheme. Fixes
3683         spurious #<Music FingerEvent> errors. Backportme.
3685 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3687         * Documentation/user/programming-interface.itely (Markup
3688         construction in Scheme): Corrected markup syntax in the
3689         translation table.
3691 2005-08-03  Graham Percival  <gperlist@shaw.ca>
3693         * Documentation/user/instrument-notation.itely: small update
3694         to bagpipe notation docs; thanks Sven!
3696         * Documentation/user/basic-notation.itely: add link about trills.
3698 2005-08-02  Graham Percival  <gperlist@shaw.ca>
3700         * Documentation/user/music-glossary: remove accidentally committed
3701         fink patch.
3703 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
3705         * lily/lily-parser.cc (get_header): new function. Enable multiple
3706         \header definitions.
3708         * lily/parser.yy (lilypond_header_body): use get_header.
3710         * ly/init.ly:
3711         * scm/lily-library.scm (print-score-with-defaults): renamed
3712         $globalheader to $defaultheader
3713         
3714         * Documentation/user/global.itely (Creating titles): added short
3715         explanation that multiple headers are useable.
3718 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3720         * lily/module-scheme.cc (LY_DEFINE): new file. 
3722         * Documentation/user/advanced-notation.itely (Font selection): add
3723         doco for make-pango-font-tree.
3725 2005-07-31  Graham Percival  <gperlist@shaw.ca>
3727         * Documentation/user/music-glossary: more languages
3728         for tenuto.
3730         * Docuemntation/user/instrument-notation.itely: minor
3731         update for bagpipe example.
3733 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3735         * input/regression/+.ly (TODO): add some text.
3737 2005-07-28  Graham Percival  <gperlist@shaw.ca>
3739         * Documentation/user/invoking.itely: \score begins with music.
3741         * Documentation/user/ basic-notation.itely,
3742         instrument-notation.itely: minor changes.
3744         * Documentation/user/music-glossary.itely: began tenuto entry.
3746 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3748         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
3750         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
3752 2005-07-27  Graham Percival  <gperlist@shaw.ca>
3754         * Documentation/user/examples.itely: remove bagpipe template.
3756         * Documentation/user/instrument-notation.itely: add bagpipe
3757         section, maybe fix quotes in lyrics.  I hate text encoding.
3758         Clarify chord durations, more bagpipe stuff.
3760 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3762         * lily/accidental-engraver.cc: formatting fixes.
3764         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
3765         grob-array.
3767         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
3769         * lily/note-column.cc (arpeggio): new function.
3771         * lily/note-spacing.cc (get_spacing): also take arpeggio into
3772         account for spacing.
3774 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3776         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
3777         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
3778         mingw build.
3779         
3780 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3782         * scm/lily.scm (lilypond-all): clear anonymous modules after
3783         processing files.
3785 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3787         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
3788         SCM_I_CONSP
3790         * VERSION: 2.7.3 released
3792         * Documentation/user/invoking.itely (Invoking lilypond): add
3793         LILYPOND_GC_YIELD documentation.
3795         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
3796         scm_from_real / scm_make_real.
3798         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
3799         higher. This increases memory footprint, but provides overall
3800         speedup of 15 to 20%. 
3802         * lily/include/translator.hh (class Translator): remove
3803         PRECOMPUTED_VIRTUAL everywhere.
3805         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
3807         * lily/context.cc (now_mom): non-recursive now_mom() 
3809         * lily/include/profile.hh: new file.
3811         * lily/profile.cc: new file.
3813         * lily/grob.cc (Grob::Grob): look properties up directly.
3815         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
3816         lookups.
3818         * lily/include/box.hh (class Box): smob Box type.
3820         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
3822         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
3823         protect() and unprotect(). Use throughout.
3825 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3827         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
3829         * scm/define-music-display-methods.scm (markup->lily-string):
3830         markup elements can also be strings (without simple-markup
3831         appended)
3833 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3835         * lily/context.cc (where_defined): also assign value in
3836         where_defined().
3838         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
3839         (curve_coordinate): new function
3841         * lily/simple-spacer.cc (add_columns): only add rods between
3842         column i and begin/end if keep-inside-line is set (this repleces
3843         allow-outside-line as default)
3845 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3847         * lily/tuplet-engraver.cc (start_translation_timestep): only read
3848         tupletSpannerDuration if applicable.
3850         * lily/font-size-engraver.cc (process_music): read fontSize only
3851         once per timestep.
3853         * lily/engraver*cc: use throughout.
3854         
3855         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
3857         * lily/translator.cc (add_acknowledger): new file. Directly jump
3858         into an Engraver::acknowledge_xxx () method based on a grobs
3859         interface-list.
3861         * lily/include/translator-dispatch-list.hh (class
3862         Engraver_dispatch_list): new struct, new file.
3864         * scm/define-context-properties.scm
3865         (all-internal-translation-properties): remove acceptHashTable,
3866         acknowledgeHashTable
3868         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
3870         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
3871         change acknowledgeHashTable to C++ member. 
3873         * lily/rest-collision.cc (do_shift): use extract_grob_set().
3875 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3877         * scm/display-lily.scm: new file. Define a `display-lily-music'
3878         function, that displays the music expression given as an argument,
3879         using LilyPond notation.
3881         * scm/define-music-display-methods.scm: new file. Implementation
3882         of display methods for each music type.
3884         * ly/music-functions-init.ly (displayLilyMusic): new function for
3885         displaying music with LilyPond notation.
3887         * input/regression/display-lily-tests.ly: new regression test file
3888         for `display-lily-music'.
3890         * scm/markup.scm: remove obsolete debugging code (for printing
3891         markups with LilyPond notation).
3893         * scm/define-music-types.scm (music-name-to-property-table):
3894         * scm/clef.scm (supported-clefs): export, in order to be accessible
3895         from the (scm display-lily) module.
3897 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
3899         * Documentation/topdocs/NEWS.tely (Top): Typo.
3901 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
3903         * Documentation/index.html.in, Documentation/texinfo.css,
3904           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
3905           Documentation/bibliography/index.html.in,
3906           Documentation/bibliography/html-long.bst: revert css-width patch,
3907           it does not work with IE6.
3909 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3911         * Documentation/texinfo.css: revert 760px hack. 
3913         * VERSION: release 2.7.2
3915         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
3917         * Documentation/user/basic-notation.itely (Barnumber check): add
3918         section.
3920         * scm/music-functions.scm (skip-to-last): new function. Show only
3921         last showLastLength part of the \score.
3923         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
3925         * python/convertrules.py (conv): add ly:x-moment rule
3927         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
3929         * Documentation/topdocs/NEWS.tely (Top): add new feature.
3931         * Documentation/user/instrument-notation.itely (Flexibility in
3932         alignment): options in subsections.
3934         * lily/lyric-engraver.cc (process_music): don't typeset text for _
3935         syllable text. Instead, assume that the previous lyric text is a
3936         melismated text.
3938         * Documentation/index.html.in: revert 800x600 change.
3940 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3942         * lily/main.cc (main): Remove invalid handle kludge.
3944         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
3945         (lambda): add gui define.
3947 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3949         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
3951         * Documentation/user/instrument-notation.itely (Musica ficta
3952         accidentals): add section Musica ficta accidentals
3954         * lily/accidental-engraver.cc (make_suggested_accidental): new
3955         function.
3956         (make_standard_accidental): move into new function.
3957         (create_accidental): new function.
3959         * scm/define-grobs.scm (all-grob-descriptions): new Grob
3960         AccidentalSuggestion
3962         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
3964         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
3965         undefined.
3967         * Documentation/user/global.itely (Page formatting): document
3968         horizontalshift.
3970         * scm/page-layout.scm (default-page-music-height):
3971         horizontalshift: new variable, shift all systems by
3972         horizontalshift to the right, to make space for instrument names.
3974         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
3976         * lily/input-scheme.cc (LY_DEFINE): take format commands.
3978 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3980         * lily/note-column.cc (dir): idem.
3982         * lily/spacing-spanner.cc (Module): idem.
3984         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
3986         * lily/include/paper-column.hh (class Paper_column): add
3987         non-static get_rank() member.
3989         * VERSION: release 2.7.1
3990         
3991         * scm/framework-null.scm: new file, used for benchmarking.
3993 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
3995         * Documentation/topdocs/INSTALL.texi, configure.in: fix
3996         version dependencies for fontforge and gs.
3998         * Documentation/index.html.in, Documentation/texinfo.css,
3999         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4000         Documentation/bibliography/index.html.in, 
4001         Documentation/bibliography/html-long.bst: optimize width of
4002         html for a 800x600 screen (width:760), increases printability
4003         when 'fit to page' is not set and readability in wide screens.
4005         * stepmake/bin/add-html-footer.py: add missing </p>.
4007 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4009         * scm/define-markup-commands.scm (beam): use polygon in beam
4010         command.
4012         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
4013         all acknowledged grobs, and do potentially expensive merge and
4014         write in one go.
4016         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
4018         * configure.in (reloc_b): add --enable-static-gxx to statically
4019         link to libstdc++
4021         * lily/GNUmakefile (static-gxx-libs): new target
4022         static-gxx-libs. Create symlink to libstdc++.a
4024         * lily/new-lyric-combine-music-iterator.cc: rename to
4025         Lyric_combine_music_iterator
4027         * lily/lyric-combine-music-iterator.cc
4028         (Old_lyric_combine_music_iterator): rename to
4029         Old_lyric_combine_music_iterator
4031         * lily/*-engraver.cc (various): remove double use of
4032         PRECOMPUTED_VIRTUAL function: only use
4033         start_translation_timestep() and stop_translation_timestep(), not
4034         both.
4036         * lily/break-substitution.cc (fast_substitute_grob_array): do
4037         fast_substitute_grob_array for all unordered grob_arrays.
4038         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
4039         (substitute_grob_array): optimize.
4041         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
4043         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
4045         * lily/parser.yy: revert $globalheader patch.
4046         
4047         * lily/include/translator.icc
4048         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
4049         Translator methods, without _static helper.
4051         * lily/grob-smob.cc (derived_mark): rename from
4052         do_derived_mark(). Return void.
4054         * scm/define-context-properties.scm
4055         (all-internal-translation-properties): remove tweakCount/tweakRank.
4057         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
4058         predefined break-visibilities.
4060         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
4061         booleans for break-visibility.
4063         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
4065         * python/convertrules.py (conv): rule for Timing_translator. 
4067         * lily/include/translator.icc: new file. 
4069         * lily/paper-column-engraver.cc (process_music): new
4070         file. Separate Paper_column factory from Score_engraver.
4072         * lily/vertically-spaced-context-engraver.cc: administer
4073         spaceable-staves property of System.
4075         * lily/translator-group-ctors.cc: new file.
4077         * lily/context-property.cc (make_grob_from_properties): construct
4078         the right Grob class programmatically, looking at the class entry
4079         for the meta property.
4081         * lily/break-align-engraver.cc (stop_translation_timestep): call
4082         Break_align_interface::add_element() directly.
4084         * lily/context.cc (measure_position): measure_position() is now a
4085         normal function.
4087         * lily/include/translator.hh (class Translator): rename
4088         process_acknowledged_grobs() to process_acknowledged() and move to
4089         Translator.
4091         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
4092         field for each grob description.
4094         * lily/include/translator-group.hh (class Translator_group):
4095         change to base class. Separate class from Translator. This gets
4096         rid of virtual inheritance for Engravers/Performers.
4098         * lily/staff-performer.cc (class Staff_performer): derive
4099         Staff_performer from Performer, not Performer_group_performer 
4101         * Lily/translator-group.cc (precomputed_recurse_over_translators):
4102         new function.
4103         (precompute_method_bindings): new function. Precompute lists of
4104         Translators, so we only call methods (process_music,
4105         start_translation_timestep, etc.) for Translators needing
4106         it. Also: dispose of pointer-to-member-function calls.
4108         * lily/engraver-group-engraver.cc: remove engraver_each,
4109         recurse_down_engravers ()
4111         * lily/note-head.cc (internal_print): only call
4112         glyph-name-procedure if style != default. 
4114 2005-07-16  Graham Percival  <gperlist@shaw.ca>
4116         * ly/titling-init.ly: add printallheaders option.
4118         * Documentation/user/global.itely: document printallheaders.
4120 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4122         * lily/system.cc (do_derived_mark): don't mark from object_alist_
4123         anymore, but do it centrally.  
4125         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4126         hammer hack.
4128         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
4130         * scm/output-lib.scm: remove hammer-print-function.
4132         * lily/include/pointer-group-interface.hh (extract_grob_set): new
4133         macro. Declare a Link_array<Grob> and fill it from a grob.
4134         (extract_item_set): idem for item.
4136         * lily/break-substitution.cc: add header.
4137         (fast_substitute_grob_array): rewrite for Grob_arrays.
4138         (substitute_grob_array): idem.
4140         * lily/group-interface.cc (add_thing): remove file.
4142         * flower/include/parray.hh (class Link_array): slice() is const.
4144         * lily/include/grob-array.hh: new file.
4146         * lily/grob-array.cc (spanner): new file.
4148         * lily/beam-quanting.cc (fill): read details property from beam.
4150         * lily/beam.cc: support details property.
4152         * total speedups below: approx 10%.
4154         * lily/include/beam.hh: new struct, softcode beam quanting parameters
4156         * lily/include/grob.hh (class Grob): add interfaces_ member.
4158         * lily/bezier.cc (init_polynomial_cache): new function: cache
4159         binom(3,j) t^j (1-t)^{3-j}
4160         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
4162         * lily/*.cc: substitution throughout.
4164         * lily/grob-property.cc (internal_get_object): new routine.
4165         (internal_set_object): idem. Store grob refrences in separate
4166         alist. This saves processing time, since properties aren't
4167         break-substituted, and the per grob namespace is smaller, both for
4168         grobs and non-grob properties.
4170         * scm/define-grob-properties.scm (all-internal-grob-properties):
4171         remove center-element.
4173         * lily/grob.cc: remove tweak-count, tweak-rank.
4175 2005-07-15  Graham Percival  <gperlist@shaw.ca>
4177         * Documentation/user/lilypond-book.itely: fixes example.
4179 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4181         * Documentation/user/global.itely (Creating titles):    
4182         * Documentation/user/examples.itely (All headers): change the
4183         place of \header in \score blocks (after music block) to make
4184         examples compile (cf. changes on parser.yy on 2005-07-10)
4186 2005-07-13  Graham Percival  <gperlist@shaw.ca>
4188         * python/convertrules.py: add exc -> ecc rule.
4190         * scripts/convert-ly.py: add location of convertrules.py
4191         in a comment.
4193         * Documentation/user/changing-defaults.itely: fix language.
4195 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4197         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
4199 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4201         * scm/output-socket.scm (grob-bbox): don't use inf? 
4203         * flower/include/rational.hh: add operator bool() 
4205         * scm/define-music-types.scm (music-descriptions): remove
4206         internal-class-name properties.
4208         * lily/include/event.hh: remove file.
4210         * lily/include/music-constructor.hh: remove file.
4212         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
4213         in 'types property.
4215         * lily/music.cc (duration_length_callback): new function.
4217         * lily/event.cc: remove file.
4219         * lily/music-constructor.cc: remove file.
4221         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
4223         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
4224         (get_context_key): idem.
4226         * scm/lily.scm (lambda): new option object-keys (default to #f)
4228         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
4230         * scm/output-gnome.scm: remove beam routine.
4232         * scm/output-ps.scm (scm): idem.
4234         * scm/output-svg.scm: remove beam.
4236         * ps/music-drawing-routines.ps: remove draw_beam.
4238         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
4240         * flower/include/guile-compatibility.hh (scm_from_locale_string):
4241         add scm_from_locale_string compatibility glue. 
4243 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
4245         * scripts/lilypond-book.py: Prevent occuring error when
4246         'lilypond-book --output=foo/ somefile.ly' is executed multiple
4247         times and target file shoud be overwritten.  (Error message said
4248         'input file and output file is same'.)
4250 2005-07-13  Graham Percival  <gperlist@shaw.ca>
4252         * input/regression/slur-extreme.ly,
4253         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
4254         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
4255         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
4256         "excentricity" to "eccentricity".
4258         * Documentation/user/converters.itely: fix URL for Noteedit and
4259         Rosegarden.
4261         * THANKS: added Yoshinobu Ishizaki.
4263 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4265         * scm/define-markup-commands.scm (justify-field): add. 
4267         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
4269 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4271         * lily/lookup.cc (filled_box): express filled_box with
4272         round_filled_box
4274         * scm/midi.scm (paper-book-write-midis): new function. Write all
4275         performances in numbered MIDI files.
4277         * lily/performance-scheme.cc (LY_DEFINE): new file.
4278         (LY_DEFINE): new function ly:performance-write.
4280         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
4281         new function.
4282         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
4284         * scm/framework-*.scm: use port arguments throughout.
4286         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
4288         * lily/paper-outputter.cc (Paper_outputter): take port argument.
4290         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
4292         * scm/framework-texstr.scm (output-framework): 
4294         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
4296         * scm/output-lib.scm (tablature-stem-attachment-function):
4297         tablature stem attachment fix. 
4299 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4301         * lily/bezier.cc: hardcode binomial coefficients of order 3.
4303         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
4305         * scm/define-music-types.scm (music-descriptions): don't use
4306         Music_wrapper type.
4308         * lily/paper-column.cc (print): print moment too.
4310         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
4311         remove compatibility cruft.
4313         * lily/parser.yy (score_body): \score can only begin with Music. 
4315         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
4316         make-score. Take music argument only. Move parser interaction to
4317         Scheme.
4319         * scm/lily-library.scm (scorify-music): new function.
4321         * python/lilylib.py (datadir): remove 2.1 compat kludge.
4322         (datadir): remove resource import.
4323         (print_environment): remove get_bbox()
4324         (cp_to_dir): remove pre 1.5.2 compat glue.
4326 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4328         * lily/include/simple-spacer.hh (Module): idem.
4330         * lily/include/spring.hh (struct Spring): store inverse
4331         strength. This prevents division by zero.
4333         * VERSION: release 2.7.0
4334         
4335         * lily/include/music.hh (class Music): remove Music::duration_log()
4337         * lily/stem-engraver.cc (make_stem): take duration log from event.
4339         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
4341 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4343         * scm/lily.scm (ly:load): load autochange.scm
4345         * Documentation/user/tutorial.itely (Running LilyPond for the
4346         first time): remove reference to DVI/TeX
4348         * scm/define-markup-commands.scm (text): add \text markup command.
4350         * configure.in (reloc_b): bump requirement to Python 2.2.
4352         * lily/include/dots.hh (class Dots): make has_interface() static.
4354         * python/convertrules.py (conv): add rule for ly:grob-default-font
4356         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
4357         alphabetical order.
4359         * input/regression/trill-spanner-pitched.ly: new file.
4361         * lily/font-interface-scheme.cc (LY_DEFINE): function
4362         ly:grob-default-font (changed from get-default-font).
4364         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
4366         * lily/note-head.cc (internal_print): if style is not a symbol,
4367         set style to 'default. 
4368         (internal_print): no style suffix if glyph-name-procedure not
4369         set. Default to quarter head.
4371         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
4373         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
4375         * ly/music-functions-init.ly: \pitchedTrill
4377         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
4379         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
4381         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
4383         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
4385         * po/fr.po: update
4387         * po/de.po: update.
4389 2005-07-06  Graham Percival  <gperlist@shaw.ca>
4391         * Documentation/user/changing-defaults.itely: add link
4392         to grob-iterface.
4394         * Documentation/user/advanced-notation.itely: add material
4395         to Setting automatic beam behaviour.  Thanks, Joe!
4397         * Documentation/user/lilypond.itely: change encoding to utf-8.
4399 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4401         * Documentation/user/advanced-notation.itely (Setting automatic
4402         beam behavior): Correct the documentation of
4403         revert-auto-beam-setting (backportme)
4405 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4407         * lily/ly-module.cc (ly_make_anonymous_module): define
4408         %module-public-interface of module. 
4410         * lily/lily-parser.cc (print_smob): allow printing of parser smob
4411         without lexer.
4413 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4415         * input/regression/fret-diagrams.ly: stretch example.
4417 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4419         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
4420         Fodor).
4422 2005-06-30  Graham Percival  <gperlist@shaw.ca>
4424         * Documentation/topdocs/AUTHORS.texi: update personal web address.
4426         * Documentation/user/examples.itely, lilypond-book.itely:
4427         change \RequirePackage to \usepackage.
4429         * Documentation/user/global.itely: document copyright and tagline.
4431 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4433         * Documentation/user/basic-notation.itely (Transpose): remove link
4434         to nonexistent UntransposableMusic.
4436         * scm/output-svg.scm: remove old definitions.
4438         * scripts/lilypond-book.py (do_file): search for kpsewhich before
4439         invoking.
4441         * python/lilylib.py (search_exe_path): new function.
4443 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4445         * python/lilylib.py (mkdir_p): remove setup_environment()
4446         (backportme)
4448         * buildscripts/mutopia-index.py (headertext): trim text.
4450         * Documentation/topdocs/NEWS.tely (Top): refresh.
4452         * scm/define-markup-commands.scm (wordwrap-string): new function:
4453         split string in paras and words.
4454         (wordwrap-markups): new function.
4455         (wordwrap-stencils): new function. 
4456         (justify): use it.
4457         (wordwrap): use it.
4458         (wordwrap-string): use it
4459         (justify-string): use it.
4461         * scm/lily-library.scm (regexp-split): new function.
4463         * scm/define-markup-commands.scm: remove encoded-simple. 
4464         remove font-markup.
4465         (fontsize): remove old version  of fontsize.
4466         (wordwrap): new markup function. Wrap into paragraphs.
4468         * VERSION: Branch lilypond_2_6
4469         (MINOR_VERSION): go to 2.7.0
4471 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4473         * po/zh_TW.po: update from translation project.
4475 2005-06-28  Graham Percival  <gperlist@shaw.ca>
4477         * scm/midi.scm: compile fix.
4479 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4481         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
4482         patch. Now, the tempfile module is loaded too, not only used.
4484 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
4486         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
4487         0.05 - 1.00 to 0.25 - 1.00
4489         * scm/midi.scm: moved the default-instrument-equalizer procedure
4490         to just under the insturment-equalizer-alist it takes as an
4491         argument.
4493 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4495         * Documentation/user/advanced-notation.itely (Font selection):
4496         remove CMR note.
4498         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
4500 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4502         * THANKS: Add UTF-8 marker.
4504         * Documentation/user/point-and-click.itely (http): Update: use
4505         lilypond-invoke-editor.  Fix: instruct to use user.js.
4507 2005-06-27  Graham Percival  <gperlist@shaw.ca>
4509         * ly/titling-init.ly: implements printpagenumber, increases
4510         space between dedication and title (to avoid collisions with
4511         "g" and "q" in dedication), and nicer logic about copyright
4512         and instrument fields being printed on the first page.
4513         Thanks Vincent!
4515         * Documentation/user/global.itely: document printpagenumber.
4517 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4519         * Documentation/topdocs/NEWS.tely: Update to 2.6.
4521 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4523         * THANKS: update to 2.6
4525         * VERSION: 2.6.0 released.
4527 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4529         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
4530         rule, errorneously removed probably because of misleading comment.
4532 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4534         * python/lilylib.py (datadir): py2exe comments.
4536         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
4538         * configure.in (reloc_b): make fontconfig REQUIRED.
4540 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
4542         * po/fi.po: add latest translations.
4544 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4546         * ChangeLog: recode utf-8
4548         * Documentation/pictures/lilypond.xpm (Module): edited photo as
4549         logo.
4551         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
4553         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
4555         * python/convertrules.py (do_conversion): don't print program_name
4556         from within a module
4558         * configure.in (reloc_b): bump fontforge requirement to 20050624.
4560         * python/convertrules.py (conv): add 2.6.0 dummy rule.
4562 2005-06-23  Graham Percival  <gperlist@shaw.ca>
4564         * Documentation/user/lilypond-book.itely,
4565         Documentation/user/examples.itely: add \RequirePackage{graphics}.
4567         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
4568         fixes baseline-skip.  Thanks Vincent!
4570         * Documentation/user/advanced-notation.itely, global.itely:
4571         moved "Selecting font sizes" to global, since it deals with
4572         notation font size, not text fonts.
4574 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4576         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
4577         to fonts.
4579 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4581         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
4582         workaround since /dev/stdin doesn't work on Cygwin. Using a
4583         temporary file in the current directory since latex doesn't
4584         understand the path name to the default TMP in Cygwin (at least on
4585         win XP).
4586         
4587         * Documentation/user/global.itely (Creating titles): Correct
4588         misprint in example. Thanks to Rob Vlasaty.
4590 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4592         * VERSION (PATCH_LEVEL): release 2.5.32
4594         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
4595         variable in lily module
4597         * scm/framework-ps.scm (output-classic-framework): error message
4598         regarding the classic framework.
4600         * Documentation/user/henle-flat-gray.png (Module): new file.
4602         * Documentation/user/baer-flat-gray.png (Module): new file.
4604         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
4605         whiteout for markups.
4607         * buildscripts/substitute-encoding.py (note_glyph): include _ in
4608         regex too. This fixes change clef appearance in PDF. 
4610         * ttftool/include/*: remove.
4612         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
4614         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
4616         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
4618         * ttftool/*: remove ttftool subdirectory.
4620         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
4622         * lily/ttf.cc (print_header): new file. Convert to type42, using
4623         FreeType to parse the TTF. 
4625         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
4626         and post table may differ. Pass around post_nglyphs as well.
4628 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4630         * ly/music-functions-init.ly (musicMap): new music function
4631         musicMap. 
4632         
4633 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4635         * make/mutopia-rules.make: anti-alias-factor = 2
4637         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
4638         page switch.
4640         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
4641         anti-alias-factor for lilypond-book runs.
4643         * scm/ps-to-png.scm (scale-down-image): new function.
4644         (my-system): new function.
4645         (make-ps-images): blow up GS resolution by anti-alias-factor,
4646         scale down image by anti-alias-factor.  This improves appearance
4647         of bitmaps
4648         (make-ps-images): remove showpage. Fixes spurious empty png at
4649         end.
4651         * scm/framework-ps.scm (write-preamble): downcase filename before
4652         string-matching. Should fix .TTF files (as opposed to ttf files)  
4654         * Documentation/user/tutorial.itely (Running LilyPond for the
4655         first time): separate subsections for windows, macos and unix.  
4657         * Documentation/user/invoking.itely (Updating files with
4658         convert-ly): add MacOS X note.
4660 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4662         * Documentation/user/introduction.itely (Engraving): don't include
4663         file optical-spacing, add directly.
4665         * lily/paper-outputter.cc (file): open file in binary mode. This
4666         fixes OTF embedding on windows.
4668 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4670         * scm/framework-ps.scm (write-preamble): remove debugging output.
4672         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
4674         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
4675         outdir.
4676         (install-fc-cache): install font cache in installation directories.
4678 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4680         * scm/editor.scm (editor-command-template-alist): Use char iso
4681         column, except for Emacs.
4682         (get-editor-command): Substitute char too (Bertalan Fodor).
4684 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4686         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
4687         quoted ~s.  This should fix PNG output on Windows; single quotes
4688         are regular characters on Windows.
4690 2005-06-16  Graham Percival  <gperlist@shaw.ca>
4692         * Documentation/user/basic-notation.itely: include ChoirStaff
4693         in System start delimiters.
4695         * Documentation/user/putting.itely: new doc section on
4696         fixing overlapping notation.
4698 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4700         * Documentation/user/global.itely (Paper size): \paper is in
4701         \book, not \score.
4703         * make/mutopia-rules.make: -ddelete-intermediate-files
4705         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
4707 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4709         * ChangeLog: Recode utf-8.
4711         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
4712         datadir with .py modules.
4714 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
4716         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
4718 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4720         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
4721         
4722         * scm/framework-ps.scm (write-preamble): remove status check.
4724         * Documentation/user/invoking.itely (Updating files with
4725         convert-ly): remove -o option.
4727         * VERSION (PACKAGE_NAME): release 2.5.31
4729         * scm/framework-ps.scm (write-preamble): use ly:system.
4730         (write-preamble): verbosity.
4732         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
4734         * python/convertrules.py: new file. Store conversion rules
4735         separately.
4737 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4739         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
4741 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4743         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
4744         \musicDisplay 
4746         * Documentation/user/instrument-notation.itely (More stanzas): Add
4747         reference to StanzaNumber.
4749 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4751         * THANKS: separate section for website translators.
4753 2005-06-14  Graham Percival  <gperlist@shaw.ca>
4755         * Documentation/topdocs/INSTALL.texi: update vim info;
4756         thanks Simon Bailey!
4758         * Documentation/user/advanced-notation.itely: included
4759         color names.
4761         * Documentation/user/advanced-notation.itely,
4762         Documentation/usr/notation-appendices.itely: moved
4763         color names into an appendix.
4765 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4766         
4767         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
4769         * scm/lily.scm (lambda): initialize program options from here.
4771         * scm/framework-*.scm: add header info.
4773         * lily/main.cc (parse_argv): only set output format to pdf if no
4774         other format specified.
4776         * scm/backend-library.scm (postprocess-output): process
4777         'delete-intermediate-files after running convert-to-*. This fixes
4778         PNG generation when 'delete-intermediate-files is set.
4779         
4780 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4782         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
4783         links on website. 
4785 2005-06-13  Graham Percival  <gperlist@shaw.ca>
4787         * Documentation/topdocs/INSTALL.texi,
4788         Documentation/user/lilypond-book.itely: typos.
4790 2005-06-12  Pal Benko  <benkop@freestart.hu>
4792         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
4793         added between program name and switch; -b changed to -f not
4794         to generate pdf
4796 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4798         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
4799         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
4801         * input/sakura-sakura.ly: add \midi.
4803         * buildscripts/mutopia-index.py (find): use /usr/bin/find
4804         iso. python find. 
4806         * ttftool/test.c (main): cosmetics.
4808         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
4810         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
4811         create a ttf2ps binary.
4813         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
4815         * scm/backend-library.scm (postscript->png): set rename-page-1 to
4816         true.
4818 2005-06-11  Graham Percival <gperlist@shaw.ca>
4820         * Documentation/user/lilypond-book.itely: add warning about
4821         the font warnings in dvips.
4823 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4825         * THANKS: typo
4827         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
4829         * GNUmakefile.in: remove links for .map, .enc
4830         don't fail if out/ doesn't exist yet.
4832 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4834         * ttftool/util.c (surely_read): return nbytes
4836         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
4838         * VERSION (PACKAGE_NAME): release 2.5.30
4840         * flower/string-convert.cc (precision_string): >? fix.
4842         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
4843         (make-ps-images): add verbose -q too.
4845         * lily/default-actions.cc (Module): new file. default
4846         {book,score}-print functions.
4848         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
4849         pass results via parseStringResult, lookup via ly:parser-lookup.  
4851         * lily/lily-parser.cc (Lily_parser): only clone lexer in
4852         constructors.
4853         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
4854         (parse_string): idem.
4856         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
4858         * lily/main.cc (main_with_guile): copy be_verbose_global into
4859         ly_set_option()
4861 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4863         * scm/backend-library.scm (postscript->pdf):
4864         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
4865         verbose mode.  Search for several names of gs executable.
4867 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4869         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
4870         directly. This fixes a massive memory leak, provided you use CVS
4871         GUILE.
4873 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
4875         * ly/property-init.ly: Added tieDashed.
4877         * THANKS: Added some bughunters for 2.5.
4879 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4881         * lily/program-option.cc: add debug-gc option.
4883         * lily/include/lily-guile-macros.hh: don't protect exported module
4884         objects.
4886         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
4888         * scm/backend-library.scm (postscript->pdf): use
4889         delete-intermediate-files iso. running-from-gui? 
4891         * ttftool/util.c (surely_read): robustness. Allow read() to return
4892         less bytes than requested, as per posix standards.
4894         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
4895         program option.
4897         * ttftool/include/ttftool.h ("C"): rename verbosity to
4898         ttf_verbosity. Add to public interface.
4900         * scm/music-functions.scm (unfold-repeats): remove debugging display.
4902         * lily/program-option.cc: rename from scm-option.cc
4904         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
4905         (get_help_string): Print pretty help string.
4907         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
4908         to snippet preamble.
4910         * lily/scm-option.cc: remove command-line-settings option. Fold
4911         all command-line options plus default settings in a generic
4912         interface. 
4914         * flower/getopt-long.cc (table_string): indent 2nd lines of help
4915         texts too.
4917 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4919         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
4920         or EXT_ components non-empty.
4922 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4924         * scm/lily.scm (running-from-gui?): Export.
4926         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
4927         output in .ly source directory.
4929 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4931         * ttftool/util.c (surely_lseek): more verbosity.
4933         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
4934         compile.
4936         * lily/parser.yy (Repeated_music): remove >? 
4938         * scm/backend-library.scm (postscript->pdf): Support for
4939         -dgs-font-load=1
4941         * scm/framework-ps.scm (write-preamble): make font loading
4942         switchable to GS via --define-default gs-font-load=1
4944 2005-06-09  Graham Percival  <gperlist@shaw.ca>
4946         * Documentation/user/global.itely: added \layout docs.
4948 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4950         * lily/lily-parser-scheme.cc: add unistd.h
4952 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4954         * scm/editor.scm: add char argument.
4956         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
4958         * ttftool/util.c (syserror): use errno for better error reporting.
4960         * lily/source-file.cc (get_counts): new function. Calc column,
4961         line and char count in one go.
4963         * lily/binary-source-file.cc (quote_input): rename to quote_input
4965         * lily/input.cc (set): new function.
4967 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4969         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
4970         directory part of file name to search directory.
4972         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
4973         search path and chdir to DIR if --outname=DIR used.
4975         * lily/main.cc (prepend_env_path): Bugfix: Check directory
4976         existence before appending original path.
4978 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4980         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
4981         file" massage.
4983         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
4984         texinfo.tex is always used.
4985         
4986 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4988         * flower/include/axis.hh: rename from axes.hh
4990         * lily/include/text-interface.hh (Module): rename from text-item.hh
4992         * VERSION (PATCH_LEVEL): release 2.5.29
4994         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
4996         * scm/framework-ps.scm (font-file-as-ps-string): new function.
4997         (handle-macfont): new function. Call fondu for Native mac fonts.
4999         * scm/define-markup-commands.scm (fill-line): handle text-widths =
5000         '() case.
5002 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5004         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
5005         multi-page.  Fix .eps regular expression.
5007 2005-06-07  Graham Percival  <gperlist@shaw.ca>
5009         * Documentation/user/putting.itely: add info on modifying templates.
5011         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
5012         misc small changes.
5014 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5016         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
5018         * scripts/lilypond-ps2png.scm
5020         * VERSION (PACKAGE_NAME): release 2.5.28
5022 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5024         * lily/main.cc (prepend_env_path): Do not append /, that does not
5025         work.  Localedir lives in datadir, not in prefix.
5027         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
5028         hack for windows.
5030         * flower/include/file-cookie.hh: Compile fix.
5032 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5034         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
5036         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
5037         system primitives.
5038         (gulp-port): using read-string!/partial. We don't want to read an
5039         entire PS file  (GUILE 1.6 limits strings to 16M) 
5041         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
5042         properties. Add font-interface. 
5044         * scm/define-grob-properties.scm (all-user-grob-properties):
5045         remove old bracket properties.
5047         * scm/x11-color.scm: reformat. 
5049         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
5050         LedgerLineSpanner if new StaffSymbol is found. 
5052         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
5053         staff-symbol for finishing staff. 
5055         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
5057         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
5058         change black to currentColor everywhere. This fixes color support
5059         in SVG.
5061 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
5063         * input/regression/fret-diagrams.ly: new file to test fret diagram
5064         capability
5066         * scm/output-tex.scm: remove white-dot and white-text
5068         * scm/output-ps.scm: remove white-dot and white-text
5070         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
5071         using ly:stencil-in-color instead
5072         (draw-dots) : remove call to white-dot
5074 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5076         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
5077         support.
5079         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
5081         * flower/include/file-cookie.hh: new file. lily_cookie extension 
5083         * flower/file-cookie.cc: new file. lily_cookie extension.
5084         
5085 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5087         * scm/editor.scm (editor-command-template-alist): Add syn
5088         editor (Jaap [de Vos]).
5090 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5092         * scripts/lilypond-ps2png.scm:
5093         * scm/ps-to-png.scm: New file.
5095         * scm/backend-library.scm (postscript->png): Use it.
5097         * scripts/lilypond-ps-to-png.py: Remove file.
5099         * python/lilylib.py (get_bbox, make_ps_images): Remove.
5101 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5103         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
5105         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
5106         start on grace moment. Fixes autobeam-grace.ly.
5108         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
5109         process anything unless we're at the end of a pending beam. Fixes
5110         syncopated 8ths beamed across a beat.
5112 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5114         * scm/editor.scm (editor-command-template-alist): Start emacs if
5115         emacslient fails.
5117         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
5119         * flower/file-path.cc (is_file, is_dir): Export.
5121         * lily/main.cc (prepend_env_path, set_env_file): Use them.
5123 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5125         * lily/easy-notation.cc: Added include cctype to correct
5126         compilation error.
5128 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5130         * scm/backend-library.scm (postscript->pdf): set resolution to
5131         1200, so bitmap fonts aren't that ugly. 
5133         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
5135         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
5136         parent if we have a notehead. Fixes incorrect offsets when
5137         Paper_column is very wide in the X direction.
5139         * input/regression/font-family-override.ly (Module): new file.
5141         * scm/font.scm (make-pango-font-tree): new function.
5143         * lily/beam.cc (before_line_breaking): remove warning about less
5144         than 2 visible stems. We still get a warning when there is only
5145         one stem.
5147 2005-06-01  Werner Lemberg  <wl@gnu.org>
5149         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
5150         correctly.
5152 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5154         * lily/slur-scoring.cc (generate_avoid_offsets): new
5155         function. Generate avoid offsets once per slur.
5157         * lily/slur.cc (add_extra_encompass): add dependency to
5158         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
5160         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
5161         too. Fixes inf error with added bass notes.
5163         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
5164         argument anymore.
5166         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
5168         * input/tutorial/lbook-latex-test.tex: add line length test.
5170         * scripts/lilypond-book.py (set_default_options): new
5171         function. Call this before dissecting snippets, so linewidth
5172         settings reach the snippets.
5174 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5176         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
5178 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5180         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
5182 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5184         * stepmake/aclocal.m4: More autopackage friendliness.
5186 2005-05-31  Graham Percival  <gperlist@shaw.ca>
5188         * Documentation/index.html.in: remove link to LSR.
5190         * Documentation/user/global.itely: remove duplicate
5191         "dedication" \header{} section.
5193 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5195         * VERSION (PACKAGE_NAME): release 2.5.27.
5197         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
5198         too. Plugs memory leak.
5200         * make/lilypond.fedora.spec.in (Group): remove
5201         lilypond-pdfpc-helper.
5203         * scripts/GNUmakefile (SEXECUTABLES): remove
5204         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
5206         * scm/font.scm (make-century-schoolbook-tree): add Mono as
5207         'typewriter family.
5209         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
5210         memory leak.
5212         * lily/parser.yy (score_body): don't clone Score, that's done in
5213         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
5215         * lily/score-engraver.cc (derived_mark): new function.
5216         (initialize): unprotect Paper_score. This fixes a memory leak.
5218         * lily/score-performer.cc (derived_mark): new function.
5220         * lily/score-translator.cc (get_output): use SCM for get_output() call.
5222         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
5223         spurious warning.
5225         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
5226         serif.
5228 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5230         * configure.in (reloc_b): Add --enable-relocation.
5232 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5234         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
5236         * input/regression/alignment-order.ly: add Staff example.
5238 2005-05-31  John Mandereau   <john.mandereau@free.fr>
5240         * po/fr.po: update.
5242 2005-05-31  Graham Percival  <gperlist@shaw.ca>
5244         * Documentation/index.html.in: add link to LSR.
5246 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5248         * scm/define-stencil-commands.scm (Module): new file. Register all
5249         allowed stencil expression heads in a central place.
5251         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
5252         ly:make-stencil
5254         * lily/stencil-expression.cc (all_stencil_heads): registering
5255         stencil expressions.
5257         * lily/stencil-interpret.cc: new file. Stencil expression
5258         interpreting.
5260         * input/xiao-haizi-guai-guai.ly: move file back.
5262 2005-05-30  Graham Percival  <gperlist@shaw.ca>
5264         * Documentation/user/advanced.itely, converters.itely,
5265         instrument-notation.itely, lilypond-book.itely: misc small
5266         changes.
5268 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5270         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
5272         * make/lilypond.fedora.spec.in: Fix source url.
5274         * cygwin: Update from mingw patches.
5276         * scm/editor.scm (editor-command-template-alist): Use jedit
5277         -reuseview (Bertalan), add uedit (Patrick Huberts).
5279         * input/xiao-hai-zi-guai-guai.ly: Rename from
5280         xiao-haizi-guai-guai.ly.
5282         * input/*: Reindent, do not use TAB.
5284         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
5285         white background.
5287 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5289         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
5290         numerical overflow error.
5292 2005-05-29 Laura Conrad <lconrad@laymusic.org>
5293         
5294         * abc2ly.py: fix to syntax error in multi-part output.
5296 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5298         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
5299         with disappearing span bars when alignAboveContext is active
5301         * lily/property-iterator.cc (check_grob): use is-grob?
5302         object-property. Fixes crash-key-sig-font-size.ly. 
5304 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5306         * lily/bar-line.cc (print): don't round barlines; this produces
5307         odd aliasing effects in Acroread.
5309         * lily/timing-engraver.cc (process_music): robustness fix.
5311         * lily/context-def.cc (filter_engravers): bugfix.
5313 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5315         * lily/lilypond.rc.in: Add ly-icon.
5317         * lily/GNUmakefile: 
5318         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
5319         rules.
5321 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5323         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
5325         * ps/music-drawing-routines.ps: 
5327         * scm/output-ps.scm: remove draw ez_ball.
5329         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5330         EasyNotation context definition.
5332         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
5333         Text_interface and color for making easy note heads.
5335         * lily/stencil.cc (with_color): new function.
5337         * ps/music-drawing-routines.ps: remove draw_zigzag_line
5339         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
5340         output routine. Zigzag now works in SVG too.
5342         * scm/output-tex.scm (filledbox): idem.
5344         * scm/output-svg.scm (filledbox): idem.
5346         * scm/output-ps.scm (lily-def): remove horizontal-line. 
5348         * lily/lookup.cc (horizontal_line): use draw-line. 
5350         * lily/system-start-delimiter.cc: remove old staff bracket code.
5352         * mf/feta-haak.mf: further tweaks.
5354         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
5356         * mf/feta-generic.mf: include feta-haak.
5358         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
5360         * scm/framework-ps.scm (write-preamble): only load fonts if their
5361         filename is a string. 
5363 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5365         * scm/output-svg.scm (circle): support circle.
5366         (bracket): stub for bracket.
5368         * scripts/lilypond-book.py (main): make sure --psfonts warning is
5369         correct.
5371 2005-05-26  Graham Percival  <gperlist@shaw.ca>
5373         * Documentation/user/lilypond.tely, advanced-notation.itely,
5374         basic-notation.itely, instrument-notation.itely, global.itely,
5375         introduction.itely, tutorial.itely: rearranging, editing,
5376         clean-up.
5378         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
5379         for compiling on FreeBSD.
5381 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5383         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
5384         otf files.
5386         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
5387         bugfixes.
5389         * VERSION: 2.5.26 released.
5391         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
5393 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
5395         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
5396         if printpagenumber is false.
5398 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5400         * lily/font-config.cc (init_fontconfig): comment out FontConfig
5401         cache warning.
5403         * lily/tie.cc (print): support dotted ties.
5404         
5405 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5407         * scm/define-grobs.scm (all-grob-descriptions): switch off
5408         debugging
5409         (all-grob-descriptions): Arpeggio has Y-extent.
5411         * scm/define-music-properties.scm (all-music-properties): document
5412         length-callback and start-callback as "read-only".
5414         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
5415         length-callback after creation. 
5417         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
5418         compressmusic -> compressMusic.
5420         * ly/music-functions-init.ly (oldaddlyrics): idem.
5422         * lily/parser.yy: NewLyricCombineMusic ->
5423         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
5425 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
5427         * ly/Welcome_to_LilyPond.ly: typo.
5429 2005-05-24  Graham Percival  <gperlist@shaw.ca>
5431         * Documentation/user/lilypond.tely: move changing-defaults to be
5432         before global issues.
5434         * Documentation/user/basic-notation.itely: move Transpose section
5435         here from advanced/Other.
5437         * Documentation/user/changing-defaults.itely,
5438         advanced-notation.itely: move Fonts to advanced, edit.
5440 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5442         * lily/parser.yy (bare_int): remove rule.  From now on, we require
5443         # before negative integers.
5445 2005-05-23  Graham Percival  <gperlist@shaw.ca>
5447         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
5449         * Documentation/user/lilypond.tely: change Unified index to
5450         LilyPond index.
5452         * Documentation/user/advanced-notation.itely,
5453         instrument-notation.itely: editing.
5455 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5457         * scm/lily.scm (lilypond-all): Bugfix: return failed.
5459         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
5461 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5463         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
5464         ly:port-move.  Needs to be stderr-specific on mingw.
5465         Run fixcc.
5467 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5469         * lily/general-scheme.cc (ly:port-move): Remove.
5471         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
5472         windows.
5474         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
5475         variables.  This eliminates the need for a gs.bat wrapper, which
5476         opens a console.
5478         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
5479         * scm/lily.scm (running-from-gui?): 
5480         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
5481         artifact of not compiling with -mwindows.
5483         * scm/editor.scm: Define PLATFORM.
5485 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5487         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
5488         can start to cut & paste lilypond-book fragments.  
5490         * scm/define-music-types.scm (music-descriptions): remove
5491         UntransposableMusic
5493 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5495         * scm/output-ps.scm (glyph-string): remove / before CIDs.
5497 2005-05-20  Graham Percival  <gperlist@shaw.ca>
5499         * Documentation/user/instrument-notation.itely: remove *Engraver.
5501         * Documentation/user/advanced-notation.itely: edit, rearrange.
5503 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5505         * scm/output-ps.scm (glyph-string): take cid? argument. Use
5506         findresource iso. findfont for CID CFF fonts.
5508         * VERSION (PACKAGE_NAME): release 2.5.25
5510         * ly/Welcome_to_LilyPond.ly: add  \version
5512 2005-05-20  Graham Percival  <gperlist@shaw.ca>
5514         * Documentation/user/programming-interface.itely: move
5515         \displayMusic into its own section.
5517         * Documentation/user/basic-notation.itely: finish editing.
5519 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5521         * flower/file-path.cc (find): don't throw away file_name.dir, but
5522         append to it. Fixes \include with directories.
5524         * flower/include/file-path.hh (class File_path): don't derive from
5525         Array<String>.
5527         * flower/include/file-name.hh (class File_name): remove to_str0()
5529         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
5530         Hara_kiri_engraver in separate file.
5532         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
5533         translation went wrong. Fixes vertically translated slurs.
5535 2005-05-19  Graham Percival  <gperlist@shaw.ca>
5537         * Documentation/user/basic-notaton.itely: editing.
5539 2005-05-18  Graham Percival  <gperlist@shaw.ca>
5541         * Documentation/user/macros.itexi, basic-notation.itely:
5542         add @commonprop (commonly used properties) macro.
5544 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5546         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
5548         * scripts/lilypond-book.py (invokes_lilypond): new function
5549         (main): only run fontextract if invokes_lilypond() is true.
5551         * lily/function-documentation.cc (ly_add_function_documentation):
5552         duh, use !=
5554         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
5556         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
5558         * scm/lily.scm (running-from-gui?): lowercase Darwin.
5560         * lily/function-documentation.cc (ly_add_function_documentation):
5561         use scm_hash_table_p() for checking.
5563 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5565         * Documentation/user/advanced-notation.itely (Text scripts):
5566         Change nonexisting @internalsref{Text markup} to @ref{Text
5567         markup}.  Change @internalsref{Text script} to
5568         @internalsref{TextScript}.
5570         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
5572 2005-05-17  Graham Percival  <gperlist@shaw.ca>
5574         * Documentation/user/tutorial.itely, basic-notation.itely,
5575         changing-defaults.itely: remove duplicate cindex entries
5576         that appear on the same page.
5578         * scm/define-grobs.scm: change default padding for TextSpanner.
5580         * Documentation/topdocs/AUTHORS.texi: update email address.
5582         * Documentation/user/global.itely: add info about \include.
5584 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5586         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
5587         when running-from-gui.
5589         * scm/editor.scm (get-editor): Add platform defaults.
5591         * scm/backend-library.scm (postscript->pdf): Typo.
5593 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5595         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
5597         * lily/font-config.cc (init_fontconfig): add warning about cache.
5599 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5601         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
5603 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5605         * lily/horizontal-bracket.cc (print): Take care of the direction
5606         property so brackets above the stave point downwards. 
5608         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
5609         for HorizontalBracket so it doesn't end up within the stave.
5611 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5613         * lily/GNUmakefile (default): Typo.
5615         * scm/lily.scm (PLATFORM): Export.
5617         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
5618         load-font-via-GS, ttftool or fopencookie is broken on windows.
5619         
5620         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
5621         -dSAFER, that is broken on windows.
5623 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5625         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
5626         for FlexLexer.h
5628         * scripts/lilypond-invoke-editor.scm: remove stray -
5630 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5632         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
5633         Fixes deprecation warning.
5635         * flower/include/string.icc (to_string): Only inline if
5636         -DSTRING_UTILS_INLINED.
5638         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
5639         name.  Remove windows comment.
5641         * scm/editor.scm (slashify): New function.
5642         (get-editor-command): Use it.
5643         (get-command-template): Do not alter editor command if
5644         environment value includes `%(file)s' magic.
5646         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
5647         (dissect-uri): Use it.
5648         (unquote-uri): Bugfix.
5650 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5652         * scm/framework-ps.scm (write-preamble): add TTF rule.
5654         * Documentation/topdocs/README.texi (Top): remove note about
5655         xdelta.
5657         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
5658         requirement.
5660         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
5661         function. Figure out where FlexLexer.h lives
5663         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
5664         
5665 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5667         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
5668         with Windows root in file name.
5670         * scm/backend-library.scm (ly:system): Only redirect output (using
5671         system and shell, ugh) if /dev/null is writable.
5673         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
5674         windows icon.
5676         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
5677         on Mingw.
5679         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
5680         click.
5682         * flower/file-path.cc (is_dir, is_file): New function.  Actually
5683         use result of stat when available.
5685         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
5686         absolute file name and root.
5688         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
5690         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
5692         * flower/file-name.cc (slashify): Bugfix, do substitute if no
5693         slashes in file name.
5695 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5697         * Documentation/user/preface.itely (Preface): Run
5698         texinfo-all-menus-update.
5700         * scm/editor.scm (get-editor-command): Bugfix: allow full
5701         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
5703         * Documentation/pictures/lilypond-48.xpm: New file.
5705         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
5707         * ly/Welcome_to_LilyPond.ly: New file.
5709         * lily/main.cc (main): Only identify if we have a terminal.
5711         * scm/backend-library.scm (postscript->png)
5712         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
5713         non-/bin/sh).
5715 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
5717         * Documentation/topdocs/AUTHORS.texi: polish, update.
5719 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5721         * Documentation/user/preface.itely (Notes for version 2.6): new
5722         notes for 2.6
5724         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
5725         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
5726         is not fully contained" warnings.
5728         * lily/slur-scoring.cc (get_bound_info): remove warning.
5730         * lily/staff-symbol-engraver.cc (process_music): start initial
5731         spanner in process_music(). This fixes overrides of StaffSymbol
5732         properties.
5734         * scm/framework-pdf.scm (Module): remove.
5736         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
5738         * lily/ambitus-engraver.cc: formatting cleanups.
5740         * mf/feta-solfa.mf (Module): remove.
5742         * ChangeLog: more details about contributions.
5744 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5746         * lily/align-interface.cc (align_elements_to_extents): warn if
5747         called too early. Fixes: disappearing-staff-lines.ly
5749         * VERSION (PACKAGE_NAME): release 2.5.24
5751 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5753         * stepmake/aclocal.m4: Typo.
5755         * flower/string.cc (substitute): Take two strings or two
5756         characters.  Update callers.
5758 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5760         * flower/file-name.cc (File_name): Slashify.
5762         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
5764         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
5766         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
5768         * configure.in (gui_b): Use it.
5770         * lily/lilypond.rc.in: New file.
5772         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
5774 2005-05-12  Graham Percival  <gperlist@shaw.ca>
5776         * Documentation/user/advanced-notation.itely: edit of Text
5777         section; clarify text scripts vs. text markup.
5779 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5781         * lily/multi-measure-rest-engraver.cc
5782         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
5783         separation items on start. Fixes mm rests in start of score.
5785         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
5786         don't access StaffSymbol if not there.
5787         Fixes: crash-staff-symbol-engraver.ly.
5789         * lily/instrument-name-engraver.cc (class
5790         Instrument_name_engraver): data member first_. Create
5791         InstrumentName on start. 
5793 2005-05-12  Graham Percival  <gperlist@shaw.ca>
5795         * Documentation/user/instrument-notation.itely: add guitar
5796         position.
5798         * Documentation/user/introduction.itely,
5799         Documentation/user/lilypond.tely,
5800         Documentation/user/tutorial.itely: begin pruning
5801         unused (duplicated) cindex entries and misc cleanup.
5803 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5805         * input/test/volta-chord-names.ly: Bring the explanation up to
5806         date.
5808 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
5810         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
5811         Specify `@documentencoding utf-8' for html, ignore warnings.
5813 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
5815         * THANKS: Added bughunters.
5817 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
5819         * lily/main.cc: update help string for `lilypond -H'.
5821         * po/fi.po: update.
5822         
5823 2005-05-10  Graham Percival  <gperlist@shaw.ca>
5825         * Documentation/user/advanced-notation.itely: minor fixes.
5827 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5829         * scm/editor.scm: New module.
5831         * scm/lily.scm (gui-main): Use it.
5833         * scm/framework-gnome.scm (spawn-editor): Use it.
5835         * scripts/lilypond-invoke-editor.scm: Use it in new script.
5837 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5839         * scm/framework-ps.scm (load-font-via-GS):  new function.
5841         * lily/pango-font.cc (pango_item_string_stencil): add support for
5842         CID keyed font.
5844         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
5846 2005-05-10  Graham Percival  <gperlist@shaw.ca>
5848         * Documentation/user/basic-notation.itely: add @ref.
5850         * Documentation/user/advanced-notation.itely: add example
5851         of 5/8 beaming.
5853 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5855         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
5857         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
5858         going through ps2pdf wrappers.
5860 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
5862         * Documentation/user/instrument-notation.itely: petrucci note
5863         heads: updated docu
5865         * input/regression/note-head-style.ly: updated regression test;
5866         indentation fixes
5868         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
5869         heads as default
5871         * mf/parmesan-heads.mf: minor editing; use musicological names
5872         (rather than optical description) as note head names
5874         * scm/output-lib.scm: complete petrucci heads
5876 2005-05-09  Pal Benko  <benkop@freestart.hu>
5878         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
5879         heads, but bigger)
5881 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5883         * lily/main.cc (main_with_guile): Remove no files check.
5885         * lily/main.cc (ly:usage): Export to Scheme.
5887         * scm/lily.scm (no-files-handler): New function.
5889         * scm/lily.scm (lilypond-main): Use it.
5891         * configure.in (gui_b): Add mbrtowc checking.
5892         Resurrect [utf8/]wchar.h checking.
5894 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5896         * Documentation/user/advanced-notation.itely (Metronome marks):
5897         Add link to the program reference for MetronomeMark
5899         * Documentation/user/lilypond-book.itely (An example of a
5900         musicological document): Correct the example using psfonts 
5902 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
5904         * po/fi.po: update after a lesson how to update entries against
5905         source.
5906         
5907         * po/TODO: document the lesson.
5909 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5911         * configure.in (gui_b): remove wcrtomb checking.
5913         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
5914         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
5916 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5918         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
5919         keep Scheme expressions and strings unmodified when doing the
5920         conversion to postfix notation for slurs and beams. Should
5921         hopefully solve most related conversion problems. 
5923         * Documentation/user/lilypond-book.itely : Clarify and correct how
5924         to call dvips with -h psfonts.
5926 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5928         * Documentation/user/instrument-notation.itely (Entering lyrics):
5929         Typo.  Fixes build.
5931 2005-05-09  Graham Percival  <gperlist@shaw.ca>
5933         * Documentation/user/lilypond-book.itely: document PSFONTS file.
5935         * Documentation/user/lilypond.tely, lilypond-book.itely,
5936         tutorial.itely: change references to 2.5.x to 2.6.x.
5938         * Documentation/user/instrument-notation.itely: clarified \addlyrics
5939         vs \lyricmode.
5941         * Documentation/user/invoking.itely: remove old info about
5942         lilypond-profile.
5944         * Documentation/topdocs/INSTALL.texi: remove old info about
5945         lilypond-profile, add warning about needing international fonts
5946         to build docs.
5948 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5950         * lily/include/grob-info.hh (class Grob_info): make data member
5951         private. Changes throughout.
5953         * input/regression/alignment-order.ly: new file. 
5955         * lily/vertical-align-engraver.cc (acknowledge_grob): read
5956         alignAboveContext and alignBelowContext
5958 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5960         * lily/pfb.cc (LY_DEFINE): add cast.
5962         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
5963         matches .otf
5964         (write-preamble): warn about unknown fonts.
5966         * lily/pfb.cc (Module): new function ly:otf->cff
5968         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
5969         (get_otf_table): new function.
5971 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5973         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
5974         iso. ps2png.
5976 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
5978         * po/fi.po: apply second round of update.
5980 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5982         * scm/x11-color.scm (make-x11-color-handler): don't use
5983         #\sp. Apparently doesn't work on all platforms. 
5985 2005-05-06  Graham Percival  <gperlist@shaw.ca>
5987         * Documentation/user/advanced-notation.itely, putting.itely,
5988         tutorial.itely, global.itely, introduction.itely: really minor fixes.
5990 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5992         * VERSION (PACKAGE_NAME): release 2.5.23
5994 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5996         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
5997         convert to utf-8.
5999         * THANKS: Add translators for this release, convert to utf-8.
6001         * mf/GNUmakefile (MFTRACE_FLAGS):
6002         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
6003         outdir as option (WAS: hardcoded).
6005 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6007         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
6008         finished_span_
6010         * THANKS: add Hans Forbrich.
6012         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6014         * Documentation/user/basic-notation.itely (Staff symbol): document
6015         start/stop staff. Reference to ossia.ly
6017         * input/test/ossia.ly: new example using stop and startStaff.
6019         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
6020         in other words, don't create "|" barline at start of the score.
6021         (start_translation_timestep): don't set whichBar for start of score.
6023         * input/regression/staff-halfway.ly: use new functionality.
6025         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
6026         start and stop staff based on events.
6028         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
6030         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
6032 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6034         * Documentation/user/programming-interface.itely (How markups work
6035         internally ): remove \encoding reference.
6037 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6039         * scripts/convert-ly.py: Attempt to do a smarter update of 
6040         text markups from versions < 1.9.0 with arbitrary nesting.
6042 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6044         * po/fi.po: convert to utf-8, and update.
6046 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6048         * make/lilypond.suse.spec.in: update from suse 2.4 package.
6050         * lily/*.cc: more <? >? to min/max changes
6052         * lily/include/interpretation-context-handle.hh: rename
6053         Interpretation_context_handle to Context_handle.
6055 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6057         * input/regression/GNUmakefile (local_delete): use `find` together 
6058         with `xargs` to avoid too long argument-lists in cmd line.
6060 2005-05-04  Graham Percival  <gperlist@shaw.ca>
6062         * Documentation/user/introduction.itely: updates "About this manual".
6064         * Documentation/user/advanced-notation.itely,
6065         invoking.itely: minor fixes.
6067 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6069         * COPYING: add font exception. Update FSF address. 
6071         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
6072         should be taken without child context.
6074         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
6076         * scm/define-markup-commands.scm (triangle): new command, as
6077         robust replacement for unicode Delta/Triangle.
6079 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6081         * ps/music-drawing-routines.ps: add fillp argument.
6083         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
6085         * lily/font-config.cc (init_fontconfig): don't add cff/
6087         * VERSION (PACKAGE_NAME): release 2.5.22
6089         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
6091         * lily/grace-engraver.cc (consider_change_grace_settings): use
6092         is_alias(). Fixes problem with CueVoice grace notes. 
6094         * lily/simultaneous-music-iterator.cc (construct_children): call
6095         Music_iterator::quit() for iterators that start out invalid. This
6096         fixes indefinitely continuing contexts.
6098         * buildscripts/substitute-encoding.py: new file
6100         * Documentation/user/basic-notation.itely (Basic polyphony): fix
6101         missing @end 
6103         * scripts/lilypond-book.py (write_if_updated): print file name.
6105         * Documentation/user/basic-notation.itely (Explicitly
6106         instantiating voices): idem.
6108         * Documentation/user/advanced-notation.itely (Text spanners):
6109         remove stray { } 
6111         * lily/context.cc (default_child_context_name): the default child
6112         is now first in accepts_list_.
6114         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6115         \defaultchild to all relevant contexts.  This fixes:
6116         drums-pitch.ly.
6118         (Probably also fixes similar problems with ancient
6119         transcriptions getting CueVoices instead of the desired voices.)
6121         * lily/context-def.cc (get_default_child): new function.
6122         (get_accepted): place default child in front of list.
6124         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
6126         * lily/include/context-def.hh (struct Context_def): add
6127         default_accept_
6129 2005-05-03  Graham Percival  <gperlist@shaw.ca>
6131         * scm/define-grobs.scm: remove "remove-first" line, since
6132         the absent property is set to #f anyway.
6134         * Documentation/user/basic-notation.itely,
6135         advanced-notation.itely, instrument-notation.itely: minor
6136         fixes.
6138         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
6140         * Documentation/user/advanced-notation.itely,
6141         changing-defaults.itely: consolidate Text stuff in
6142         advanced notation.
6144         * Documentation/user/global.itely: better docs for \header.
6146         * Documentation/user/putting.itely: new chapter; placeholder
6147         for future expansion.
6149         * Documentation/user/examples.itely: moved "suggestions for
6150         writing LP files" section into putting.itely.
6152         * Documentation/user/lilypond.itely: added new chapter,
6153         fixed the short table of contents.
6155 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6157         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
6158         infinity for unfeasible beams.
6160         * make/lilypond.fedora.spec.in (Group): idem.
6162         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
6164         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
6166         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
6167         fonts directly.
6169         * buildscripts/gen-emmentaler-scripts.py (i): idem.
6171         * mf/GNUmakefile: remove all CFF rules.
6173         * scm/framework-ps.scm (ps-embed-cff): reinstate.
6175         * lily/open-type-font-scheme.cc (LY_DEFINE):
6176         new function ly:otf-font-table-data.
6177         (LY_DEFINE): new function otf-font?
6179 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6181         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
6182         ($(outdir)/Fontmap.lily): idem.
6184         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
6185         for PFAEmmentaler-XXX.pfa. 
6187         * Documentation/user/music-glossary.tely (accidental): NL
6188         translation of accidental.
6190 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6192         * flower/include/international.hh: Bugfix: include "string.hh".
6194         * lily/include/mingw-compatibility.hh: New file.
6196         * flower/include/libc-extension.hh (memrev): Rename from strrev.
6198         * configure.in: Search for mingw wcrtomb library.
6200 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6202         * scripts/convert-ly.py: Bug fix
6204         * Documentation/user/changing-defaults.itely (Common tweaks):
6205         Added example where the context has to be specified explicitly
6206         (MetronomeMark). 
6208 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6210         * scripts/lilypond-book.py (ly_options): set timing to #f for
6211         notime option.
6213         * scripts/convert-ly.py (conv): typo.
6215         * flower/*.cc: remove <? and >?
6216         
6217         * lily/*.cc: remove <? and >?
6219         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
6220         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
6221         editor.
6223 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6225         * lily/part-combine-engraver.cc: add space to variable list.
6227 2005-04-30  Graham Percival  <gperlist@shaw.ca>
6229         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
6230         remove-first to false (matches docs)
6232         * Documentation/user/advanced-notation.itely: corrected docs
6233         concerning remove-first.
6235 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6237         * lily/part-combine-engraver.cc: make sure that the relevant
6238         properties are included in the documentation.
6240 2005-04-28  Graham Percival  <gperlist@shaw.ca>
6242         * Documentation/user/lilypond-book.itely: Bernard's docs
6243         for \betweenLilyPondSystem.
6245 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6247         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
6248         remarks.
6250 2005-04-28  Pal Benko  <benkop@freestart.hu>
6252         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
6253         only on vertical lines of flexa shape, and use a constant
6254         thickness value for horizontal lines (patch slightly modified by
6255         Jürgen Reuter)
6257         * lily/include/mensural-ligature.hh: make 2 comments clearer
6259 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
6261         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
6262         to need_extra_horizontal_space; bugfix: use class scope to avoid
6263         global namespace pollution
6265         * Documentation/user/instrument-notation.itely (ligatures): added
6266         comment on possible future syntax change and how to work around
6268         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
6269         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
6270         intervals (fixes agnus dei example)
6272         * Documentation/user/instrument-notation.itely (white mensural
6273         ligatures): selected a more illustrative example
6275 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
6277         * Documentation/index.html.in: specify utf-8 charset in meta content.
6279 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6281         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
6282         empty 2nd page for single page.
6284         * scm/lily.scm: remove p&c definitions.
6286         * po/zh_TW.po (Module): new translation.
6288         * lily/lily-guile.cc (ly_chain_assoc): remove.
6290         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
6291         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
6293 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6295         * lily/beaming-info.cc: remove infinity_i
6297         * scripts/abc2ly.py (out_filename): fix thinko with \version.
6299 2005-04-26  Graham Percival  <gperlist@shaw.ca>
6301         * Documentation/user/basic-notation.itely,
6302         instrument-notation.itely, advanced-notation.itely,
6303         changing-defaults.itely: minor fixes.  Added docs
6304         for colors to advanced-notation.itely.
6306         * Documentation/user/advanced-notation.itely: fixed compile
6307         problem and added Bernard's x11-color doc patch.
6309 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6311         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
6312         alright this time round.
6314 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6316         * Documentation/topdocs/INSTALL.texi (Top): idem.
6318         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
6320         * VERSION (MAJOR_VERSION): release 2.5.21
6322         * scm/output-ps.scm (grob-cause): bugfix.
6324 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6326         * cygwin/*: Update.
6328         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
6329         stuff.
6331         * scm/output-ps.scm (grob-cause): Bugfix.
6333         * scm/lily.scm (ly:load): Remove x11-color.
6335         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
6336         quote executable, fixes getting version from program --with
6337         --options.
6338         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
6339         $ac_exeect.
6341         * Documentation/user/GNUmakefile: Only build music-glossary with
6342         rendered lilypond snippets during web.
6344 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6346         * po/de.po: update.
6348         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
6350 2005-04-22  Laura Conrad <lconrad@laymusic.org>
6352         * scripts/abc2ly:
6353         second title line append with punctuation dash character;
6354         encode abc2ly python strings in utf-8
6355        
6356 2005-04-21  Laura Conrad <lconrad@laymusic.org>
6358         * scripts/abc2ly fix chords (again)
6360 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
6362         * scm/x11-color.scm: new file
6363         All x11 color names can be accessed with:
6364         #(x11-color 'ColorName),
6365         #(x11-color "ColorName") or:
6366         #(x11-color "color name")
6367         If the x11 color name is not recognised then it defaults
6368         to black
6370         * scm/lily.scm: amended to call scm/x11-color.scm
6372 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6374         * Documentation/user/invoking.itely (Reporting bugs): comment out
6375         reference to online PNG bug repository.
6377 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6379         * lily/translator-scheme.cc (ly:translator-property): Remove.
6380         Update callers.
6382         * lily/context-scheme.cc (ly:context-now): Move from translator.
6383         Update callers.
6385 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6387         * input/regression/grid-lines.ly (skips): refine example.
6389         * scm/define-context-properties.scm
6390         (all-user-translation-properties): doc autoBeamCheck
6392         * input/regression/grid-lines.ly (Module): new file.
6394         * lily/grid-point-engraver.cc (Module): new file.
6396         * lily/grid-line.cc (Module): new file.
6398         * lily/grid-line-span-engraver.cc (Module): new file.
6400         * lily/grid-line-interface.cc (Module): new file.
6402 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6404         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
6405         missing parameter, actualy cdr through list.  Actually return a
6406         list with ENTRY removed (was '()).
6408         * scripts/convert-ly.py: Update.  Print warning if file cannot be
6409         opened.
6410         (do_conversion): Fix printing of continuation comma.
6412         * Documentation/user/advanced-notation.itely (Beam formatting):
6413         Remove refbugs about compound time and mixed duration.
6415         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
6416         modulo moments explicitely.
6418         * lily/moment.cc (operator %): New function.
6420         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
6422         * lily/translator-scheme.cc (ly:translator-now,
6423         ly:translator-property): New function.
6425         * scm/auto-beam.scm (default-auto-beam-check): New function.
6427         * lily/auto-beam-engraver.cc (test_moment): Use it.
6429         * flower/rational.cc (operator %): Bugfix.
6431 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
6433         * scripts/abc2ly: Bugfix
6435 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6437         * python/fontextract.py (write_extracted_fonts): bugfix, too many
6438         %'s on EndFont comment.
6440         * lily/ledger-line-spanner.cc: some more words of explanation.
6442 2005-04-20  John Williams <williams@tni.com>  
6443         
6444         * scripts/lilypond-book.py: htmlquote bugfix.
6445         Allow snippets to be given distinct filenames.
6446         Allow the default alt text to be overridden.
6448 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
6450         * ly/performer-init.ly: Bugfix
6452         * THANKS: Added bughunters.
6454 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6456         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
6458         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
6459         position (was: use modulo measure length).
6461         * configure.in (no gui_b): Remove optional gtk+ requirement.
6463 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6465         * Documentation/user/basic-notation.itely (Pitches): add
6466         LedgerLineSpanner.
6468         * lily/dynamic-engraver.cc (process_music): set right bound to
6469         script if present. Else, do not set.
6470         (acknowledge_grob): only set right bound of finished spanner to
6471         note column if no other bound is set.
6473         * python/lilylib.py (make_ps_images): switch back to png16m.
6474         
6475 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6477         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
6478         writing up to date file.  Add dvips usage suggestion.
6480         * scripts/convert-ly.py: Fix error message.
6481         Print usage if no files on command line.
6482         (usage): Add example usage.
6484         * input/test/compound-time.ly: New file.
6486         * input/test/circle.ly: New file.
6488         * Documentation/topdocs/NEWS.tely: Use them.
6490         * input/test/boxed-stencil.ly: Remove \score.
6492         * buildscripts/mf-to-table.py (base): Add .log dependency.
6494         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
6495         pfa's.  Add .log dependency
6497         * scm/define-markup-commands.scm (lower): New command.
6499         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
6500         make it default.
6502 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6504         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
6505         also to finished cresc as right bound. This fixes:
6506         skip-string-decresc.ly
6508         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
6509         relative_coordinate if extent is empty.
6511         * lily/stem.cc (width_callback): determine correct extent if flag
6512         is not there. This fixes slur-no-flag.ly
6514         * lily/grace-engraver.cc (consider_change_grace_settings): new
6515         function.
6516         (initialize): also consider_change_grace_settings() on
6517         initialization. Fixes large grace notes at start of score.
6519         * lily/break-align-interface.cc (do_alignment): don't translate if
6520         total_extent is empty.
6522         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
6524 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6526         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
6527         with slash.
6529 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6531         * stepmake/aclocal.m4: Remove tfm_path.
6533 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6535         * scm/music-functions.scm (markup-expression->make-markup): fix
6536         bug with cons arguments of markup commands.
6537         (music->make-music): fix music expression property list building
6539 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6541         * aclocal.m4: Massage package names.
6543         * SCons updates.
6545 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6547         * VERSION (PACKAGE_NAME): release 2.5.20
6549         * lily/stem.cc (calc_stem_info): add minimum Y extent of
6550         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
6552         * lily/percent-repeat-engraver.cc (try_music): add measure before
6553         next_moment to future processing moment. Fixes:
6554         percent-repeat-mm-rest.ly
6555         (process_music): don't add moment for 2nd time.
6557         * input/regression/repeat-percent.ly: add mmrests as extra test.
6559         * lily/axis-group-engraver.cc (acknowledge_grob): read
6560         keepAliveInterfaces to decide what to kill.
6562         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
6563         percent-repeat-interface to keepAliveInterfaces. This fixes
6564         percent-repeat-harakiri.
6566 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6568         * SCons updates.
6570 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6572         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
6574         * aclocal.m4: remove --enable-tfm-path configure option
6576         * input/test/ancient-font.ly (lowerStaff): clef name errors.
6578         * scm/backend-library.scm (postscript->png): newline after
6579         finishing command.
6581         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
6582         (LY_DEFINE): ly:paper-score-paper-systems: new function 
6584         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
6586         * lily/score.cc (default_rendering): use Music_output too.
6588         * input/test/chord-names-languages.ly (Module): rename file.
6590         * lily/text-spanner.cc: add bound-padding.
6592         * lily/paper-book.cc (systems): accept Paper_score
6593         iso. Paper_system vector. 
6595         * input/regression/line-arrows.ly: new file.
6597         * lily/paper-score.cc (process): run get_paper_systems() only once.
6599         * lily/line-spanner.cc (line_stencil): add arrows.
6601 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
6603         * lily/line-interface.cc (make_arrow): new function. 
6604         (arrows): idem.
6606 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
6608         * input/test/chord-names-german.ly: update for italian/french
6609         chords.
6610         
6611         * Documentation/user/instrument-notation.itely (Printing chord
6612         names): update.
6614 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6616         * lily/include/paper-score.hh (class Paper_score): remove unused
6617         prototypes.
6619         * lily/book.cc (process): add -COUNT to midi output.
6621         * lily/score.cc (book_rendering): remove outname argument
6622         (book_rendering): return list of Music_outputs. 
6624         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
6626         * lily/book.cc (process): loop over Music_outputs returned from
6627         Score::book_rendering().
6629         * lily/*.cc (width_callback): remove spurious "unused" warnings
6630         for assert (axis==[XY]_AXIS); 
6632         * lily/include/music-output.hh (class Music_output): smobify class.
6634         * lily/include/paper-score.hh (class Paper_score): make members
6635         private.
6637         * lily/performance.cc (process): return #f iso. #<undefined>. This
6638         prevents #<undefined> leaking into GUILE-userspace.
6640 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6642         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
6644 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
6646         * scm/chord-name.scm : support for italian and french
6647         chords names.
6649         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
6650         a space defined by chordPrefixSpacer when the root name is
6651         direclty followed by a prefix.
6653         * ly/engraver-init.ly : chordPrefixSpacer       
6654         * scm/define-context-properties.scm : chordPrefixSpacer
6655         * ly/property-init.ly : italianChords, frenchChords 
6657 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6659         * mf/feta-din.mf: Remove.
6661         * mf/GNUmakefile (fontdir): Bugfix.
6663         * mf/SConstruct: Some updates.
6665         * SConstruct: Require pkg-config.
6666         (test_program): Bugfix for double digit version compares, use
6667         integer (not string-) compare.
6668         Optionally require gs 8.14.
6670         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
6672         * lily/*: s/ifdef HAVE_*/if have/.
6674         * SConstruct (test_lib): New function.  Update pkg-config and some
6675         other requirements.
6677         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
6678         freetype, pangof2t.
6680 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6682         * po/lilypond.pot, ...: Update using bison-CVS.
6684         * python/lilylib.py (make_ps_images): Fixo.
6686 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6688         * python/lilylib.py (make_ps_images): typo.
6690         * configure.in (gui_b): make bison optional.
6692         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
6694 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
6696         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
6697         with one parameter can be defined in a LaTeX file when processed
6698         by lilypond-book this will be evaluated between the systems of
6699         a multi-system score. The parameter is the number of systems processed.
6701 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6703         * python/lilylib.py (make_ps_images): Escape newline.
6705         * Documentation/user/music-glossary.tely: Run
6706         texinfo-all-menus-update.
6708 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6710         * scm/lily-library.scm (old-relative-not-used-message)
6711         (version-not-seen-message): Add input-file-name-location to message.
6713         * lily/parser.yy (lilypond): Add token aliases.
6715         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
6716         not confuse with alteration.
6717         (alteration): Add.
6719 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6721         * python/lilylib.py (make_ps_images): use -dEPSCrop
6723         * VERSION (PACKAGE_NAME): release 2.5.19 
6725         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
6726         only put xrefs in info documentation.
6728         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
6729         .pdf rule to tex-rules.make.
6731         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
6732         from -systems.* output.
6734         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
6735         directly, remove -$(PAGESIZE) target.
6737         * input/test/embedded-postscript.ly: update.
6739 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6741         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
6743         * Documentation/user/changing-defaults.itely (Font selection):
6744         document font-name.
6746         * input/regression/font-name.ly: show Pango fonts for
6747         font-name. Update example. 
6749         * lily/pango-select.cc (properties_to_pango_description): don't
6750         convert symbol font-size to number, but use to lookup.
6752         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
6754         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
6755         (NAME . FILE-NAME) tuples for font descriptions. 
6756         (write-preamble): display BeginFont DSC comments.
6758         * python/fontextract.py (write_extracted_fonts): new file. Extract
6759         font resources from a PS file.
6761         * scripts/lilypond-book.py (option_definitions): --psfonts option.
6762         (Compile_error.process_include): do_file returns chunks.
6764         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
6766         * make/lysdoc-targets.make: .texi is .PRECIOUS
6768         * scripts/lilypond-book.py (write_if_updated): new function.
6770 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6772         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
6774 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6776         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
6778         * input/regression/markup-syntax.ly: remove \score.
6780         * scm/define-markup-commands.scm (draw-circle): add fill argument
6782         * scm/stencil.scm (make-circle-stencil): add fill argument
6784         * ps/music-drawing-routines.ps: add fill argument.
6786         * ly/performer-init.ly: add CueVoice to MIDI too.
6788         * ps/music-drawing-routines.ps: new routine BeginEPSF /
6789         EndEPSF.
6791         * input/regression/markup-eps.ly: new file.
6793         * scm/framework-ps.scm (write-preamble): change order: vars should
6794         be inited before procedures.
6796         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
6797         for EPS files.
6799         * scm/define-markup-commands.scm (epsfile): add epsfile command.
6801 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6803         * configure.in (gui_b): add check for ghostscript 8.15
6805 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6807         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
6808         start of line. Fixes cresc-after-newline.ly
6810         * lily/source-file.cc (file_line_column_string): use get_column().
6812 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6814         * lily/source-file.cc (get_column): utf-8 support for column numbers.
6816 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6818         * lily/*: use message () iso progress_indication () for messages.
6819         Revise/uniformise user messages.
6821         * flower/warn.cc (progress_indication): New function.
6822         (message): Use it.  Fixes newline problems.
6824         * config.make.in (webdir): Sort out install dirs.
6826         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
6828         * python/lilylib.py (command_name): Bugfix.
6829         (make_ps_images):
6831 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
6833         * lily/main.cc: --help says what types of backends are availabe
6835 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6837         Fix ./VERSION dependency, and without need to reconfigure.
6839         * lily/main.cc (setup_paths): Update.
6841         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
6843         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
6845         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
6846         Add \line for some simplistic cases.
6848         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
6850 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6852         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
6853         to compile LY files (useful for adding eg. "-I" args)
6854         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
6855         2Gnome command for gnome backend.
6856         (LilyPond-command-formatgnome): call the 2Gnome command. key
6857         binding: C-c C-g
6859 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6861         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
6862         depend on all PNG images.
6864 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6866         * GNUmakefile.in: Bugfix: also link .map files.
6868 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6870         * scm/music-functions.scm (music->make-music): generate 
6871         a (make-music ...) sexpr from a music expression.
6872         (display-scheme-music): use guile pretty printer to display the
6873         make-music sexpr.
6875 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6877         * ly/engraver-init.ly: reindent.
6878         Add CueVoice.
6880         * scm/music-functions.scm (music-pretty-string): handle moments
6881         too.
6882         (music-pretty-string): only print non-empty lists.
6883         (cue-substitute): create CueVoice context, which has smaller type.
6885         * lily/moment-scheme.cc (LY_DEFINE): new methods
6886         ly:moment-grace-{numerator,denominator}
6888         * lily/context-handle.cc: remove quit() method. 
6890         * lily/font-config.cc (init_fontconfig): be verbose about font path.
6891         (init_fontconfig): success is 0, not !0
6893 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6895         * mf/feta-nummer-code.mf (code): add plus glyph.
6897         * lily/tie.cc (print): idem.
6899         * lily/slur.cc (print): don't use thickness property for
6900         slur shape-thickness.
6902         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
6903         while adding stencils.
6905         * scm/define-markup-commands.scm (with-color): with-color markup
6906         command.
6907         (whiteout): new markup command 
6908         (filled-box): new markup command
6910 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6912         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
6913         test for PDF docs.
6915         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
6916         PFAAybabtu-Regular.  Fixes feta font in PDFs.
6917         
6918         Notes for tetex-3.0 make web:
6919            psclean.map: s/uhv8a/uhvr8a/
6920            config.ps add:
6921                 p +psfonts_t1.map
6922                 p +psclean.map
6923                 p +typeface.map
6925 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6927         * scm/music-functions.scm (music-pretty-string): fix bug with
6928         string argument.
6930 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
6932         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
6934 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6936         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
6937         only process options if they're there.
6938         (write_file_map): add version-seen? to snippet-map.ly
6940 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
6942         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
6943         formatting cleanups.
6945         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
6946         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
6948 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6950         * scm/framework-ps.scm (ps-font-command): don't hash, just use
6951         name directly.
6953         * lily/main.cc (setup_paths): either add mf/out to search path or 
6954         fonts/{otf,type1,etc}
6955         
6956         * lily/font-config.cc (init_fontconfig): either add mf/out to
6957         FontConfig or fonts/{otf,type1,etc}
6959         * GNUmakefile.in: don't put mf/ link in share/ dir.
6961         * lily/staff-spacing.cc: move same-direction-correction to
6962         note-spacing-interface
6964         * scm/lily.scm (lilypond-main): use variable argument count for
6965         exception handler.
6967         * lily/font-config.cc (init_fontconfig): add operator pacification
6968         message.
6970         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
6972         * buildscripts/gen-emmentaler-scripts.py (i): generate
6973         PFAEmmentaler as well.
6975         * scm/framework-ps.scm (munge-lily-font-name): new function
6976         (write-preamble): hack: insert PFA equivalent of CFF into
6977         .PS. This makes LilyPond output printable on normal PS printers
6978         again.
6980         * buildscripts/gen-emmentaler-scripts.py (i): generate
6981         PFAEmmentaler.pfa aswell.
6983 2005-04-06  John Williams <williams@tni.com>  
6984         
6985         * scripts/lilypond-book.py: refactor the compose_ly procedure.
6986         
6987 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6989         * scm/page-layout.scm (default-page-make-stencil): always combine
6990         the header stencil, even if empty. This prevents the body text to
6991         reach up to the margins.
6993         * po/rw.po (Module): new file, for Kinyarwanda.
6995         * input/test/spacing-optical.ly (Module): new file.
6997         * lily/staff-spacing.cc: add same-direction-correction
6999 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7001         * Documentation/user/introduction.itely (Engraving): Comment-out
7002         non-existent file.
7004 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7006         * scm/define-grob-properties.scm (all-user-grob-properties): add
7007         same-direction-correction
7009         * VERSION: release 2.5.18
7011 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
7013         * lily/grob.cc (mark_smob): Check pscore->layout_ before
7014         dereferencing.  Fixes make web.
7016         * lily/midi-stream.cc: Handle unwritable midi file.  Include
7017         errno.h.
7019         * Documentation/user/: Fix links.
7021 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7023         * lily/text-interface.cc (Module): rename from text-item.cc
7025         * input/regression/apply-output.ly (texidoc): function naming fix.
7027         * lily/time-signature-performer.cc (derived_mark): new function.
7029         * lily/lily-parser-scheme.cc:  print mapped file name for progress
7031         * scripts/lilypond-book.py (find_linestarts): new function.
7032         (find_toplevel_snippets): keep track of line numbers.
7034         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
7035         all key changes.
7037         * ly/declarations-init.ly (partCombineListener): use
7038         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
7040         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
7042 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
7044         * lily/text-item.cc: Fix link.
7046         * Documentation/user/changing-defaults.itely (Changing defaults):
7047         Fix programs reference links.
7049         * Documentation/user/music-glossary.tely: Convert to utf-8.
7051 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7053         * make/lilypond-vars.make: remove TEXMF from variables.
7054         remove DEB_BUILD pk font variables.
7055         remove GUILE_LOAD_PATH
7056         remove TeX memory vars.
7058 2005-04-04  Werner Lemberg  <wl@gnu.org>
7060         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
7062 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7064         * ps/lilyponddefs.ps: remove reencode-font
7066         * lily/simple-spacer.cc (add_columns): also compare
7067         directly. Column rank doesn't distinguish between broken and
7068         unbroken columns. This fixes large spaces before time sig changes.
7070         * Documentation/user/point-and-click.itely: document ly:set-option.
7072         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
7073         point_and_click_global is set.
7075         * lily/scm-option.cc (LY_DEFINE): add point-and-click
7076         ly:set-option argument.
7078 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7080         * GNUmakefile.in: Include symlinks in webball.
7082         * Documentation/user/GNUmakefile (source-links): Add symlinks to
7083         source dir for split and non-split manuals.
7085         * Documentation/user/*y: Fix @uref/@inputfile links for
7086         split/non-split HTML documents.
7088         * Documentation/user/GNUmakefile (local-WWW): Do not generate
7089         .ps.gz.
7090         
7091 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7093         * GNUmakefile.in: Add newline.
7095 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
7097         * tex/lilyponddefs.tex: use color instead of xcolor
7098         * scm/output-tex.scm: minor editing
7100 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7102         * scm/music-functions.scm (display-scheme-music): pretty printer
7103         for music expressions.
7105 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7107         * buildscripts/install-info-html.sh (index_file): Fix link.
7109 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7111         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
7113         * Documentation/index.html.in: Add size estimates with some big pages.
7115         * Documentation/user/tutorial.itely (Running LilyPond for the
7116         first time): Add/replace some @rglos links.  TODO: add more
7117         @rglos links in tutorial, test non-intrusiveness (.css).
7119         * stepmake/bin/add-html-footer.py (do_file): Remove info's
7120         annoying's indication of referencing external document.
7122         * Documentation/user/GNUmakefile: Split version of glossary too.
7123         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
7124         links, not only for html.
7126         * Documentation/user/introduction.itely: Fix some links for other
7127         than html, do not use `here' as link name.
7129 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7131         * scm/documentation-generate.scm (string-append): Fix @usermanref,
7132         @glossaryref.
7134 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7136         * scm/page-layout.scm (default-page-make-stencil): only add header
7137         if existing and not empty. Fixes spurious programming error.
7139         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
7141 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
7143         * scm/output-tex.scm: implement {re,}setcolor
7144         * tex/lilyponddefs.tex: use color package
7146 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7148         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
7149         additions to website.
7151         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
7153         * Documentation/user/macros.itexi: Fix @usermanref html links in
7154         split documents: use @inforef.
7156 2005-03-30  Graham Percival  <gperlist@shaw.ca>
7158         * Documentation/user/programming-interface.itely: minor fix.
7160         * Documentation/user/advanced-notation.itely: added info to
7161         Metronome markings.
7163 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7165         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
7166         use box-stencil.  Remove y-padding argument.
7167         (make-stencil-circler): New function.
7169         * buildscripts/lilypond-words.py (F): 
7170         * elisp/SConscript (a): 
7171         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
7172         * vim/SConscript (a): 
7173         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
7175         * lily/general-scheme.cc: Build fix.
7177         * scm/markup.scm:
7178         * input/regression/markup-scheme.ly: 
7179         * input/regression/markup-syntax.ly: Drop 'new-' from name.
7181         * scm/stencil.scm (make-circle-stencil): New function.
7183         * scm/define-markup-commands.scm (draw-circle): Use it.  New
7184         name (was cicle).  Update callers.
7185         (circle): New markup command, similar to box.
7187         * scm/stencil.scm (circle-stencil): New function.
7189 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
7191         * configure.in: Detect libutf8/wchar.h variant.
7193         * stepmake/aclocal.m4: Modify shared size test.
7195 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7197         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
7199 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7201         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
7202         
7203         * VERSION (PACKAGE_NAME):  release 2.5.17
7205 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
7207         * scm/backend-library.scm (postscript->png): Fix comment and png
7208         message.
7210         * GNUmakefile.in (link-tree): Fix locales.
7212 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7214         * lily/stencil-scheme.cc (LY_DEFINE): change to
7215         ly:stencil-aligned-to, non mutating.
7217         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
7219         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
7221         * lily/quote-iterator.cc (derived_mark): call
7222         Music_wrapper_iterator::derived_mark() too.
7224         * lily/grace-engraver.cc (derived_mark): change signature, add
7225         const.
7227 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7229         * SConstruct (symlink): 
7230         * GNUmakefile.in (link-tree): Add scripts to prefix.
7232         * lily/general-scheme.cc (ly:effective-prefix): New function.
7234         * scm/backend-library.scm (postscript->png): Use it.
7236 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7238         * lily/paper-score.cc (process): don't delete grobs after
7239         producing stencils. 
7241         * scm/part-combiner.scm (determine-split-list): switch off
7242         debugging info.
7244         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
7245         if available.
7247         * scm/define-context-properties.scm
7248         (all-user-translation-properties): add stringNumberOrientations.
7250         * lily/new-fingering-engraver.cc (position_scripts): make generic,
7251         so fingering and string-numbers are separately controlled.
7253 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7255         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
7256         not use debugging.
7258 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7260         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
7262         * config.hh.in: add HAVE_FONTCONFIG.
7264         * Documentation/user/instrument-notation.itely (String number
7265         indications): new node.
7267         * input/regression/new-markup-syntax.ly (texidoc): add circle.
7269         * lily/new-fingering-engraver.cc (add_string): new function. 
7270         (acknowledge_grob): accept string-number-event as well.
7272         * scm/define-markup-commands.scm (circle): new markup command.
7274         * scm/output-lib.scm (print-circled-text-callback): new function.
7276         * lily/GNUmakefile: move ifeq after include stepmake.make.
7278 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7280         * config.make.in (HAVE_LIBKPATHSEA_SO):
7281         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
7283         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
7284         add KPATHSEA_LIBS.
7286         * debian/watch: 
7287         * debian/control: Update.
7289 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7291         * input/test/title-markup.ly (spaceTest): remove.
7293         * input/test/embedded-tex.ly (Module): remove.
7295         * input/test/music-box.ly: use 'name property, not ly:music-name.
7297         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
7299         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
7301 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7303         * Documentation/topdocs/INSTALL.texi (Top): Remove information
7304         about xdeltas.  Add information about CVS.
7306         * scm/lily.scm (lilypond-main): Fix invocation of handler,
7307         gracefully handle failed files.
7309         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
7311         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
7312         small fixes.
7314         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
7315         No unnecessarily specific i18n messages.  Remove stray `1'.
7317 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7319         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
7320         documentencoding
7322         * scm/documentation-lib.scm (texi-file-head): set utf-8
7323         documentencoding.
7325         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
7326         Delta, not the Symbol one. 
7328         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
7329         for the .map file.
7331         * Documentation/topdocs/INSTALL.texi (Top): add running
7332         requirement as compilation requirement.
7334 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7336         * buildscripts/mutopia-index.py (headertext): add h1 header and
7337         utf-8 charset meta field.
7339         * input/GNUmakefile: prune example list.
7341         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
7342         options.
7344         * lily/slur-scoring.cc (get_base_attachments): only look at stem
7345         extent for visible stems.
7347         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
7349 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7351         * Documentation/topdocs/INSTALL.texi (Top): Updates.
7353         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
7355 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7357         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
7358         pass inf/nan into slur scoring.
7360         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
7361         page.
7363         * scripts/abc2ly.py (dump_voices): use alphabet().
7365 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
7366         
7367         * mf/GNUmakefile (depth): use $(FONTFORGE). 
7369 2005-03-27 Matthias Neeracher <neeracher@mac.com>
7370         
7371         * flower/include/virtual-methods.hh: simplify. Patch by
7373 2005-03-25  John Williams <williams@tni.com>  
7375         * scripts/lilypond-book.py (main): add png for HTML too, guess
7376         only if necessary. 
7378 2005-03-25  Graham Percival  <gperlist@shaw.ca>
7380         * Documentation/topdocs/INSTALL.texi: now recommends
7381         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
7383         * Documentation/user/basic-notation.itely,
7384         Documentation/user/tutoria.itely: warn about
7385         only one (phrasing) slur at once.
7387 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
7389         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
7391 2005-03-23  Graham Percival  <gperlist@shaw.ca>
7393         * Documentation/user/basic-notation.itely: fixed info about
7394         ending a (de)cresc.
7396         * Documentation/user/lilypond-book.itely: fixed
7397         lilypond-book filter example and warned about not doing
7398         --filter and --process at the same time.
7400 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7402         * lily/parser.yy (bass_number),
7403         Documentation/user/instrument-notation.itely (Figured bass): 
7404         Add the possibility to use text markup in figured bass. 
7406 2005-03-19  Graham Percival  <gperlist@shaw.ca>
7408         * Documentation/user/global.itely: added info about naming
7409         identifiers and breakbefore.
7411         * Documentation/user/invoking.itely: added info about batch
7412         processing files with convert-ly, removed references to TeX
7413         in the jail section.
7415         * Documentation/user/examples.itely: possibly fixed piano
7416         dynamics.
7418         * Documentation/user/advanced-notation.itely: added info
7419         about removing other types of Staff.
7421         * Documentation/user/instrument-notation.itely: possibly
7422         fixed piano staff line switch.
7424         * Documentation/user/changing-defaults.itely: added info
7425         about using normal font in titles.
7427 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7429         * VERSION (PATCH_LEVEL): release 2.5.16
7431         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
7432         explicitly.
7434 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7436         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
7437         whitespace.
7439         * python/lilylib.py (make_ps_images):
7440         * scm/backend-library.scm (postscript->pdf, postscript->png):
7441         Quote file name.  Use format rather than string-append juggling.
7443 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7445         * python/lilylib.py (make_ps_images): add x to -g argument. 
7447         * lily/key-performer.cc (create_audio_elements): don't use
7448         scm_eval_string. Check for minor 3rd directly.
7449   
7450         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
7451         (sarabandeCelloGlobal): key is D minor, not F major.
7453 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7455         Fix truncated --png output (Peter Danenberg).
7456         
7457         * python/lilylib.py (make_ps_images):
7458         * scripts/ps2png.py (copyright): Grok --papersize option.
7460         * scm/backend-library.scm (postscript->png): Add parameter
7461         PAPERSIZE.  Update callers.
7463         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
7464         Fixes symbol placement.
7466         * lily/spanner.cc: 
7467         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
7468         <libc-extension.hh>).
7470 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7472         * Nitpick run.
7474         * buildscripts/fixcc.py: Update.
7476         Builddir run fixes.
7478         * HACKING (datadir): Add VERSION.
7480         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
7481         higher up.
7483 2005-03-15  Werner Lemberg  <wl@gnu.org>
7485         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
7486         diagonal stem doesn't become thinner.
7488 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7490         * buildscripts/fixcc.py: Fixes (Werner).
7492 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7494         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
7495         Emmentaler/Aybabtu.
7497         * GNUmakefile.in: fix lilypond-words path.
7499         * po/tr.po: update to 2.3.21
7501         * lily/new-fingering-engraver.cc (position_scripts): take priority
7502         from head position.
7504         * input/regression/finger-chords-order.ly (texidoc): new file.
7506 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7508         * make/ly-rules.make: 
7509         * stepmake/aclocal.m4: 
7510         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
7512         * buildscripts/fixcc.py (rules): Leave space after operator.
7514 2005-03-14  Werner Lemberg  <wl@gnu.org>
7516         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
7517         top of the glyph with smooth curve.
7519 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7521         * Documentation/user/global.itely (Page layout): remove
7522         printpagenumber.
7524 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
7526         * input/regression/mensural-ligatures.ly: new file (with examples
7527         compiled by Pal Benko).
7529         * Documentation/user/instrument-notation.itely: Bugfix: yet some
7530         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
7531         musicglyph access.  Many small beautifications in ancient
7532         examples.
7534         * input/test/divisiones.ly: fixed indentation; small
7535         beautifications
7537         * ly/engraver-init.ly: added FIXME comment
7539         * scripts/lilypond-book.py,
7540         Documentation/user/lilypond-book.itely: added music fragment
7541         option "packed" to lilypond-book
7543         * Documentation/user/instrument-notation.itely: Bugfix: added
7544         missing LedgerLineSpanner color setting in several places.  Added
7545         music fragment option "packed" to VaticanaContext example.
7547 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7549         * scm/define-grobs.scm (all-grob-descriptions): switch off
7550         Hyphen_spanner::set_spacing_rods 
7552         * lily/lyric-hyphen.cc (print): add padding between syllable and
7553         hyphen.
7554         (print): shorten hyphen in tight situations (determine using
7555         minimum-length)
7557         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
7558         0.4pt.
7560 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7562         * ly/titling-init.ly (bookTitleMarkup): Refinements.
7564         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
7565         header/footer markings for regression-test.
7567         * scm/backend-library.scm (output-scopes, header-to-file): Move
7568         from framework-tex.scm.
7570         * scm/framework-ps.scm (output-framework)
7571         (output-preview-framework):
7572         * scm/framework-eps.scm (output-classic-framework)
7573         (output-framework): Use it.  Fixes collated files.
7575 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7577         * input/sakura-sakura.ly: 
7578         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
7580         * buildscripts/guile-gnome.sh: Update.
7582         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
7584         * mf/aybabtu.pe.in: Capitalize Aybabtu.
7586 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7588         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
7589         culprit: always exit the loop if we find a rod, even if it has
7590         distance < 0. 
7592         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
7593         algorithm.
7595         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
7596         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
7598         * scm/output-svg.scm (dashed-line): new  function body.
7599         
7600         * GNUmakefile.in: create .htaccess.
7602 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7604         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
7606 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7608         * VERSION (PACKAGE_NAME): release 2.5.15
7610         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
7612         * scm/framework-svg.scm (output-framework): put scaling in
7613         document header. Apply scaling only once.
7614         (output-framework): dump page size in px, not mm. 
7616         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
7617         from font-size.
7619         * lily/paper-outputter-scheme.cc (LY_DEFINE):
7620         ly:outputter-output-scheme, new function.
7622         * scm/output-svg.scm (pango-description-to-svg-font): new function
7624 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7626         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
7627         target.
7629         * input/typography-demo.ly: new file.
7631 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7633         * Documentation/user/global.itely (File structure): Add markup blocks
7634         to toplevel expressions.
7635         (Multiple movements, Creating titles): Add markup blocks.
7637         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
7638         <libc-extension.hh>).
7640         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
7642         * flower
7643         * lily
7644         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
7646 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7648         * lily/accidental.cc: special bboxes for natural. 
7650         * mf/feta-toevallig.mf: make stems heavier.
7652         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
7653         texts as well.
7655         * mf/feta-klef.mf: revise. 
7657         * mf/feta-schrift.mf: make thinning of accent less pronounced.
7659         * mf/feta-klef.mf: add rounded curve at top. 
7660         make thinnib a little heavier.
7662 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7664         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
7666         * buildscripts/fixcc.py: New file.
7668         * input/regression/utf8.ly: Update Debian font description.
7670 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7672         * stepmake/aclocal.m4: Fix test.
7674 2005-03-09  Graham Percival  <gperlist@shaw.ca>
7676         * Documentation/user/invoking.itely: added Sebastino Vigna's
7677         docs for the --jail option.
7679 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7681         * lily/stem.cc (print): only produce stemlets if there are no
7682         noteheads on this stem.
7684         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
7685         don't crash on stemlet (visible stem without heads).
7687         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
7688         unbroken situations. 
7690         * scm/output-lib.scm (center-invisible): new function.
7692         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
7693         wishes to determine loose column space.
7695         * lily/font-config.cc (init_fontconfig): add
7696         fonts/{otf,type1,cff}  to path.
7698         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
7700         * mf/GNUmakefile (Module): install all fonts under otf/
7702         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
7703         replace /fonts/otf/ by /ps/ 
7705         
7706 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7708         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
7710         * lily/book.cc (process): Oops, add score_.header_.
7712         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
7714         * lily/parser.yy: Handle toplevel and book texts as score.
7716         * scm/page-layout.scm (default-page-make-stencil):
7717         Bugfix: (page-properties rename.
7719         * scm/backend-library.scm (ly:system): Typo.
7721 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7723         * stepmake/stepmake/executable-targets.make (installexe): don't
7724         strip installed executables
7726         * lily/font-select.cc (get_font_by_design_size): revert
7727         pango_description_string as well.
7729         * lily/system.cc (set_loose_columns): put loose column just left
7730         of next column.
7732         * lily/include/group-interface.hh (extract_grob_array): rename
7733         from Pointer_group_interface__extract_grobs
7735         * input/regression/ledger-line-minimum.ly (texidoc): new file.
7737         * lily/ledger-line-spanner.cc (set_spacing_rods): new
7738         function. Keep ledgered note heads at a minimum distance.
7739         Introduce minimum-length-fraction
7740         (print): introduce length-fraction property.
7742 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7744         * tex/GNUmakefile: remove latin1.enc rules.
7746 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7748         * scm/titling.scm: Typo.
7750         * input/regression/score-text.ly: Really add.
7752         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
7754 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7756         * lily/open-type-font-scheme.cc:  new file.
7758 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7760         * scm/titling.scm (layout-extract-page-properties): Rename from
7761         page-properties.  Update callers.
7763         * lily/lexer.ll (Lily_lexer):
7764         * lily/parser.yy: Junk lyric_markup state.
7766         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
7768         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
7769         Add texts parameter.
7771 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7773         * lily/lexer.ll (lyric_markup): New mode.
7774         (Lily_lexer::push_lyric_markup_state): New method.
7775         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
7777         * lily/parser.yy (book_body):
7778         (toplevel_expression): Grok \markup texts.
7780         * lily/score-scheme.cc (ly:music-scorify): 
7781         * scm/lily-library.scm (collect-music-for-book): Take texts
7782         parameter.
7784         * lily/score.cc (texts_): New member.
7786         * lily/paper-book.cc (systems): Format score texts.
7788         * score-text.ly: New file.
7790         * ttftool/SConscript:
7791         * kpath-guile/SConscript: New file.
7793         * lily/SConscript:
7794         * SConstruct: Update.
7796 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7798         * VERSION (PACKAGE_NAME): release 2.5.14
7800 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7802         * lily/main.cc: Add dummy xgettext markers.
7804 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7806         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
7807         requirements
7809         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
7810         executable is < 40k
7812         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
7813         hack.
7815 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7817         * flower/libc-extension.cc:
7818         * flower/include/libc-extension.hh: [Open]BSD simply cast
7819         cookie/funopen declarations.
7821         * stepmake/aclocal.m4: Check for libkpathsea.so.
7823         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
7824         dl_kpse_find_file.
7826 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7828         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
7829         (open_library): alternative for static library.
7831 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7833         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
7835         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
7837         Drop run-time dependency on teTeX.
7839         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
7841         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
7842         KPATHSEA_LIBS in LIBS.
7843         (STEPMAKE_DLOPEN): New function.
7845         * lily/font-config.cc (init_fontconfig): Use dir for directory,
7846         not path.
7848         * flower/file-path.cc (directories): Rename from paths, as this
7849         return an array of directories (a single path).
7851 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7853         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
7855         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
7856         new ly:kpathsea-find-file
7858         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
7860         * kpath-guile/GNUmakefile: new file
7862         * buildscripts/gen-emmentaler-scripts.py (i): generate
7863         emmentaler-X.fontname as well.
7865         * buildscripts/ps-embed-cff.py: new script
7867         * scm/lily-library.scm: remove ps-embed-cff.
7869         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
7870         font loading. 
7872         * scm/font.scm (add-music-fonts): load dynamics/numbers through
7873         fontconfig as well.
7875         * lily/font-config.cc (init_fontconfig): add cff/ too.
7877         * ly/generate-embedded-cff.ly: capitalize.
7879         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
7880         so as to register the pango font.
7882         * lily/font-config.cc (init_fontconfig): add
7883         prefix/{otf,type1,mf/out} to fontconfig path.
7885         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
7886         overrides all. 
7888         * configure.in (gui_b): remove ec mftrace check
7890         * config.hh.in: use lilypond-Major.Minor as data directory.
7892         * scm/framework-ps.scm (dump-page): use output-units for landscape.
7894         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
7895         name.
7897 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7899         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
7900         error messages.
7902         * flower/libc-extension.cc:
7903         * flower/include/libc-extension.hh: [Open]BSD fixes for
7904         cookie/funopen declarations.
7906 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7908         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
7909         emmentaler.
7911         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
7912         lcrm10.
7914         * scm/define-markup-commands.scm (fontsize): new markup
7915         command. Also set baseline-skip
7917 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
7918         
7919         * lily/main.cc (do_chroot_jail): paranoia security for webserver
7920         use.
7922 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7924         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
7926         * lily/pdf.cc: remove PDF related files
7928 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7930         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
7931         <hamamatsu@gmx.de>
7933 2005-03-05  Graham Percival  <gperlist@shaw.ca>
7935         * Documentation/user/advanced-notation.itely: first draft
7936         of reorg done.
7938         * Documentation/user/global.itely: fixed (sub)section
7939         bits of MIDI.
7941 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7943         * cygwin/mknetrel (extras): Bufix (Bertalan).
7945         * Documentation/user/basic-notation.itely (Chords): @ref fix.
7946         * Documentation/user/instrument-notation.itely (Introducing chord
7947         names): Compile fix: must have unique name.
7949 2005-03-02  Graham Percival  <gperlist@shaw.ca>
7951         * Documentation/user/instrument-notation.itely: reorg.
7953 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7955         * scm/output-gnome.scm:
7956         * scm/output-svg.scm: Fix font scaling.
7958 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7960         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
7961         what link to use best.
7963         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
7964         * Documentation/user/tutorial.itely (Automatic and manual beams):
7965         Fix @ref.
7967         * lily/tweak-registration.cc (replace_grob_tweak): New function.
7968         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
7969         * scm/framework-gnome.scm (tweak): Use it.
7971 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7973         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
7975         * scm/output-ps.scm (white-text): reinstate white-text
7977 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7979         * scm/output-ps.scm (offset-add): Remove.
7981         * scm/lily-library.scm (offset-flip-y): New function.
7982         * scm/framework-gnome.scm (tweak): Use it.
7984         * scm/output-gnome.scm (grob-cause): Add parameter.
7986         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
7987         * scm/output-ps.scm (url-link): Move.
7988         (white-text): Warn user about brokenness.
7990         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
7991         wrt ghostscript.
7993 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7995         * lily/slash-repeat-engraver.cc (try_music): always make slashes
7996         if body length smaller than measure length.
7998         * scm/define-markup-commands.scm (with-url): oops. use Y extent
7999         for Y.
8001         * ly/titling-init.ly (tagline): put default tagline in \paper
8003 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8005         * lily/kpath.cc: 
8006         * lily/pdf.cc (Pdf_file): Use more generic error messages.
8008         * scm/lily-library.scm (version-not-seen-message): New function.
8009         * ly/init.ly: Use it.
8011         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
8012         breaks as progess.
8014         * scripts/lilypond-book.py (do_process_cmd): Do not lump
8015         whitespace with l10n message.
8017         * scm/framework-tex.scm (convert-to-ps):
8018         (convert-to-dvi): Do not use overly specific l10n messages.
8020         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
8022         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
8023         merge stderr with stdout.  
8025 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8027         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
8028         Neeracher).
8030 2005-02-29  Graham Percival  <gperlist@shaw.ca>
8032         * Documentation/user/instrument-notation.teily: moved
8033         \arpeggio to Basic.
8035         * Documentation/user/advanced-notation.itely: Articulation to
8036         Basic, a bunch of stuff from Basic moved to Advanced.
8038         * Documentation/user/basic.itely: swapped various sections,
8039         reorganized Basic.
8041 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8043         * flower/memory-stream.cc: 
8044         * flower/libc-extension.cc: Remove obsolete #undefs.
8046         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
8047         more carefully.
8049 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8051         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
8052         dependency.
8054         * VERSION (PACKAGE_NAME): release 2.5.13
8056         * GNUmakefile.in (web-ext): don't ship ps.gz
8058         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
8059         stdout
8061 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8063         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
8064         without libintl.  Now it compiles too.
8066 2005-02-28  Graham Percival  <gperlist@shaw.ca>
8068         * Documentation/user/basic-notation.itely,
8069         instument-notation.itely, advanced-notation.itely:
8070         split up contents of notation.itely.
8072         * Documentation/user/notation.itely: file removed.
8074         * Documentation/user/invoking.itely, converters.itely:
8075         moved convert-ly info to invoking.itely.
8077         * Documentation/user/global.itely, changing-defaults.itely,
8078         sound-output.itexi: moved global settings, file layout, and
8079         sound into global.itely.
8081         * Documentation/user/sound-output.itexi: file removed.
8083         * Documentation/user/lilypond.tely: removed links to
8084         notation.itely and sound.itely.
8086 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8088         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
8090         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
8092         * THANKS: add sponsor.
8094         * scm/define-markup-commands.scm (with-url): new markup command.
8096         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
8097         tagline.
8098         
8099         * scm/output-tex.scm (url-link): stub.
8101         * scm/output-ps.scm (url-link): new function.
8103         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
8104         ly:set-point-and-click
8106 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8108         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
8109         based on pdf-viewer setting.
8111         * scm/framework-ps.scm (write-preamble): Find and set preferred
8112         pdf-viewer.
8114 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8116         * Documentation/user/point-and-click.itely: update for PDF point &
8117         click.
8119         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
8120         editors based on EDITOR setting.
8122 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8124         * scm/*: Oops, more grand 2005 replace bits.
8126 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8128         * ps/music-drawing-routines.ps: new routine: insert PDF mark
8130         * scm/output-ps.scm (grob-cause): point & click support for
8131         PostScript
8133 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8135         * lily/input-scheme.cc (LY_DEFINE): rename to
8136         ly:input-file-line-column
8138 2005-02-26  Graham Percival  <gperlist@shaw.ca>
8140         * Documentation/user/examples.itely: small fix from Steve Doonan.
8142         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
8144         * THANKS: added Yuval Harel.
8146         * Documentation/user/{various}: inserted two spaces after a period.
8148         * Documentation/user/lilypond.tely: added framework for reorg.
8150         * Documentation/user/basic-notation.itely, instrument-notation.itely,
8151         advanced-notation.itely, global.itely: new files, placeholder for
8152         future reorg.
8154 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
8156         * Documentation/user/notation.itely: revamped Polyphony section
8157         
8158 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8160         * Documentation/user/lilypond-book.itely (Music fragment options):
8161         doc fontload.
8163         * Documentation/user/changing-defaults.itely (Text encoding): add
8164         fontload option to utf8 include
8166         * scripts/lilypond-book.py (compose_ly): add fontload option
8168         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
8169         force-eps-font-include option.
8171         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
8172         black triangle
8174         * Documentation/user/invoking.itely (Editor support): remove
8175         lilypond-latex section.
8177         * scripts/lilypond-latex.py (Module): remove script.
8179         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
8180         overwrite .log. 
8182         * lily/main.cc: remove -m, --no-layout
8184         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
8185         to define. We don't want to override fprintf everywhere.
8187 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
8189         * cygwin/lilypond.hint: 
8190         * cygwin/README.in: Update dependencies.
8192         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
8193         Bugfix: do not pollute CPPFLAGS, LIBS.
8195         * cygwin/mknetrel (extras): Cross compile fixes.
8197         * ttftool/util.c: 
8198         * ttftool/ttfps.c: 
8199         * ttftool/ps.c: #include libc-extension.hh
8201         * flower/include/libc-extension.hh:
8202         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
8203         wrapper using funopen.
8204         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
8205         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
8207         * config.hh.in:
8208         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
8209         (AC_CHECK_HEADERS): Add libio.h
8211         * scripts/convert-ly.py: Uniformize, internationalize.
8212         (2.5.2): Remove fatal encoding rule.
8213         (2.5.13): Handle latin1 encoding gracefully.
8215 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
8217         * HACKING: Fix line breaks.
8219 2005-02-23  Werner Lemberg  <wl@gnu.org>
8221         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
8222         contains those two files.
8224 2005-02-21  Werner Lemberg  <wl@gnu.org>
8226         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
8227         to improve overlap removal process.
8229         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
8230         left and right ending.  This ensures better overlapping.
8231         Update all callers.
8232         ("lineprall"): Don't use draw_gridline to get better overlapping.
8234 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8236         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
8238         * Documentation/topdocs/NEWS.tely (Top): oops.
8240 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
8242         * HACKING: new file.
8244         * input/regression/utf8.ly (portuguese): added a portuguese example
8245         to show latin1 accents.
8247 2005-02-21  Pal Benko  <benkop@freestart.hu>
8249         * lily/mensural-ligature-engraver.cc:
8250         * lily/mensural-ligature.cc:
8251         * lily/include/mensural-ligature.hh: new algorithm implemented
8253         * scm/define-grob-properties.scm: join-left killed (add-join may
8254         be used); join-left-amount changed to join-right-amount
8256 2005-02-21  Graham Percival  <gperlist@shaw.ca>
8258         * Documentation/user/notation.itely: small but urgent fix.
8260 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
8262         * lily/duration-scheme.cc: bugfix: correct parameters to
8263         SCM_ASSERT_TYPE.
8265         * THANKS: added Pal.
8267         * Documentation/user/notation.itely: bugfix: unTeXified
8268         $\\backslash$.  Bugfix: yet another glyph renaming victim:
8269         "timesig.*x/y" -> "timesig.*xy".
8271 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8272         
8273         * VERSION (PACKAGE_NAME): release 2.5.12
8275 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8277         * ly/engraver-init.ly: set tieWaitForNote to #t by default
8279         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
8281         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
8283         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
8285 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8287         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
8288         latin1..utf-8.
8290         * input/regression/stanza-number.ly:
8291         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
8293         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
8295 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8297         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
8298         NEWS. Refer to website for older news.  
8300         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
8301         .HTML. This should be done for specific servers only.
8303         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
8304         .ly image examples.
8306         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
8307         in layer 0 too.
8309         * scm/define-context-properties.scm
8310         (all-user-translation-properties): add tieWaitForNote
8312         * scm/define-grobs.scm (all-grob-descriptions): add
8313         Tie_column::before_line_breaking
8315         * lily/tie.cc (get_column_rank): new function
8317         * lily/tie-column.cc (before_line_breaking): new function.
8318         (werner_directions): take into account ties that start on
8319         different columns.  
8321         * lily/score-engraver.cc (set_columns): move add_column() so we
8322         have column rank available.
8324         * lily/tie.cc (get_column_rank): new function.
8326         * input/regression/utf8.ly (japanese): add japanese lyrics.
8328         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
8330         * THANKS: add Steve D
8332         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
8333         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
8335 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
8337         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
8338         to show harmonic notes
8339         * scm/define-markup-commands.scm: in \markup-by-number
8340         "dots-dot" -> "dots.dot" to show dotted notes
8342 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8344         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
8346         * flower/memory-stream.cc (writer): new file.
8348         * configure.in: add endian test.
8350 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
8352         * Documentation/user/examples.itely: small
8353         simplification/beautification
8355         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
8356         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
8357         notation manual.
8359         * lily/mensural-ligature.cc: bugfix: another few victims of the
8360         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
8362         * ly/gregorian-init.ly: commit some experimental code for hi-level
8363         ligature input language lying around here for several months.
8365         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
8366         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
8368         * lily/vaticana-ligature-engraver.cc: bugfix: another few
8369         "x-y-z"->"x.y.s-z" fixes.
8371 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8373         * scm/framework-pdf.scm (scm): new file
8375         * lily/include/pdf.hh (class Pdf_file): new file.
8377         * lily/pdf.cc (write_trailer): new file.
8379 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
8381         * input/regression/color.ly: new file
8383         * lily/stencil.cc (interpret_stencil_expression):
8384         when a color expression is encountered: save current color,
8385         process the rest of the expression, and restore previous color.
8387         * lily/system.cc (get_line): check all grobs for color property and
8388         prepare the stencil scheme expressions for further processing.
8389         Fix layer-loop.
8391         * scm/define-grob-properties.scm: introduce the color property.
8393         * scm/output-lib.scm: color helper functions.
8395         * scm/output-ps.scm: introduce setcolor/resetcolor.
8397 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
8399         * ly/*.ly, input/regression/*.ly: Added missing \version
8400         statements in some files.
8402 2005-02-15  Graham Percival  <gperlist@shaw.ca>
8404         * Documentation/user/notation.itely: minor editing.
8406         * Documentation/user/converters.itely: updated convert-ly bugs.
8408         * Documentation/user/lilypond-book.itely: add info about using
8409         feta characters in latex.
8411 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8413         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
8415 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8417         * scm/define-grob-properties.scm (all-user-grob-properties):
8418         removed 'dashed property.
8420 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8422         * scm/lily.scm (define-safe-public): new macro for defining
8423         variables that can be used in --safe mode. Use it in *.scm
8424         instead of manually setting safe-objects in safe-lily.scm.
8426 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8427         
8428         * lily/slur.cc: Slur-dash patch by Bertalan.
8430         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
8432         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
8434 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8436         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
8438 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8440         * mf/GNUmakefile: teTeX-3.0 install fix.
8442         * Cygwin patch from Bertalan.
8444         * stepmake/stepmake/metafont-rules.make: Remove bashism.
8446 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8448         * GNUmakefile.in: 
8449         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
8451         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
8452         2.0.x compatibility.
8454 2005-02-08  Werner Lemberg  <wl@gnu.org>
8456         * mf/feta-din-code.mf: Format; clean up code.
8457         Replace `---' with `--' plus explicit path directions.
8458         (linethickness#, stafflinethickness#): Remove.
8459         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
8460         ("dynamic s"): Improve shape.
8461         ("dynamic p"): Improve shape.
8462         Replace `draw' with better outline approximation.
8463         ("dynamic r"): Improve shape.
8464         Don't call `fill' and `draw' at the same time.
8466 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8468         * SConstruct (symlink):
8469         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
8470         build fix: add enc symlink.
8472         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
8474         Support for DESTDIR besides prefix=/foo
8476         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
8478         * stepmake/stepmake/*.make:
8479         * */GNUmakefile:
8480         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
8482         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
8484         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
8485         mawk in fontforge (date) test.
8487 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8489         * scm/font.scm (make-century-schoolbook-tree): add NCS as
8490         font-family=roman. Add Luxi Sans as sans
8492 2005-02-07  Graham Percival  <gperlist@shaw.ca>
8494         * Documentation/user/notation.itely: add warning about
8495         percent repeats and Voice contexts.
8497         * Documentation/user/lilypond-book.itely: clarified the
8498         necessity of dvips -u arguments.
8500 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
8502         * THANKS: Added a bunch of bug hunters.
8504 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8506         * scm/framework-ps.scm (output-preview-framework): bugfix.
8508         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
8509         o/ for chord modifier..
8511         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
8513         * lily/drum-note-performer.cc:  remove unused (thanks Michael
8514         Welsh Duggan). 
8516 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8518         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
8520         * ly/titling-init.ly: Do not also print intstrument in header on
8521         first page.  Do not print page number on first and only page.
8523 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8525         * input/regression/*.ly: remove old-relative everywhere
8527         * lily/music-sequence.cc (simultaneous_relative_callback): do
8528         what-if analysis on copy, not on original. Fixes old-relative
8529         compatibility.
8531         * scm/backend-library.scm (postscript->png): space before
8532         --verbose.
8533         
8534 2005-02-05  Werner Lemberg  <wl@gnu.org>
8536         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
8537         is defined.
8539         * mf/feta-alphabet.mf: Define `staffsize#'.
8540         Include `feta-params.mf'.
8541         s/staffheight/design_size/.
8543         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
8545         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
8547         * mf/feta-nummer-code.mf: Reformatted.
8548         (draw_six): Use outline intersection to avoid a self-intersecting
8549         path.
8550         ("Numeral comma"): Fix serious outline glitches.  This slightly
8551         changes the glyph shape.
8552         ("Numeral dash"): Use `draw_rounded_block'.
8553         ("Numeral dot"): Use `drawdot'.
8554         ("Numeral 1"): Assure identical tangent directions for the
8555         intersection points of paths.  The glyph shape improvement is only
8556         visible at very high magnifications.
8557         ("Numeral 2"): Use `solve' macro to make the lower right part of
8558         the glyph outline touch the x axis exactly.  This changes the
8559         glyph shape.
8560         Minor fixes for better overlap removal support.
8561         ("Numeral 4"): Make lefter corner `rounder'.
8562         ("Numeral 5"): Assure identical tangent directions for the
8563         intersection points of paths.  This improves the glyph shape at
8564         high magnifications.
8565         ("Numeral 7"): Use `solve' macro to make the upper right part of
8566         the glyph outline touch the metrics box exactly.  This changes the
8567         glyph shape.
8568         Avoid corner in the upper left part of the glyph (causing a minor
8569         shape change).
8571         * mf/feta-ital-*.mf: Removed.  Unused.
8573 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8575         * VERSION (PATCH_LEVEL): release 2.5.11
8577         * input/regression/fill-line-test.ly: new file.
8579         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
8580         emmentaler name, eg. emmentaler-23. 
8582 2005-02-04  Christian Hitz  <chhitz@gmx.net>
8584         * scm/scm/define-markup-commands.scm (fill-line): rework for better
8585         alignment with centered texts
8587         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
8588         list of paddings
8590 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8592         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
8594         * lily/note-column.cc (translate_rests): call flush_extent_cache()
8595         of parents when translating rests. Fixes: c-chord-rest.ly 
8597         * lily/include/dimension-cache.hh (struct Dimension_cache): add
8598         dimension_callback_ member.
8600         * lily/grob.cc (flush_extent_cache): new function. Force recompute
8601         of extents.
8603 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
8605         * all but lily/*: The grand 2004/2005 replace.
8607 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8609         * lily/*: add space after ,  
8611         * scm/music-functions.scm (has-request-chord): don't use
8612         ly:music-name anywhere. Fixes <<\\>> notation. 
8614         * scm/define-markup-commands.scm (box): use font-size for
8615         padding. Fixes boxed-rehearsal-marks.ly
8617         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
8618         identifier definition too, so foo = \lyrics { ...   } bar = #1
8619         doesn't complain about "bar" being LYRICS_STRING.
8621         * lily/paper-def.cc (find_pango_font): new routine; Store
8622         pango_fonts in hash tab too. This is necessary for retrieving
8623         Pango_fonts::physical_font_tab() later on.
8625         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
8626         crash if psname is null.
8628         * lily/lily-guile.cc (ly_hash2alist): new function
8630         * Documentation/user/changing-defaults.itely (Text encoding):
8631         rewrite. 
8633         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
8634         -> font_filename mapping.
8636         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
8637         ly_pango_font_physical_fonts
8639         * scm/framework-ps.scm (supplies-or-needs): extract names from
8640         physical Pango_fonts.
8642         * utf8.ly: new file.
8644 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8646         * Documentation/user/changing-defaults.itely (Page layout): add
8647         doco about systemSeparatorMarkup.
8649         * scm/page-layout.scm (default-page-make-stencil): add-to-page
8650         function.
8651         (default-page-make-stencil): insert system separators.
8653         * scm/define-markup-commands.scm (hcenter): add
8654         (beam): add.
8656 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8658         * scm/output-ps.scm (ez-ball): reinstate ez notation.
8660 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8662         * lily/main.cc: Spell backend consistently.  Sort options.
8664 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8666         * scripts/lilypond-book.py (Module): revert @include.
8667         
8668 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8670         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
8671         Bugfix: @include .tex (not .texi).  Small cleanups.
8673         * stepmake/bin/add-html-footer.py (i18n): New function.
8675 2005-01-31  Werner Lemberg  <wl@gnu.org>
8677         * mf/feta-nummer.mf: Removed.  Unused.
8679 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8681         * lily/ : 2004 -> 2005 s&r
8683         * scm/file-cache.scm (cached-file-contents): add file. Read each
8684         file only once.
8686         * scm/font.scm (add-pango-fonts): change order. Medium weight is
8687         now default.
8689         * VERSION: release 2.5.10
8690         
8691         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
8693         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
8695         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
8696         that both X and Y extents of bbox are non-nil.
8698 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8700         * scm/chord-name.scm (alteration->text-accidental-markup): change
8701         - to . 
8703         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
8705         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
8707         * Documentation/user/invoking.itely (Invoking lilypond): add note
8708         about EPS backend.
8710         * scm/framework-eps.scm: new file: create per-system/per-page EPS
8711         files for inclusion in lilypond-book document.
8713         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
8715         * input/tutorial/lbook-texi-test.texi: new file.
8717         * scm/safe-lily.scm (safe-objects): add
8718         {begin,end}-of-line-(in)?visible as safe.
8720 2005-01-30  Graham Percival  <gperlist@shaw.ca>
8722         * Documentation/user/changing-defaults.itely: fixed example
8723         of (dynamics).
8725 2005-01-29  Graham Percival  <gperlist@shaw.ca>
8727         * lily/main.cc: fix info about -o=FILE.
8729 2005-01-29  Werner Lemberg  <wl@gnu.org>
8731         * mf/feta-toevallig.mf ("Natural"): Completely changed the
8732         construction to assure smooth transition from straight to curved
8733         lines.
8735 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8737         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
8738         stencils.
8740         * ps/lilyponddefs.ps: add start-page, start-system doesn't
8741         translate to top of page. Fixes alignment problems of
8742         lilypond-generated EPS files.
8744 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8746         * scm/part-combiner.scm (analyse-spanner-states): trigger on
8747         crescendo-end as well, since Decrescendo maybe ended with Stop
8748         Crescendo.). Fixes: partcombine-diminuendo.ly
8750         * scm/script.scm (default-script-alist): swap portato symbols.
8752         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
8754         * lily/paper-outputter-scheme.cc (LY_DEFINE):
8755         ly:outputter-port. New function.
8757         * scm/framework-ps.scm (output-classic-framework): dump a
8758         -systems.texi too
8759         (output-classic-framework): dump multiple systems on an "infinite"
8760         page EPS including fonts. 
8762         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
8763         .eps files for both texi and tex formats. Use PNG coming from
8764         lilypond.
8765         
8766 2005-01-28  Graham Percival  <gperlist@shaw.ca>
8768         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
8770         * scripts/lilypond-latex.py: fix info about -o=FILE.
8772 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8774         * ly/generate-embedded-cff.ly: write .cff.ps files.
8776         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
8778         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
8779         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
8781 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8783         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
8785 2005-01-28  Werner Lemberg  <wl@gnu.org>
8787         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
8788         macros.
8789         (draw_bulb): Improved.
8791         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
8792         metapost bug.
8793         (draw_pedal_P): Use soft_end_penstroke.
8794         (draw_pedal_d): Use soft_start_penstroke.
8796         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
8797         path.
8798         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
8799         doesn't change the glyph shape.
8801         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
8802         changing the shape) to avoid fontforge warnings.
8804         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
8805         soft_end_penstroke and fix glyph shape.
8807 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8809         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
8811 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8813         * scm/define-markup-commands.scm (line): filter out empty stencils
8814         from line command.
8816         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
8817         amount.
8819 2005-01-27  Graham Percival  <gperlist@shaw.ca>
8821         * Documentation/user/notation.itely: added info about what
8822         \voiceFoo does.  Also rewrote warning about marks at
8823         a line break.
8825         * Documentation/user/changing-defaults.itely: added info
8826         about putting dynamics in parenthesis and brackets.
8828 2005-01-27  Werner Lemberg  <wl@gnu.org>
8830         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
8832 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8834         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
8835         portato-direction.ly
8837         * lily/beam.cc (consider_auto_knees): add beam height to
8838         threshold. Fixes: knee-multiple-beam.ly
8840         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
8841         pedal line spanners. Fixes: instrument-center-pedal.ly
8843         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
8844         if encountering barline. Fixes: auto-beam-repeat.ly
8846 2005-01-26  Werner Lemberg  <wl@gnu.org>
8848         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
8849         overlapping.
8851         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
8852         with inflections for the 1/2 sharp glyph.
8854         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
8855         connection between `t' and `r'.
8856         Unify bulb with the rest of `r' to avoid grazing outlines which
8857         confuses the overlap removal algorithm of fontforge.
8859         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
8860         inflections.
8861         (draw_cross): Fix shape to have uniform thickness in corners.
8863         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
8864         to avoid an uneven number of self-intersections; this confuses
8865         fontforge.
8866         Fix a slight bug in the shape at left bottom (which is visible only
8867         at high magnifications).
8868         `Center' the stem horizontally to avoid overlapping.
8870 2005-01-24  Werner Lemberg  <wl@gnu.org>
8872         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
8873         to `asis'.
8874         (fet_begingroup): Save group name in string `feta_group'.
8875         (fet_endgroup): Updated.
8876         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
8878         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
8880         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
8881         in metapost.
8883 2005-01-24  Graham Percival  <gperlist@shaw.ca>
8885         * Documentation/user/notation.itely: really minor editing.
8887 2005-01-22  Graham Percival  <gperlist@shaw.ca>
8889         * Documentation/user/examples.itely: minor editing.
8891         * Documentation/user/changing-defaults.itely: minor editing.
8893         * Documentation/user/notation.itely: clarified info on polyphony
8894         and \addlyrics.
8896 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8898         * scm/output-gnome.scm: 
8899         * scm/output-svg.scm:
8900         * scm/lily-library.scm (font-name-style): Update font name
8901         kludging for fontconfig use.
8903 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
8905         * scm/define-markup-commands.scm: Document right-align and
8906         larger markup commands. Remove "TODO" from the topmost comment
8907         "each markup function should have a doc string." More consistent
8908         use of new-lines.
8910 2005-01-22  Graham Percival  <gperlist@shaw.ca>
8912         * Documentation/user/changing-defaults: removed info about
8913         copyright symbol, since it's likely to change soon.
8914         Added info about betweensystemspace.
8916         * Documentation/user/notation.itely: minor fixes.
8918         * Documentation/user/lilypond.tely,
8919         Documentation/user/music-glossary.tely: changed copyright
8920         date to 2005 instead of 2004.
8922         * input/test/volta-chord-names.ly: added old example back.
8924 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8926         * mf/feta-beugel.mf: use design size 20 (not 15).
8928         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
8929         change name to aybabtu completely
8931 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8933         * buildscripts/gen-emmentaler-scripts.py (outdir): add
8934         design_size to fontname
8936 2005-01-19  Werner Lemberg  <wl@gnu.org>
8938         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
8939         mf/feta-schrift.mf: s/p/pat/ if a path variable.
8941         * mf/feta-autometric.mf (set_char_box): Add code which emits
8942         specials for mf2pt1 if run with metapost.
8943         (to_bp): New macro for mf2pt1.
8945 2005-01-18  Graham Percival  <gperlist@shaw.ca>
8947         * Documentation/user/changing-defaults: added info on
8948         creating a copyright symbol.
8950 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8952         * VERSION: release 2.5.9
8953         
8954 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
8956         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
8958         * Documentation/user/notation.itely: Document
8959         score-override-auto-beam-setting Fix documentation for
8960         revert-auto-beam-setting.
8962 2005-01-18  Werner Lemberg  <wl@gnu.org>
8964         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
8965         (procset): New function to define a procset resource.
8966         (ps-embed-pfa): New function to define a font resource.
8967         (setup): New function to define a `Setup' environment.
8968         (preamble): Use new functions.
8970         * ps/lilypond.defs (init-lilypond-parameters): New function to
8971         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
8973 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8975         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
8977 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
8979         * scm/define-markup-commands.scm: Change number->markletter-string
8980         to take two arguments (vector number). Add number->mark-alphabet-vector
8981         and markalphabet markup command.
8983         * scm/translation-functions.scm: Add format-mark-box-alphabet,
8984         format-mark-alphabet, format-mark-box-barnumbers and
8985         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
8987 2005-01-17  Graham Percival  <gperlist@shaw.ca>
8989         * Documentation/user/examples.itely: add SATB automatic piano
8990         reduction template.
8992         * Documentation/user/notation.itely: added info about changing
8993         partcombine texts.  Also adds examples of alternate lyrics.
8995         * Documentation/user/changing-defaults.itely: added warning
8996         about \RemoveEmptyStaffContext overriding previous changes.
8998 2005-01-17  Werner Lemberg  <wl@gnu.org>
9000         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
9001         feta-alphabet*.
9003 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9005         * python/lilylib.py (make_ps_images): don't do final showpage for
9006         multi-page documents.
9007         
9008         * VERSION (MY_PATCH_LEVEL): release 2.5.8
9010 2005-01-16  Graham Percival  <gperlist@shaw.ca>
9012         * Documentation/user/lilypond.tely: changed order of appendices;
9013         unified index should be last.
9015         * Documentation/user/notation.itely: add example of key signatures
9016         and info about Staff.printKeyCancellation.
9018 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9020         * lily/include/repeated-music.hh (class Repeated_music): change
9021         into "namespace" class.
9023         * lily/event.cc: remove Key_change_event.
9025         * lily/include/transposed-music.hh (class Transposed_music): remove.
9027         * lily/transposed-music.cc: remove
9029         * lily/include/relative-music.hh: remove.
9031         * lily/include/music-sequence.hh (struct Music_sequence): change
9032         into "namespace" class.
9034         * lily/untransposable-music.cc (Module): remove
9036         * lily/include/un-relativable-music.hh (Module): remove
9038         * lily/include/untransposable-music.hh (Module): remove
9040         * lily/include/music-list.hh (Module): remove file
9042         * lily/un-relativable-music.cc: remove file.
9044 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9046         * lily/parser.yy: Compile fix.
9048 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9050         * lily/include/music.hh (class Music): unvirtualize transpose().
9052         * lily/sequential-music.cc: remove file.
9054         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
9056         * lily/slur-scoring.cc (get_best_curve): only switch on
9057         DEBUG_SLUR_SCORING for non NDEBUG builds.
9059         * lily/include/music.hh (class Music): replace Music::start_mom()
9060         by start-callback property
9062         * lily/include/grace-music.hh: remove file. 
9064         * lily/stem.cc (height): robustness fix.
9066         * lily/time-scaled-music.cc: remove file.
9068         * lily/include/music.hh (class Music): include SCM init argument.
9069         (class Music): replace Music::get_length() virtual by
9070         length-callback property everywhere.
9072         * scripts/convert-ly.py (conv): add  # to \property scalar value.
9074         * mf/GNUmakefile: don't install *list.ly
9076 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9078         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
9080 2005-01-12  Werner Lemberg  <wl@gnu.org>
9082         This patch addresses the following problems in the feta sources
9083         files which contribute to the fetaXX fonts.
9085         . Many fixes for rasterization at low resolutions (consistent use of
9086           `vround' and `hround', integer shift values for paths, applying
9087           `eps' for mirrored paths, use of `define_whole_pixels' and
9088           friends, etc.) -- while this probably looks like a waste of time
9089           it has revealed deficiencies in some glyph shapes.  See comment at
9090           the end of feta-params.mf how vertical symmetry is achieved.
9092         . The `---' operator has been replaced everywhere with `--'; this
9093           both improves and considerably reduces the font size after
9094           conversion with mf2pt1.
9096         These change aren't explicitly mentioned below since virtually all
9097         glyphs are affected.
9099         Other notable differences:
9101         . Glyphs from feta-accordion.mf now have charboxes around the
9102           outline.
9104         . Fixed incorrect charbox for `accDot'.
9106         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
9108         . Fixed position of the bow in the `upprall' glyph and its siblings.
9110         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
9111           dependent on the staff line thickness to avoid touching the middle
9112           staff line at smaller sizes.
9114         . Largely extended output for feta-testXX: Where useful, glyphs
9115         are shown both between and on staff lines.
9118         * mf/feta-params.mf (staff_space_rounded,
9119         stafflinethickness_rounded, linethickness_rounded,
9120         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
9121         Update all code which uses them where appropriate.
9122         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
9123         New variables used to control rasterization at low resolutions.  Set
9124         to zero if feta code is processed with metapost.
9126         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
9127         (draw_rounded_block, draw_square_block): Updated to use `--' only.
9128         (flare_path): Updated.
9129         Make it work with `filldraw' (but only circular pens).
9130         (hfloor, vfloor, hceiling, vceiling): New macros.
9132         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
9133         Use `draw' again in mf mode to have good pixel dropout control.
9134         Fix intersection points of horizontal lines with circle.
9135         ("accDot"): Fix parameters for set_char_box.
9136         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
9137         control.
9139         * mf/feta-banier.mf: Updated.
9141         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
9142         testing.
9143         (undraw_inside_ellipse): Remove `center' argument.  Update all
9144         callers.
9145         (draw_brevis): New macro, called by "Brevis notehead".
9146         (draw_whole_triangle_head): New macro, called by "Whole
9147         trianglehead".
9148         (draw_small_triangle_head): Use `filldraw'.
9150         * mf/feta-eindelijk.mf: Remove useless global group.
9151         Updated.
9153         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
9154         `filldraw'.
9156         * mf/feta-pendaal.mf: Updated.
9158         * mf/feta-puntje.mf: Updated.
9160         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
9161         less points.
9162         ("Flageolet"): Use `draw' again in mf mode to have good pixel
9163         dropout control.
9164         ("Varied Coda"): Use `draw_block'.
9165         (draw_comma): Fix typo.
9166         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
9167         pixel dropout control.
9169         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
9170         position of bow.
9172         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
9173         sizes.
9175         * mf/feta-toevallig.mf (remember_pic): New variable, used for
9176         testing.
9177         (draw_meta_sharp): Much simplified.
9178         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
9180         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
9182 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9184         * Documentation/user/notation.itely (Ancient rests): Fix typo
9185         (thanks Anthony)
9187 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9189         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
9191         * lily/main.cc (setup_paths): Add cff.
9193         * mf/GNUmakefile (foe): Include actual target %.cff.
9194         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
9196 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9198         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
9199         suffix for main_input_b_.
9201         * scm/music-functions.scm (toplevel-music-functions):
9202         precompute music lengths for music expressions.  
9204 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9206         * lily/include/input.hh (class Input): new `end_' slot for end of
9207         input. Renamed defined_str0_ to start_.
9209         * lily/input.cc (Input): Add Input::Input (Input const &) and
9210         remove Input::Input (Source_file*, char const *). Use the new
9211         slots.
9212         (set_location): method used by bison to propagate input
9213         locations (YYLLOC_DEFAULT).
9214         (end_line_number, end_column_number, step_forward): new methods
9215         
9216         * lily/input-scheme.cc (ly:input-both-locations): new function,
9217         similar to ly:input-location, but also return the end line and
9218         column.
9220         * lily/include/includable-lexer.hh: 
9221         * lily/includable-lexer.cc: 
9222         * lily/include/lily-lexer.hh (class Lily_lexer): 
9223         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
9224         Includable_lexer to Lily_lexer, in order to update lexloc (the
9225         yylloc), a new slot of Lily_lexer.
9226         (here_input, LexerError): simplify by using the lexloc slot (aka
9227         yylloc)
9229         * lily/lexer.ll: #define yylloc to use input locations (it may
9230         be useless here?). Fixed the #embedded_scm rule (step the location
9231         forward in order to skip the sharp sign before parsing the scheme
9232         expression)
9234         * lily/include/lily-parser.hh (class Lily_parser): 
9235         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
9236         here_input()
9237         (parser_error): overload for more precise locations of errors.
9239         * lily/parser.yy (YYLTYPE): set location type to Input
9240         (YYLLOC_DEFAULT): use Input::set_location()
9241         (yylex): add the YYLTYPE* location parameter.
9242         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
9243         Give an Input parameter to THIS->parser-error() for more accurate
9244         messages.
9246 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9248         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
9250         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
9251         on BEAMQUANTING for non-NDEBUG builds.
9253         * lily/stem.cc (head_count): performance: avoid String::String()
9254         inside oft called function.
9256 2005-01-09  Graham Percival  <gperlist@shaw.ca>
9258         * Documentation/user/examles.itely: attempted fix for broken
9259         string quartet template.
9261         * Documentation/user/notation.itely: remove unnecessary broken
9262         link.
9264 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9266         * VERSION (PACKAGE_NAME): release 2.5.7
9268 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9270         * config.make.in (METAFONT): Append -progname=mf, fixes use with
9271         mf-nowin for teTeX-3.0.  Backportme.
9273         * scm/output-svg.scm (utf8-string): New function.
9275         * scm/output-gnome.scm (utf8-string): New function.
9276         (otf-name-mangling): Remove.
9278         * lily/pango-font.cc (Pango_font): Use font string iso font
9279         filename for utf8-text.
9281         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
9282         name.
9284 2005-01-08  Graham Percival  <gperlist@shaw.ca>
9286         * Documentation/user/notation.itely: add info about
9287         Staff.extraNatural = ##f in Pitches section.  Also
9288         fixed some minor issues in the Vocal music section.
9290 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9292         * scm/output-ps.scm (white-text): comment out Helvetica font,
9293         which is broken for my GS install.
9295         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
9296         which provides a tighter bbox.
9298         * scm/define-grobs.scm (all-grob-descriptions): remove all
9299         extra-offsets from definitions.
9301 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
9303         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
9304         add tuning for 4-string bass and some common 4/5-string banjo
9305         tunings.  New function (four-string-banjo) turns a 5-string tuning
9306         into a 4-string tuning.  New function
9307         (fret-number-tablature-format-banjo) computes correct fret numbers
9308         on 5-string banjos.
9310         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
9311         Add beam correction to TabVoice.
9313         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
9314         using bold font; makes tabs more readable.
9316 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9318         * lily/font-select.cc (get_font_by_design_size): don't make
9319         Modified_font_metric; this causes trouble, since we don't know the
9320         font magnification from inside Pango_font::text_stencil()
9322         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
9324         * Documentation/user/notation.itely (The Lyrics context): comment out
9325         broken {Small ensembles} link.
9327         * scm/framework-svg.scm (output-framework): change calling convention.
9329         * lily/object-key-dumper-scheme.cc: new file.
9331         * lily/object-key-undumper-scheme.cc: new file.
9333         * lily/tweak-registration-scheme.cc: new file.
9335         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
9337         * Documentation/user/examples.itely (String quartet): uncomment
9338         broken example.
9340         * lily/font-config.cc: new file.
9342 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9344         * scm/output-svg.scm: 
9345         * scm/output-gnome.scm: s/bigcheese/emmentaler.
9347         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
9349 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9351         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
9352         Add headers.
9354         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
9356 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9358         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
9360         * lily/include/main.hh: lose _b hungarian suffixes for global
9361         variables.
9363         * lily/include/lily-guile-macros.hh: new file.
9365         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
9367         * lily/general-scheme.cc: new file. 
9369         * lily/font-select.cc (get_font_by_design_size): retrieve
9370         PangoFont for (designsize . "pango-descr") entries.
9372         * lily/lily-parser-scheme.cc: new file.
9374         * lily/output-def-scheme.cc: new file.
9376         * lily/paper-book-scheme.cc: new file.
9378         * lily/duration-scheme.cc (LY_DEFINE): new file.
9380         * lily/pitch-scheme.cc:  new file.
9382         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
9384 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9386         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
9388 2005-01-06  Graham Percival  <gperlist@shaw.ca>
9390         * Documentation/user/notation.itely: minor editing.
9392         * Documentation/user/changing-defaults: minor editing.
9394         * Documentation/user/examples.itely: add template for
9395         string quartet part extraction; demonstrates tag.
9397 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
9399         * Documentation/user/notation.itely: documents
9400         format-mark-box-letters and format-mark-box-numbers
9402         * scm/define-context-properties.scm: change comment.
9404 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9406         * scm/framework-ps.scm (output-classic-framework): new function:
9407         dump systems as separate .eps files (without fonts) and write a
9408         single collecting .tex file.
9410 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9412         * Documentation/user/notation.itely (Setting simple songs):
9413         Correct several errors in the equivalent formulation of
9414         \addlyrics. 
9415         (The Lyrics context): Corrected link to the SATB example.
9417 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9419         * scm/lily.scm (completize-formats): new function
9420         (postprocess-output): new function
9422         * lily/paper-book.cc (classic_output): change calling
9423         convention. Give basename as first argument. 
9424         remove Paper_book::post_processing().
9426         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
9428 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9430         * lily/paper-outputter.cc (LY_DEFINE): new function
9431         ly:outputter-close.
9433         * lily/main.cc: change --format,-f to --backend,-b
9435         * lily/include/main.hh: rename format to backend.
9437         * scm/translation-functions.scm (format-mark-box-numbers): add.
9438         patch by Erlend Aasland
9440 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9442         * lily/pango-font.cc (text_stencil): dump string as
9443         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
9445 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9447         * configure.in (gui_b): Remove handy developer-only
9448         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
9449         CVS source installations (but break other non-default but correct
9450         PKG_CONFIG_PATH setups), as this is no longer developer-only.
9452         * SConstruct: 
9453         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
9454         compatibility (backportme).
9456         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
9458 2005-01-03  Werner Lemberg  <wl@gnu.org>
9460         Prepare glyph shapes for mf2pt1 conversion.
9462         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
9463         (accDiscant, accFreebase, accStdbase): Replace `draw' with
9464         `penstroke'.
9465         (accDot): Use `drawdot'.
9466         (accBayanbase): Replace `draw' with `draw_gridline'.
9467         (print_penpos): Moved to feta-macros.mf.
9468         (accOldEE): Replace `filldraw' with `penstroke'.
9469         Replace `draw' with `penstroke' and `drawdot'.
9471         * mf/feta-banier.mf: Code clean-up.
9472         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
9473         `fill'.
9475         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
9477         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
9478         paremeter to control drawing of labels.  Update all callers.
9480         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
9481         (new_bulb): Return a bulb as a single path.  To do that, it now
9482         takes some more parameters.  Updated all callers.
9483         (draw_gclef): Major clean-up.  `draw' has been replaced with
9484         `penstroke', unnecessary outlines have been removed.
9485         Remove (unused) gnome-canvas code.
9487         * mf/feta-macros.mf (print_penpos): New macro (from
9488         feta-accordion.mf).
9489         Other minor fixes.
9491         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
9492         ("Pedal dot"): Use `drawdot'.
9493         (draw_pedal_P): Add parameter to control drawing of labels.  Update
9494         all callers.
9495         Fix shape at top.
9496         (draw_pedal_e): Add parameter to control drawing of labels.  Update
9497         all callers.
9498         (draw_pedal_d): Add parameter to control drawing of labels.  Update
9499         all callers.
9500         Revert drawing direction.
9502         * mf/feta-schrift.mf (draw_fermata): Use single path.
9503         (draw_short_fermata): Replace `filldraw' with `fill'.
9504         (draw_long_fermata, draw_very_long_fermata): Replace calls to
9505         `draw_rounded_block' with a single path.
9506         ("Thumb"): Draw full circle instead of mirroring segments.
9507         (draw_accent): New macro.
9508         ("> accent", "espr"): Use it.
9509         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
9510         ("open (unstopped)"): Draw full circle instead of mirroring
9511         segments.
9512         (draw_vee): Removed.
9513         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
9514         ("Downbow"): Replace calls to `draw_rounded_block' with a single
9515         path.
9516         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
9517         partial pieces drawn with `fill' -- these do still overlap with the
9518         stem of the `t' but just once, not multiple times so that fontforge
9519         can handle it gracefully.
9520         Change other parts of the glyph so that fontforge's overlapping
9521         algorithm reliably works.
9522         (draw_heel): Replace `draw' with `fill'.
9523         (draw_toe): Use `draw_accent' instead of `draw_vee'.
9524         ("Flageolet"): Replace `draw' with `penstroke'.
9525         ("Segno"): Replace `filldraw' with `penstroke'.
9526         Replace `draw' with `drawdot'.
9527         ("Coda"): Replace `fill' with `penstroke', using a single path.
9528         ("Varied Coda"): Use less overlapping paths.
9529         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
9530         single path.
9532         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
9533         group to better control the `labels' command.
9534         Rename argument to `offset' and use it actually.  Update all
9535         callers.
9536         Replace `filldraw' with `fill'.
9537         ("mordent", "prallmordent", "upmordent", "downmordent",
9538         "lineprall"): Replace `draw' with `draw_gridline'.
9539         ("upprall", "downprall"): Replace `draw' with `fill'.
9541         * mf/feta-timesig.mf: Formatting.
9543         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
9544         to...
9545         ("Flat"): Here.
9546         (draw_paren): Move code to draw labels to...
9547         ("Right Parenthesis"): Here.
9549 2005-01-02  Graham Percival <gperlist@shaw.ca>
9551         * Documentation/user/notation.itely: add example of \setTextDecresc
9552         and \setTextDim.
9554 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
9556         * scm/define-markup-commands.scm :  fix glyph-strings of
9557         accidentals and \note-by-number
9559 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9561         * VERSION: 2.5.6 released.
9562         
9563         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
9565         * input/regression/new-markup-scheme.ly: oops. font-family=music
9566         -> font-encoding fetaMusic.  
9568         * lily/main.cc: put default to PS.
9570         * lily/tfm.cc: idem.
9572         * lily/afm.cc: idem.
9574         * lily/include/modified-font-metric.hh (struct
9575         Modified_font_metric): remove coding_scheme() method.
9577         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
9579         * scripts/convert-ly.py (conv): crash on encountering \encoding.
9581         * input/les-nereides.ly: convert to utf8
9583         * lily/modified-font-metric.cc (text_dimension): idem.
9585         * lily/parser.yy (TODO): idem.
9587         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
9589         * lily/lexer.ll: remove encoding
9591         * scm/framework-ps.scm (output-variables): separately scale the
9592         page to mm 
9594         * lily/pango-font.cc (Pango_font): fix scaling.
9596         * lily/font-metric.cc (design_size): design_size returns a
9597         dimension now as well.
9599 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9601         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
9602         brace generation. 
9604         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
9606 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9608         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
9609         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
9611 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9613         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
9614         in first run as well.
9616         * scm/paper.scm (layout-set-staff-size): use text-font-size in
9617         dimension less points (ie. 12 = 12 point)
9619         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
9621         * lily/all-font-metrics.cc (find_pango_font): set description_
9623         * lily/pango-font.cc (text_stencil): export size as well.
9624         (text_stencil): fix scaling and extents box.
9626 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9628         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
9630         * Documentation/user/invoking.itely (Invoking lilypond): document
9631         texstr
9633         * scripts/convert-ly.py (conv): add ancient rules.
9635         * scm/clef.scm (c0-pitch-alist): replace - with .
9637         * scripts/lilypond-book.py (process_snippets): add texstr support.
9639         * scm/framework-texstr.scm (header): change extension to .textmetrics
9641         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
9642         -f tex.
9644         * lily/text-metrics.cc: new file.
9645         (try_load_text_metrics): new function
9647         * lily/include/text-metrics.hh: new file.
9649 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9651         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
9652         ly_scheme_function to ly_lily_module_constant.
9654         * lily/modified-font-metric.cc (text_dimension): try
9655         lookup_tex_text_dimension() first.
9657         * lily/tfm.cc: new function ly:load-text-dimensions
9659 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9661         * scm/output-texstr.scm (text): use \lilygetmetrics
9663         * scm/framework-texstr.scm (header): dump in new format.
9665         * tex/lilypond-tex-metrics: new file.
9666         
9667 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9669         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
9670         mapping.
9671         (index_to_charcode): New method.
9673         * scm/output-ps.scm (glyph-string): 
9674         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
9676 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9678         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
9679         implement fully, need FONT to get to charcode.
9681         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
9683         * scm: Cleanups.
9685         * Documentation/user/changing-defaults.itely: Fix internalsrefs
9686         {Tunable context properties},
9687         {All layout objects},
9688         {Music definitions}.
9690 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9692         * VERSION: release 2.5.5
9693         
9694         * lily/main.cc: use TeX as default output format.
9696         * flower/file-path.cc (find): try to open directly as well, so we
9697         find absolute path files. 
9699         * lily/pango-select.cc: new file.
9701         * scm/framework-ps.scm: remove all encoding code. 
9702         load pfb/pfa for PangoFont too.
9703         
9704         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
9706 2004-12-22  Werner Lemberg  <wl@gnu.org>
9708         Prepare glyph shapes for mf2pt1 conversion.
9710         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
9712         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
9713         (define_triangle_shape): Use it to replace `draw' with `fill' and
9714         `unfill'.  Update all callers.
9715         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
9716         (draw_cross): Ditto.
9717         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
9718         Use penrazor for better conversion with mf2pt1.
9719         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
9720         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
9721         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
9722         draw_la_head, draw_ti_head): Replace `filldraw' with
9723         `fill'.  Update all callers.
9725 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9727         * lily/paper-book.cc (output): revert: only allow a single output
9728         format.
9730         * lily/include/pango-font.hh: new file.
9732         * lily/pango-font.cc: new file.
9734         * lily/font-metric.cc (text_stencil): new routine
9736         * lily/all-font-metrics.cc (find_pango_font): new routine.
9738         * lily/include/font-metric.hh (struct Font_metric): add
9739         text_stencil()
9741         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
9743 2004-12-22  Werner Lemberg  <wl@gnu.org>
9745         Prepare glyph shapes for mf2pt1 conversion.
9747         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
9749         * mf/feta-toevallig.mf: Formatting.
9750         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
9751         ("Natural"): Fix paths to allow better postprocessing.
9752         (draw_meta_flat): Use `z3l' as additional point in path to get
9753         better conversion with mf2pt1.
9754         Other minor cleanups.
9755         ("3/4 Flat"): Add auxiliary points and modify path to replace
9756         `draw' with `fill'.
9757         ("Double Sharp"): Mirror path segments instead of picture elements
9758         to get a single outline.
9759         Modify path to replace `filldraw' with `fill'.
9761 2004-12-22  Graham Percival  <gperlist@shaw.ca>
9763         * input/test/unfold-all-repeats.ly: added file back.
9765         * Documentation/user/notation.itely,
9766         Documentation/user/programming-interface.itely
9767         Documentation/user/changing-defaults.itely: fixed misc broken
9768         links to input/test/ files.
9770 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9772         * tex/texinfo.tex: Update.  We should not be distributing this,
9773         but since we do, use latest version.
9775         * Documentation/user/macros.itexi: Comment-out \fetaflat,
9776         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
9777         macros for feta glyphs.
9779 2004-12-22  Graham Percival  <gperlist@shaw.ca>
9781         * Documentation/user/changing-defaults.itely: fix index for set.
9783         * Documentation/user/converters.itely: added convert-ly bugs list
9784         from CVS.
9786 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9788         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
9789         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
9790         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
9791         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
9793         * mf/GNUmakefile (pfa_warning): Use less broken check.
9795         * python/lilylib.py (setup_environment): Remove cruft from
9796         GS_FONTPATH.
9798         * configure.in: Bump mftrace requirement to 1.1.1.
9800 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9802         * scm/output-svg.scm (beam): Use polygon.
9804         * scm/lily-library.scm: Bugfix.
9806         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
9808         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
9810 2004-12-19  Werner Lemberg  <wl@gnu.org>
9812         Prepare glyph shapes for mf2pt1 conversion.
9814         * mf/feta-eindelijk: Some formatting.
9815         (multi_rest_x, multi_beam_height): Removed.  Unused.
9816         ("Quarter rest"): Use `intersectiontimes' to create a single
9817         outline.
9818         (rest_crook): Removed.  Unused.
9819         (draw_rest_bulb): Return path (without filling).  Update callers.
9820         Simplified.
9821         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
9822         "128th rest"): Simplify `pat'.
9823         Create single outline.
9825 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9827         * mf/GNUmakefile (ALL_GEN_FILES):
9828         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
9830         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
9831         function.
9833 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9835         * scm/output-texstr.scm (placebox): add routine
9837         * VERSION (PACKAGE_NAME): release 2.5.4
9839         * scm/framework-texstr.scm (output-framework): new file.  
9841         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
9842         processing.
9844         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
9846         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
9847         rule.
9849         * configure.in (gui_b): bump mftrace requirement to 1.1.0
9851         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
9853         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
9855 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9857         * scm/framework-svg.scm (dump-page): Implement landscape.
9859 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9861         * lily/main.cc (setup_paths): Add svg to search path.
9863         * scm/output-svg.scm:
9864         * scm/framework-svg.scm: Add pageSet.  Update.
9865         (dump-fonts): New function.
9866         (output-framework): Use it.
9868         * mf/GNUmakefile: 
9869         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
9871 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9873         * tex/lilyponddefs.tex: comment out new ifpdf code.
9875 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9877         * GNUmakefile.in: 
9878         * SConstruct (symlink): Replace afm by otf.
9880         * scm/framework-gnome.scm (gnome-main): Remove invocation of
9881         ly:pango-add-afm-decoder.
9883         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
9885 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9887         * scm/output-ps.scm (new-text): don't access t glyph for getting
9888         space dimension.
9890         * ly/init.ly: warn about \version
9892         * lily/lexer.ll: set version-seen?
9894 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9896         * scm/output-svg.scm (string->entities): Update.
9898 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9900         * lily/main.cc (setup_paths): replace afm by otf for path. 
9902         * lily/pangofc-afm-decoder.cc: remove.
9904         * lily/include/pangofc-afm-decoder.hh: remove.
9906         * scm/framework-scm.scm (output-framework): new file.
9908         * mf/GNUmakefile: remove SAUTER_FONTS.
9909         remove SVG/sodipodi hacks.
9911         * scm/lily-library.scm (stderr): move stderr.
9913         * mf/GNUmakefile: remove AFM support.
9915         * buildscripts/mf-to-table.py (base): remove AFM support.
9917         * lily/open-type-font.cc (design_size): use design_size
9919 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
9921         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
9923 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9925         * mf/GNUmakefile: Generate combined aybabtu info.
9926         * mf/aybabtu.pe.in (i): Load it.
9928         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
9929         are not symbols.
9931         * lily/include/open-type-font.hh (count): New method.
9933         * mf/aybabtu.pe.in: Typo.
9935         * Documentation/user/out/lilypond-internals.nexi (Scheme
9936         functions): Typo.
9938         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
9940 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9942         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
9943         subfonts.
9945         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
9947         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
9948         (tex-font-command-raw): new function.
9950         * lily/include/virtual-font-metric.hh (Module): remove file
9952         * lily/virtual-font-metric.cc (Module): remove file.
9953         
9955         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
9956         (get_indexed_char): read bbox from lily table if present.
9958 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9960         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
9961         aybabtu.subfonts
9963         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
9964         global glyphname. Enables more than 64 glyphs in the OTF.
9966 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9968         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
9969         braces.
9971         * lily/open-type-font.cc (design_size): Use 12 as default for
9972         design size.
9974         * mf/aybabtu.pe.in: New file.  Merge all our braces.
9976         * mf/GNUmakefile: Generate aybabtu.
9978         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
9980 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9982         * scm/lily-library.scm (char->unicode-index): Remove.
9984         * scm/output-gnome.scm (text): Bugfix for plain string input.
9985         Updates.
9987         * scm/output-svg.scm (svg-font): Add weight to font selection.
9989 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9991         * Documentation/topdocs/INSTALL.texi (Top): Point to
9992         buildscripts/out/clean-fonts instead of
9993         buildscripts/clean-fonts.sh. 
9995 2004-12-13  Graham Percival  <gperlist@shaw.ca>
9997         * input/regression/figured-bass.ly: attempt to clarify text.
9999         * Documentation/user/notation.tely: add cindex for tag, attempt to
10000         add figured bass example.
10002         * Documentation/user/changing-defaults: basic editing.
10004 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10006         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
10008         * lily/open-type-font.cc (LY_DEFINE): new function
10009         ly:font-sub-fonts
10011         * lily/include/font-metric.hh (struct Font_metric): new method
10012         sub_fonts()
10014         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
10015         . with - in add.stem.
10016         
10017 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10019         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
10020         and fetaDynamic.
10022         * lily/rest.cc (glyph_name): Change - to . .
10024         * scm/output-gnome.scm (text): Hello world, again.
10026         * scm/output-svg.scm (named-glyph): New function.  Hello world!
10028         * lily/modified-font-metric.cc (index_to_charcode): New method.
10030         * lily/include/font-metric.hh (index_to_charcode): New function.
10032         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
10033         new function.
10034         (ly:font-glyph-to-index): Remove.
10036 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10038         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
10040         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
10042         * lily/open-type-font.cc (load_scheme_table): new function
10044         * lily/dots.cc (print): replace - 
10046         * lily/open-type-font.cc (attachment_point): new function.
10047         (load_table): read LILC table
10049         * buildscripts/gen-bigcheese-scripts.py (Module): new
10050         file. Generate FF scripts.
10052         * mf/feta-din10.mf: idem.
10054         * mf/feta-nummer10.mf: remove mf files.
10056         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
10058 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10060         * lily/lily-guile.cc: Use scm_from_locale_stringn.
10062         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
10063         compatibility.
10065 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10067         * lily/open-type-font.cc (get_indexed_char): scale metrics by
10068         design-size and units_per_EM.
10070         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
10072 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10074         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
10075         does not crash fontforge.
10077         * scm/lily-library.scm (char->unicode-index): Hack to map onto
10078         PUA.
10080 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10082         * scm/framework-ps.scm (ps-embed-cff): new function.
10084         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
10086 2004-12-12  Werner Lemberg  <wl@gnu.org>
10088         * mf/bigcheese.pe.in: Add PUA mapping.
10089         Don't create Type 42 but bare CFF font.
10091 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10093         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
10094         within canvas boundaries.
10096         * mf/merge.pe.in: Set font names, version, license GPL.
10098         * make/substitute.make: Add FONTFORGE.
10100         * config.make.in (FONTFORGE): Add.
10102         * configure.in (gui_b): Use PATH_PROG for fontforge.
10104 2004-12-11  Graham Percival  <gperlist@shaw.ca>
10106         * scm/define-markup-commands.scm: add baseline-skip to info
10107         about \column.
10109 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10111         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
10113         * scm/output-gnome.scm (named-glyph): Use it.
10115         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
10117         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
10118         (upper_string, lower_string, reverse_string): Remove.
10120         * configure.in (fontforge): Reinstate version check.
10122         * ly/engraver-init.ly: Fix clef glyph names.
10124         * lily/time-signature.cc (special_time_signature): Fix fraction
10125         glyph names.
10127 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10129         * mf/merge.pe: new file.
10131         * lily/freetype.cc: new file.
10133         * lily/include/open-type-font.hh (class Open_type_font): new file.
10135         * lily/include/freetype.hh: new file.
10137         * lily/open-type-font.cc: new file.
10139         * lily/all-font-metrics.cc (find_otf): new function.
10141 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10143         * lily/time-signature.cc (special_time_signature): Fix.
10145         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
10146         GTK2 before checking for pango.  Fixes -fgnome.
10148         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
10149         Scheme name.
10151         * scm/define-markup-commands.scm:
10152         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
10154         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
10156         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
10157         date versions.  Fixes configure.
10158         (STEPMAKE_CHECK_VERSION): Support optional actual program version
10159         argument.
10161 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10163         * buildscripts/mf-to-table.py (write_ps_encoding): write real
10164         names in .enc
10166         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
10168 2004-12-09  Graham Percival  <gperlist@shaw.ca>
10170         * Documentation/user/changing-defaults.itely: add info about
10171         make-dynamic-script
10173         * Documentation/user/notation.itely: add link in dynamics to
10174         section about make-dynamic-script.
10176 2004-12-09  Christian hitz  <chhitz@gmx.net>
10178         * lily/lily-guile.cc: change MACOS_X to __APPLE__
10180 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10182         * buildscripts/mf-to-table.py (parse_logfile): use . for
10183         concatting name and group.
10184         (parse_logfile): use M for Minus (negative.)
10186         * lily/include/type-swallow-translator.hh
10187         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
10189         * lily/*.cc: cosmetics around = sign.
10191         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
10192         lyric spacing on the penultimate column.
10194 2004-12-05  Christian Hitz  <chhitz@gmx.net>
10196         * configure.in:
10197         * lily/accidental-placement.cc:
10198         * lily/bar-line.cc:
10199         * lily/beam-concave.cc:
10200         * lily/beam-quanting.cc:
10201         * lily/beam.cc:
10202         * lily/bezier-bow.cc:
10203         * lily/bezier.cc:
10204         * lily/break-align-interface.cc:
10205         * lily/custos.cc:
10206         * lily/dimension-cache.cc:
10207         * lily/dot-column.cc:
10208         * lily/font-metric.cc:
10209         * lily/font-select.cc:
10210         * lily/gourlay-breaking.cc:
10211         * lily/grob-property.cc:
10212         * lily/grob.cc:
10213         * lily/lily-guile.cc:
10214         * lily/line-spanner.cc:
10215         * lily/lookup.cc:
10216         * lily/lyric-extender.cc:
10217         * lily/lyric-hyphen.cc:
10218         * lily/mensural-ligature.cc:
10219         * lily/midi-def.cc:
10220         * lily/misc.cc:
10221         * lily/note-collision.cc:
10222         * lily/note-column.cc:
10223         * lily/note-head.cc:
10224         * lily/paper-outputter.cc:
10225         * lily/percent-repeat-item.cc:
10226         * lily/rest-collision.cc:
10227         * lily/side-position-interface.cc:
10228         * lily/simple-spacer.cc:
10229         * lily/slur-configuration.cc:
10230         * lily/slur-scoring.cc:
10231         * lily/slur.cc:
10232         * lily/spaceable-grob.cc:
10233         * lily/spacing-spanner.cc:
10234         * lily/spanner.cc:
10235         * lily/staff-symbol-referencer.cc:
10236         * lily/stem.cc:
10237         * lily/stencil.cc:
10238         * lily/system-start-delimiter.cc:
10239         * lily/system.cc:
10240         * lily/text-item.cc:
10241         * lily/tie.cc:
10242         * lily/tuplet-bracket.cc:
10243         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
10244         <cmath> beacause isinf/isnan is undefined in <cmath>
10246 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10248         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
10250 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10252         * VERSION: release 2.5.3
10253         
10254 2004-11-29  Arno Waschk <arno@arnowaschk.de>
10256         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
10258 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10260         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
10262         * lily/note-head.cc (internal_print): always try the "s" head if
10263         u/d not found.
10265         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
10267 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10269         * mf/parmesan-heads.mf (overdone_heads): typos.
10271 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10273         * lily/parser.yy (markup): in markups, { .. } without command
10274         before are also flattened, ie \line must be explicitely used.
10276         * Documentation/user/changing-defaults.itely:
10277         * Documentation/user/notation.itely: 
10278         * input/wilhelmus.ly: 
10279         * input/regression/instrument-name-markup.ly: 
10280         * input/regression/markup-score.ly: 
10281         * input/regression/new-markup-scheme.ly: 
10282         * input/regression/new-markup-syntax.ly: 
10283         * input/test/coriolan-margin.ly: use \line in markups where
10284         appropriate
10285         
10286 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10288         * scm/new-markup.scm (map-markup-command-list): helper function
10289         used in parser.yy to map markup commands on a markup list.
10291         * lily/parser.yy: get rid off < > in markups by treating { } as
10292         real lists.
10294         * lily/lexer.ll: remove < > from markup lexer mode.
10296         * scripts/convert-ly.py (conv): add rule for converting 
10297         \markup < > to \markup { }
10299         * ly/titling-init.ly: 
10300         * input/test/coriolan-margin.ly: 
10301         * input/regression/new-markup-syntax.ly: 
10302         * input/regression/new-markup-scheme.ly: 
10303         * input/regression/multi-measure-rest-text.ly: 
10304         * input/regression/markup-stack.ly: 
10305         * input/regression/markup-score.ly: 
10306         * input/regression/instrument-name-markup.ly: 
10307         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
10308         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
10309         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
10310         * input/wilhelmus.ly: 
10311         * Documentation/user/notation.itely: 
10312         * Documentation/user/music-glossary.tely: 
10313         * Documentation/user/changing-defaults.itely: change < > to { } in
10314         markups
10316 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10318         * lily/accidental-placement.cc (position_accidentals): shortcut if
10319         no accidentals to place.
10321 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10323         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
10324         typo s/ly:dimension ?/ly:dimension?/
10326         * input/regression/lily-in-scheme.ly: 
10327         * input/regression/music-function.ly: 
10328         * ly/spanners-init.ly (assertBeamSlope): 
10329         * scm/music-functions.scm (def-grace-function): add the paper
10330         argument to music function definitions.
10332 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10334         * lily/moment.cc (LY_DEFINE):
10335         ly:moment-main-{denominator,numberator}, new function.
10337         * lily/score-engraver.cc (typeset_all): assign to column on basis
10338         of axis-group-parent-X setting.
10340         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
10341         add_element() on basis of axis-group-parent-Y setting.
10343         * lily/grob.cc: add axis-group-parent-{XY} properties.
10345         * input/regression/spacing-stick-out.ly: new file.
10347         * lily/simple-spacer.cc (add_columns): use binary search for
10348         setting column rods. Changes O(n^2) to O(n log(n)) for
10349         constructing spacing problem from columns.
10350         (add_columns): read allow-outside-line to make sure no texts stick
10351         out.
10352         (solve): Simple_spacer::is_active() only determines
10353         satisfies_constraints_ for non-ragged typesetting.
10355         * lily/simultaneous-music.cc (to_relative_octave): only set
10356         old_relative_used if return pitch actually changed.
10358         * scm/define-context-properties.scm
10359         (all-user-translation-properties): change to match implementation.
10361         * python/lilylib.py: Replace re.match by re.search and adds "-c
10362         showpage" to the gs command line (Johannes Schindelin)
10364         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
10365         before processing. Prevents crash when inf is in the extent.
10367         * scm/define-markup-commands.scm (note-by-number): add "s" to
10368         "noteheads-" glyphname.
10370         * lily/parser.yy (Generic_prefix_music): supply parser argument to
10371         music function as well.
10372         
10373 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10375         * VERSION: release 2.5.2
10377         * Documentation/user/changing-defaults.itely (Creating titles):
10378         add breakbefore variable.
10380         * lily/paper-book.cc (set_system_penalty): new function. Set
10381         penalty_ based on breakBefore setting
10383         * lily/context-specced-music-iterator.cc (construct_children):
10384         interpret special context id $uniqueContextId 
10386         * lily/context.cc (create_unique_context): new method. Move
10387         creation of unique (\new) contexts into interpreting phase. This
10388         makes
10390           foo= \new Staff ..
10391           << \foo \foo >>
10393         produce 2 staves.
10394         
10396         * scm/define-music-properties.scm (all-music-properties): add
10397         quoted-voice-direction
10399         * ly/music-functions-init.ly: killCues function.
10401         * scm/music-functions.scm (cue-substitute): move creation of voice
10402         contexts further to the back. 
10404 2004-11-25  Werner Lemberg  <wl@gnu.org>
10406         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
10407         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
10409 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
10411         * buildscripts/guile-gnome.sh: Fixed typo.
10413 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10415         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
10417         * scripts/abc2ly.py (dump_slyrics): add ord(). 
10419         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
10420         to regular engraver. 
10422 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10424         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
10426 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10428         * scm/define-markup-commands.scm (fill-line): Typo.
10430         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
10431         and newer.
10433 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
10435         * ly/dynamic-scripts-init.ly: Fixed typo.
10437 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10439         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
10440         note-head, to have different attachment points for up and down.
10442         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
10444         * mf/feta-generic.mf (else): remove solfa.
10446         * mf/feta-bolletjes.mf (tishape): remove unicode test.
10448         * scm/define-context-properties.scm
10449         (all-user-translation-properties): add shapeNoteStyles property.
10451         * lily/shape-note-heads-engraver.cc (process_music): new file.
10453         * lily/event.cc (transpose): call Event::transpose() for
10454         transposing the tonic.
10456 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10458         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
10459         Unicode/OpenType and AFM.
10461         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
10463 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10465         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
10467         * lily/context.cc (Context): unprotect key from ctor.
10469         * scm/stencil.scm (stack-lines): return empty-stencil if argument
10470         is '()
10471         (stack-stencils): idem.
10473         * Documentation/user/changing-defaults.itely (Creating titles):
10474         document new title layout options.
10476         * lily/parser.yy (lilypond_header_body): copy previous
10477         $globalheader if present.
10479         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
10480         ly:module-copy
10481         
10482         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
10484         * scm/titling.scm: remove old titling functions
10486         * lily/stencil.cc (translate): remove absolute dimension.
10488         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
10489         via markup.
10491         * scm/page-layout.scm (marked-up-headfoot): create header/footer
10492         field from user-supplied markup
10494         * scm/define-markup-commands.scm (on-the-fly): new markup
10495         command. Enter SCM markup procedure directly in Scheme.
10496         (fromproperty): new markup command. Read markup from props argument.
10498         * scm/titling.scm (marked-up-title): create title via
10499         user-specified markup. 
10501         * scm/define-markup-commands.scm (column): remove empty stencils
10502         from column.
10504         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
10505         not have side-effect of creating variable stub.
10507         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
10509 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10511         * scm/encoding.scm (coding-alist): 
10512         * scm/font.scm (add-ec-fonts):
10513         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
10514         Extended-TeX-Font-Encoding---Latin.
10516         * lily/side-position-interface.cc (general_side_position): Add
10517         actual offset to error message (avoid constant error messages).
10519         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
10520         block.
10522         * lily/font-select.cc (select_encoded_font)
10523         (get_font_by_mag_step, get_font_by_design_size): 
10524         * lily/modified-font-metric.cc (Modified_font_metric): 
10525         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
10527         * scm/encoding.scm (coding-alist): Add fetaDynamic.
10528         (read-encoding-file): Bugfix: do not require space after bracket.
10530         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
10531         these do not exist.
10533 2004-11-20  Graham Percival  <gperlist@shaw.ca>
10535         * Documentation/user/notation.itely: added info about typesetting
10536         boxed bar numbers.
10538 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10540         * flower/interval.cc (T_to_string): gcc4 fixes.
10542         * scm/define-markup-commands.scm (fill-line): use
10543         stack-stencils. This fixes problems with putting already centered
10544         stencils in a line.
10546         * VERSION: release 2.5.1
10548         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
10550 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10552         * input/example-[1-3].ly: simplify.
10554         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
10556         * scm/output-ps.scm (new-text): new function. Use glyphshow to
10557         show glyphs.
10559         * scm/encoding.scm (decode-byte-string): new function.
10561         * scripts/convert-ly.py (conv): add warning about
10562         set-global-staff-size.
10564         * Doxyfile: add. 
10566         * scripts/convert-ly.py (conv): add raggedlastbottom rule
10567         (conv): warn for TextSpanner split.
10568         (conv): warn for textheight.
10570 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10572         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
10573         building the documentation, info with images are installed.
10574         (final-install): Fix description.  Mention sourcing of login
10575         scripts (instead of running).
10577 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10579         * Debian lmodern support.  Note that LilyPond will issue warnings
10580         
10581             no such encoding: "FontSpecific"
10583           The font selection mechanism wants to get the encoding from the
10584           font itself, but the idea of lmodern is that it is usable with
10585           different encodings, ie, Lily should get the encoding from the
10586           font tree, rather than the font itself.  This would require some
10587           more work.
10588         
10589         * configure.in: Test for and accept lmodern if EC fonts not found.
10591         * scm/framework-tex.scm (font-load-command): TeX font name
10592         mangling for latin1 encoded cork-lm fonts.
10593         (convert-to-ps): Load lm.map if available.
10595         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
10596         available.
10598         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
10600         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
10601         available.
10603         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
10604         path for absolute file name, that is silly.
10606         * lily/score-engraver.cc (initialize): 
10608         * Documentation/user/GNUmakefile (local-install-info): Invoke
10609         install-info --remove first.
10611         * #include cleanup (Andreas Scherer).
10613 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
10615         * input/test/script-abbreviations.ly: fix typos.
10617 2004-11-17  Werner Lemberg  <wl@gnu.org>
10619         * python/lilylib.py (options_help_str): Support pretty-printing of
10620         newlines in fourth element of option description.
10622         * scripts/lilypond-book.py (option_definitions): Use new lilylib
10623         feature.
10624         Sort options.
10626         * Documentation/user/lilypond-book.itely: Finish update.
10628 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10630         * Documentation/user/macros.itexi: Add comment about \command.
10632         * Documentation/user/lilypond.tely:
10633         * Documentation/user/lilypond-book.itely: Fix names of lilypond
10634         and lilypond-book nodes, so that `info lilypond' visits the manual
10635         at top level, and `info lilypond-book' visits the lilypond-book
10636         section.
10638         * Documentation/user/GNUmakefile (local-install-info): Fix rules
10639         and packager messages.
10641         * lily/pangofc-afm-decoder.cc: Update test.
10643 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10645         * scm/lily-library.scm (char->unicode-index): New function.
10647         * scm/output-gnome.scm: 
10648         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
10650         * Proper naming of file name throughout; s/filename/file[-_]name/.
10652         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
10654         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
10656 2004-11-16  Werner Lemberg  <wl@gnu.org>
10658         * scripts/lilypond-book.py: The Lord has commanded me to use only
10659         tabs for indentation.  Your humble servant obeys.
10661 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10663         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
10664         including font, if LilyPond-feta font is only feta font in path.
10666         * scm/output-gnome.scm (text): Revert to file name of font if font
10667         has no name.  Fixes ec font selection.
10668         (char): Bugfix: do not utf8 twice.  Fixes clefs.
10670         * scm/framework-svg.scm:
10671         * scm/output-svg.scm: New file.  TODO: figure out how to
10672         do character by index in font.
10674         * scm/output-sodipodi.scm: Remove.
10676         * scm/output-ps.scm (stem): Remove.
10678 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10680         * scm/output-gnome.scm (beam): New function.
10681         (slur): Round corners.
10682         (round-filled-box): Round corners.
10684 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10686         * scm/output-gnome.scm (beam): add function.
10687         (draw-line): new routine.
10688         (dashed-line): stub; call draw-line
10689         (polygon): new routine.
10691 2004-11-15  Werner Lemberg  <wl@gnu.org>
10693         * Documentation/user/lilypond-book.itely: Revise section on
10694         lilypond-book options.
10695         Other minor fixes.
10697         * scripts/lilypond-book.py: Change indentation to 4.
10698         Minor formatting.
10700 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10702         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
10703         grobs that have tweaks specced.
10704         
10705 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
10707         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
10709 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10711         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
10712         actual char #, not 0 based index.
10714         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
10716         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
10717         Warning: do make -C mf clean.
10719         * lily/context-property.cc: Compile fix.
10721         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
10722         Grok ec-fonts, braces and dynamics.
10724         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
10726 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10728         * lily/include/tweak-registration.hh: new file.
10730         * lily/tweak-registration.cc: new file.
10732         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
10733         saving tweaks.
10735         * scm/output-gnome.scm (text): comment dribble.
10737 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10739         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
10741         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
10742         path-def before using.  Fixes muchtomany slurs in wrong places
10743         bug.
10745 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10747         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
10749         * lily/include/object-key-undumper.hh (Module): new file.
10751         * lily/object-key-undumper.cc (Module): New file. Deserialize
10752         keys. SCM bindings
10754         * lily/object-key-dumper.cc (Object_key_dumper): idem.
10755         Provide SCM bindings.
10757         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
10758         new file. Serialize object keys.
10759         
10760         * lily/object-key.cc (dump): new function.
10761         (as_scheme): new virtual function
10762         (undump): new function
10763         (undumpers): new table.
10765         * lily/include/global-context.hh (Context): take \score key upon init.
10767         * lily/object-key-dumper.cc (serialize_key): new file.
10769         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
10771         * lily/lily-lexer.cc: remove \quote.
10773         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
10775         * lily/context.cc (Context): take key argument in ctor.
10776         (create_context): new function
10778         * lily/grob.cc (Grob): take key argument in ctor.  
10780         * lily/lilypond-key.cc (do_compare): new file.
10782         * lily/object-key.cc (Object_key): new file.
10784         * lily/include/object-key.hh (class Object_key): new file.
10786         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
10788 2004-11-13  Graham Percival  <gperlist@shaw.ca>
10790         * Documentation/user/lilypond-book.itely: add small warning about
10791         noindent default in lilypond-book.
10793         * Documentation/user/converters.itely: add examples for convert-ly.
10795         * Documentation/user/examples.itely: change version string in templates
10796         to 2.4.0.
10798 2004-11-12  Karl Hammar  <karl@aspodata.se>
10800         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
10801         cmdline, use xargs instead (backportme)
10803 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
10804         
10805         * Documentation/user/: Numerous fixes in the user manual.
10807 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10809         * lily/parser.yy (re_rhythmed_music): search music expression for
10810         context-id, surround by \new Voice if not found. Fixes:
10811         addlyrics-second-staff.ly
10813         * VERSION: 2.5.0 released.
10814         
10815 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10817         * Documentation/index.html.in: Fix url to one big page.  (backportme)
10819         * Documentation/user/GNUmakefile: Separate rules for split and
10820         unsplit html documents.  Remove perl massaging.  (backportme)
10822 2004-11-11  Graham Percival  <gperlist@shaw.ca>
10824         * Documentation/user/lilypond-book.itely: add short warning about
10825         \lilypond{} in LaTeX docs.
10827 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10829         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
10830         found.  (backportme)
10832         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
10833         version requirement.  (backportme)
10835         * configure.in: Be explicit about old versions of
10836         ec-fonts-mtraced.  (backportme)
10838         * lily/context-selector.cc (set_tweaks): New function.
10839         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
10840         web with -DTWEAK.
10842         * Documentation/user/introduction.itely (Automated engraving):
10843         Remove fragment option.  Fixes web.
10845         * lily/context-property.cc (make_item_from_properties):
10846         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
10847         #ifdef.
10849         * scm/define-context-properties.scm
10850         (all-internal-translation-properties): Add tweakRank and tweakCount.
10852         * lily/grob.cc: 
10853         * scm/define-grob-properties.scm (all-internal-grob-properties):
10854         Add tweak-rank and tweak-count.
10856 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10858         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
10859         New function.
10860         (text): Use them.
10862         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
10863         animated/opaque grob dragging tweaks.
10865         * buildscripts/guile-gnome.sh: Update.
10867 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10869         * scm/define-grobs.scm (all-grob-descriptions): Added
10870         line-interface to the LigatureBracket object.
10872 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10874         * scm/framework-gnome.scm (item-event): Support non-animated mouse
10875         dragging tweaks.
10877         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
10879         * lily/context-selector.cc (store_context): New function.
10881         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
10882         (store_grob): New function.
10883         (identify_grob): Add Moment parameter.
10885         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
10886         exists.
10888         * scm/framework-gnome.scm (save-tweaks): Write as alist.
10890 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10892         * scm/framework-gnome.scm (item-event): Print grob id.
10893         (save-tweaks): New function.
10894         (tweak): New funtion.
10895         (item-event): Use it, bound to arrow keys.
10897         * lily/context-property.cc (make_item_from_properties): Register grob.
10898         * lily/context.cc (add_context): Register context.
10900         * lily/include/context-selector.hh:
10901         * lily/include/grob-selector.hh:
10902         * lily/context-selector.cc:
10903         * lily/grob-selector.cc: New file.
10905 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10907         * lily/slur.cc: add 'positions to interface
10909         * lily/main.cc: reinstate PS as standard output format. 
10911         * scm/framework-tex.scm (output-preview-framework): print systems
10912         up to first non title system.
10914         * lily/grace-engraver.cc (start_translation_timestep): split
10915         scm_cadddr
10916         
10917 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10919         * lily/quote-iterator.cc (Module): remove old quote-iterator
10921         * scm/define-music-types.scm (music-descriptions): move
10922         NewQuoteMusic over QuoteMusic
10924         * Documentation/user/notation.itely (Formatting cue notes): use
10925         \cueDuring.
10927         * lily/new-quote-iterator.cc (quote_ok): new function.
10929         * input/regression/quote-cue-during.ly: new file.
10931         * input/regression/quote-grace.ly: new file.
10933         * scm/define-context-properties.scm (Module): change definition of
10934         graceSettings
10936         * lily/context-property.cc (Module): rename from
10937         translator-property.cc
10939         * lily/context.cc (context_name_symbol): new function
10941         * lily/grace-engraver.cc: new file. Set properties for grobs based
10942         on the grace-ness of now_moment().
10944         * scm/music-functions.scm (add-grace-property): use list
10945         iso. vector for graceSettings
10946         remove set-{start,stop}-grace-properties. 
10948         * lily/new-quote-iterator.cc (construct_children): set
10949         quote_outlet_ if no quoted-context-{id,type} specified.
10951         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
10953         * lily/parser.yy (command_element): remove \quote.
10955         * ly/music-functions-init.ly (location): add quoteDuring music
10956         function. 
10958         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
10959         optional semicolon. (backportme)
10961 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10963         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
10964         need to link to GUILE et al.
10966 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10968         * scm/define-music-properties.scm (all-music-properties): add
10969         quoted-context-type, quoted-context-id.
10971         * scm/lily.scm (type-check-list): new function.
10972         
10973         * scm/lily-library.scm: new file. Generic library routines.
10975         * lily/parser.yy (Generic_prefix_music): move typechecking out of
10976         parser.
10978         * ly/music-functions-init.ly: add quoteDuring function.
10980         * lily/include/music-iterator.hh (class Music_iterator): rename
10981         set_translator -> set_context
10983         * lily/parser.yy (Generic_prefix_music_scm): add
10984         MUSIC_FUNCTION_SCM_SCM_MUSIC
10986         * scm/lily.scm (sanitize-command-option): new function. (backportme)
10988         * scm/framework-tex.scm (header): sanitize TeX paper size.
10989         (backportme)
10991 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10993         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
10995         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
10997         * scm/framework-tex.scm (font-load-command): Use T1 if no
10998         font-encoding set.  (backportme)
11000         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
11001         exists before converting.  (backportme)
11003         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
11004         exists before converting.  (backportme)
11005         (convert-to-ps): Remove .ps file if it exists before
11006         converting.  (backportme)
11008         * lily/lexer.ll: Remove extra progress newline, use present tense.
11010         * scm/paper.scm (paper-alist): public.
11011         * scm/framework-tex.scm (convert-to-ps):
11012         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
11013         command line.
11015 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11017         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
11019         * lily/recording-group-engraver.cc (derived_mark): mark
11020         now_events_. (backportme)
11022 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11024         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
11026         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
11027         invoking latex. (backportme.)
11029         * lily/stem.cc (off_callback): center stems for all rest stems.
11031 2004-11-05  Werner Lemberg  <wl@gnu.org>
11033         * Documentation/user/lilypond.tely: Add more guidelines for writing
11034         lilypond texinfo documents.
11036 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
11038         * Documentation/index.html.in: remove <hr>.
11040         * THANKS: change 2.3 to 2.4.
11042 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
11044         * scm/output-gnome.scm: More fontconfig comment.
11046 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
11048         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
11049         <package> directory in $(builddir)/share according with
11050         PACKAGE_NAME defined in the VERSION file.
11052 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11054         * lily/beam.cc (rest_collision_callback): use local beam
11055         multiplicity.
11057         * input/regression/stem-stemlet.ly: new file.
11059         * lily/stem.cc (add_head): store rests as well.
11061         * scm/define-grob-properties.scm (all-user-grob-properties): add
11062         stemlet-length
11064         * lily/stem.cc: store rests as well.
11065         
11066         * input/regression/new-slur.ly: mention forcing.
11068 2004-11-04  Werner Lemberg  <wl@gnu.org>
11070         * Documentation/user/*: A new round of layout fixes and document
11071         structure cleanup.
11073 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
11075         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
11077 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11079         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
11081 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11083         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
11085         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
11087         * lily/main.cc (main): Invoke identify.
11089         * scm/lily.scm (postscript->pdf): Remove progress newline.
11090         Write progress to stderr.
11092         * lily/paper-book.cc (output): Remove progress newline.
11094         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
11095         gettext on user messages, and remove whitespace.
11097         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
11099         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
11100         argv[0] (Thomas Scharkowski).
11102         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
11103         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
11104         for ec-fonts-mtraced.
11106         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
11107         --srcdir build (Bertalan).
11109         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
11110         headers and library too (Laura Conrad).
11112         * Documentation/topdocs/INSTALL.texi (Top): Mention development
11113         package for guile too (Laura Conrad).
11115         * lily/main.cc (usage): Typo.
11117 2004-11-02  Werner Lemberg  <wl@gnu.org>
11119         * Documentation/user/notation.ly: More fixes to improve appearance.
11121         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
11122         better output for multicolumn tables.
11124 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11126         * lily/main.cc (dir_info): Fixed typo in the printouts.
11128 2004-11-01  Werner Lemberg  <wl@gnu.org>
11130         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
11131         of output.
11132         Set `per_line' to 2; replace hard-coded value with it.
11134         * Documentation/user/*: Many fixes to improve appearance of
11135         printed manual.
11137 2004-11-01  Werner Lemberg  <wl@gnu.org>
11139         * Documentation/user/changing-defaults.itely,
11140         Documentation/user/notation.ly,
11141         Documentation/user/programming-interface.itely: Use @/.
11142         Fix formatting of some lilypond snippets and tables.
11144         * scripts/lilypond-book.py (compose_ly): Provide useful default
11145         for LINEWIDTH in `override'.
11147 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11149         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
11151 2004-10-31  Werner Lemberg  <wl@gnu.org>
11153         Resetting @exampleindent to `5' gives ugly results with texinfo's
11154         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
11155         (if not quoting) to change @exampleindent only locally.
11157         * scripts/lilypond-book.py (NOQUOTE): New variable.
11158         (output) [LATEX]: Remove AFTER and BEFORE.
11159         [TEXINFO]: Remove AFTER and BEFORE.
11160         Fix QUOTE and VERBATIM pattern.
11161         Add NOQUOTE pattern.
11162         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
11163         and BEFORE.
11164         [output_texinfo]: Use NOQUOTE.
11166 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11168         * Documentation/user/changing-defaults.itely: clarify paper
11169         size commands with correct info.
11171         * Documentation/user/lilypond-book.itely: add more docs for
11172         filename extensions.
11174 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11176         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
11177         (PATCH_LEVEL): start 2.5.0.
11179 #Local variables:
11180 #coding: utf-8
11181 #End: