]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
4d68a41a6346e8e5917f223c715b218931adb296
[lilypond.git] / ChangeLog
1 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2
3         * python/rational.py: python 2.3 compat.
4
5         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6         option formatting, lilypond style.
7
8         * python/musicexp.py: grab from Ikebana: a library for composing
9         ly music expressions. 
10         (Output_printer): class for advanced .ly printing.
11         (eg. tupletting) 
12
13         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
14         convert to pythonesque structure.
15
16         * python/rational.py: PD rational number class.
17
18         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
19
20 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
21
22         * lily/part-combine-iterator.cc: Minor bugfix
23         
24         * THANKS: Update bughunters
25
26 2005-12-02  Werner Lemberg  <wl@gnu.org>
27
28         * mf/README: Document process for proper mf2pt1 conversion.
29
30         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
31         overlapping.
32
33         * mf/feta-harmonica.mf: Removed.  Unused.
34
35 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
36
37         * scripts/lilypond-book.py (do_file): fix thinkos.
38
39 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
40
41         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
42         ($(outdir)/parser.cc): 
43         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
44
45 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
46
47         * ly/titling-init.ly (tagline): it should be a space between
48         "Music engraving by LilyPond" and the version number.
49
50 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
51
52         * VERSION (PACKAGE_NAME): release 2.7.20
53
54 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
55
56         * scm/define-markup-commands.scm (pad-to-box): new markup command.
57
58         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
59         1.0.
60         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
61
62 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
63
64         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
65
66         * kpath-guile/: remove directory
67
68         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
69         file. Encapsulate kpathsea using commandline tools.
70
71         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
72         kpathsea) module.
73
74 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
75
76         * Documentation/user/advanced-notation.itely (Setting automatic
77         beam behavior): Correct a few typos. Thanks to David Bobroff.
78
79         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
80         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
81
82 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
83
84         * scripts/*.py: gmane address for bugs.
85
86 2005-11-28 Pal Benko <benkop@freestart.hu>
87         
88         * make/ly-rules.make: add -f switch to mv
89
90         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
91
92         * lily/bar-line.cc: interpret it
93
94 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
95
96         * configure.in (--disable-documentation): New switch.
97
98         * GNUmakefile.in: Use it.
99
100         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
101
102 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
103
104         * scripts/lilypond-book.py (do_file): search chunks for
105         \\begin{document}
106
107         * GNUmakefile.in: add copy step in between so we can lose the
108         out-www directories.
109
110 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
111
112         * lily/pango-font.cc (pango_item_string_stencil): put
113         geometry.width into glyph-string too.
114
115 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
116
117         * scm/define-music-display-methods.scm (RevertProperty):
118         (OverrideProperty): Use grob-property-path property, a list of
119         symbols, instead of grob-property, which used to be a single
120         symbol.
121         (BassFigureEvent): a figure can be a plain number, not necessarily a
122         markup.
123
124 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
125
126         * VERSION: release 2.7.19
127         
128         * lily/figured-bass-engraver.cc (process_music): check
129         figuredBassCenterContinuations first.
130
131         * scm/translation-functions.scm (format-bass-figure): make double
132         sharp larger. 
133
134         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
135         determine X-parent.
136
137         * lily/system-start-delimiter-engraver.cc: move from
138         Nested_system_start_delimiter_engraver, rename
139         Nested_system_start_delimiter_engraver ->
140         System_start_delimiter_engraver.
141
142         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
143         bracket type from hierarchy.
144
145 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
146
147         * lily/rest.cc (y_offset_callback): read staff-position.
148
149         * scm/define-grob-properties.scm (all-user-grob-properties): don't
150         mark after-line-breaking-callback as internal.
151
152         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
153
154 2005-11-25  Werner Lemberg  <wl@gnu.org>
155
156         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
157
158 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
159
160         * stepmake/bin/add-html-footer.py (do_file): add google
161
162         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
163         staff if first_start_ is true.
164
165 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
166
167         * scripts/midi2ly.py (split_track): add __repr__ members.
168         (track_first_item): only return Item if not None. This fixes a
169         problem when dumping a track that starts with an empty channel.
170
171         * python/midi.c: doc module.
172
173 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
174
175         * Documentation/user/global.itely (Creating MIDI files): Fix
176         compilation problem.
177
178 2005-11-22  Graham Percival  <gpermus@gmail.com>
179
180         * Documentation/user/basic-notation.itely: clarify dynamic
181         padding text.
182
183         * Documentation/user/advanced-notation.itely: add unicode
184         escape control example, whatever that is.  :)
185
186         * Documentation/user/global.itely: added "removing dynamics
187         from MIDI" code.
188
189 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
190
191         * VERSION (PATCH_LEVEL): release 2.7.18
192
193         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
194         System_start_delimiter_engraver by
195         Nested_system_start_delimiter_engraver.
196
197         * lily/nested-system-start-delimiter-engraver.cc (struct
198         Bracket_nesting_node): new class.
199         (struct Bracket_nesting_group): new class
200         (struct Bracket_nesting_staff): new class.
201         (process_music): create hierarchy of grobs. This allows separate
202         tuning of different SSDs. 
203
204         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
205         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
206
207 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
208
209         * lily/side-position-interface.cc (aligned_side): multiply
210         staff_radius by 2.
211
212         * lily/script-engraver.cc (make_script_from_event): allow setting
213         values to '()
214
215 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
216
217         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
218
219         * scm/define-grobs.scm (all-grob-descriptions): new grob
220         NestedSystemStartDelimiter.
221
222         * input/regression/system-start-heavy-bar.ly: new file.
223
224         * lily/nested-system-start-delimiter-engraver.cc: new file.
225
226         * lily/nested-system-start-delimiter.cc: new file.
227
228         * input/regression/system-start-nesting.ly: new file.
229
230         * scm/define-grobs.scm (all-grob-descriptions): use X side
231         positioning for positioning braces for nested contexts.
232
233         * lily/system-start-delimiter.cc (print): don't divide extent by
234         staff_space.
235         (print): use style iso. glyph.
236         (staff_bracket): translate glyph inside routine already.
237
238 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
239
240         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
241         names.
242
243 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
244
245         * scm/define-context-properties.scm
246         (all-user-translation-properties): rename figuredBassFormatter
247         from newFiguredBassFormatter.
248
249         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
250
251         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
252
253         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
254
255         * lily/beam.cc (calc_beaming): new function.
256         (calc_shorten): new function.
257
258         * THANKS: add Edward Neeman.
259
260         * input/regression/accidental-clef-change.ly: new file.
261
262         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
263
264         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
265
266         * lily/clef-engraver.cc (inspect_clef_properties): reset
267         localKeySignature for clef changes.
268
269 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
270
271         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
272         add dummy definition that works in Linux and add information in
273         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
274
275         * Documentation/user/changing-defaults.itely (Modifying context
276         plug-ins): Add index for \with.
277
278         * Documentation/user/music-glossary.tely (dal segno): Updated
279         example to version >=2.6.
280
281 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
282
283         * Documentation/user/instrument-notation.itely (Printing chord
284         names): Reorder \chordmode and \repeat in one example.
285
286 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
287
288         * VERSION: release 2.7.17
289         
290         * Documentation/topdocs/NEWS.tely (Top): add note about
291         refactoring.
292
293         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
294         new function. Search region of 3 positions for best tie.
295         (score_configuration): new function.
296         (score_aptitude): new function.
297         (generate_configuration): new function.
298         (get_configuration): new function.
299         (Tie_formatting_problem): new function
300
301         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
302
303         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
304
305         * THANKS: add Eduardo Vieira & Ralph Little
306
307         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
308         narrower.
309
310         * lily/include/tie-formatting-problem.hh (class
311         Tie_formatting_problem): add Tie_details to
312         Tie_formatting_problem. Update calling conventions.
313
314         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
315         config.make.
316
317         * Documentation/user/lilypond.tely: remove musedata2ly entry.
318
319 2005-11-16  JĂĽrgen Reuter  <reuter@ipd.uka.de>
320
321         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
322         scm/define-context-properties.scm: Maintenance bugfix: make
323         ligature brackets work again by removing obsolete ligature
324         primitive callback push/pop.
325
326         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
327         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
328         value.
329
330 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
331
332         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
333         used and do not call it a path.
334         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
335
336 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
337
338         * lily/include/tie-formatting-problem.hh (class
339         Tie_formatting_problem): new file.
340
341         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
342
343         * Documentation/misc/ChangeLog-2.3:  new file.
344
345         * lily/audio-staff.cc (output): degarianize.
346
347 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
348
349         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
350         Unset PYTHONOPTIMIZE.  Fixes install if set.
351
352 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
353
354         * python/convertrules.py (conv): add warning about drums. 
355
356         * make/stepmake.make: include toplevel-version.make after config.make.
357
358         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
359         also allow python2.4
360
361         * config.make.in (configure-srcdir): remove GXX GCC vars.
362
363         * stepmake/aclocal.m4: don't do non-srcdir build with
364         symlinks. Use inclusion, so the src directory name can be changed.
365
366 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
367
368         * make/mutopia-vars.make:
369         * make/ly-vars.make: Use src-wildcard iso wildcard for source
370         files.
371
372 2005-11-13  Werner Lemberg  <wl@gnu.org>
373
374         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
375         but the affected path.  This ensures that the (overlapping) outlines
376         have the same direction, which is a necessary prerequisite for
377         FontForge's algorithm to remove overlaps.
378         Formatting.
379
380         * mf/feta-haak.mf: Formatting.
381         (draw_bracket): Slightly modify outline to avoid an unnecessary
382         corner.
383         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
384         them from the affected paths.
385
386 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
387
388         * mf/README: remove xpm / accordion notes.
389
390         * lily/tie-column-format.cc (set_chord_outline): add dots into
391         skyline extents. This fixes tie formatting if the left head has dots.
392
393         * lily/tie.cc (get_configuration): only shift tie by a whole staff
394         space inside the staff.
395         (get_configuration): shift another position if necessary in case
396         of left head tie  
397
398 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
399
400         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
401         buildscript-dir iso. $(depth)/buildscripts.
402
403         * tex/GNUmakefile (local-uninstall): remove
404         music-drawing-routines.ps juggling.
405
406         * stepmake/stepmake/install-targets.make (local-install-files):
407         prepend src-dir to install targets.
408
409         * lily/system-start-delimiter-engraver.cc
410         (acknowledge_system_start_delimiter): use
411         add_offset_callback(). This fixes translation of nested
412         staffgroups.
413
414         * lily/grob-closure.cc (add_offset_callback): only encaps in
415         simple_closure if it's a procedure.
416         
417         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
418         from bar-line.
419
420         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
421         remove-empty where pertinent.
422
423 2005-11-12  Graham Percival  <gpermus@gmail.com>
424
425         * Documentation/user/instrument-notation.itely: added
426         Cameron Horsburgh's multiple stanzas docs.  Thanks!
427
428 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
429
430         * lily/GNUmakefile
431         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
432         make picture in builddir, not srcdir.
433
434 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
435
436         * VERSION: release 2.7.16
437         
438         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
439         shell arguments. 
440
441 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
442
443         * Documentation/user/examples.itely (Piano templates): Minor
444         modification to the Piano centered lyrics example.
445
446 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
447
448         * scripts/lilypond-invoke-editor.scm (run-browser): look at
449         $BROWSER.
450
451         * Documentation/user/point-and-click.itely: simplify p&c
452         instruction: don't configure firefox. Put lilypond-invoke-editor
453         in front of the browser.
454
455         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
456         (run-browser): new function.
457
458         * lily/parser.yy (Lily_lexer): recognize Book
459
460         * lily/book.cc (clone): new function
461
462         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
463
464 2005-11-10  JĂĽrgen Reuter  <reuter@ipd.uka.de>
465
466         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
467         Maintenance bugfix: reduce number of font related warnings by
468         updating naming conventions for glyph-name.
469
470 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
471
472         * scm/define-grobs.scm (all-grob-descriptions): add
473         rhythmic-grob-interface to TabNoteHead.
474
475         * scm/layout-beam.scm (check-quant-callbacks): remove
476         set_stem_lengths()
477
478 2005-11-08  JĂĽrgen Reuter  <reuter@ipd.uka.de>
479
480         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
481         alignment of centered divisiones.
482
483         * scm/scripts.scm (articulations): Maintenance bugfix:
484         follow-into-staff -> quantize-position.
485
486         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
487         plica head in porrectus deminutus.
488
489 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
490
491         * make/lilypond.fedora.spec.in (Group): add %clean section.
492
493         * lily/tuplet-bracket.cc (print): change check: remove bracket if
494         less then 1/5th of total length.  
495         (print): use gap too.  Fixes tupletUp-single-bracket.ly
496
497         * scm/music-functions.scm (glue-mm-rest-texts): also put other
498         events into EventChord. This fixes textspanners on mm rests. Fixes
499         spanner-rest.ly
500
501         * lily/side-position-interface.cc (get_axis): read side-axis
502         (set_axis): set side-axis.
503
504         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
505         properties everywhere.
506
507         * lily/spacing-spanner.cc (breakable_column_spacing): add
508         average-spacing-wishes. Take maximum if not set.
509         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
510
511         * scm/define-grobs.scm (all-grob-descriptions): add
512         average-spacing-wishes.
513
514         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
515         offset callbacks. This fixes alignment for Fingering objects.
516
517         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
518         space for key - timesig combination. 
519
520         * input/regression/script-stem-tremolo.ly (Module): new file.
521
522         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
523         to key sig.
524
525         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
526         Fixes: c-tremolo-script.ly.
527         
528         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
529
530         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
531         
532         * scm/define-grobs.scm (all-grob-descriptions): remove
533         self-X-offset. Fixes alignment of octavate-8.
534
535         * scripts/lilypond-book.py (datadir): look in
536         LILYPONDPREFIX/share/lilypond/current/
537
538         * GNUmakefile.in: symlink current to <VERSION>. 
539
540 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
541
542         * lily/main.cc: eps listed as a backend.
543
544 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
545
546         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
547
548 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
549
550         * lily/include/score.hh (class Score): remove texts_ member.
551
552         * lily/beam.cc (set_stem_lengths): force direction callback.
553         (print): read quantized-positions, so we can force
554         Beam::set_stem_lengths to occur.
555         (rest_collision_callback): use common X parent. 
556
557 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
558
559         * flower/file-path.cc (find): Bugfix: Return name of file found.
560
561         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
562         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
563         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
564
565 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
566
567         * flower/offset.cc: idem.
568
569         * mf/*.mf: update email address.
570
571         * lily/font-config-scheme.cc:  new file.
572
573         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
574
575         * lily/*:  cs.uu.nl -> xs4all.nl
576
577         * VERSION (PATCH_LEVEL): release 2.7.15
578
579         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
580         spec files.
581
582         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
583
584 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
585
586         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
587
588         * lily/staff-performer.cc (process_music): add audio
589         elements. This makes MIDI instrument changes work once again.
590
591         * lily/main.cc (LY_DEFINE): add gmane address.
592
593         * lily/beam.cc: remove calc_positions()
594
595         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
596         original_ in private scope.
597         (class Grob): drop pscore_ pointer, change to output_def pointer.
598         (class Grob): cleanup class definition.
599
600         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
601
602 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
603
604         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
605         absolute.  Better diagnostics.
606
607         * GNUmakefile.in: Add bin/ to tree and populate with some links.
608         This makes lilypond run from the build directory using argv0
609         relocation (without any --prefix or LILYPONDPREFIX setting).
610
611 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
612
613         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
614
615         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
616         with simple-closure.
617
618         * lily/self-aligment-interface.cc (set_align_self): new function
619         (set_center_parent): new function.
620
621         * lily/side-position-interface.cc (set_axis): new function.
622
623         * lily/new-fingering-engraver.cc (position_scripts): use drul for
624         generic code. 
625
626         * scm/define-grob-properties.scm (all-user-grob-properties):
627         remove [XY]-offset-callbacks add [YX]-offset
628         
629 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
630
631         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
632         entry for time signatures after breathing signs. Bug report by
633         Scott Russell.
634
635 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
636
637         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
638         not absolute, make it absolute using PATH.
639
640 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
641
642         * python/midi.c (initmidi): Fix type for mingw.
643
644 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
645
646         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
647
648         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
649         cross compiling.
650
651         * stepmake/aclocal.m4: Support python cross compiling.
652
653         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
654         Add mingw section.
655
656 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
657
658         * scm/output-lib.scm (chain-grob-member-functions): replace
659         chained-callback.cc
660
661         * lily/chained-callback.cc (Module): remove file.
662
663         * lily/rest-collision.cc (force_shift_callback_rest): change to
664         chained callback.
665
666         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
667
668         * lily/grob.cc (y_parent_positioning): remove axis argument from
669         parent_positioning callbacks.
670         (Grob): junk init code
671         (get_offset): use generic property callbacks for
672         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
673         (axis_parent_positioning): new function
674         (axis_offset_symbol): new function
675         (chain_offset_callback): new function
676         (add_offset_callback): new function
677
678         * lily/beam.cc (rest_collision_callback): change signature; this
679         is now a chained callback.
680
681         * lily/include/dimension-cache.hh (class Dimension_cache): remove
682         callback administration.
683
684         * lily/simple-closure.cc: new file. Smob type that allows "grob
685         member functions",
686
687             (ly:make-simple-closure FUNC A B)
688
689         is evaluated as (FUNC grob A B). This allows chaining of callbacks
690         in various ways.
691
692         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
693         callbacks.
694
695         * lily/slur.cc (outside_slur_callback): take 2 arguments.
696
697         * lily/rest.cc (polyphonic_offset_callback): remove.
698
699         * lily/script-engraver.cc (try_music): remove bool* argument.
700
701         * scm/script.scm (default-script-alist): set quantize-position
702         appropriately.
703
704         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
705
706         * lily/side-position-interface.cc (aligned_side): move staff
707         position quantization from
708         Side_position_interface::quantised_position().
709         (quantised_position): remove
710         
711 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
712
713         * input/regression/beam-quant-standard.ly: reindent, set
714         debug-beam-quanting to #t.
715
716         * lily/beam-concave.cc (calc_concaveness): set concaveness to
717         10000 if this is a "hard" concave beam.
718
719         * lily/beam.cc (calc_least_squares_positions): change from
720         calc_least_squares_dy
721         (set_stem_lengths): this is now a chained callback.
722
723         * lily/context-property.cc (execute_general_pushpop_property):
724         bugfix override with procedure should have effect.
725
726         * scm/define-grob-properties.scm (all-internal-grob-properties):
727         remove position-callbacks.
728
729         * scm/define-grobs.scm (all-grob-descriptions): use
730         ly:make-callback-chain for positions property.
731
732         * scm/layout-beam.scm (check-quant-callbacks): return list of
733         chained callbacks.
734
735         * scm/lily.scm (type-p-name-alist): add callback-chain
736
737         * lily/lily-guile.cc (type_check_assignment): type check failure
738         is warning not message.
739
740         * lily/grob-property.cc (try_callback): walk callback chain if
741         appropriate.
742
743         * lily/chained-callback.cc: new file. new smob type.
744
745         * lily/lily-guile.cc (procedure_arity): new function.
746
747 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
748
749         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
750
751 2005-10-25  John Mandereau  <john.mandereau@free.fr>
752  
753         * Documentation/user/instrument-notation.itely (Figured bass):
754         describe new features
755
756 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
757
758         * lily/beam.cc (calc_least_squares_dy): use property callback.
759
760         * lily/beam-concave.cc (calc_concaveness): use property callback.
761
762         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
763
764 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
765
766         * HACKING: Update.
767
768 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
769
770         * scm/layout-page-layout.scm (page-headfoot): annotate
771         pagetopspace too.
772
773         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
774
775         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
776         doesn't take y-space.
777
778         * scm/paper.scm (paper-alist): fix A7 dimensions. 
779
780 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
781
782         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
783         src-wildcard, remove $(wildcard).
784
785         * po/GNUmakefile (PO_FILES): 
786         * ps/GNUmakefile (PS_FILES): 
787         * tex/GNUmakefile (TEX_FILES): 
788         * cygwin/GNUmakefile (POSTINSTALLS):
789         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
790         some wildcard calls.
791
792 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
793
794         * THANKS: add Thomas Bushnell.
795
796 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
797
798         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
799         (lilypond-main): Redirect to gui-main if 'gui is set.
800         Backportme.
801
802         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
803         for alternative installations kludging s/share/lib/g
804         LILYPONDPREFIX. Backportme.
805
806         * SConstruct (libdir_package_version): Define.
807
808         * python/SConscript: 
809         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
810         module in libdir.  Backportme.
811
812 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
813
814         * lily/main.cc: clarify --safe.
815
816 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
817
818         * VERSION: release 2.7.14
819         
820         * Documentation/user/*.itely: remove minimumVerticalExtent.
821
822         * scm/define-grobs.scm (all-grob-descriptions): remove
823         RemoveEmptyVerticalGroup
824
825         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
826
827         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
828         compile on MOSX
829
830         * python/convertrules.py (conv): add rules.
831
832         * lily/grob.cc: remove is_empty()
833
834         * lily/grob-property.cc: remove add_to_list_property().
835
836         * scripts/convert-ly.py (datadir): add prefix switching hack to
837         .py too.
838
839         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
840         space-function tweak.
841
842         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
843
844         * scm/define-grob-properties.scm (all-user-grob-properties):
845         remove callback property.
846
847         * lily/include/grob.hh (class Grob): remove property_callbacks_
848         member. Properties of procedure type are assumed to be callbacks.
849
850         * lily/ligature-engraver.cc (override_stencil_callback):
851         rewrite. Use noteHeadLigaturePrimitive as source.
852
853         * scm/define-grob-properties.scm (all-internal-grob-properties):
854         remove ligature-primitive-callback
855
856         * lily/include/dimension-cache.hh (class Dimension_cache): make
857         class, with Grob as friend.
858
859         * lily/grob.cc: remove set_extent_callback(), set_extent() and
860         has_extent_callback()
861
862         * scm/translation-functions.scm (format-new-bass-figure): read
863         figuredBassPlusDirection
864
865         * scm/define-context-properties.scm
866         (all-user-translation-properties): add figuredBassPlusDirection.
867
868         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
869
870         * lily/align-interface.cc (set_ordered): new function.
871
872         * lily/grob.cc (flush_extent_cache): rewrite.
873
874         * lily/dimension-cache.cc (Dimension_cache): cache extent as
875         Interval pointer directly.
876
877         * lily/main.cc (setup_paths): insert extra / .
878         (setup_paths): junk cff entry.
879
880         * lily/font-config.cc (init_fontconfig): only add type1 / otf
881         directories.
882
883         * lily/axis-group-engraver.cc (finalize): remove
884         extraVerticalExtent, minimumVerticalExtent verticalExtent.
885
886         * lily/grob.cc (Grob): don't set extent from ctor.
887         (extent): use property callbacks. 
888
889         * lily/axis-group-interface.cc: remove set_axes() function.
890
891         * lily/grob-property.cc (del_property): new function.
892
893 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
894
895         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
896         
897 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
898
899         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
900
901 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
902
903         * mf/SConscript: Updates.
904
905         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
906
907         * stepmake/stepmake/*:
908         * */GNUmakefile:
909         * config.make.in:
910         * GNUmakefile.in:
911         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
912         from any directory in build-dir.  Cleanups.
913
914         * make/srcdir.make.in: Remove.
915
916         * lily/main.cc (setup_paths): Fix and document build-dir hack.
917
918         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
919         main).
920
921         * lily/SConscript: Remove ttftools.
922
923         * SConstruct: Resurrect.
924
925 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
926
927         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
928         Y coordinate. 
929
930         * lily/paper-book.cc (add_score_title): put Paper_score title into
931         systems_ list.
932
933         * scm/translation-functions.scm (format-new-bass-figure): also
934         allow plus in combination with _
935
936 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
937
938         * VERSION: 2.7.13 released.
939
940         * lily/note-collision.cc (check_meshing_chords): don't wipe
941         stencil, merely set transparent.
942
943         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
944         (Top): document #'callbacks.
945         (Top): document nested \override.
946
947         * input/regression/figured-bass.ly: update for slash and pluses.
948
949         * input/regression/figured-bass-continuation-forbid.ly (Module):
950         new file.
951
952         * scm/translation-functions.scm (format-new-bass-figure): use
953         slashed-digit if diminished is set.
954         (format-new-bass-figure): add + if 'augmented is set.
955
956         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
957
958         * input/test/piano-staff-distance.ly: remove file.
959
960         * Documentation/user/advanced-notation.itely (Formatting cue
961         notes): use length-fraction for making stems/beams smaller.
962
963         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
964         modifications.
965
966         * lily/new-figured-bass-engraver.cc: new property
967         centerFiguredBassContinuations
968
969         * Documentation/user/changing-defaults.itely (Difficult tweaks):
970         use callbacks.
971
972         * lily/context-property.cc (execute_general_pushpop_property):
973         robustness checks.
974
975         * input/regression/override-nest.ly: new file.
976
977         * python/convertrules.py (FatalConversionError.subber): conversion
978         rule for #'callbacks
979
980         * input/regression/override-nest.ly: new function.
981
982         * lily/parser.yy (music_property_def): allow \override #'a #'b =
983         #c too. 
984
985         * lily/context-property.cc (lookup_nested_property): new function.
986         (evict_from_alist): new function.
987         (general_pushpop_property): new function.
988         (execute_general_pushpop_property): rewrite. Support nested
989         properties too.
990
991 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
992
993         * lily/beam.cc: use length-fraction too.
994
995         * scm/define-grob-properties.scm (all-user-grob-properties):
996         remove property flag-width-function
997         (all-user-grob-properties): remove space-function.
998
999         * scm/layout-beam.scm: remove flag-width-function.
1000
1001         * lily/beam.cc: remove flag-width-function
1002
1003         * scm/layout-beam.scm: remove beam dir functions.
1004
1005         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
1006
1007         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
1008         for easier grace tweaks.
1009
1010         * lily/beam.cc: remove dir-function.
1011
1012         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
1013
1014         * lily/grob.cc: remove spacing-procedure.
1015
1016         * lily/note-head.cc (calc_stem_attachment): new function.
1017         (internal_print): use callback to get glyph-name.
1018
1019         * lily/grob-property.cc (get_interfaces): new function.
1020
1021         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
1022
1023         * lily/stem.cc (calc_stem_end_position): new function.
1024         (calc_length): new function.
1025         document details for stem.
1026         remove Stem::get_direction()
1027
1028         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
1029
1030         * lily/grob-property.cc (set_callback): new function.
1031
1032         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
1033
1034         * lily/item-scheme.cc: new file.
1035
1036         * lily/bar-line.cc (before_line_breaking): remove function.
1037         remove bar-size-procedure, break-glyph-function
1038
1039         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
1040
1041         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
1042
1043         * lily/system-start-delimiter.cc (print): suicide from
1044         here. Remove after_line_breaking_callback.
1045
1046         * lily/script-interface.cc (calc_direction): use callback for direction.
1047
1048         * lily/side-position-interface.cc (aligned_side): don't use
1049         Side_position_interface::get_direction directly. Use callback. 
1050
1051         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
1052         calculate stencil.
1053         (get_print_stencil): rename from get_stencil: create stencil with
1054         transparency, color and cause. 
1055
1056         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
1057
1058         * python/convertrules.py (conv): insert temporary warning rule.
1059
1060         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
1061
1062         * lily/grob-property.cc (try_callback): remove marker if applicable.
1063
1064         * lily/grob.cc: elucidate doc about after/before-line-breaking
1065
1066         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
1067
1068         * lily/stem.cc (height): idem.
1069
1070         * lily/stem-tremolo.cc: idem.
1071
1072         * lily/slur.cc (height): don't use get_uncached_stencil()
1073
1074         * lily/rest.cc (y_offset_callback): use offset callback
1075         iso. after-line-breaking callback.
1076
1077         * lily/grob.cc: change after/before-line-breaking-callback to
1078         after/before-line-breaking dummy properties.
1079
1080         * lily/include/grob.hh: remove Grob_status.
1081
1082         * scm/define-context-properties.scm
1083         (all-user-translation-properties): remove verticalAlignmentChildCallback
1084
1085         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
1086         (calc_direction): use callback
1087         (calc_positions): use callback.
1088
1089         * lily/tie.cc (calc_direction): use callback. Only call parent
1090         positioning for more than one tie.
1091
1092         * lily/tie-column.cc (calc_positioning_done): use callback
1093
1094         * lily/slur-scoring.cc (calc_control_points): use callback
1095
1096         * lily/slur.cc (calc_direction): use callback.
1097
1098         * lily/note-collision.cc (force_shift_callback): remove.
1099
1100         * lily/dot-column.cc (force_shift_callback): remove. Use
1101         other_axis_parent_positioning.
1102
1103         * lily/grob.cc (other_axis_parent_positioning): new function.
1104         (same_axis_parent_positioning): new function
1105
1106         * lily/align-interface.cc (alignment_callback): remove function.
1107
1108         * lily/note-collision.cc (calc_positioning_done): use callback.
1109
1110         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
1111         (calc_direction): idem.
1112         remove print function.
1113
1114         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
1115
1116         * lily/dot-column.cc (calc_positioning_done): use callback.
1117
1118         * lily/break-align-interface.cc (calc_positioning_done): use callback.
1119
1120         * lily/beam.cc (calc_direction): use pseudo-property for beam
1121         direction callback.
1122         (calc_positions): use callback 
1123
1124         * lily/align-interface.cc (calc_positioning_done): use
1125         callback. Fold fixed  distance and normal alignment in one function.
1126
1127         * lily/stem.cc (calc_stem_end_position): use callback.
1128         (calc_positioning_done): idem.
1129         (calc_direction): idem.
1130         (calc_stem_end_position): idem
1131         (calc_stem_info): idem.
1132
1133         * lily/grob-property.cc (get_property_data): new function: 
1134         (try_callback): new function.
1135
1136         * scm/define-grob-properties.scm (all-user-grob-properties): doc
1137         callbacks property.
1138
1139         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
1140
1141 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1142
1143         * lily/tie.cc (get_position): robustness fix. Don't crash if a
1144         tie
1145         has no heads.
1146         
1147         * lily/include/*.hh (Module): compile fixes.
1148
1149 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
1150
1151         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
1152         as an argument for char-syntax: use (char-syntax (or nil 0)) 
1153         instead of (char-syntax nil), thanks to Milan Zamazal.
1154
1155 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1156
1157         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
1158         dist.
1159
1160         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
1161         themselves.
1162
1163 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1164
1165         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
1166         add class_name() method.
1167
1168         * lily/music-scheme.cc: remove ly:music-name.
1169
1170 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1171
1172         * cygwin/postinstall-lilypond.sh: Remove cruft.
1173
1174         * cygwin/postremove-lilypond.sh: Remove.
1175
1176         * cygwin/GNUmakefile (default): Remove postremove rules.
1177
1178 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1179
1180         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
1181         even header too.
1182         
1183         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
1184         MacOS 9 users.
1185
1186         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
1187         consider break index for broken spanner.
1188
1189         * scm/define-markup-commands.scm (wordwrap-string): remove \r
1190         characters from string before splitting.
1191
1192 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1193
1194         * scm/framework-ps.scm (output-preview-framework): use
1195         is-book-title to determine whether to chop off the booktitle.
1196
1197         * lily/paper-book.cc (systems): init from book-title-properties
1198         (add_score_title): init score-title-properties.
1199
1200         * ly/paper-defaults.ly: add {score,book}-title-properties.
1201
1202         * scm/document-backend.scm (lookup-interface): error message if
1203         using unknown interface.
1204
1205         * lily/volta-bracket.cc (after_line_breaking): new function. Set
1206         edge-height.
1207
1208         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
1209         make_bracket.
1210         (make_bracket): new function.
1211
1212         * scm/lily.scm (define-scheme-options): add paper-size option.
1213
1214         * ly/declarations-init.ly (laissezVibrer): get paper size from
1215         -dpaper-size
1216
1217         * scm/translation-functions.scm: use \fontsize for changing the
1218         fontsize.
1219
1220         * scm/define-grobs.scm (all-grob-descriptions): set
1221         between-length-limit to 1.0
1222
1223         * lily/tie-helper.cc: add between_length_limit_ detail property.
1224
1225         * mf/feta-bolletjes.mf: typos.
1226
1227         * lily/note-head.cc (internal_print): don't shadow idx
1228         parameter. This fixes wrong attachment for do shape heads.
1229
1230 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1231
1232         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
1233
1234         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
1235
1236         * scm/layout-slur.scm: rename from slur.scm
1237
1238         * scm/layout-page-layout.scm: rename from page-layout.scm
1239
1240         * scm/layout-beam.scm: rename from beam.scm
1241
1242         * scm/define-grob-interfaces.scm (bass-figure-interface): add
1243         bass-figure-interface
1244
1245         * lily/new-figured-bass-engraver.cc (process_music): add
1246         implicitBassFigures property.
1247         
1248         * scm/define-markup-commands.scm (pad-x): new markup.
1249
1250         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
1251         minimumVerticalExtent on FiguredBass context.
1252
1253         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
1254         case the continuation crosses a line break.
1255
1256 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1257
1258         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
1259         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
1260         absolute file name bug.  Backportme.
1261
1262 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1263
1264         * VERSION (PACKAGE_NAME): release 2.7.12
1265
1266         * input/regression/figured-bass-continuation-center.ly: new file.
1267
1268         * input/regression/beam-outside-beamlets.ly: new file.
1269
1270         * lily/beam.cc (set_beaming): don't clip edges.
1271         (connect_beams): don't clip edges.
1272
1273         * lily/beaming-info.cc (clip_edges): new function.
1274
1275         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
1276
1277         * Documentation/user/instrument-notation.itely (Figured bass):
1278         demonstrate extenders, update seealso links.
1279
1280         * scm/titling.scm (marked-up-headfoot): change tagline
1281         handling. tagline = ##f will blank the tagline as well.
1282
1283 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1284
1285         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
1286
1287         * lily/new-figured-bass-engraver.cc (struct
1288         New_figured_bass_engraver): add new_music_found_ member.
1289
1290         * lily/lilypond-version.cc (Lilypond_version): deal with
1291         incorrectly formatted version strings. 
1292
1293         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
1294         New_figured_bass_engraver by default.
1295
1296         * lily/ttf.cc (print_trailer): only define glyph names when
1297         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
1298
1299 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1300
1301         * lily/horizontal-bracket.cc (make_bracket): new function.
1302
1303         * scm/define-grobs.scm (all-grob-descriptions): new grobs
1304         NewBassFigure, BassFigureBracket, BassFigureContinuation,
1305         BassFigureLine, BassFigureAlignment
1306
1307         * lily/new-figured-bass-engraver.cc (process_music): new file.
1308
1309         * lily/figured-bass-continuation.cc: new file.
1310
1311         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
1312         new file.
1313
1314 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1315
1316         * scripts/lilypond-book.py: Bug fix, put the quote around the
1317         actual score for LaTeX documents.
1318
1319         * scm/define-grobs.scm (all-grob-descriptions): Change
1320         collapse-height of the SystemStartBracket grob to 5.0, 
1321         so the bracket disappears for single stave score lines (similarly
1322         to SystemStartBraces). 
1323
1324         * Documentation/user/advanced-notation.itely (Polymetric
1325         notation): Clarify the use of compressMusic.
1326
1327         * Documentation/user/basic-notation.itely (Grace notes): Clarify
1328         that the grace spacer note in other staves need the same duration
1329         and document the stroke-style property.
1330
1331 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1332
1333         * Documentation/user/global.itely (Vertical spacing): document
1334         alignment-extra-space and fixed-alignment-extra-space.
1335
1336         * Documentation/topdocs/NEWS.tely (Top): add entry.
1337
1338         * input/regression/alignment-vertical-spacing.ly: new file.
1339
1340         * python/convertrules.py (conv): add rule.
1341
1342         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
1343
1344         * lily/align-interface.cc (stretch_after_break): new
1345         function. Read fixed-alignment-extra-space property.
1346         (align_elements_to_extents): read alignment-extra-space property.
1347
1348         * lily/lily-guile.cc (robust_scm2dir): new function.
1349
1350         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
1351         (annotate-space-left): new function. Annotate space left on page. 
1352         (annotate-y-interval): new function.
1353         (paper-system-annotate-last): new function. Annotate bottom-space.
1354
1355         * mf/feta-beugel.mf (y): 
1356
1357 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1358
1359         * VERSION (PACKAGE_NAME):  release 2.7.11
1360
1361         * scm/lily-library.scm (interval-translate): new function
1362         (interval-center): new function. 
1363
1364         * scm/page-layout.scm (paper-system-annotate): new function. Add
1365         arrows for dimensions.
1366  
1367         * scm/stencil.scm (dimension-arrows): new function.
1368
1369         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
1370
1371         * input/regression/page-spacing.ly: add annotatespacing
1372
1373         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
1374         (LY_DEFINE): new function ly:paper-system-set-property!
1375
1376         * Documentation/user/global.itely (Paper size): explain how to add
1377         sizes.
1378
1379         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
1380         correspond to GS's definition.
1381
1382         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
1383         tuplet bracket.
1384         (print): only connect to next bracket if the next one is alive.
1385         (print): set padding to 0.0 if the bound is a breakable
1386         column. This makes tupletFullLength brackets reach up to the staff
1387         line if it doesn't connect to the next line.
1388
1389 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1390
1391         * lily/bar-number-engraver.cc: correct docs.
1392
1393         * scm/output-lib.scm (first-bar-number-invisible): rename from
1394         default-bar-number-visibility
1395
1396 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1397
1398         * scm/define-music-properties.scm (all-music-properties): remove
1399         predicate property.
1400
1401 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
1402
1403         * po/fi.po: refresh.
1404
1405 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1406
1407         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
1408         superfluous s1.
1409         (disappear): bugfix.
1410
1411         * lily/stem-tremolo.cc (raw_stencil): read slope property.
1412
1413         * lily/include/paper-system.hh (class Paper_system): remove
1414         staff_extents_ member.
1415
1416         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
1417
1418         * lily/include/paper-system.hh (class Paper_system): remove
1419         number_ variable. Remove is_title_. Remove break_before_penalty_
1420
1421         * lily/paper-book.cc (systems): use 'number property iso. number_
1422         member.
1423
1424         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
1425         remove ly:paper-system-number.
1426
1427         * scm/lily-library.scm (paper-system-title?): new function.
1428
1429         * lily/book.cc (process): bugfix: flip ?: cases. 
1430
1431         * Documentation/user/changing-defaults.itely (Difficult tweaks):
1432         add outputProperty.
1433
1434         * ly/music-functions-init.ly: add outputProperty music function.
1435
1436         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
1437
1438         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
1439         and next-padding.
1440         (optimal-page-breaks): rename from ly:optimal-page-breaks.
1441
1442         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
1443
1444         * lily/paper-system.cc (internal_get_property): new function.
1445
1446         * Documentation/user/global.itely (Vertical spacing): refer to
1447         page-spacing.ly
1448
1449         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
1450         pagetopspace
1451
1452         * input/regression/page-spacing.ly: new file.
1453
1454         * input/regression/page-top-space.ly: new file.
1455
1456         * lily/spacing-spanner.cc: cmath -> math.h
1457
1458         * lily/paper-system.cc (read_left_bound): new function. Read
1459         line-break-system-details from left bound to determine extents.
1460  
1461         * Documentation/user/programming-interface.itely (Using LilyPond
1462         syntax inside Scheme): change applyxxx -> applyXxx.
1463
1464         * ly/music-functions-init.ly: add outputProperty music function.
1465
1466         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
1467
1468         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
1469
1470         * python/convertrules.py (conv): rule
1471
1472         * ly/music-functions-init.ly: applyxxx -> applyXxx
1473
1474         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
1475         TabVoice to Voice.
1476
1477 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1478
1479         * flower/include/real.hh: include <math.h> iso. <cmath>
1480
1481         * flower/include/offset.hh: include real.hh
1482
1483 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1484
1485         * Documentation/user/changing-defaults.itely (Difficult tweaks):
1486         fix example, now that 'interfaces is no longer directly available.
1487
1488         * lily/book.cc (process): don't crash if paper == NULL.
1489
1490         * po/fr.po: update.
1491
1492 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1493
1494         * scm/define-music-types.scm (music-descriptions): set length and
1495         start-callback for QuoteMusic
1496
1497 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1498
1499         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
1500         arguments. Fixes compilation error with gcc 3.3.
1501
1502 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1503
1504         * VERSION: release 2.7.10
1505
1506         * stepmake/stepmake/python-module-rules.make
1507         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
1508
1509         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
1510         real.hh
1511
1512 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1513
1514         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
1515         -Werror. Otherwise GCC barfs over various optimizations.
1516
1517         * scm/define-grob-properties.scm (all-internal-grob-properties):
1518         add note-head property
1519
1520         * Documentation/user/instrument-notation.itely (Laissez vibrer
1521         ties): new node.
1522
1523         * input/regression/laissez-vibrer-ties.ly: new file.
1524
1525         * lily/laissez-vibrer-engraver.cc: new file.    
1526
1527         * lily/include/tie-column-format.hh: new file.
1528
1529         * lily/tie-column-format.cc: new file. 
1530
1531         * lily/tie-column.cc (set_manual_tie_configuration): new function.
1532
1533         * lily/laissez-vibrer-tie.cc: new file.
1534
1535         * lily/include/laissez-vibrer-tie.hh: new file.
1536
1537         * ly/engraver-init.ly: add Laissez_vibrer_engraver
1538
1539         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
1540
1541         * scm/define-grobs.scm (all-grob-descriptions): add
1542         LaissezVibrerTie, LaissezVibrerTieColumn
1543
1544         * lily/tie-column.cc (set_tie_config_directions): new function
1545         (final_shape_adjustment): new function.
1546         (shift_small_ties): new function.
1547
1548         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
1549
1550         * lily/include/tie.hh (struct Tie_details): add x_gap_
1551         (struct Tie_configuration): add head_position_
1552
1553         * lily/tie-column.cc (set_chord_outline): new function.
1554
1555         * mf/cmr.enc.in:  remove file.
1556
1557 2005-09-11  Graham Percival  <gpermus@gmail.com>
1558
1559         * Documentation/user/examples.itely: typo fix.  Thanks, MatevĹľ
1560
1561 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1562
1563         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
1564         reduce aliasing effects.
1565
1566         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
1567         box in skyline.
1568
1569 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1570
1571         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
1572
1573         * flower/include/real.hh: std::fabs too.
1574
1575 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1576
1577         * Documentation/user/lilypond.tely: Spell BaĂźtuba in UTF-8 (Werner). 
1578
1579         * lily, flower: Include C++ iso C headers.  Import namespace std
1580         throughout.
1581
1582         * lily/side-position-interface.cc: 
1583         * lily/scm-hash.cc: 
1584         * lily/note-head.cc: 
1585         * lily/include/includable-lexer.hh: 
1586         * flower/include/string-data.icc: Remove using std::*.
1587
1588         * lily, flower: Include C++ iso C headers.  Import namespace std
1589         throughout.
1590
1591         * lily/side-position-interface.cc: 
1592         * lily/scm-hash.cc: 
1593         * lily/note-head.cc: 
1594         * lily/include/includable-lexer.hh: 
1595         * flower/include/string-data.icc: Remove using std::*.
1596
1597         * Documentation/user/instrument-notation.itely (Entering lyrics):
1598         Multiple latin-1->utf-8 conversion fix.
1599
1600         * Documentation/user/*tely: Update Emacs cookie to utf-8.
1601
1602 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1603
1604         * lily/tie.cc (get_configuration): also avoid dots for non-space
1605         situations.
1606
1607 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1608
1609         * Documentation/user/instrument-notation.itely: Bugfix.
1610
1611 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1612
1613         * tex/GNUmakefile: don't install texinfo.tex
1614
1615         * tex/ : cleanup: remove unused files.
1616
1617         * lily/general-scheme.cc: remove my_{isinf,isnan}.
1618
1619         * flower/include/real.hh: using std::{isnan,isinf}
1620         
1621         * VERSION (PATCH_LEVEL): release 2.7.9
1622
1623 2005-09-05  Graham Percival  <gpermus@gmail.com>
1624
1625         * Documentation/user/ instrument-notation.itely,
1626         advanced-notation.itely: minor tweaks.
1627
1628         * input/test/script-chart.ly: add item padding.
1629
1630 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1631
1632         * flower/offset.cc: use math.h iso. <cmath>
1633
1634         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
1635         of IE users.
1636
1637         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
1638         (widen-left-stencil-edges): new function. Fix alignment problems
1639         with LaTeX includegraphics.
1640
1641         * lily/text-interface.cc (interpret_markup): use abort().
1642
1643 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1644
1645         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
1646
1647         * lily/tie.cc (get_configuration): update bezier shape as we
1648         change Y positions.
1649         (get_configuration): don't move large ties if we're outside of the
1650         staff.
1651
1652 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1653
1654         * scm/define-markup-commands.scm (strut): swap X and Y dims.
1655         
1656 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1657
1658         * .cvsignore: Add auto-generated configure files and then some.
1659
1660 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1661
1662         * scm/define-grobs.scm (DynamicLineSpanner): Add
1663         X-extent-callback.  Fixes hairpin-slur collision.
1664
1665 2005-08-31  Graham Percival  <gpermus@gmail.com>
1666
1667         * Documentation/user/advanced-notation.itely,
1668         basic-notation.itely: minor changes.
1669
1670 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1671
1672         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
1673         \linebreak between each .eps file if \betweenLilyPondSystem is
1674         undefined. 
1675
1676         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
1677         music): Document the \linebreak
1678
1679         * Documentation/user/lilypond-book.itely,
1680         input/tutorial/lbook-latex-test.tex,
1681         Documentation/user/examples.itely: Remove \usepackage{graphics}
1682
1683 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1684
1685         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
1686
1687         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
1688         compat bugfix.
1689
1690         * scripts/lilypond-book.py (PREAMBLE_LY): define
1691         inside-lilypond-book
1692         (modify_preamble): new function. Insert \RequirePackage{graphics}
1693         when no {graphics found in preamble.  
1694
1695 2005-08030  Graham Percival  <gpermus@gmail.com>
1696
1697         * Documentation/user/basic-notation.itely, global.itely,
1698         tutorial.itely: misc small changes.
1699
1700 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1701
1702         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
1703         VERSION.
1704
1705 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1706
1707         * lily/tie-column.cc (new_directions): put Tie down on center
1708         staff line. 
1709
1710         * lily/script-interface.cc (before_line_breaking): use
1711         Grob::programming_error
1712
1713         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
1714
1715         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
1716         of splitext.
1717
1718 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1719
1720         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
1721
1722 2005-08-29  Werner Lemberg  <wl@gnu.org>
1723
1724         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
1725         the `*.scale.pfa' files to avoid warnings.
1726
1727 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1728
1729         * lily/tempo-performer.cc (process_music): idem.
1730
1731         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
1732
1733 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1734
1735         * Documentation/user/advanced-notation.itely (Text markup): not a
1736         fragment.
1737
1738         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
1739
1740         * lily/staff-performer.cc (initialize): add tempo/name to
1741         audio_staff_
1742
1743
1744 2005-08-26  Graham Percival  <gpermus@gmail.com>
1745
1746         * Documentation/user/advanced.itely: add text-only example.
1747
1748         * Documentation/user/invoking.itely: add index entries for
1749         convert-ly.
1750
1751         * Documentation/user/ tutorial.itely, basic-notation.itely:
1752         small fixes suggested by Steve D.  Thanks!
1753
1754 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1755
1756         * input/regression/markup-bidi-pango.ly: new file.
1757
1758         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
1759         standard. Remove #ifdef. Remove memleak.
1760         (text_stencil): use text_dir to decide how to composite items.
1761         (text_stencil): determine uniform text direction for the entire
1762         string.
1763
1764         * scripts/lilypond-book.py (output_name): remove
1765         latex_filter_cmd. Non-portable to non-Unix systems. 
1766         (get_latex_textwidth): use File.write and os.unlink() instead.
1767
1768         * THANKS: add Vicente & Trevor.
1769
1770         * lily/grob.cc (discretionary_processing): look up origin for
1771         programming_error too. 
1772
1773         * input/regression/tie-broken.ly: new file.
1774
1775         * lily/tie-column.cc (set_chord_outlines): set outline for line
1776         break case too.
1777         
1778 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1779
1780         * lily/pango-font.cc (text_stencil): don't translate glyphs in
1781         unscaled transform, just translate stencils.
1782
1783         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
1784         MIDI.
1785
1786         * scm/define-markup-commands.scm (wordwrap-string): use
1787         text-direction
1788         (wordwrap-stencils): idem.
1789         (line): idem.
1790         (fill-line): idem.
1791         (wordwrap-stencils): translate last line to right for
1792         text-direction = LEFT.
1793
1794         * scm/define-grob-properties.scm (all-user-grob-properties): add
1795         text-direction.
1796
1797 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1798
1799         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
1800         when copying a Lily_parser object.
1801
1802 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1803
1804         * scm/define-markup-commands.scm (null): add null markup.
1805
1806 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1807
1808         * lily/item.cc: Add documentation of center-invisible
1809
1810 2005-08-24  Graham Percival  <gpermus@gmail.com>
1811
1812         * Documentation/user/advanced-notation.itely: add info about
1813         raising text.
1814
1815         * Documentation/user/programming-interface.itely: fix example
1816         involving raised text.
1817
1818 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1819
1820         * lily/beam.cc (print): fix X start/end points of isolated
1821         beamlets.
1822
1823         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
1824
1825         * lily/multi-measure-rest.cc (set_text_rods): new function.
1826
1827         * lily/vertical-align-engraver.cc (process_music): call
1828         Align_interface::set_axis(). This forces #'elements to be ordered,
1829         preventing random vertical reordering of staves.
1830
1831         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
1832         add avoid-slur property. 
1833
1834         * Documentation/user/basic-notation.itely (Measure repeats): add
1835         countPercentRepeats example.
1836
1837         * Documentation/user/advanced-notation.itely (Other text markup
1838         issues): remove remark about normal-font.  We have \normal-text
1839
1840         * input/regression/tie-chord.ly: add note about remaining bugs.
1841
1842         * lily/tie.cc (print): try Tie_column::set_directions () if
1843         control-points not yet defined.
1844
1845 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1846
1847         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
1848         extent. This fixes braces falling out of the EPS bbox.
1849
1850         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
1851         exactly to bbox.
1852
1853 2005-08-23  Graham Percival  <gpermus@gmail.com>
1854
1855         * {various} : change #up->#UP and #down->#DOWN.
1856
1857         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
1858
1859         * Documentation/user/advanced-notation.itely: clarify
1860         what objects handles text on a multimeasure rest.
1861
1862 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1863
1864         * VERSION (PATCH_LEVEL): release 2.7.7
1865
1866 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1867
1868         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
1869
1870         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
1871
1872         * input/regression/*.ly: formatting clean-up. Default layout
1873         before music expression.
1874
1875         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
1876         romanze28-2 example.
1877
1878         * scm/ps-to-png.scm: remove dir-re function.
1879         (make-ps-images): generate page names, instead of globbing them.
1880         This brings down LilyPond memory usage for make web by a factor
1881         10. (backportme?) 
1882
1883         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
1884         don't use glob. With 3000 files, globbing
1885         Documentation/user/out-www/ can take too much time. (backportme?)
1886         
1887         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
1888
1889         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
1890
1891         * input/regression/tie-manual.ly: new file
1892
1893         * input/regression/tie-chord.ly: update.
1894
1895         * flower/include/interval.hh (struct Interval_t): 
1896
1897         * lily/tie.cc (distance): new function 
1898         (height): new function.
1899         (init): new function
1900         (Tie_details): new struct.
1901
1902         * lily/skyline.cc (skyline_height): new function.
1903
1904         * lily/tie-column.cc (set_chord_outlines): new function.
1905         (new_directions): read tie-configuration
1906
1907         * lily/skyline.cc: fix ASCII art.
1908         
1909 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1910
1911         * python/convertrules.py (string_or_scheme): Fix spelling error
1912
1913 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1914         
1915         * lily/tie-column.cc (set_directions): set directions only once.
1916         (add_configuration): new function.
1917
1918         * lily/tie.cc (set_control_points): new function
1919
1920         * lily/tie-column.cc (new_directions): new function.
1921
1922         * ly/music-functions-init.ly: set 'pitch property
1923         iso. trill-pitch. This makes \relative work with \pitchedTrill
1924
1925         * lily/tie.cc (get_configuration): new function. Don't generate
1926         control points, rather, generate configuration.
1927         remove head-pair property.
1928
1929         * lily/include/tie.hh (struct Tie_configuration): new struct.
1930
1931 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
1932
1933         * Documentation/topdocs/NEWS.tely: clarify.
1934
1935 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1936
1937         * lily/tie.cc: remove minimum-length
1938
1939         * scm/define-grob-properties.scm (all-user-grob-properties):
1940         remove staffline-clearance, y-offset 
1941
1942         * input/regression/tie-dots.ly (Module): remove.
1943
1944         * lily/tie.cc (get_control_points): rewrite. Put short ties in
1945         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
1946
1947         * input/regression/tie-single.ly: new file.
1948
1949 2005-08-21  Graham Percival  <gpermus@gmail.com>
1950
1951         * ly/bagpipe.ly: fix compile problem.
1952
1953 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1954
1955         * lily/midi-item.cc (name): new method.
1956
1957         * lily/staff-performer.cc (acknowledge_audio_element): use
1958         signature of baseclass.
1959
1960         * lily/engraver-group.cc (do_announces): move recursion call out
1961         of while loop. 
1962
1963         * lily/drum-note-performer.cc (class Drum_note_performer): use
1964         process_music everywhere.
1965
1966         * ly/performer-init.ly: add default children everywhere.
1967
1968         * lily/paper-book.cc (output): call paper-book-write-midis
1969         directly: always write MIDI, even if no \layout {} block. 
1970
1971 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1972
1973         * VERSION (PACKAGE_NAME): release 2.7.6
1974
1975         * lily/percent-repeat-engraver.cc (try_music): don't print warning
1976         about not being able to handle repeat.
1977
1978 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1979
1980         * Documentation/user/examples.itely (Piano templates):
1981         * lily/include/performer-group.hh: Remove last traces of
1982         Performer_group_performer.  Fixes make web.
1983
1984 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1985
1986         * Documentation/user/examples.itely (Piano templates): change
1987         Engraver_group_engraver -> Engraver_group
1988
1989         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
1990         scm_stand_in_procs is not weak_any.
1991
1992         * lily/volta-bracket.cc (print): don't use strcmp().
1993
1994         * lily/volta-engraver.cc (process_music): use
1995         Text_interface::is_markup() for setting the 'text property of the
1996         volta bracket.
1997
1998         * input/mutopia/claop.py (accents): update syntax to 2.6
1999
2000         * scm/define-context-properties.scm
2001         (all-user-translation-properties): add countPercentRepeats.
2002
2003         * Documentation/user/basic-notation.itely (Measure repeats): add
2004         isolated percent example.
2005
2006 2005-08-18  Graham Percival  <gpermus@gmail.com>
2007
2008         * input/ {various}: change direction #1, #-1 to
2009         #up/#down or \fooUp, \fooDown.
2010
2011         * Documentation/user/music-glossary.tely: #-1 to #down.
2012
2013         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
2014         to #up, #-1 to #down.
2015
2016 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2017
2018         * lily/include/engraver-group.hh: rename.
2019
2020         * lily/include/performer-group.hh: rename.
2021
2022 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2023
2024         * input/test/script-abbreviations.ly: Removed some old LaTeX
2025         left overs.
2026
2027 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2028
2029         * python/convertrules.py (conv): inside-slur -> avoid-slur.
2030         Remove functions.  Remove if 1: constructs, reindent.
2031
2032         * scripts/convert-ly.py (add_version): Add functions from
2033         convertrules.py
2034
2035         * scm/script.scm (default-script-alist):
2036         s/priority/script-priority.  Fixes script stacking.  Backportme.
2037         (Fermata): Very low priority.
2038
2039 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2040
2041         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
2042
2043         * input/regression/slur-script.ly: remove padding tweaks. Add
2044         comment strings.
2045
2046         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
2047         time sigs and related stuff.
2048
2049         * scm/define-grob-properties.scm (all-user-grob-properties): add
2050         @code{} tags to property description.
2051
2052         * lily/include/line-group-group-engraver.hh (Module): remove file.
2053
2054         * python/convertrules.py (conv): add rule for
2055         Engraver_group_engraver -> Engraver_group.
2056
2057         * lily/include/performer-group-performer.hh: analogous.
2058
2059         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
2060
2061         * lily/context-def.cc (instantiate): check for
2062         Engraver_group_engraver and Performer_group_performer not
2063         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
2064  
2065 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2066
2067         * input/les-nereides.ly: Remove three fingering tweaks, update
2068         remaining one.
2069
2070         * input/regression/slur-script-inside.ly: Update, fix doc.
2071
2072         * scm/script.scm: Update to avoid-slur.
2073
2074         * scm/define-grob-properties.scm (avoid-slur): New property.
2075
2076         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
2077         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
2078         outside_slur_callback if avoid-slur != #'inside.
2079
2080         * scm/define-grobs.scm (Fingering, Textscript): No
2081         inside-slur/outside-slur preference.
2082         (DynamicLineSpanner): Always outside slur.
2083
2084         * input/regression/slur-script.ly: More tests.
2085
2086 2005-08-17  Graham Percival  <gpermus@gmail.com>
2087
2088         * Documentation/user/lilypond-book: fix notime entry.
2089
2090         * Documentation/user/advanced-notation.itely: add info on
2091         getting an I rehearsal mark.
2092
2093         * Documentation/user/putting.itely: reinstate "I", re-enforce
2094         the fact that \override numbers are the result of
2095         experimentation and personal taste.
2096
2097         * Documentation/user/invoking.itely: update convert-ly bugs.
2098
2099 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2100
2101         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
2102         to #t.
2103
2104         * lily/timing-translator.cc (initialize): don't initialize timing.
2105
2106         * input/regression/stem-spacing.ly (Module): remove file.
2107
2108         * input/regression/spacing-stick-out.ly: specify Score context for
2109         \override
2110
2111         * input/regression/clefs.ly: remove spurious {}s 
2112
2113 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
2114
2115         * Documentation/topdocs/NEWS.tely,
2116         input/regression/repeat-percent-count.ly: clarify a bit.
2117
2118 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2119
2120         * input/no-notation/display-lily-tests.ly: delete
2121         display-lily-init call.
2122
2123         * ly/music-functions-init.ly (displayLilyMusic): move
2124         display-lily-init call at top level, so that the user should not
2125         have to call it.
2126
2127         * scm/define-music-display-methods.scm (note-name->lily-string):
2128         retrieve note names directly from pitchnames using new function `rassoc'.
2129         (display-lily-init): note names list construction removed.
2130
2131 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2132
2133         * THANKS: spello.
2134
2135         * lily/lily-parser.cc (get_header): copy module, instead of
2136         returning it.
2137
2138         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
2139         counters.
2140
2141         * Documentation/user/basic-notation.itely (Measure repeats): add
2142         links to Counter grobs.
2143
2144         * scm/define-grobs.scm (all-grob-descriptions): add
2145         DoublePercentRepeatCounter
2146         (all-grob-descriptions): add PercentRepeatCounter
2147
2148         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
2149         also create counter grobs.
2150
2151         * lily/separation-item.cc (extremal_break_aligned_grob): don't
2152         return grob without space-alist.
2153
2154         * input/proportional.ly: tune staff-padding.
2155
2156         * input/regression/repeat-percent-count.ly: new file. 
2157
2158 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2159
2160         * input/no-notation/display-lily-tests.ly: moved from
2161         input/regression/ to input/no-notation. Be sure to call
2162         `display-lily-init' before trying to use the display function.
2163
2164 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2165
2166         * scripts/lilypond-book.py (option_definitions): Don't localize
2167         the empty string. Fixes bug when --psfonts was used with
2168         non-English locale.
2169
2170 2005-08-15  Graham Percival  <gpermus@gmail.com>
2171
2172         * lily/tuplet-bracket.cc: simple build fix.
2173
2174         * Documentation/user/putting.itely: use "we" instead of "I".
2175
2176         * Documentation/user/basic-notation.itely: cautionary accidentals
2177         work with naturals, too.
2178
2179 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2180
2181         * lily/tuplet-bracket.cc (calc_position_and_height): add
2182         staff-padding support.
2183
2184         * input/proportional.ly: set staff-padding.
2185         
2186         * VERSION (PATCH_LEVEL): release 2.7.5
2187
2188         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
2189         fixes. Remove tweaks.
2190
2191         * input/regression/tuplet-slope.ly: add a test case.
2192
2193         * lily/tuplet-bracket.cc (calc_position_and_height): revert
2194         erroneous fix. Add spanner bounds to offset array with relative X
2195         positions.
2196
2197         * ly/engraver-init.ly: add Rest_engraver only once.
2198
2199         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
2200         (*parser*) lookup if (*parser*) != #f.
2201
2202 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2203
2204         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
2205         Cut-and paste update.
2206
2207         * input/regression/slur-script.ly: Add example of reverting
2208         inside-slur for fingering.
2209
2210         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
2211         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
2212
2213         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
2214         outside_slur_callback if inside-slur == #f (as opposed to unset).
2215
2216 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2217
2218         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
2219         encoding files are already removed.
2220
2221 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2222
2223         * Documentation/user/advanced-notation.itely (Instrument names):
2224         Document a workaround for instrument names that collide with
2225         system start braces/brackets.
2226
2227 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2228
2229         * lily/rest-collision.cc (do_shift): spello.
2230
2231         * input/proportional.ly: use #'used property. Set break-overshoot
2232         property.
2233
2234         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
2235
2236         * lily/paper-column.cc: add #'used property
2237
2238         * lily/mark-engraver.cc (stop_translation_timestep): set grob
2239         array for staves found.
2240
2241         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
2242         array for stavesFound.
2243
2244         * lily/staff-spacing.cc (next_note_correction): add fixed and
2245         space to calling convention. This fixes spacing of accidentals
2246         after barlines.
2247
2248         * input/regression/spacing-accidental-stretch.ly: add barline -
2249         accidental case.
2250
2251         * scm/framework-ps.scm (page-header): add version number to
2252         creator
2253         (eps-header): idem.
2254
2255         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
2256         
2257 2005-08-13  Graham Percival  <gpermus@gmail.com>
2258
2259         * Documentation/user/global.itely: add "fit as much as
2260         possible onto this page" example (Vertical spacing).
2261
2262 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2263
2264         * *: Nitpick run.
2265
2266         * buildscripts/fixcc.py: Fixes.
2267
2268 2005-08-12  Graham Percival  <gpermus@gmail.com>
2269
2270         * Documentation/user/advanced-notation.itely: add markup
2271         example to Text spanners.
2272
2273 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2274
2275         * Documentation/user/basic-notation.itely (Ties): Add example of
2276         tying a tremolo to a chord. Thanks to Steve Doonan. 
2277
2278         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
2279         properties and move tieMelismaBusy to the list of written
2280         properties. 
2281
2282 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
2283
2284         * po/TODO: suggest to use a dedicated tool like kbabel.
2285
2286         * po/fi.po: update using kbabel.
2287
2288 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2289
2290         * *: Remove obsolete files.  Nitpick run.
2291
2292         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
2293
2294 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2295
2296         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
2297         too.
2298
2299         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
2300
2301         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
2302         whitespace as symbol separator.
2303
2304         * lily/side-position-interface.cc: Add slur-padding.
2305
2306         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
2307         quite a large fix, and it never worked in a stable release; so not
2308         really a regression.
2309
2310         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
2311         Update cut and paste code from Slur_engraver.
2312
2313         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
2314         Add.
2315
2316         * scm/define-grobs.scm (DynamicLineSpanner): Add
2317         dynamic-line-spanner-interface.
2318         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
2319
2320 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2321
2322         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
2323         to_boolean () so that non-set 'inside-slur means false.
2324
2325         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
2326         slur has control-points.  Skip script without direction.  Always
2327         do_shift if script inside slur, even if slur not contained in
2328         script y-extent.  Increment k in loop.
2329
2330 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2331
2332         * scm/define-markup-commands.scm: Improved regexp to search for
2333         EPS bounding boxes and corrected call to ly:warning.
2334
2335 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2336
2337         * Documentation/user/programming-interface.itely (Displaying music
2338         expressions): doc for \displayLilyMusic. Also some precisions in
2339         "Markup construction in Scheme"
2340
2341 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2342
2343         * scm/define-markup-commands.scm (normal-text): Added 2 new
2344         markup commands, \normal-text and \medium (the latter thanks to
2345         Bruce Fairchild). 
2346
2347 2005-08-08  Graham Percival  <gpermus@gmail.com>
2348
2349         * Documentation/user/programming-interface.itely: fix @{ @}.
2350
2351         * scm/define-markup-commands.scm: add linewidth info to
2352         \justify and \wordwrap, add "upright is the opposite of italic".
2353
2354         * Documentation/user/advanced-notation.itely: shaped->shape,
2355         add (cons (markup "foo")) type of example to text markup,
2356         reword multi-measure rests section.
2357
2358         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
2359         comment.  No actual code was touched.
2360
2361         * Documentation/user/invoking.itely: add more info about
2362         \include.  Thanks, Bruce!
2363
2364         * THANKS: add Bruce Fairchild, alphabetise.
2365
2366         * Documentation/user/global.itely: document \score{\header{}}
2367         behavior.
2368
2369         * Documentation/user/basic-notation.itely: reword multi-measure
2370         rest discussion in Rests.
2371
2372 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2373
2374         * Documentation/user/programming-interface.itely (Markup
2375         construction in Scheme): Corrected example and tried to clarify
2376         the implicit \line in the table.
2377
2378 2005-08-07  Graham Percival  <gpermus@gmail.com>
2379
2380         * Documentation/user/instrument-notation.itely: moved
2381         some bagpipe info back into the bagpipe section.  Somehow
2382         it ended up in the "other vocal issues" section?!  :o_O
2383
2384 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2385
2386         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
2387         directories, not paths).
2388
2389 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2390
2391         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
2392         plain emmentaler/aybabtu.  Backportme.
2393
2394         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
2395         missing dir correction.
2396
2397 2005-08-05  Graham Percival  <gperlist@shaw.ca>
2398
2399         * scm/define-markup-commands: fix reversed justify/wordwrap
2400         doc strings.
2401
2402 2005-08-05  JĂĽrgen Reuter  <reuter@ipd.uka.de>
2403
2404         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
2405         lily/gregorian-ligature-engaver.cc,
2406         lily/include/ligature-engraver.hh,
2407         lily/include/coherent-ligature-engraver.hh,
2408         lily/include/gregorian-ligature-engraver.hh: make these classes
2409         truely abstract.  This should fix some internal oddities such as
2410         duplicate as well as dead translator/property declarations, and
2411         also some dead code.
2412
2413         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
2414         bugfix: avoid message "junking empty ligature" on ligature
2415         brackets by collecting dummy grobs.
2416
2417 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2418
2419         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
2420
2421         * input/proportional.ly (staffKind): bugfix.
2422         (staffKind): updates by Trevor Baca.
2423
2424         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
2425         default layout. 
2426
2427         * lily/tuplet-bracket.cc (print): check whether edge-text is a
2428         pair.
2429
2430         * lily/beam.cc (rest_collision_callback): call position_beam() if
2431         necessary.
2432
2433         * VERSION: release 2.7.4
2434
2435         * input/regression/spacing-uniform-stretching.ly: new file.
2436
2437         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
2438
2439         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
2440         contributor.
2441
2442         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
2443
2444         * input/proportional.ly: new file.
2445
2446         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
2447         columns is empty
2448
2449         * lily/tuplet-engraver.cc (finalize): new function. Reset right
2450         bounds to currentCommandColumn for the last step.
2451         (start_translation_timestep): if tupletFullLength is set, set
2452         bound to Paper Column
2453
2454         * input/regression/tuplet-full-length.ly (indent): new file.
2455
2456         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
2457         clique of loose columns, eg. a set of grace notes in strict
2458         notespacing.
2459
2460         * input/regression/spacing-strict-spacing-grace.ly: new file.
2461
2462         * lily/key-signature-interface.cc: change property name to
2463         alteration-alist
2464
2465         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
2466         keyAccidentalOrder
2467
2468         * python/convertrules.py (conv): keyAccidentalOrder ->
2469         keyAlterationOrder
2470
2471         * lily/key-engraver.cc (create_key): always print a cancellation
2472         for going to C-major/A-minor, regardless of printKeyCancellation.
2473         (create_key): remove typecheck for visibility. This fixes key
2474         signature not being printed.
2475
2476         * lily/spacing-determine-loose-columns.cc: new file.
2477
2478         * input/regression/spacing-strict-notespacing.ly: new file.
2479
2480         * lily/spacing-spanner.cc (generate_springs): rename from
2481         do_measure. 
2482         (generate_pair_spacing): new function.
2483         (init, generate_pair_spacing): set between-cols for floating
2484         nonmusical columns.
2485
2486         * lily/spaceable-grob.cc (get_spring): new function. 
2487
2488         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
2489         relative to the right edge of the prefatory matter.
2490
2491         * lily/beam.cc (print): read break-overshoot to determine where to
2492         stop/start broken beams.
2493
2494         * input/regression/spanner-break-overshoot.ly: new file.
2495
2496 2005-08-04  Graham Percival  <gperlist@shaw.ca>
2497
2498         * ly/bagpipe.ly: updated.
2499
2500         * Documentat/user/instrument.itely: un-comment out bagpipe example.
2501
2502 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2503
2504         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
2505         support: now (de)crescs avoid slurs as well.
2506
2507         * Documentation/user/instrument-notation.itely (Bagpipe example):
2508         comment out non-functioning bagpipe example.
2509         (Bagpipe definitions): idem.
2510
2511         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
2512         (Top): add proportionalNotationDuration example.
2513
2514         * input/regression/spacing-proportional.ly: new file.
2515
2516         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
2517         synched to a beam.
2518
2519         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
2520         fixes beams with a single stem (eg. beams across linebreaks.)
2521
2522         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
2523
2524         * flower/rational.cc (operator +): prevent overflow. This fixes
2525         heavily nested tuplets.
2526
2527         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
2528         have to protect even those unlikely to be corrupted data members.  
2529
2530 2005-08-04  Graham Percival  <gperlist@shaw.ca>
2531
2532         * ly/bagpipe.ly: new file.
2533
2534         * THANKS: added Sven Axelsson.
2535
2536 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2537
2538         * lily/spacing-engraver.cc (stop_translation_timestep): directly
2539         copy proportionalNotationDuration into currentMusicalColumn if
2540         set.
2541
2542         * lily/spacing-spanner.cc (musical_column_spacing): if
2543         uniform-stretching set, fixed space is 0.0
2544
2545         * input/regression/spacing-multi-tuplet.ly: show
2546         uniform-stretching property.
2547
2548         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
2549
2550         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
2551         (struct Spacing_options): new struct.
2552
2553         * lily/spacing-basic.cc: new file.
2554
2555         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
2556         delta_t doesn't have to be smaller than shortest_playing_len
2557
2558 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2559
2560         * input/regression/markup-arrows.ly:  new file.
2561
2562         * lily/tuplet-bracket.cc: document new behavior.
2563
2564         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
2565         with line breaks.
2566
2567         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
2568
2569         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
2570         default 
2571
2572         * lily/tuplet-bracket.cc: add edge-text property.
2573         add break-overshoot.
2574         (print): read break-overshoot.
2575         (print): read edge-text, add stencils.
2576
2577         * mf/feta-arrow.mf: new file.
2578
2579         * mf/feta-generic.mf: add feta-arrow.
2580
2581 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2582
2583         * Documentation/user/lilypond-book.itely (An example of a
2584         musicological document): Added flag -o to dvips for people who use
2585         the default setting in teTeX where output is sent to the printer. 
2586
2587         * Documentation/user/global.itely (Vertical spacing): Added
2588         reference to the Axis_group_engraver which documents the *Extent
2589         properties.
2590
2591 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2592
2593         * Documentation/user/basic-notation.itely (Tuplets): add note
2594         about nested tuplets. Remove BUG. 
2595
2596         * input/regression/tuplet-nest.ly: update: remove manual hack. 
2597
2598         * lily/tuplet-bracket.cc (print): use robust_scm2drul
2599         (print): manually call print() for subtuplets.
2600         (calc_position_and_height): add subtuplets to the
2601         support. Vertically shift outer tuplet 
2602
2603         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
2604         remove-first for Lyrics, ChordNames and FiguredBass
2605
2606         * scm/define-grob-properties.scm (all-internal-grob-properties):
2607         use ly:grob-array? iso. grob-list?
2608         (all-internal-grob-properties): add tuplets grob-array.
2609
2610         * lily/tuplet-bracket.cc (add_tuplet_bracket):
2611         new function
2612
2613 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2614
2615         * input/test/time-signature-staff.ly: new file.
2616
2617         * ly/declarations-init.ly (center): escape to Scheme. Fixes
2618         spurious #<Music FingerEvent> errors. Backportme.
2619
2620 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2621
2622         * Documentation/user/programming-interface.itely (Markup
2623         construction in Scheme): Corrected markup syntax in the
2624         translation table.
2625
2626 2005-08-03  Graham Percival  <gperlist@shaw.ca>
2627
2628         * Documentation/user/instrument-notation.itely: small update
2629         to bagpipe notation docs; thanks Sven!
2630
2631         * Documentation/user/basic-notation.itely: add link about trills.
2632
2633 2005-08-02  Graham Percival  <gperlist@shaw.ca>
2634
2635         * Documentation/user/music-glossary: remove accidentally committed
2636         fink patch.
2637
2638 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
2639
2640         * lily/lily-parser.cc (get_header): new function. Enable multiple
2641         \header definitions.
2642
2643         * lily/parser.yy (lilypond_header_body): use get_header.
2644
2645         * ly/init.ly:
2646         * scm/lily-library.scm (print-score-with-defaults): renamed
2647         $globalheader to $defaultheader
2648         
2649         * Documentation/user/global.itely (Creating titles): added short
2650         explanation that multiple headers are useable.
2651
2652
2653 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2654
2655         * lily/module-scheme.cc (LY_DEFINE): new file. 
2656
2657         * Documentation/user/advanced-notation.itely (Font selection): add
2658         doco for make-pango-font-tree.
2659
2660 2005-07-31  Graham Percival  <gperlist@shaw.ca>
2661
2662         * Documentation/user/music-glossary: more languages
2663         for tenuto.
2664
2665         * Docuemntation/user/instrument-notation.itely: minor
2666         update for bagpipe example.
2667
2668 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2669
2670         * input/regression/+.ly (TODO): add some text.
2671
2672 2005-07-28  Graham Percival  <gperlist@shaw.ca>
2673
2674         * Documentation/user/invoking.itely: \score begins with music.
2675
2676         * Documentation/user/ basic-notation.itely,
2677         instrument-notation.itely: minor changes.
2678
2679         * Documentation/user/music-glossary.itely: began tenuto entry.
2680
2681 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2682
2683         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
2684
2685         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
2686
2687 2005-07-27  Graham Percival  <gperlist@shaw.ca>
2688
2689         * Documentation/user/examples.itely: remove bagpipe template.
2690
2691         * Documentation/user/instrument-notation.itely: add bagpipe
2692         section, maybe fix quotes in lyrics.  I hate text encoding.
2693         Clarify chord durations, more bagpipe stuff.
2694
2695 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2696  
2697         * lily/accidental-engraver.cc: formatting fixes.
2698
2699         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
2700         grob-array.
2701
2702         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
2703
2704         * lily/note-column.cc (arpeggio): new function.
2705
2706         * lily/note-spacing.cc (get_spacing): also take arpeggio into
2707         account for spacing.
2708
2709 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2710
2711         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
2712         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
2713         mingw build.
2714         
2715 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2716
2717         * scm/lily.scm (lilypond-all): clear anonymous modules after
2718         processing files.
2719
2720 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2721
2722         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
2723         SCM_I_CONSP
2724
2725         * VERSION: 2.7.3 released
2726
2727         * Documentation/user/invoking.itely (Invoking lilypond): add
2728         LILYPOND_GC_YIELD documentation.
2729
2730         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
2731         scm_from_real / scm_make_real.
2732
2733         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
2734         higher. This increases memory footprint, but provides overall
2735         speedup of 15 to 20%. 
2736
2737         * lily/include/translator.hh (class Translator): remove
2738         PRECOMPUTED_VIRTUAL everywhere.
2739
2740         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
2741
2742         * lily/context.cc (now_mom): non-recursive now_mom() 
2743
2744         * lily/include/profile.hh: new file.
2745
2746         * lily/profile.cc: new file.
2747
2748         * lily/grob.cc (Grob::Grob): look properties up directly.
2749
2750         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
2751         lookups.
2752
2753         * lily/include/box.hh (class Box): smob Box type.
2754
2755         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
2756
2757         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
2758         protect() and unprotect(). Use throughout.
2759
2760 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2761
2762         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
2763
2764         * scm/define-music-display-methods.scm (markup->lily-string):
2765         markup elements can also be strings (without simple-markup
2766         appended)
2767
2768 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2769
2770         * lily/context.cc (where_defined): also assign value in
2771         where_defined().
2772
2773         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
2774         (curve_coordinate): new function
2775
2776         * lily/simple-spacer.cc (add_columns): only add rods between
2777         column i and begin/end if keep-inside-line is set (this repleces
2778         allow-outside-line as default)
2779
2780 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2781
2782         * lily/tuplet-engraver.cc (start_translation_timestep): only read
2783         tupletSpannerDuration if applicable.
2784
2785         * lily/font-size-engraver.cc (process_music): read fontSize only
2786         once per timestep.
2787
2788         * lily/engraver*cc: use throughout.
2789         
2790         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
2791
2792         * lily/translator.cc (add_acknowledger): new file. Directly jump
2793         into an Engraver::acknowledge_xxx () method based on a grobs
2794         interface-list.
2795
2796         * lily/include/translator-dispatch-list.hh (class
2797         Engraver_dispatch_list): new struct, new file.
2798
2799         * scm/define-context-properties.scm
2800         (all-internal-translation-properties): remove acceptHashTable,
2801         acknowledgeHashTable
2802
2803         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
2804
2805         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
2806         change acknowledgeHashTable to C++ member. 
2807
2808         * lily/rest-collision.cc (do_shift): use extract_grob_set().
2809
2810 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2811
2812         * scm/display-lily.scm: new file. Define a `display-lily-music'
2813         function, that displays the music expression given as an argument,
2814         using LilyPond notation.
2815
2816         * scm/define-music-display-methods.scm: new file. Implementation
2817         of display methods for each music type.
2818
2819         * ly/music-functions-init.ly (displayLilyMusic): new function for
2820         displaying music with LilyPond notation.
2821
2822         * input/regression/display-lily-tests.ly: new regression test file
2823         for `display-lily-music'.
2824
2825         * scm/markup.scm: remove obsolete debugging code (for printing
2826         markups with LilyPond notation).
2827
2828         * scm/define-music-types.scm (music-name-to-property-table):
2829         * scm/clef.scm (supported-clefs): export, in order to be accessible
2830         from the (scm display-lily) module.
2831
2832 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2833
2834         * Documentation/topdocs/NEWS.tely (Top): Typo.
2835
2836 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
2837
2838         * Documentation/index.html.in, Documentation/texinfo.css,
2839           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
2840           Documentation/bibliography/index.html.in,
2841           Documentation/bibliography/html-long.bst: revert css-width patch,
2842           it does not work with IE6.
2843
2844 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2845
2846         * Documentation/texinfo.css: revert 760px hack. 
2847
2848         * VERSION: release 2.7.2
2849
2850         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
2851
2852         * Documentation/user/basic-notation.itely (Barnumber check): add
2853         section.
2854
2855         * scm/music-functions.scm (skip-to-last): new function. Show only
2856         last showLastLength part of the \score.
2857
2858         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
2859
2860         * python/convertrules.py (conv): add ly:x-moment rule
2861
2862         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
2863
2864         * Documentation/topdocs/NEWS.tely (Top): add new feature.
2865
2866         * Documentation/user/instrument-notation.itely (Flexibility in
2867         alignment): options in subsections.
2868
2869         * lily/lyric-engraver.cc (process_music): don't typeset text for _
2870         syllable text. Instead, assume that the previous lyric text is a
2871         melismated text.
2872
2873         * Documentation/index.html.in: revert 800x600 change.
2874
2875 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2876
2877         * lily/main.cc (main): Remove invalid handle kludge.
2878
2879         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
2880         (lambda): add gui define.
2881
2882 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2883
2884         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
2885
2886         * Documentation/user/instrument-notation.itely (Musica ficta
2887         accidentals): add section Musica ficta accidentals
2888
2889         * lily/accidental-engraver.cc (make_suggested_accidental): new
2890         function.
2891         (make_standard_accidental): move into new function.
2892         (create_accidental): new function.
2893
2894         * scm/define-grobs.scm (all-grob-descriptions): new Grob
2895         AccidentalSuggestion
2896
2897         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
2898
2899         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
2900         undefined.
2901
2902         * Documentation/user/global.itely (Page formatting): document
2903         horizontalshift.
2904
2905         * scm/page-layout.scm (default-page-music-height):
2906         horizontalshift: new variable, shift all systems by
2907         horizontalshift to the right, to make space for instrument names.
2908
2909         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
2910
2911         * lily/input-scheme.cc (LY_DEFINE): take format commands.
2912
2913 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2914
2915         * lily/note-column.cc (dir): idem.
2916
2917         * lily/spacing-spanner.cc (Module): idem.
2918
2919         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
2920
2921         * lily/include/paper-column.hh (class Paper_column): add
2922         non-static get_rank() member.
2923
2924         * VERSION: release 2.7.1
2925         
2926         * scm/framework-null.scm: new file, used for benchmarking.
2927
2928 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
2929
2930         * Documentation/topdocs/INSTALL.texi, configure.in: fix
2931         version dependencies for fontforge and gs.
2932
2933         * Documentation/index.html.in, Documentation/texinfo.css,
2934         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
2935         Documentation/bibliography/index.html.in, 
2936         Documentation/bibliography/html-long.bst: optimize width of
2937         html for a 800x600 screen (width:760), increases printability
2938         when 'fit to page' is not set and readability in wide screens.
2939
2940         * stepmake/bin/add-html-footer.py: add missing </p>.
2941
2942 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2943
2944         * scm/define-markup-commands.scm (beam): use polygon in beam
2945         command.
2946
2947         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
2948         all acknowledged grobs, and do potentially expensive merge and
2949         write in one go.
2950
2951         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
2952
2953         * configure.in (reloc_b): add --enable-static-gxx to statically
2954         link to libstdc++
2955
2956         * lily/GNUmakefile (static-gxx-libs): new target
2957         static-gxx-libs. Create symlink to libstdc++.a
2958
2959         * lily/new-lyric-combine-music-iterator.cc: rename to
2960         Lyric_combine_music_iterator
2961
2962         * lily/lyric-combine-music-iterator.cc
2963         (Old_lyric_combine_music_iterator): rename to
2964         Old_lyric_combine_music_iterator
2965
2966         * lily/*-engraver.cc (various): remove double use of
2967         PRECOMPUTED_VIRTUAL function: only use
2968         start_translation_timestep() and stop_translation_timestep(), not
2969         both.
2970
2971         * lily/break-substitution.cc (fast_substitute_grob_array): do
2972         fast_substitute_grob_array for all unordered grob_arrays.
2973         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
2974         (substitute_grob_array): optimize.
2975
2976         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
2977
2978         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
2979
2980         * lily/parser.yy: revert $globalheader patch.
2981         
2982         * lily/include/translator.icc
2983         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
2984         Translator methods, without _static helper.
2985  
2986         * lily/grob-smob.cc (derived_mark): rename from
2987         do_derived_mark(). Return void.
2988
2989         * scm/define-context-properties.scm
2990         (all-internal-translation-properties): remove tweakCount/tweakRank.
2991
2992         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
2993         predefined break-visibilities.
2994
2995         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
2996         booleans for break-visibility.
2997
2998         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
2999
3000         * python/convertrules.py (conv): rule for Timing_translator. 
3001
3002         * lily/include/translator.icc: new file. 
3003
3004         * lily/paper-column-engraver.cc (process_music): new
3005         file. Separate Paper_column factory from Score_engraver.
3006
3007         * lily/vertically-spaced-context-engraver.cc: administer
3008         spaceable-staves property of System.
3009
3010         * lily/translator-group-ctors.cc: new file.
3011
3012         * lily/context-property.cc (make_grob_from_properties): construct
3013         the right Grob class programmatically, looking at the class entry
3014         for the meta property.
3015
3016         * lily/break-align-engraver.cc (stop_translation_timestep): call
3017         Break_align_interface::add_element() directly.
3018
3019         * lily/context.cc (measure_position): measure_position() is now a
3020         normal function.
3021
3022         * lily/include/translator.hh (class Translator): rename
3023         process_acknowledged_grobs() to process_acknowledged() and move to
3024         Translator.
3025
3026         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
3027         field for each grob description.
3028
3029         * lily/include/translator-group.hh (class Translator_group):
3030         change to base class. Separate class from Translator. This gets
3031         rid of virtual inheritance for Engravers/Performers.
3032
3033         * lily/staff-performer.cc (class Staff_performer): derive
3034         Staff_performer from Performer, not Performer_group_performer 
3035
3036         * Lily/translator-group.cc (precomputed_recurse_over_translators):
3037         new function.
3038         (precompute_method_bindings): new function. Precompute lists of
3039         Translators, so we only call methods (process_music,
3040         start_translation_timestep, etc.) for Translators needing
3041         it. Also: dispose of pointer-to-member-function calls.
3042
3043         * lily/engraver-group-engraver.cc: remove engraver_each,
3044         recurse_down_engravers ()
3045
3046         * lily/note-head.cc (internal_print): only call
3047         glyph-name-procedure if style != default. 
3048
3049 2005-07-16  Graham Percival  <gperlist@shaw.ca>
3050
3051         * ly/titling-init.ly: add printallheaders option.
3052
3053         * Documentation/user/global.itely: document printallheaders.
3054
3055 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3056
3057         * lily/system.cc (do_derived_mark): don't mark from object_alist_
3058         anymore, but do it centrally.  
3059
3060         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
3061         hammer hack.
3062
3063         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
3064
3065         * scm/output-lib.scm: remove hammer-print-function.
3066
3067         * lily/include/pointer-group-interface.hh (extract_grob_set): new
3068         macro. Declare a Link_array<Grob> and fill it from a grob.
3069         (extract_item_set): idem for item.
3070
3071         * lily/break-substitution.cc: add header.
3072         (fast_substitute_grob_array): rewrite for Grob_arrays.
3073         (substitute_grob_array): idem.
3074
3075         * lily/group-interface.cc (add_thing): remove file.
3076
3077         * flower/include/parray.hh (class Link_array): slice() is const.
3078
3079         * lily/include/grob-array.hh: new file.
3080
3081         * lily/grob-array.cc (spanner): new file.
3082
3083         * lily/beam-quanting.cc (fill): read details property from beam.
3084
3085         * lily/beam.cc: support details property.
3086
3087         * total speedups below: approx 10%.
3088
3089         * lily/include/beam.hh: new struct, softcode beam quanting parameters
3090
3091         * lily/include/grob.hh (class Grob): add interfaces_ member.
3092
3093         * lily/bezier.cc (init_polynomial_cache): new function: cache
3094         binom(3,j) t^j (1-t)^{3-j}
3095         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
3096
3097         * lily/*.cc: substitution throughout.
3098
3099         * lily/grob-property.cc (internal_get_object): new routine.
3100         (internal_set_object): idem. Store grob refrences in separate
3101         alist. This saves processing time, since properties aren't
3102         break-substituted, and the per grob namespace is smaller, both for
3103         grobs and non-grob properties.
3104
3105         * scm/define-grob-properties.scm (all-internal-grob-properties):
3106         remove center-element.
3107
3108         * lily/grob.cc: remove tweak-count, tweak-rank.
3109
3110 2005-07-15  Graham Percival  <gperlist@shaw.ca>
3111
3112         * Documentation/user/lilypond-book.itely: fixes example.
3113
3114 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3115
3116         * Documentation/user/global.itely (Creating titles):    
3117         * Documentation/user/examples.itely (All headers): change the
3118         place of \header in \score blocks (after music block) to make
3119         examples compile (cf. changes on parser.yy on 2005-07-10)
3120
3121 2005-07-13  Graham Percival  <gperlist@shaw.ca>
3122
3123         * python/convertrules.py: add exc -> ecc rule.
3124
3125         * scripts/convert-ly.py: add location of convertrules.py
3126         in a comment.
3127
3128         * Documentation/user/changing-defaults.itely: fix language.
3129
3130 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3131
3132         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
3133
3134 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3135
3136         * scm/output-socket.scm (grob-bbox): don't use inf? 
3137
3138         * flower/include/rational.hh: add operator bool() 
3139
3140         * scm/define-music-types.scm (music-descriptions): remove
3141         internal-class-name properties.
3142
3143         * lily/include/event.hh: remove file.
3144
3145         * lily/include/music-constructor.hh: remove file.
3146
3147         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
3148         in 'types property.
3149
3150         * lily/music.cc (duration_length_callback): new function.
3151
3152         * lily/event.cc: remove file.
3153
3154         * lily/music-constructor.cc: remove file.
3155
3156         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
3157
3158         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
3159         (get_context_key): idem.
3160
3161         * scm/lily.scm (lambda): new option object-keys (default to #f)
3162
3163         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
3164
3165         * scm/output-gnome.scm: remove beam routine.
3166
3167         * scm/output-ps.scm (scm): idem.
3168
3169         * scm/output-svg.scm: remove beam.
3170
3171         * ps/music-drawing-routines.ps: remove draw_beam.
3172
3173         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
3174
3175         * flower/include/guile-compatibility.hh (scm_from_locale_string):
3176         add scm_from_locale_string compatibility glue. 
3177
3178 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
3179
3180         * scripts/lilypond-book.py: Prevent occuring error when
3181         'lilypond-book --output=foo/ somefile.ly' is executed multiple
3182         times and target file shoud be overwritten.  (Error message said
3183         'input file and output file is same'.)
3184
3185 2005-07-13  Graham Percival  <gperlist@shaw.ca>
3186
3187         * input/regression/slur-extreme.ly,
3188         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
3189         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
3190         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
3191         "excentricity" to "eccentricity".
3192
3193         * Documentation/user/converters.itely: fix URL for Noteedit and
3194         Rosegarden.
3195
3196         * THANKS: added Yoshinobu Ishizaki.
3197
3198 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3199
3200         * scm/define-markup-commands.scm (justify-field): add. 
3201
3202         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
3203
3204 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3205
3206         * lily/lookup.cc (filled_box): express filled_box with
3207         round_filled_box
3208
3209         * scm/midi.scm (paper-book-write-midis): new function. Write all
3210         performances in numbered MIDI files.
3211
3212         * lily/performance-scheme.cc (LY_DEFINE): new file.
3213         (LY_DEFINE): new function ly:performance-write.
3214
3215         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
3216         new function.
3217         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
3218
3219         * scm/framework-*.scm: use port arguments throughout.
3220
3221         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
3222
3223         * lily/paper-outputter.cc (Paper_outputter): take port argument.
3224
3225         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
3226
3227         * scm/framework-texstr.scm (output-framework): 
3228
3229         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
3230
3231         * scm/output-lib.scm (tablature-stem-attachment-function):
3232         tablature stem attachment fix. 
3233
3234 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3235
3236         * lily/bezier.cc: hardcode binomial coefficients of order 3.
3237
3238         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
3239
3240         * scm/define-music-types.scm (music-descriptions): don't use
3241         Music_wrapper type.
3242
3243         * lily/paper-column.cc (print): print moment too.
3244
3245         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
3246         remove compatibility cruft.
3247
3248         * lily/parser.yy (score_body): \score can only begin with Music. 
3249
3250         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
3251         make-score. Take music argument only. Move parser interaction to
3252         Scheme.
3253
3254         * scm/lily-library.scm (scorify-music): new function.
3255
3256         * python/lilylib.py (datadir): remove 2.1 compat kludge.
3257         (datadir): remove resource import.
3258         (print_environment): remove get_bbox()
3259         (cp_to_dir): remove pre 1.5.2 compat glue.
3260
3261 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3262
3263         * lily/include/simple-spacer.hh (Module): idem.
3264
3265         * lily/include/spring.hh (struct Spring): store inverse
3266         strength. This prevents division by zero.
3267
3268         * VERSION: release 2.7.0
3269         
3270         * lily/include/music.hh (class Music): remove Music::duration_log()
3271
3272         * lily/stem-engraver.cc (make_stem): take duration log from event.
3273
3274         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
3275
3276 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3277
3278         * scm/lily.scm (ly:load): load autochange.scm
3279
3280         * Documentation/user/tutorial.itely (Running LilyPond for the
3281         first time): remove reference to DVI/TeX
3282
3283         * scm/define-markup-commands.scm (text): add \text markup command.
3284
3285         * configure.in (reloc_b): bump requirement to Python 2.2.
3286
3287         * lily/include/dots.hh (class Dots): make has_interface() static.
3288
3289         * python/convertrules.py (conv): add rule for ly:grob-default-font
3290
3291         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
3292         alphabetical order.
3293
3294         * input/regression/trill-spanner-pitched.ly: new file.
3295
3296         * lily/font-interface-scheme.cc (LY_DEFINE): function
3297         ly:grob-default-font (changed from get-default-font).
3298
3299         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
3300
3301         * lily/note-head.cc (internal_print): if style is not a symbol,
3302         set style to 'default. 
3303         (internal_print): no style suffix if glyph-name-procedure not
3304         set. Default to quarter head.
3305
3306         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
3307
3308         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
3309
3310         * ly/music-functions-init.ly: \pitchedTrill
3311
3312         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
3313
3314         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
3315
3316         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
3317
3318         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
3319
3320         * po/fr.po: update
3321
3322         * po/de.po: update.
3323
3324 2005-07-06  Graham Percival  <gperlist@shaw.ca>
3325
3326         * Documentation/user/changing-defaults.itely: add link
3327         to grob-iterface.
3328
3329         * Documentation/user/advanced-notation.itely: add material
3330         to Setting automatic beam behaviour.  Thanks, Joe!
3331
3332         * Documentation/user/lilypond.itely: change encoding to utf-8.
3333
3334 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3335
3336         * Documentation/user/advanced-notation.itely (Setting automatic
3337         beam behavior): Correct the documentation of
3338         revert-auto-beam-setting (backportme)
3339
3340 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3341
3342         * lily/ly-module.cc (ly_make_anonymous_module): define
3343         %module-public-interface of module. 
3344
3345         * lily/lily-parser.cc (print_smob): allow printing of parser smob
3346         without lexer.
3347
3348 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3349
3350         * input/regression/fret-diagrams.ly: stretch example.
3351
3352 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3353
3354         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
3355         Fodor).
3356
3357 2005-06-30  Graham Percival  <gperlist@shaw.ca>
3358
3359         * Documentation/topdocs/AUTHORS.texi: update personal web address.
3360
3361         * Documentation/user/examples.itely, lilypond-book.itely:
3362         change \RequirePackage to \usepackage.
3363
3364         * Documentation/user/global.itely: document copyright and tagline.
3365
3366 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3367
3368         * Documentation/user/basic-notation.itely (Transpose): remove link
3369         to nonexistent UntransposableMusic.
3370
3371         * scm/output-svg.scm: remove old definitions.
3372
3373         * scripts/lilypond-book.py (do_file): search for kpsewhich before
3374         invoking.
3375
3376         * python/lilylib.py (search_exe_path): new function.
3377
3378 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3379
3380         * python/lilylib.py (mkdir_p): remove setup_environment()
3381         (backportme)
3382
3383         * buildscripts/mutopia-index.py (headertext): trim text.
3384
3385         * Documentation/topdocs/NEWS.tely (Top): refresh.
3386
3387         * scm/define-markup-commands.scm (wordwrap-string): new function:
3388         split string in paras and words.
3389         (wordwrap-markups): new function.
3390         (wordwrap-stencils): new function. 
3391         (justify): use it.
3392         (wordwrap): use it.
3393         (wordwrap-string): use it
3394         (justify-string): use it.
3395
3396         * scm/lily-library.scm (regexp-split): new function.
3397
3398         * scm/define-markup-commands.scm: remove encoded-simple. 
3399         remove font-markup.
3400         (fontsize): remove old version  of fontsize.
3401         (wordwrap): new markup function. Wrap into paragraphs.
3402
3403         * VERSION: Branch lilypond_2_6
3404         (MINOR_VERSION): go to 2.7.0
3405
3406 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3407
3408         * po/zh_TW.po: update from translation project.
3409
3410 2005-06-28  Graham Percival  <gperlist@shaw.ca>
3411
3412         * scm/midi.scm: compile fix.
3413
3414 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3415
3416         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
3417         patch. Now, the tempfile module is loaded too, not only used.
3418
3419 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
3420
3421         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
3422         0.05 - 1.00 to 0.25 - 1.00
3423
3424         * scm/midi.scm: moved the default-instrument-equalizer procedure
3425         to just under the insturment-equalizer-alist it takes as an
3426         argument.
3427
3428 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3429
3430         * Documentation/user/advanced-notation.itely (Font selection):
3431         remove CMR note.
3432
3433         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
3434
3435 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3436
3437         * THANKS: Add UTF-8 marker.
3438
3439         * Documentation/user/point-and-click.itely (http): Update: use
3440         lilypond-invoke-editor.  Fix: instruct to use user.js.
3441
3442 2005-06-27  Graham Percival  <gperlist@shaw.ca>
3443
3444         * ly/titling-init.ly: implements printpagenumber, increases
3445         space between dedication and title (to avoid collisions with
3446         "g" and "q" in dedication), and nicer logic about copyright
3447         and instrument fields being printed on the first page.
3448         Thanks Vincent!
3449
3450         * Documentation/user/global.itely: document printpagenumber.
3451
3452 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3453
3454         * Documentation/topdocs/NEWS.tely: Update to 2.6.
3455
3456 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3457
3458         * THANKS: update to 2.6
3459
3460         * VERSION: 2.6.0 released.
3461
3462 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3463
3464         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
3465         rule, errorneously removed probably because of misleading comment.
3466
3467 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3468
3469         * python/lilylib.py (datadir): py2exe comments.
3470
3471         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
3472
3473         * configure.in (reloc_b): make fontconfig REQUIRED.
3474
3475 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
3476
3477         * po/fi.po: add latest translations.
3478
3479 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3480
3481         * ChangeLog: recode utf-8
3482
3483         * Documentation/pictures/lilypond.xpm (Module): edited photo as
3484         logo.
3485
3486         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
3487
3488         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
3489
3490         * python/convertrules.py (do_conversion): don't print program_name
3491         from within a module
3492
3493         * configure.in (reloc_b): bump fontforge requirement to 20050624.
3494
3495         * python/convertrules.py (conv): add 2.6.0 dummy rule.
3496
3497 2005-06-23  Graham Percival  <gperlist@shaw.ca>
3498
3499         * Documentation/user/lilypond-book.itely,
3500         Documentation/user/examples.itely: add \RequirePackage{graphics}.
3501
3502         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
3503         fixes baseline-skip.  Thanks Vincent!
3504
3505         * Documentation/user/advanced-notation.itely, global.itely:
3506         moved "Selecting font sizes" to global, since it deals with
3507         notation font size, not text fonts.
3508
3509 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3510
3511         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
3512         to fonts.
3513
3514 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3515
3516         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
3517         workaround since /dev/stdin doesn't work on Cygwin. Using a
3518         temporary file in the current directory since latex doesn't
3519         understand the path name to the default TMP in Cygwin (at least on
3520         win XP).
3521         
3522         * Documentation/user/global.itely (Creating titles): Correct
3523         misprint in example. Thanks to Rob Vlasaty.
3524
3525 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3526
3527         * VERSION (PATCH_LEVEL): release 2.5.32
3528
3529         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
3530         variable in lily module
3531
3532         * scm/framework-ps.scm (output-classic-framework): error message
3533         regarding the classic framework.
3534
3535         * Documentation/user/henle-flat-gray.png (Module): new file.
3536
3537         * Documentation/user/baer-flat-gray.png (Module): new file.
3538
3539         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
3540         whiteout for markups.
3541
3542         * buildscripts/substitute-encoding.py (note_glyph): include _ in
3543         regex too. This fixes change clef appearance in PDF. 
3544
3545         * ttftool/include/*: remove.
3546
3547         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
3548
3549         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
3550
3551         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
3552
3553         * ttftool/*: remove ttftool subdirectory.
3554
3555         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
3556
3557         * lily/ttf.cc (print_header): new file. Convert to type42, using
3558         FreeType to parse the TTF. 
3559
3560         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
3561         and post table may differ. Pass around post_nglyphs as well.
3562
3563 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3564
3565         * ly/music-functions-init.ly (musicMap): new music function
3566         musicMap. 
3567         
3568 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3569
3570         * make/mutopia-rules.make: anti-alias-factor = 2
3571
3572         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
3573         page switch.
3574
3575         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
3576         anti-alias-factor for lilypond-book runs.
3577
3578         * scm/ps-to-png.scm (scale-down-image): new function.
3579         (my-system): new function.
3580         (make-ps-images): blow up GS resolution by anti-alias-factor,
3581         scale down image by anti-alias-factor.  This improves appearance
3582         of bitmaps
3583         (make-ps-images): remove showpage. Fixes spurious empty png at
3584         end.
3585
3586         * scm/framework-ps.scm (write-preamble): downcase filename before
3587         string-matching. Should fix .TTF files (as opposed to ttf files)  
3588
3589         * Documentation/user/tutorial.itely (Running LilyPond for the
3590         first time): separate subsections for windows, macos and unix.  
3591
3592         * Documentation/user/invoking.itely (Updating files with
3593         convert-ly): add MacOS X note.
3594
3595 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3596
3597         * Documentation/user/introduction.itely (Engraving): don't include
3598         file optical-spacing, add directly.
3599
3600         * lily/paper-outputter.cc (file): open file in binary mode. This
3601         fixes OTF embedding on windows.
3602
3603 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3604
3605         * scm/framework-ps.scm (write-preamble): remove debugging output.
3606
3607         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
3608
3609         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
3610         outdir.
3611         (install-fc-cache): install font cache in installation directories.
3612
3613 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3614
3615         * scm/editor.scm (editor-command-template-alist): Use char iso
3616         column, except for Emacs.
3617         (get-editor-command): Substitute char too (Bertalan Fodor).
3618
3619 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3620
3621         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
3622         quoted ~s.  This should fix PNG output on Windows; single quotes
3623         are regular characters on Windows.
3624
3625 2005-06-16  Graham Percival  <gperlist@shaw.ca>
3626
3627         * Documentation/user/basic-notation.itely: include ChoirStaff
3628         in System start delimiters.
3629
3630         * Documentation/user/putting.itely: new doc section on
3631         fixing overlapping notation.
3632
3633 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3634
3635         * Documentation/user/global.itely (Paper size): \paper is in
3636         \book, not \score.
3637
3638         * make/mutopia-rules.make: -ddelete-intermediate-files
3639
3640         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
3641
3642 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3643
3644         * ChangeLog: Recode utf-8.
3645
3646         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
3647         datadir with .py modules.
3648
3649 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
3650
3651         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
3652
3653 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3654
3655         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
3656         
3657         * scm/framework-ps.scm (write-preamble): remove status check.
3658
3659         * Documentation/user/invoking.itely (Updating files with
3660         convert-ly): remove -o option.
3661
3662         * VERSION (PACKAGE_NAME): release 2.5.31
3663
3664         * scm/framework-ps.scm (write-preamble): use ly:system.
3665         (write-preamble): verbosity.
3666
3667         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
3668
3669         * python/convertrules.py: new file. Store conversion rules
3670         separately.
3671
3672 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3673
3674         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
3675
3676 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3677
3678         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
3679         \musicDisplay 
3680
3681         * Documentation/user/instrument-notation.itely (More stanzas): Add
3682         reference to StanzaNumber.
3683
3684 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3685
3686         * THANKS: separate section for website translators.
3687
3688 2005-06-14  Graham Percival  <gperlist@shaw.ca>
3689
3690         * Documentation/topdocs/INSTALL.texi: update vim info;
3691         thanks Simon Bailey!
3692
3693         * Documentation/user/advanced-notation.itely: included
3694         color names.
3695
3696         * Documentation/user/advanced-notation.itely,
3697         Documentation/usr/notation-appendices.itely: moved
3698         color names into an appendix.
3699
3700 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3701         
3702         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
3703
3704         * scm/lily.scm (lambda): initialize program options from here.
3705
3706         * scm/framework-*.scm: add header info.
3707
3708         * lily/main.cc (parse_argv): only set output format to pdf if no
3709         other format specified.
3710
3711         * scm/backend-library.scm (postprocess-output): process
3712         'delete-intermediate-files after running convert-to-*. This fixes
3713         PNG generation when 'delete-intermediate-files is set.
3714         
3715 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3716
3717         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
3718         links on website. 
3719
3720 2005-06-13  Graham Percival  <gperlist@shaw.ca>
3721
3722         * Documentation/topdocs/INSTALL.texi,
3723         Documentation/user/lilypond-book.itely: typos.
3724
3725 2005-06-12  Pal Benko  <benkop@freestart.hu>
3726
3727         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
3728         added between program name and switch; -b changed to -f not
3729         to generate pdf
3730
3731 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3732
3733         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
3734         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
3735
3736         * input/sakura-sakura.ly: add \midi.
3737
3738         * buildscripts/mutopia-index.py (find): use /usr/bin/find
3739         iso. python find. 
3740
3741         * ttftool/test.c (main): cosmetics.
3742
3743         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
3744
3745         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
3746         create a ttf2ps binary.
3747
3748         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
3749
3750         * scm/backend-library.scm (postscript->png): set rename-page-1 to
3751         true.
3752
3753 2005-06-11  Graham Percival <gperlist@shaw.ca>
3754
3755         * Documentation/user/lilypond-book.itely: add warning about
3756         the font warnings in dvips.
3757
3758 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3759
3760         * THANKS: typo
3761
3762         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
3763
3764         * GNUmakefile.in: remove links for .map, .enc
3765         don't fail if out/ doesn't exist yet.
3766
3767 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3768
3769         * ttftool/util.c (surely_read): return nbytes
3770
3771         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
3772
3773         * VERSION (PACKAGE_NAME): release 2.5.30
3774
3775         * flower/string-convert.cc (precision_string): >? fix.
3776
3777         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
3778         (make-ps-images): add verbose -q too.
3779
3780         * lily/default-actions.cc (Module): new file. default
3781         {book,score}-print functions.
3782
3783         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
3784         pass results via parseStringResult, lookup via ly:parser-lookup.  
3785
3786         * lily/lily-parser.cc (Lily_parser): only clone lexer in
3787         constructors.
3788         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
3789         (parse_string): idem.
3790
3791         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
3792
3793         * lily/main.cc (main_with_guile): copy be_verbose_global into
3794         ly_set_option()
3795
3796 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
3797
3798         * scm/backend-library.scm (postscript->pdf):
3799         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
3800         verbose mode.  Search for several names of gs executable.
3801
3802 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3803
3804         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
3805         directly. This fixes a massive memory leak, provided you use CVS
3806         GUILE.
3807
3808 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
3809
3810         * ly/property-init.ly: Added tieDashed.
3811
3812         * THANKS: Added some bughunters for 2.5.
3813
3814 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3815
3816         * lily/program-option.cc: add debug-gc option.
3817
3818         * lily/include/lily-guile-macros.hh: don't protect exported module
3819         objects.
3820
3821         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
3822
3823         * scm/backend-library.scm (postscript->pdf): use
3824         delete-intermediate-files iso. running-from-gui? 
3825
3826         * ttftool/util.c (surely_read): robustness. Allow read() to return
3827         less bytes than requested, as per posix standards.
3828
3829         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
3830         program option.
3831
3832         * ttftool/include/ttftool.h ("C"): rename verbosity to
3833         ttf_verbosity. Add to public interface.
3834
3835         * scm/music-functions.scm (unfold-repeats): remove debugging display.
3836
3837         * lily/program-option.cc: rename from scm-option.cc
3838
3839         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
3840         (get_help_string): Print pretty help string.
3841
3842         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
3843         to snippet preamble.
3844
3845         * lily/scm-option.cc: remove command-line-settings option. Fold
3846         all command-line options plus default settings in a generic
3847         interface. 
3848
3849         * flower/getopt-long.cc (table_string): indent 2nd lines of help
3850         texts too.
3851
3852 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3853
3854         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
3855         or EXT_ components non-empty.
3856
3857 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3858
3859         * scm/lily.scm (running-from-gui?): Export.
3860
3861         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
3862         output in .ly source directory.
3863
3864 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3865
3866         * ttftool/util.c (surely_lseek): more verbosity.
3867
3868         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
3869         compile.
3870
3871         * lily/parser.yy (Repeated_music): remove >? 
3872
3873         * scm/backend-library.scm (postscript->pdf): Support for
3874         -dgs-font-load=1
3875
3876         * scm/framework-ps.scm (write-preamble): make font loading
3877         switchable to GS via --define-default gs-font-load=1
3878
3879 2005-06-09  Graham Percival  <gperlist@shaw.ca>
3880
3881         * Documentation/user/global.itely: added \layout docs.
3882
3883 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3884
3885         * lily/lily-parser-scheme.cc: add unistd.h
3886
3887 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3888
3889         * scm/editor.scm: add char argument.
3890
3891         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
3892
3893         * ttftool/util.c (syserror): use errno for better error reporting.
3894
3895         * lily/source-file.cc (get_counts): new function. Calc column,
3896         line and char count in one go.
3897
3898         * lily/binary-source-file.cc (quote_input): rename to quote_input
3899
3900         * lily/input.cc (set): new function.
3901
3902 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3903
3904         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
3905         directory part of file name to search directory.
3906
3907         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
3908         search path and chdir to DIR if --outname=DIR used.
3909
3910         * lily/main.cc (prepend_env_path): Bugfix: Check directory
3911         existence before appending original path.
3912
3913 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3914
3915         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
3916         file" massage.
3917
3918         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
3919         texinfo.tex is always used.
3920         
3921 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3922
3923         * flower/include/axis.hh: rename from axes.hh
3924
3925         * lily/include/text-interface.hh (Module): rename from text-item.hh
3926
3927         * VERSION (PATCH_LEVEL): release 2.5.29
3928
3929         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
3930
3931         * scm/framework-ps.scm (font-file-as-ps-string): new function.
3932         (handle-macfont): new function. Call fondu for Native mac fonts.
3933
3934         * scm/define-markup-commands.scm (fill-line): handle text-widths =
3935         '() case.
3936
3937 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3938
3939         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
3940         multi-page.  Fix .eps regular expression.
3941
3942 2005-06-07  Graham Percival  <gperlist@shaw.ca>
3943
3944         * Documentation/user/putting.itely: add info on modifying templates.
3945
3946         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
3947         misc small changes.
3948
3949 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3950
3951         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
3952
3953         * scripts/lilypond-ps2png.scm
3954
3955         * VERSION (PACKAGE_NAME): release 2.5.28
3956
3957 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3958
3959         * lily/main.cc (prepend_env_path): Do not append /, that does not
3960         work.  Localedir lives in datadir, not in prefix.
3961
3962         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
3963         hack for windows.
3964
3965         * flower/include/file-cookie.hh: Compile fix.
3966
3967 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3968
3969         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
3970
3971         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
3972         system primitives.
3973         (gulp-port): using read-string!/partial. We don't want to read an
3974         entire PS file  (GUILE 1.6 limits strings to 16M) 
3975
3976         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
3977         properties. Add font-interface. 
3978
3979         * scm/define-grob-properties.scm (all-user-grob-properties):
3980         remove old bracket properties.
3981
3982         * scm/x11-color.scm: reformat. 
3983
3984         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
3985         LedgerLineSpanner if new StaffSymbol is found. 
3986
3987         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
3988         staff-symbol for finishing staff. 
3989
3990         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
3991
3992         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
3993         change black to currentColor everywhere. This fixes color support
3994         in SVG.
3995
3996 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
3997
3998         * input/regression/fret-diagrams.ly: new file to test fret diagram
3999         capability
4000
4001         * scm/output-tex.scm: remove white-dot and white-text
4002
4003         * scm/output-ps.scm: remove white-dot and white-text
4004
4005         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
4006         using ly:stencil-in-color instead
4007         (draw-dots) : remove call to white-dot
4008
4009 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4010
4011         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
4012         support.
4013
4014         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
4015
4016         * flower/include/file-cookie.hh: new file. lily_cookie extension 
4017
4018         * flower/file-cookie.cc: new file. lily_cookie extension.
4019         
4020 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4021
4022         * scm/editor.scm (editor-command-template-alist): Add syn
4023         editor (Jaap [de Vos]).
4024
4025 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4026
4027         * scripts/lilypond-ps2png.scm:
4028         * scm/ps-to-png.scm: New file.
4029
4030         * scm/backend-library.scm (postscript->png): Use it.
4031
4032         * scripts/lilypond-ps-to-png.py: Remove file.
4033
4034         * python/lilylib.py (get_bbox, make_ps_images): Remove.
4035
4036 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4037
4038         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
4039
4040         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
4041         start on grace moment. Fixes autobeam-grace.ly.
4042
4043         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
4044         process anything unless we're at the end of a pending beam. Fixes
4045         syncopated 8ths beamed across a beat.
4046
4047 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4048
4049         * scm/editor.scm (editor-command-template-alist): Start emacs if
4050         emacslient fails.
4051
4052         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
4053
4054         * flower/file-path.cc (is_file, is_dir): Export.
4055
4056         * lily/main.cc (prepend_env_path, set_env_file): Use them.
4057
4058 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4059
4060         * lily/easy-notation.cc: Added include cctype to correct
4061         compilation error.
4062
4063 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4064
4065         * scm/backend-library.scm (postscript->pdf): set resolution to
4066         1200, so bitmap fonts aren't that ugly. 
4067
4068         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
4069
4070         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
4071         parent if we have a notehead. Fixes incorrect offsets when
4072         Paper_column is very wide in the X direction.
4073
4074         * input/regression/font-family-override.ly (Module): new file.
4075
4076         * scm/font.scm (make-pango-font-tree): new function.
4077
4078         * lily/beam.cc (before_line_breaking): remove warning about less
4079         than 2 visible stems. We still get a warning when there is only
4080         one stem.
4081
4082 2005-06-01  Werner Lemberg  <wl@gnu.org>
4083
4084         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
4085         correctly.
4086
4087 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4088
4089         * lily/slur-scoring.cc (generate_avoid_offsets): new
4090         function. Generate avoid offsets once per slur.
4091
4092         * lily/slur.cc (add_extra_encompass): add dependency to
4093         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
4094
4095         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
4096         too. Fixes inf error with added bass notes.
4097
4098         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
4099         argument anymore.
4100
4101         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
4102
4103         * input/tutorial/lbook-latex-test.tex: add line length test.
4104
4105         * scripts/lilypond-book.py (set_default_options): new
4106         function. Call this before dissecting snippets, so linewidth
4107         settings reach the snippets.
4108
4109 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4110
4111         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
4112
4113 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4114
4115         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
4116
4117 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4118
4119         * stepmake/aclocal.m4: More autopackage friendliness.
4120
4121 2005-05-31  Graham Percival  <gperlist@shaw.ca>
4122
4123         * Documentation/index.html.in: remove link to LSR.
4124
4125         * Documentation/user/global.itely: remove duplicate
4126         "dedication" \header{} section.
4127
4128 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4129
4130         * VERSION (PACKAGE_NAME): release 2.5.27.
4131
4132         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
4133         too. Plugs memory leak.
4134
4135         * make/lilypond.fedora.spec.in (Group): remove
4136         lilypond-pdfpc-helper.
4137
4138         * scripts/GNUmakefile (SEXECUTABLES): remove
4139         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
4140
4141         * scm/font.scm (make-century-schoolbook-tree): add Mono as
4142         'typewriter family.
4143
4144         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
4145         memory leak.
4146
4147         * lily/parser.yy (score_body): don't clone Score, that's done in
4148         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
4149
4150         * lily/score-engraver.cc (derived_mark): new function.
4151         (initialize): unprotect Paper_score. This fixes a memory leak.
4152
4153         * lily/score-performer.cc (derived_mark): new function.
4154
4155         * lily/score-translator.cc (get_output): use SCM for get_output() call.
4156
4157         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
4158         spurious warning.
4159
4160         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
4161         serif.
4162
4163 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4164
4165         * configure.in (reloc_b): Add --enable-relocation.
4166
4167 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4168
4169         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
4170
4171         * input/regression/alignment-order.ly: add Staff example.
4172
4173 2005-05-31  John Mandereau   <john.mandereau@free.fr>
4174
4175         * po/fr.po: update.
4176
4177 2005-05-31  Graham Percival  <gperlist@shaw.ca>
4178
4179         * Documentation/index.html.in: add link to LSR.
4180
4181 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4182
4183         * scm/define-stencil-commands.scm (Module): new file. Register all
4184         allowed stencil expression heads in a central place.
4185
4186         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
4187         ly:make-stencil
4188
4189         * lily/stencil-expression.cc (all_stencil_heads): registering
4190         stencil expressions.
4191
4192         * lily/stencil-interpret.cc: new file. Stencil expression
4193         interpreting.
4194
4195         * input/xiao-haizi-guai-guai.ly: move file back.
4196
4197 2005-05-30  Graham Percival  <gperlist@shaw.ca>
4198
4199         * Documentation/user/advanced.itely, converters.itely,
4200         instrument-notation.itely, lilypond-book.itely: misc small
4201         changes.
4202
4203 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4204
4205         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
4206
4207         * make/lilypond.fedora.spec.in: Fix source url.
4208
4209         * cygwin: Update from mingw patches.
4210
4211         * scm/editor.scm (editor-command-template-alist): Use jedit
4212         -reuseview (Bertalan), add uedit (Patrick Huberts).
4213
4214         * input/xiao-hai-zi-guai-guai.ly: Rename from
4215         xiao-haizi-guai-guai.ly.
4216
4217         * input/*: Reindent, do not use TAB.
4218
4219         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
4220         white background.
4221
4222 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
4223
4224         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
4225         numerical overflow error.
4226
4227 2005-05-29 Laura Conrad <lconrad@laymusic.org>
4228         
4229         * abc2ly.py: fix to syntax error in multi-part output.
4230
4231 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4232
4233         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
4234         with disappearing span bars when alignAboveContext is active
4235
4236         * lily/property-iterator.cc (check_grob): use is-grob?
4237         object-property. Fixes crash-key-sig-font-size.ly. 
4238
4239 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4240
4241         * lily/bar-line.cc (print): don't round barlines; this produces
4242         odd aliasing effects in Acroread.
4243
4244         * lily/timing-engraver.cc (process_music): robustness fix.
4245
4246         * lily/context-def.cc (filter_engravers): bugfix.
4247
4248 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4249
4250         * lily/lilypond.rc.in: Add ly-icon.
4251
4252         * lily/GNUmakefile: 
4253         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
4254         rules.
4255
4256 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4257
4258         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
4259
4260         * ps/music-drawing-routines.ps: 
4261
4262         * scm/output-ps.scm: remove draw ez_ball.
4263
4264         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4265         EasyNotation context definition.
4266
4267         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
4268         Text_interface and color for making easy note heads.
4269
4270         * lily/stencil.cc (with_color): new function.
4271
4272         * ps/music-drawing-routines.ps: remove draw_zigzag_line
4273
4274         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
4275         output routine. Zigzag now works in SVG too.
4276
4277         * scm/output-tex.scm (filledbox): idem.
4278
4279         * scm/output-svg.scm (filledbox): idem.
4280
4281         * scm/output-ps.scm (lily-def): remove horizontal-line. 
4282
4283         * lily/lookup.cc (horizontal_line): use draw-line. 
4284
4285         * lily/system-start-delimiter.cc: remove old staff bracket code.
4286
4287         * mf/feta-haak.mf: further tweaks.
4288
4289         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
4290
4291         * mf/feta-generic.mf: include feta-haak.
4292
4293         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
4294
4295         * scm/framework-ps.scm (write-preamble): only load fonts if their
4296         filename is a string. 
4297
4298 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4299
4300         * scm/output-svg.scm (circle): support circle.
4301         (bracket): stub for bracket.
4302
4303         * scripts/lilypond-book.py (main): make sure --psfonts warning is
4304         correct.
4305
4306 2005-05-26  Graham Percival  <gperlist@shaw.ca>
4307
4308         * Documentation/user/lilypond.tely, advanced-notation.itely,
4309         basic-notation.itely, instrument-notation.itely, global.itely,
4310         introduction.itely, tutorial.itely: rearranging, editing,
4311         clean-up.
4312
4313         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
4314         for compiling on FreeBSD.
4315
4316 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4317
4318         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
4319         otf files.
4320
4321         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
4322         bugfixes.
4323
4324         * VERSION: 2.5.26 released.
4325
4326         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
4327
4328 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
4329
4330         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
4331         if printpagenumber is false.
4332
4333 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4334
4335         * lily/font-config.cc (init_fontconfig): comment out FontConfig
4336         cache warning.
4337
4338         * lily/tie.cc (print): support dotted ties.
4339         
4340 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4341
4342         * scm/define-grobs.scm (all-grob-descriptions): switch off
4343         debugging
4344         (all-grob-descriptions): Arpeggio has Y-extent.
4345
4346         * scm/define-music-properties.scm (all-music-properties): document
4347         length-callback and start-callback as "read-only".
4348
4349         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
4350         length-callback after creation. 
4351
4352         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
4353         compressmusic -> compressMusic.
4354
4355         * ly/music-functions-init.ly (oldaddlyrics): idem.
4356
4357         * lily/parser.yy: NewLyricCombineMusic ->
4358         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
4359
4360 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
4361
4362         * ly/Welcome_to_LilyPond.ly: typo.
4363
4364 2005-05-24  Graham Percival  <gperlist@shaw.ca>
4365
4366         * Documentation/user/lilypond.tely: move changing-defaults to be
4367         before global issues.
4368
4369         * Documentation/user/basic-notation.itely: move Transpose section
4370         here from advanced/Other.
4371
4372         * Documentation/user/changing-defaults.itely,
4373         advanced-notation.itely: move Fonts to advanced, edit.
4374
4375 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4376
4377         * lily/parser.yy (bare_int): remove rule.  From now on, we require
4378         # before negative integers.
4379
4380 2005-05-23  Graham Percival  <gperlist@shaw.ca>
4381
4382         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
4383
4384         * Documentation/user/lilypond.tely: change Unified index to
4385         LilyPond index.
4386
4387         * Documentation/user/advanced-notation.itely,
4388         instrument-notation.itely: editing.
4389
4390 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4391
4392         * scm/lily.scm (lilypond-all): Bugfix: return failed.
4393
4394         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
4395
4396 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4397
4398         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
4399         ly:port-move.  Needs to be stderr-specific on mingw.
4400         Run fixcc.
4401
4402 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4403
4404         * lily/general-scheme.cc (ly:port-move): Remove.
4405
4406         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
4407         windows.
4408
4409         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
4410         variables.  This eliminates the need for a gs.bat wrapper, which
4411         opens a console.
4412
4413         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
4414         * scm/lily.scm (running-from-gui?): 
4415         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
4416         artifact of not compiling with -mwindows.
4417
4418         * scm/editor.scm: Define PLATFORM.
4419
4420 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4421
4422         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
4423         can start to cut & paste lilypond-book fragments.  
4424
4425         * scm/define-music-types.scm (music-descriptions): remove
4426         UntransposableMusic
4427
4428 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4429
4430         * scm/output-ps.scm (glyph-string): remove / before CIDs.
4431
4432 2005-05-20  Graham Percival  <gperlist@shaw.ca>
4433
4434         * Documentation/user/instrument-notation.itely: remove *Engraver.
4435
4436         * Documentation/user/advanced-notation.itely: edit, rearrange.
4437
4438 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4439
4440         * scm/output-ps.scm (glyph-string): take cid? argument. Use
4441         findresource iso. findfont for CID CFF fonts.
4442
4443         * VERSION (PACKAGE_NAME): release 2.5.25
4444
4445         * ly/Welcome_to_LilyPond.ly: add  \version
4446
4447 2005-05-20  Graham Percival  <gperlist@shaw.ca>
4448
4449         * Documentation/user/programming-interface.itely: move
4450         \displayMusic into its own section.
4451
4452         * Documentation/user/basic-notation.itely: finish editing.
4453
4454 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4455
4456         * flower/file-path.cc (find): don't throw away file_name.dir, but
4457         append to it. Fixes \include with directories.
4458
4459         * flower/include/file-path.hh (class File_path): don't derive from
4460         Array<String>.
4461
4462         * flower/include/file-name.hh (class File_name): remove to_str0()
4463
4464         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
4465         Hara_kiri_engraver in separate file.
4466
4467         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
4468         translation went wrong. Fixes vertically translated slurs.
4469
4470 2005-05-19  Graham Percival  <gperlist@shaw.ca>
4471
4472         * Documentation/user/basic-notaton.itely: editing.
4473
4474 2005-05-18  Graham Percival  <gperlist@shaw.ca>
4475
4476         * Documentation/user/macros.itexi, basic-notation.itely:
4477         add @commonprop (commonly used properties) macro.
4478
4479 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4480
4481         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
4482
4483         * scripts/lilypond-book.py (invokes_lilypond): new function
4484         (main): only run fontextract if invokes_lilypond() is true.
4485
4486         * lily/function-documentation.cc (ly_add_function_documentation):
4487         duh, use !=
4488
4489         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
4490
4491         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
4492
4493         * scm/lily.scm (running-from-gui?): lowercase Darwin.
4494
4495         * lily/function-documentation.cc (ly_add_function_documentation):
4496         use scm_hash_table_p() for checking.
4497
4498 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4499
4500         * Documentation/user/advanced-notation.itely (Text scripts):
4501         Change nonexisting @internalsref{Text markup} to @ref{Text
4502         markup}.  Change @internalsref{Text script} to
4503         @internalsref{TextScript}.
4504
4505         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
4506
4507 2005-05-17  Graham Percival  <gperlist@shaw.ca>
4508
4509         * Documentation/user/tutorial.itely, basic-notation.itely,
4510         changing-defaults.itely: remove duplicate cindex entries
4511         that appear on the same page.
4512
4513         * scm/define-grobs.scm: change default padding for TextSpanner.
4514
4515         * Documentation/topdocs/AUTHORS.texi: update email address.
4516
4517         * Documentation/user/global.itely: add info about \include.
4518
4519 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4520
4521         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
4522         when running-from-gui.
4523
4524         * scm/editor.scm (get-editor): Add platform defaults.
4525
4526         * scm/backend-library.scm (postscript->pdf): Typo.
4527
4528 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4529
4530         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
4531
4532         * lily/font-config.cc (init_fontconfig): add warning about cache.
4533
4534 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4535
4536         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
4537
4538 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4539
4540         * lily/horizontal-bracket.cc (print): Take care of the direction
4541         property so brackets above the stave point downwards. 
4542
4543         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
4544         for HorizontalBracket so it doesn't end up within the stave.
4545
4546 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4547
4548         * lily/GNUmakefile (default): Typo.
4549
4550         * scm/lily.scm (PLATFORM): Export.
4551
4552         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
4553         load-font-via-GS, ttftool or fopencookie is broken on windows.
4554         
4555         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
4556         -dSAFER, that is broken on windows.
4557
4558 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4559
4560         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
4561         for FlexLexer.h
4562
4563         * scripts/lilypond-invoke-editor.scm: remove stray -
4564
4565 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4566
4567         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
4568         Fixes deprecation warning.
4569
4570         * flower/include/string.icc (to_string): Only inline if
4571         -DSTRING_UTILS_INLINED.
4572
4573         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
4574         name.  Remove windows comment.
4575
4576         * scm/editor.scm (slashify): New function.
4577         (get-editor-command): Use it.
4578         (get-command-template): Do not alter editor command if
4579         environment value includes `%(file)s' magic.
4580
4581         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
4582         (dissect-uri): Use it.
4583         (unquote-uri): Bugfix.
4584
4585 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4586
4587         * scm/framework-ps.scm (write-preamble): add TTF rule.
4588
4589         * Documentation/topdocs/README.texi (Top): remove note about
4590         xdelta.
4591
4592         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
4593         requirement.
4594
4595         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
4596         function. Figure out where FlexLexer.h lives
4597
4598         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
4599         
4600 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4601
4602         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
4603         with Windows root in file name.
4604
4605         * scm/backend-library.scm (ly:system): Only redirect output (using
4606         system and shell, ugh) if /dev/null is writable.
4607
4608         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
4609         windows icon.
4610
4611         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
4612         on Mingw.
4613
4614         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
4615         click.
4616
4617         * flower/file-path.cc (is_dir, is_file): New function.  Actually
4618         use result of stat when available.
4619
4620         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
4621         absolute file name and root.
4622
4623         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
4624
4625         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
4626
4627         * flower/file-name.cc (slashify): Bugfix, do substitute if no
4628         slashes in file name.
4629
4630 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4631
4632         * Documentation/user/preface.itely (Preface): Run
4633         texinfo-all-menus-update.
4634
4635         * scm/editor.scm (get-editor-command): Bugfix: allow full
4636         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
4637
4638         * Documentation/pictures/lilypond-48.xpm: New file.
4639
4640         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
4641
4642         * ly/Welcome_to_LilyPond.ly: New file.
4643
4644         * lily/main.cc (main): Only identify if we have a terminal.
4645
4646         * scm/backend-library.scm (postscript->png)
4647         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
4648         non-/bin/sh).
4649
4650 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
4651
4652         * Documentation/topdocs/AUTHORS.texi: polish, update.
4653
4654 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4655
4656         * Documentation/user/preface.itely (Notes for version 2.6): new
4657         notes for 2.6
4658
4659         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
4660         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
4661         is not fully contained" warnings.
4662
4663         * lily/slur-scoring.cc (get_bound_info): remove warning.
4664
4665         * lily/staff-symbol-engraver.cc (process_music): start initial
4666         spanner in process_music(). This fixes overrides of StaffSymbol
4667         properties.
4668
4669         * scm/framework-pdf.scm (Module): remove.
4670
4671         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
4672
4673         * lily/ambitus-engraver.cc: formatting cleanups.
4674
4675         * mf/feta-solfa.mf (Module): remove.
4676
4677         * ChangeLog: more details about contributions.
4678
4679 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4680
4681         * lily/align-interface.cc (align_elements_to_extents): warn if
4682         called too early. Fixes: disappearing-staff-lines.ly
4683
4684         * VERSION (PACKAGE_NAME): release 2.5.24
4685
4686 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4687
4688         * stepmake/aclocal.m4: Typo.
4689
4690         * flower/string.cc (substitute): Take two strings or two
4691         characters.  Update callers.
4692
4693 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4694
4695         * flower/file-name.cc (File_name): Slashify.
4696
4697         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
4698
4699         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
4700
4701         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
4702
4703         * configure.in (gui_b): Use it.
4704
4705         * lily/lilypond.rc.in: New file.
4706
4707         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
4708
4709 2005-05-12  Graham Percival  <gperlist@shaw.ca>
4710
4711         * Documentation/user/advanced-notation.itely: edit of Text
4712         section; clarify text scripts vs. text markup.
4713
4714 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4715
4716         * lily/multi-measure-rest-engraver.cc
4717         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
4718         separation items on start. Fixes mm rests in start of score.
4719
4720         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
4721         don't access StaffSymbol if not there.
4722         Fixes: crash-staff-symbol-engraver.ly.
4723
4724         * lily/instrument-name-engraver.cc (class
4725         Instrument_name_engraver): data member first_. Create
4726         InstrumentName on start. 
4727
4728 2005-05-12  Graham Percival  <gperlist@shaw.ca>
4729
4730         * Documentation/user/instrument-notation.itely: add guitar
4731         position.
4732
4733         * Documentation/user/introduction.itely,
4734         Documentation/user/lilypond.tely,
4735         Documentation/user/tutorial.itely: begin pruning
4736         unused (duplicated) cindex entries and misc cleanup.
4737
4738 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4739
4740         * input/test/volta-chord-names.ly: Bring the explanation up to
4741         date.
4742
4743 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
4744
4745         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
4746         Specify `@documentencoding utf-8' for html, ignore warnings.
4747
4748 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
4749
4750         * THANKS: Added bughunters.
4751
4752 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
4753
4754         * lily/main.cc: update help string for `lilypond -H'.
4755
4756         * po/fi.po: update.
4757         
4758 2005-05-10  Graham Percival  <gperlist@shaw.ca>
4759
4760         * Documentation/user/advanced-notation.itely: minor fixes.
4761
4762 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4763
4764         * scm/editor.scm: New module.
4765
4766         * scm/lily.scm (gui-main): Use it.
4767
4768         * scm/framework-gnome.scm (spawn-editor): Use it.
4769
4770         * scripts/lilypond-invoke-editor.scm: Use it in new script.
4771
4772 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4773
4774         * scm/framework-ps.scm (load-font-via-GS):  new function.
4775
4776         * lily/pango-font.cc (pango_item_string_stencil): add support for
4777         CID keyed font.
4778
4779         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
4780
4781 2005-05-10  Graham Percival  <gperlist@shaw.ca>
4782
4783         * Documentation/user/basic-notation.itely: add @ref.
4784
4785         * Documentation/user/advanced-notation.itely: add example
4786         of 5/8 beaming.
4787
4788 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4789
4790         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
4791
4792         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
4793         going through ps2pdf wrappers.
4794
4795 2005-05-09  JĂĽrgen Reuter  <reuter@ipd.uka.de>
4796
4797         * Documentation/user/instrument-notation.itely: petrucci note
4798         heads: updated docu
4799
4800         * input/regression/note-head-style.ly: updated regression test;
4801         indentation fixes
4802
4803         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
4804         heads as default
4805
4806         * mf/parmesan-heads.mf: minor editing; use musicological names
4807         (rather than optical description) as note head names
4808
4809         * scm/output-lib.scm: complete petrucci heads
4810
4811 2005-05-09  Pal Benko  <benkop@freestart.hu>
4812
4813         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
4814         heads, but bigger)
4815
4816 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4817
4818         * lily/main.cc (main_with_guile): Remove no files check.
4819
4820         * lily/main.cc (ly:usage): Export to Scheme.
4821
4822         * scm/lily.scm (no-files-handler): New function.
4823
4824         * scm/lily.scm (lilypond-main): Use it.
4825
4826         * configure.in (gui_b): Add mbrtowc checking.
4827         Resurrect [utf8/]wchar.h checking.
4828
4829 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4830
4831         * Documentation/user/advanced-notation.itely (Metronome marks):
4832         Add link to the program reference for MetronomeMark
4833
4834         * Documentation/user/lilypond-book.itely (An example of a
4835         musicological document): Correct the example using psfonts 
4836
4837 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
4838
4839         * po/fi.po: update after a lesson how to update entries against
4840         source.
4841         
4842         * po/TODO: document the lesson.
4843
4844 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4845
4846         * configure.in (gui_b): remove wcrtomb checking.
4847
4848         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
4849         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
4850
4851 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4852
4853         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
4854         keep Scheme expressions and strings unmodified when doing the
4855         conversion to postfix notation for slurs and beams. Should
4856         hopefully solve most related conversion problems. 
4857
4858         * Documentation/user/lilypond-book.itely : Clarify and correct how
4859         to call dvips with -h psfonts.
4860
4861 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4862
4863         * Documentation/user/instrument-notation.itely (Entering lyrics):
4864         Typo.  Fixes build.
4865
4866 2005-05-09  Graham Percival  <gperlist@shaw.ca>
4867
4868         * Documentation/user/lilypond-book.itely: document PSFONTS file.
4869
4870         * Documentation/user/lilypond.tely, lilypond-book.itely,
4871         tutorial.itely: change references to 2.5.x to 2.6.x.
4872
4873         * Documentation/user/instrument-notation.itely: clarified \addlyrics
4874         vs \lyricmode.
4875
4876         * Documentation/user/invoking.itely: remove old info about
4877         lilypond-profile.
4878
4879         * Documentation/topdocs/INSTALL.texi: remove old info about
4880         lilypond-profile, add warning about needing international fonts
4881         to build docs.
4882
4883 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4884
4885         * lily/include/grob-info.hh (class Grob_info): make data member
4886         private. Changes throughout.
4887
4888         * input/regression/alignment-order.ly: new file. 
4889
4890         * lily/vertical-align-engraver.cc (acknowledge_grob): read
4891         alignAboveContext and alignBelowContext
4892
4893 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4894
4895         * lily/pfb.cc (LY_DEFINE): add cast.
4896
4897         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
4898         matches .otf
4899         (write-preamble): warn about unknown fonts.
4900
4901         * lily/pfb.cc (Module): new function ly:otf->cff
4902
4903         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
4904         (get_otf_table): new function.
4905
4906 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4907
4908         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
4909         iso. ps2png.
4910
4911 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
4912
4913         * po/fi.po: apply second round of update.
4914
4915 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4916
4917         * scm/x11-color.scm (make-x11-color-handler): don't use
4918         #\sp. Apparently doesn't work on all platforms. 
4919
4920 2005-05-06  Graham Percival  <gperlist@shaw.ca>
4921
4922         * Documentation/user/advanced-notation.itely, putting.itely,
4923         tutorial.itely, global.itely, introduction.itely: really minor fixes.
4924
4925 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4926
4927         * VERSION (PACKAGE_NAME): release 2.5.23
4928
4929 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4930
4931         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
4932         convert to utf-8.
4933
4934         * THANKS: Add translators for this release, convert to utf-8.
4935
4936         * mf/GNUmakefile (MFTRACE_FLAGS):
4937         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
4938         outdir as option (WAS: hardcoded).
4939
4940 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4941
4942         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
4943         finished_span_
4944
4945         * THANKS: add Hans Forbrich.
4946
4947         * Documentation/topdocs/NEWS.tely (Top): document new feature.
4948
4949         * Documentation/user/basic-notation.itely (Staff symbol): document
4950         start/stop staff. Reference to ossia.ly
4951
4952         * input/test/ossia.ly: new example using stop and startStaff.
4953
4954         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
4955         in other words, don't create "|" barline at start of the score.
4956         (start_translation_timestep): don't set whichBar for start of score.
4957
4958         * input/regression/staff-halfway.ly: use new functionality.
4959
4960         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
4961         start and stop staff based on events.
4962
4963         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
4964
4965         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
4966
4967 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4968
4969         * Documentation/user/programming-interface.itely (How markups work
4970         internally ): remove \encoding reference.
4971
4972 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4973
4974         * scripts/convert-ly.py: Attempt to do a smarter update of 
4975         text markups from versions < 1.9.0 with arbitrary nesting.
4976
4977 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
4978
4979         * po/fi.po: convert to utf-8, and update.
4980
4981 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4982
4983         * make/lilypond.suse.spec.in: update from suse 2.4 package.
4984
4985         * lily/*.cc: more <? >? to min/max changes
4986
4987         * lily/include/interpretation-context-handle.hh: rename
4988         Interpretation_context_handle to Context_handle.
4989
4990 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
4991
4992         * input/regression/GNUmakefile (local_delete): use `find` together 
4993         with `xargs` to avoid too long argument-lists in cmd line.
4994
4995 2005-05-04  Graham Percival  <gperlist@shaw.ca>
4996
4997         * Documentation/user/introduction.itely: updates "About this manual".
4998
4999         * Documentation/user/advanced-notation.itely,
5000         invoking.itely: minor fixes.
5001
5002 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5003
5004         * COPYING: add font exception. Update FSF address. 
5005
5006         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
5007         should be taken without child context.
5008
5009         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
5010
5011         * scm/define-markup-commands.scm (triangle): new command, as
5012         robust replacement for unicode Delta/Triangle.
5013
5014 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5015
5016         * ps/music-drawing-routines.ps: add fillp argument.
5017
5018         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
5019
5020         * lily/font-config.cc (init_fontconfig): don't add cff/
5021
5022         * VERSION (PACKAGE_NAME): release 2.5.22
5023
5024         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
5025
5026         * lily/grace-engraver.cc (consider_change_grace_settings): use
5027         is_alias(). Fixes problem with CueVoice grace notes. 
5028
5029         * lily/simultaneous-music-iterator.cc (construct_children): call
5030         Music_iterator::quit() for iterators that start out invalid. This
5031         fixes indefinitely continuing contexts.
5032
5033         * buildscripts/substitute-encoding.py: new file
5034
5035         * Documentation/user/basic-notation.itely (Basic polyphony): fix
5036         missing @end 
5037
5038         * scripts/lilypond-book.py (write_if_updated): print file name.
5039
5040         * Documentation/user/basic-notation.itely (Explicitly
5041         instantiating voices): idem.
5042
5043         * Documentation/user/advanced-notation.itely (Text spanners):
5044         remove stray { } 
5045
5046         * lily/context.cc (default_child_context_name): the default child
5047         is now first in accepts_list_.
5048
5049         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
5050         \defaultchild to all relevant contexts.  This fixes:
5051         drums-pitch.ly.
5052
5053         (Probably also fixes similar problems with ancient
5054         transcriptions getting CueVoices instead of the desired voices.)
5055  
5056         * lily/context-def.cc (get_default_child): new function.
5057         (get_accepted): place default child in front of list.
5058
5059         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
5060
5061         * lily/include/context-def.hh (struct Context_def): add
5062         default_accept_
5063
5064 2005-05-03  Graham Percival  <gperlist@shaw.ca>
5065
5066         * scm/define-grobs.scm: remove "remove-first" line, since
5067         the absent property is set to #f anyway.
5068
5069         * Documentation/user/basic-notation.itely,
5070         advanced-notation.itely, instrument-notation.itely: minor
5071         fixes.
5072
5073         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
5074
5075         * Documentation/user/advanced-notation.itely,
5076         changing-defaults.itely: consolidate Text stuff in
5077         advanced notation.
5078
5079         * Documentation/user/global.itely: better docs for \header.
5080
5081         * Documentation/user/putting.itely: new chapter; placeholder
5082         for future expansion.
5083
5084         * Documentation/user/examples.itely: moved "suggestions for
5085         writing LP files" section into putting.itely.
5086
5087         * Documentation/user/lilypond.itely: added new chapter,
5088         fixed the short table of contents.
5089
5090 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5091
5092         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
5093         infinity for unfeasible beams.
5094
5095         * make/lilypond.fedora.spec.in (Group): idem.
5096
5097         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
5098
5099         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
5100
5101         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
5102         fonts directly.
5103
5104         * buildscripts/gen-emmentaler-scripts.py (i): idem.
5105
5106         * mf/GNUmakefile: remove all CFF rules.
5107
5108         * scm/framework-ps.scm (ps-embed-cff): reinstate.
5109
5110         * lily/open-type-font-scheme.cc (LY_DEFINE):
5111         new function ly:otf-font-table-data.
5112         (LY_DEFINE): new function otf-font?
5113
5114 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5115
5116         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
5117         ($(outdir)/Fontmap.lily): idem.
5118
5119         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
5120         for PFAEmmentaler-XXX.pfa. 
5121
5122         * Documentation/user/music-glossary.tely (accidental): NL
5123         translation of accidental.
5124
5125 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5126
5127         * flower/include/international.hh: Bugfix: include "string.hh".
5128
5129         * lily/include/mingw-compatibility.hh: New file.
5130
5131         * flower/include/libc-extension.hh (memrev): Rename from strrev.
5132
5133         * configure.in: Search for mingw wcrtomb library.
5134
5135 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5136
5137         * scripts/convert-ly.py: Bug fix
5138
5139         * Documentation/user/changing-defaults.itely (Common tweaks):
5140         Added example where the context has to be specified explicitly
5141         (MetronomeMark). 
5142
5143 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5144
5145         * scripts/lilypond-book.py (ly_options): set timing to #f for
5146         notime option.
5147
5148         * scripts/convert-ly.py (conv): typo.
5149
5150         * flower/*.cc: remove <? and >?
5151         
5152         * lily/*.cc: remove <? and >?
5153
5154         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
5155         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
5156         editor.
5157
5158 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5159
5160         * lily/part-combine-engraver.cc: add space to variable list.
5161
5162 2005-04-30  Graham Percival  <gperlist@shaw.ca>
5163
5164         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
5165         remove-first to false (matches docs)
5166
5167         * Documentation/user/advanced-notation.itely: corrected docs
5168         concerning remove-first.
5169
5170 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5171
5172         * lily/part-combine-engraver.cc: make sure that the relevant
5173         properties are included in the documentation.
5174
5175 2005-04-28  Graham Percival  <gperlist@shaw.ca>
5176
5177         * Documentation/user/lilypond-book.itely: Bernard's docs
5178         for \betweenLilyPondSystem.
5179
5180 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5181
5182         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
5183         remarks.
5184
5185 2005-04-28  Pal Benko  <benkop@freestart.hu>
5186
5187         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
5188         only on vertical lines of flexa shape, and use a constant
5189         thickness value for horizontal lines (patch slightly modified by
5190         JĂĽrgen Reuter)
5191
5192         * lily/include/mensural-ligature.hh: make 2 comments clearer
5193
5194 2005-04-28  JĂĽrgen Reuter  <reuter@ipd.uka.de>
5195
5196         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
5197         to need_extra_horizontal_space; bugfix: use class scope to avoid
5198         global namespace pollution
5199
5200         * Documentation/user/instrument-notation.itely (ligatures): added
5201         comment on possible future syntax change and how to work around
5202
5203         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
5204         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
5205         intervals (fixes agnus dei example)
5206
5207         * Documentation/user/instrument-notation.itely (white mensural
5208         ligatures): selected a more illustrative example
5209
5210 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
5211
5212         * Documentation/index.html.in: specify utf-8 charset in meta content.
5213
5214 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5215
5216         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
5217         empty 2nd page for single page.
5218
5219         * scm/lily.scm: remove p&c definitions.
5220
5221         * po/zh_TW.po (Module): new translation.
5222
5223         * lily/lily-guile.cc (ly_chain_assoc): remove.
5224
5225         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
5226         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
5227
5228 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5229
5230         * lily/beaming-info.cc: remove infinity_i
5231
5232         * scripts/abc2ly.py (out_filename): fix thinko with \version.
5233
5234 2005-04-26  Graham Percival  <gperlist@shaw.ca>
5235
5236         * Documentation/user/basic-notation.itely,
5237         instrument-notation.itely, advanced-notation.itely,
5238         changing-defaults.itely: minor fixes.  Added docs
5239         for colors to advanced-notation.itely.
5240
5241         * Documentation/user/advanced-notation.itely: fixed compile
5242         problem and added Bernard's x11-color doc patch.
5243
5244 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5245
5246         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
5247         alright this time round.
5248
5249 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5250
5251         * Documentation/topdocs/INSTALL.texi (Top): idem.
5252
5253         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
5254
5255         * VERSION (MAJOR_VERSION): release 2.5.21
5256
5257         * scm/output-ps.scm (grob-cause): bugfix.
5258
5259 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5260
5261         * cygwin/*: Update.
5262
5263         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
5264         stuff.
5265
5266         * scm/output-ps.scm (grob-cause): Bugfix.
5267
5268         * scm/lily.scm (ly:load): Remove x11-color.
5269
5270         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
5271         quote executable, fixes getting version from program --with
5272         --options.
5273         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
5274         $ac_exeect.
5275
5276         * Documentation/user/GNUmakefile: Only build music-glossary with
5277         rendered lilypond snippets during web.
5278
5279 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5280
5281         * po/de.po: update.
5282
5283         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
5284
5285 2005-04-22  Laura Conrad <lconrad@laymusic.org>
5286  
5287         * scripts/abc2ly:
5288         second title line append with punctuation dash character;
5289         encode abc2ly python strings in utf-8
5290        
5291 2005-04-21  Laura Conrad <lconrad@laymusic.org>
5292
5293         * scripts/abc2ly fix chords (again)
5294  
5295 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
5296
5297         * scm/x11-color.scm: new file
5298         All x11 color names can be accessed with:
5299         #(x11-color 'ColorName),
5300         #(x11-color "ColorName") or:
5301         #(x11-color "color name")
5302         If the x11 color name is not recognised then it defaults
5303         to black
5304
5305         * scm/lily.scm: amended to call scm/x11-color.scm
5306
5307 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5308
5309         * Documentation/user/invoking.itely (Reporting bugs): comment out
5310         reference to online PNG bug repository.
5311
5312 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5313
5314         * lily/translator-scheme.cc (ly:translator-property): Remove.
5315         Update callers.
5316
5317         * lily/context-scheme.cc (ly:context-now): Move from translator.
5318         Update callers.
5319
5320 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5321
5322         * input/regression/grid-lines.ly (skips): refine example.
5323
5324         * scm/define-context-properties.scm
5325         (all-user-translation-properties): doc autoBeamCheck
5326
5327         * input/regression/grid-lines.ly (Module): new file.
5328
5329         * lily/grid-point-engraver.cc (Module): new file.
5330
5331         * lily/grid-line.cc (Module): new file.
5332
5333         * lily/grid-line-span-engraver.cc (Module): new file.
5334
5335         * lily/grid-line-interface.cc (Module): new file.
5336
5337 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5338
5339         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
5340         missing parameter, actualy cdr through list.  Actually return a
5341         list with ENTRY removed (was '()).
5342
5343         * scripts/convert-ly.py: Update.  Print warning if file cannot be
5344         opened.
5345         (do_conversion): Fix printing of continuation comma.
5346
5347         * Documentation/user/advanced-notation.itely (Beam formatting):
5348         Remove refbugs about compound time and mixed duration.
5349
5350         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
5351         modulo moments explicitely.
5352
5353         * lily/moment.cc (operator %): New function.
5354
5355         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
5356
5357         * lily/translator-scheme.cc (ly:translator-now,
5358         ly:translator-property): New function.
5359
5360         * scm/auto-beam.scm (default-auto-beam-check): New function.
5361
5362         * lily/auto-beam-engraver.cc (test_moment): Use it.
5363
5364         * flower/rational.cc (operator %): Bugfix.
5365
5366 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
5367
5368         * scripts/abc2ly: Bugfix
5369
5370 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5371
5372         * python/fontextract.py (write_extracted_fonts): bugfix, too many
5373         %'s on EndFont comment.
5374
5375         * lily/ledger-line-spanner.cc: some more words of explanation.
5376
5377 2005-04-20  John Williams <williams@tni.com>  
5378         
5379         * scripts/lilypond-book.py: htmlquote bugfix.
5380         Allow snippets to be given distinct filenames.
5381         Allow the default alt text to be overridden.
5382
5383 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
5384
5385         * ly/performer-init.ly: Bugfix
5386
5387         * THANKS: Added bughunters.
5388
5389 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5390
5391         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
5392
5393         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
5394         position (was: use modulo measure length).
5395
5396         * configure.in (no gui_b): Remove optional gtk+ requirement.
5397
5398 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5399
5400         * Documentation/user/basic-notation.itely (Pitches): add
5401         LedgerLineSpanner.
5402
5403         * lily/dynamic-engraver.cc (process_music): set right bound to
5404         script if present. Else, do not set.
5405         (acknowledge_grob): only set right bound of finished spanner to
5406         note column if no other bound is set.
5407
5408         * python/lilylib.py (make_ps_images): switch back to png16m.
5409         
5410 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5411
5412         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
5413         writing up to date file.  Add dvips usage suggestion.
5414
5415         * scripts/convert-ly.py: Fix error message.
5416         Print usage if no files on command line.
5417         (usage): Add example usage.
5418
5419         * input/test/compound-time.ly: New file.
5420
5421         * input/test/circle.ly: New file.
5422
5423         * Documentation/topdocs/NEWS.tely: Use them.
5424
5425         * input/test/boxed-stencil.ly: Remove \score.
5426
5427         * buildscripts/mf-to-table.py (base): Add .log dependency.
5428
5429         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
5430         pfa's.  Add .log dependency
5431
5432         * scm/define-markup-commands.scm (lower): New command.
5433
5434         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
5435         make it default.
5436
5437 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5438
5439         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
5440         also to finished cresc as right bound. This fixes:
5441         skip-string-decresc.ly
5442
5443         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
5444         relative_coordinate if extent is empty.
5445
5446         * lily/stem.cc (width_callback): determine correct extent if flag
5447         is not there. This fixes slur-no-flag.ly
5448
5449         * lily/grace-engraver.cc (consider_change_grace_settings): new
5450         function.
5451         (initialize): also consider_change_grace_settings() on
5452         initialization. Fixes large grace notes at start of score.
5453
5454         * lily/break-align-interface.cc (do_alignment): don't translate if
5455         total_extent is empty.
5456
5457         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
5458
5459 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5460
5461         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
5462         with slash.
5463
5464 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5465
5466         * stepmake/aclocal.m4: Remove tfm_path.
5467
5468 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5469
5470         * scm/music-functions.scm (markup-expression->make-markup): fix
5471         bug with cons arguments of markup commands.
5472         (music->make-music): fix music expression property list building
5473
5474 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5475
5476         * aclocal.m4: Massage package names.
5477
5478         * SCons updates.
5479
5480 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5481
5482         * VERSION (PACKAGE_NAME): release 2.5.20
5483
5484         * lily/stem.cc (calc_stem_info): add minimum Y extent of
5485         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
5486
5487         * lily/percent-repeat-engraver.cc (try_music): add measure before
5488         next_moment to future processing moment. Fixes:
5489         percent-repeat-mm-rest.ly
5490         (process_music): don't add moment for 2nd time.
5491
5492         * input/regression/repeat-percent.ly: add mmrests as extra test.
5493
5494         * lily/axis-group-engraver.cc (acknowledge_grob): read
5495         keepAliveInterfaces to decide what to kill.
5496
5497         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
5498         percent-repeat-interface to keepAliveInterfaces. This fixes
5499         percent-repeat-harakiri.
5500
5501 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5502
5503         * SCons updates.
5504
5505 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5506
5507         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
5508
5509         * aclocal.m4: remove --enable-tfm-path configure option
5510
5511         * input/test/ancient-font.ly (lowerStaff): clef name errors.
5512
5513         * scm/backend-library.scm (postscript->png): newline after
5514         finishing command.
5515
5516         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
5517         (LY_DEFINE): ly:paper-score-paper-systems: new function 
5518
5519         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
5520
5521         * lily/score.cc (default_rendering): use Music_output too.
5522
5523         * input/test/chord-names-languages.ly (Module): rename file.
5524
5525         * lily/text-spanner.cc: add bound-padding.
5526
5527         * lily/paper-book.cc (systems): accept Paper_score
5528         iso. Paper_system vector. 
5529
5530         * input/regression/line-arrows.ly: new file.
5531
5532         * lily/paper-score.cc (process): run get_paper_systems() only once.
5533
5534         * lily/line-spanner.cc (line_stencil): add arrows.
5535
5536 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
5537
5538         * lily/line-interface.cc (make_arrow): new function. 
5539         (arrows): idem.
5540
5541 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
5542
5543         * input/test/chord-names-german.ly: update for italian/french
5544         chords.
5545         
5546         * Documentation/user/instrument-notation.itely (Printing chord
5547         names): update.
5548
5549 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5550
5551         * lily/include/paper-score.hh (class Paper_score): remove unused
5552         prototypes.
5553
5554         * lily/book.cc (process): add -COUNT to midi output.
5555
5556         * lily/score.cc (book_rendering): remove outname argument
5557         (book_rendering): return list of Music_outputs. 
5558
5559         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
5560
5561         * lily/book.cc (process): loop over Music_outputs returned from
5562         Score::book_rendering().
5563
5564         * lily/*.cc (width_callback): remove spurious "unused" warnings
5565         for assert (axis==[XY]_AXIS); 
5566
5567         * lily/include/music-output.hh (class Music_output): smobify class.
5568
5569         * lily/include/paper-score.hh (class Paper_score): make members
5570         private.
5571
5572         * lily/performance.cc (process): return #f iso. #<undefined>. This
5573         prevents #<undefined> leaking into GUILE-userspace.
5574
5575 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5576
5577         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
5578
5579 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
5580
5581         * scm/chord-name.scm : support for italian and french
5582         chords names.
5583
5584         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
5585         a space defined by chordPrefixSpacer when the root name is
5586         direclty followed by a prefix.
5587
5588         * ly/engraver-init.ly : chordPrefixSpacer       
5589         * scm/define-context-properties.scm : chordPrefixSpacer
5590         * ly/property-init.ly : italianChords, frenchChords 
5591
5592 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5593
5594         * mf/feta-din.mf: Remove.
5595
5596         * mf/GNUmakefile (fontdir): Bugfix.
5597
5598         * mf/SConstruct: Some updates.
5599
5600         * SConstruct: Require pkg-config.
5601         (test_program): Bugfix for double digit version compares, use
5602         integer (not string-) compare.
5603         Optionally require gs 8.14.
5604
5605         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
5606
5607         * lily/*: s/ifdef HAVE_*/if have/.
5608
5609         * SConstruct (test_lib): New function.  Update pkg-config and some
5610         other requirements.
5611
5612         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
5613         freetype, pangof2t.
5614
5615 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5616
5617         * po/lilypond.pot, ...: Update using bison-CVS.
5618
5619         * python/lilylib.py (make_ps_images): Fixo.
5620
5621 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5622
5623         * python/lilylib.py (make_ps_images): typo.
5624
5625         * configure.in (gui_b): make bison optional.
5626
5627         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
5628
5629 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
5630
5631         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
5632         with one parameter can be defined in a LaTeX file when processed
5633         by lilypond-book this will be evaluated between the systems of
5634         a multi-system score. The parameter is the number of systems processed.
5635
5636 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5637
5638         * python/lilylib.py (make_ps_images): Escape newline.
5639
5640         * Documentation/user/music-glossary.tely: Run
5641         texinfo-all-menus-update.
5642
5643 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5644
5645         * scm/lily-library.scm (old-relative-not-used-message)
5646         (version-not-seen-message): Add input-file-name-location to message.
5647
5648         * lily/parser.yy (lilypond): Add token aliases.
5649
5650         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
5651         not confuse with alteration.
5652         (alteration): Add.
5653
5654 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5655
5656         * python/lilylib.py (make_ps_images): use -dEPSCrop
5657
5658         * VERSION (PACKAGE_NAME): release 2.5.19 
5659
5660         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
5661         only put xrefs in info documentation.
5662
5663         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
5664         .pdf rule to tex-rules.make.
5665
5666         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
5667         from -systems.* output.
5668
5669         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
5670         directly, remove -$(PAGESIZE) target.
5671
5672         * input/test/embedded-postscript.ly: update.
5673
5674 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5675
5676         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
5677
5678         * Documentation/user/changing-defaults.itely (Font selection):
5679         document font-name.
5680
5681         * input/regression/font-name.ly: show Pango fonts for
5682         font-name. Update example. 
5683
5684         * lily/pango-select.cc (properties_to_pango_description): don't
5685         convert symbol font-size to number, but use to lookup.
5686
5687         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
5688
5689         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
5690         (NAME . FILE-NAME) tuples for font descriptions. 
5691         (write-preamble): display BeginFont DSC comments.
5692
5693         * python/fontextract.py (write_extracted_fonts): new file. Extract
5694         font resources from a PS file.
5695
5696         * scripts/lilypond-book.py (option_definitions): --psfonts option.
5697         (Compile_error.process_include): do_file returns chunks.
5698
5699         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
5700
5701         * make/lysdoc-targets.make: .texi is .PRECIOUS
5702
5703         * scripts/lilypond-book.py (write_if_updated): new function.
5704
5705 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5706
5707         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
5708
5709 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5710
5711         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
5712
5713         * input/regression/markup-syntax.ly: remove \score.
5714
5715         * scm/define-markup-commands.scm (draw-circle): add fill argument
5716
5717         * scm/stencil.scm (make-circle-stencil): add fill argument
5718
5719         * ps/music-drawing-routines.ps: add fill argument.
5720
5721         * ly/performer-init.ly: add CueVoice to MIDI too.
5722
5723         * ps/music-drawing-routines.ps: new routine BeginEPSF /
5724         EndEPSF.
5725
5726         * input/regression/markup-eps.ly: new file.
5727
5728         * scm/framework-ps.scm (write-preamble): change order: vars should
5729         be inited before procedures.
5730
5731         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
5732         for EPS files.
5733
5734         * scm/define-markup-commands.scm (epsfile): add epsfile command.
5735
5736 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5737
5738         * configure.in (gui_b): add check for ghostscript 8.15
5739
5740 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5741
5742         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
5743         start of line. Fixes cresc-after-newline.ly
5744
5745         * lily/source-file.cc (file_line_column_string): use get_column().
5746
5747 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5748
5749         * lily/source-file.cc (get_column): utf-8 support for column numbers.
5750
5751 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5752
5753         * lily/*: use message () iso progress_indication () for messages.
5754         Revise/uniformise user messages.
5755
5756         * flower/warn.cc (progress_indication): New function.
5757         (message): Use it.  Fixes newline problems.
5758
5759         * config.make.in (webdir): Sort out install dirs.
5760
5761         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
5762
5763         * python/lilylib.py (command_name): Bugfix.
5764         (make_ps_images):
5765
5766 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
5767
5768         * lily/main.cc: --help says what types of backends are availabe
5769
5770 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5771
5772         Fix ./VERSION dependency, and without need to reconfigure.
5773
5774         * lily/main.cc (setup_paths): Update.
5775
5776         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
5777
5778         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
5779
5780         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
5781         Add \line for some simplistic cases.
5782
5783         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
5784
5785 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5786
5787         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
5788         to compile LY files (useful for adding eg. "-I" args)
5789         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
5790         2Gnome command for gnome backend.
5791         (LilyPond-command-formatgnome): call the 2Gnome command. key
5792         binding: C-c C-g
5793
5794 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5795
5796         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
5797         depend on all PNG images.
5798
5799 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5800
5801         * GNUmakefile.in: Bugfix: also link .map files.
5802
5803 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5804
5805         * scm/music-functions.scm (music->make-music): generate 
5806         a (make-music ...) sexpr from a music expression.
5807         (display-scheme-music): use guile pretty printer to display the
5808         make-music sexpr.
5809
5810 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5811
5812         * ly/engraver-init.ly: reindent.
5813         Add CueVoice.
5814
5815         * scm/music-functions.scm (music-pretty-string): handle moments
5816         too.
5817         (music-pretty-string): only print non-empty lists.
5818         (cue-substitute): create CueVoice context, which has smaller type.
5819
5820         * lily/moment-scheme.cc (LY_DEFINE): new methods
5821         ly:moment-grace-{numerator,denominator}
5822
5823         * lily/context-handle.cc: remove quit() method. 
5824
5825         * lily/font-config.cc (init_fontconfig): be verbose about font path.
5826         (init_fontconfig): success is 0, not !0
5827
5828 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5829
5830         * mf/feta-nummer-code.mf (code): add plus glyph.
5831
5832         * lily/tie.cc (print): idem.
5833
5834         * lily/slur.cc (print): don't use thickness property for
5835         slur shape-thickness.
5836
5837         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
5838         while adding stencils.
5839
5840         * scm/define-markup-commands.scm (with-color): with-color markup
5841         command.
5842         (whiteout): new markup command 
5843         (filled-box): new markup command
5844
5845 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5846
5847         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
5848         test for PDF docs.
5849
5850         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
5851         PFAAybabtu-Regular.  Fixes feta font in PDFs.
5852         
5853         Notes for tetex-3.0 make web:
5854            psclean.map: s/uhv8a/uhvr8a/
5855            config.ps add:
5856                 p +psfonts_t1.map
5857                 p +psclean.map
5858                 p +typeface.map
5859
5860 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5861
5862         * scm/music-functions.scm (music-pretty-string): fix bug with
5863         string argument.
5864
5865 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
5866
5867         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
5868
5869 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5870
5871         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
5872         only process options if they're there.
5873         (write_file_map): add version-seen? to snippet-map.ly
5874
5875 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
5876
5877         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
5878         formatting cleanups.
5879
5880         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
5881         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
5882
5883 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5884
5885         * scm/framework-ps.scm (ps-font-command): don't hash, just use
5886         name directly.
5887
5888         * lily/main.cc (setup_paths): either add mf/out to search path or 
5889         fonts/{otf,type1,etc}
5890         
5891         * lily/font-config.cc (init_fontconfig): either add mf/out to
5892         FontConfig or fonts/{otf,type1,etc}
5893
5894         * GNUmakefile.in: don't put mf/ link in share/ dir.
5895
5896         * lily/staff-spacing.cc: move same-direction-correction to
5897         note-spacing-interface
5898
5899         * scm/lily.scm (lilypond-main): use variable argument count for
5900         exception handler.
5901
5902         * lily/font-config.cc (init_fontconfig): add operator pacification
5903         message.
5904
5905         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
5906
5907         * buildscripts/gen-emmentaler-scripts.py (i): generate
5908         PFAEmmentaler as well.
5909
5910         * scm/framework-ps.scm (munge-lily-font-name): new function
5911         (write-preamble): hack: insert PFA equivalent of CFF into
5912         .PS. This makes LilyPond output printable on normal PS printers
5913         again.
5914
5915         * buildscripts/gen-emmentaler-scripts.py (i): generate
5916         PFAEmmentaler.pfa aswell.
5917
5918 2005-04-06  John Williams <williams@tni.com>  
5919         
5920         * scripts/lilypond-book.py: refactor the compose_ly procedure.
5921         
5922 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5923
5924         * scm/page-layout.scm (default-page-make-stencil): always combine
5925         the header stencil, even if empty. This prevents the body text to
5926         reach up to the margins.
5927
5928         * po/rw.po (Module): new file, for Kinyarwanda.
5929
5930         * input/test/spacing-optical.ly (Module): new file.
5931
5932         * lily/staff-spacing.cc: add same-direction-correction
5933
5934 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5935
5936         * Documentation/user/introduction.itely (Engraving): Comment-out
5937         non-existent file.
5938
5939 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5940
5941         * scm/define-grob-properties.scm (all-user-grob-properties): add
5942         same-direction-correction
5943
5944         * VERSION: release 2.5.18
5945
5946 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5947
5948         * lily/grob.cc (mark_smob): Check pscore->layout_ before
5949         dereferencing.  Fixes make web.
5950
5951         * lily/midi-stream.cc: Handle unwritable midi file.  Include
5952         errno.h.
5953
5954         * Documentation/user/: Fix links.
5955
5956 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5957
5958         * lily/text-interface.cc (Module): rename from text-item.cc
5959
5960         * input/regression/apply-output.ly (texidoc): function naming fix.
5961
5962         * lily/time-signature-performer.cc (derived_mark): new function.
5963
5964         * lily/lily-parser-scheme.cc:  print mapped file name for progress
5965
5966         * scripts/lilypond-book.py (find_linestarts): new function.
5967         (find_toplevel_snippets): keep track of line numbers.
5968
5969         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
5970         all key changes.
5971
5972         * ly/declarations-init.ly (partCombineListener): use
5973         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
5974
5975         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
5976
5977 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5978
5979         * lily/text-item.cc: Fix link.
5980
5981         * Documentation/user/changing-defaults.itely (Changing defaults):
5982         Fix programs reference links.
5983
5984         * Documentation/user/music-glossary.tely: Convert to utf-8.
5985
5986 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5987
5988         * make/lilypond-vars.make: remove TEXMF from variables.
5989         remove DEB_BUILD pk font variables.
5990         remove GUILE_LOAD_PATH
5991         remove TeX memory vars.
5992
5993 2005-04-04  Werner Lemberg  <wl@gnu.org>
5994
5995         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
5996
5997 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5998
5999         * ps/lilyponddefs.ps: remove reencode-font
6000
6001         * lily/simple-spacer.cc (add_columns): also compare
6002         directly. Column rank doesn't distinguish between broken and
6003         unbroken columns. This fixes large spaces before time sig changes.
6004
6005         * Documentation/user/point-and-click.itely: document ly:set-option.
6006
6007         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
6008         point_and_click_global is set.
6009
6010         * lily/scm-option.cc (LY_DEFINE): add point-and-click
6011         ly:set-option argument.
6012
6013 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6014
6015         * GNUmakefile.in: Include symlinks in webball.
6016
6017         * Documentation/user/GNUmakefile (source-links): Add symlinks to
6018         source dir for split and non-split manuals.
6019
6020         * Documentation/user/*y: Fix @uref/@inputfile links for
6021         split/non-split HTML documents.
6022
6023         * Documentation/user/GNUmakefile (local-WWW): Do not generate
6024         .ps.gz.
6025         
6026 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6027
6028         * GNUmakefile.in: Add newline.
6029
6030 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
6031
6032         * tex/lilyponddefs.tex: use color instead of xcolor
6033         * scm/output-tex.scm: minor editing
6034
6035 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6036
6037         * scm/music-functions.scm (display-scheme-music): pretty printer
6038         for music expressions.
6039
6040 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6041
6042         * buildscripts/install-info-html.sh (index_file): Fix link.
6043
6044 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6045
6046         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
6047
6048         * Documentation/index.html.in: Add size estimates with some big pages.
6049
6050         * Documentation/user/tutorial.itely (Running LilyPond for the
6051         first time): Add/replace some @rglos links.  TODO: add more
6052         @rglos links in tutorial, test non-intrusiveness (.css).
6053
6054         * stepmake/bin/add-html-footer.py (do_file): Remove info's
6055         annoying's indication of referencing external document.
6056
6057         * Documentation/user/GNUmakefile: Split version of glossary too.
6058         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
6059         links, not only for html.
6060
6061         * Documentation/user/introduction.itely: Fix some links for other
6062         than html, do not use `here' as link name.
6063
6064 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6065
6066         * scm/documentation-generate.scm (string-append): Fix @usermanref,
6067         @glossaryref.
6068
6069 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6070
6071         * scm/page-layout.scm (default-page-make-stencil): only add header
6072         if existing and not empty. Fixes spurious programming error.
6073
6074         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
6075
6076 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
6077
6078         * scm/output-tex.scm: implement {re,}setcolor
6079         * tex/lilyponddefs.tex: use color package
6080
6081 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6082
6083         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
6084         additions to website.
6085
6086         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
6087
6088         * Documentation/user/macros.itexi: Fix @usermanref html links in
6089         split documents: use @inforef.
6090
6091 2005-03-30  Graham Percival  <gperlist@shaw.ca>
6092
6093         * Documentation/user/programming-interface.itely: minor fix.
6094
6095         * Documentation/user/advanced-notation.itely: added info to
6096         Metronome markings.
6097
6098 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6099
6100         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
6101         use box-stencil.  Remove y-padding argument.
6102         (make-stencil-circler): New function.
6103
6104         * buildscripts/lilypond-words.py (F): 
6105         * elisp/SConscript (a): 
6106         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
6107         * vim/SConscript (a): 
6108         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
6109
6110         * lily/general-scheme.cc: Build fix.
6111
6112         * scm/markup.scm:
6113         * input/regression/markup-scheme.ly: 
6114         * input/regression/markup-syntax.ly: Drop 'new-' from name.
6115
6116         * scm/stencil.scm (make-circle-stencil): New function.
6117
6118         * scm/define-markup-commands.scm (draw-circle): Use it.  New
6119         name (was cicle).  Update callers.
6120         (circle): New markup command, similar to box.
6121
6122         * scm/stencil.scm (circle-stencil): New function.
6123
6124 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
6125
6126         * configure.in: Detect libutf8/wchar.h variant.
6127
6128         * stepmake/aclocal.m4: Modify shared size test.
6129
6130 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6131
6132         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
6133
6134 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6135
6136         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
6137         
6138         * VERSION (PACKAGE_NAME):  release 2.5.17
6139
6140 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6141
6142         * scm/backend-library.scm (postscript->png): Fix comment and png
6143         message.
6144
6145         * GNUmakefile.in (link-tree): Fix locales.
6146
6147 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6148
6149         * lily/stencil-scheme.cc (LY_DEFINE): change to
6150         ly:stencil-aligned-to, non mutating.
6151
6152         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
6153
6154         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
6155
6156         * lily/quote-iterator.cc (derived_mark): call
6157         Music_wrapper_iterator::derived_mark() too.
6158
6159         * lily/grace-engraver.cc (derived_mark): change signature, add
6160         const.
6161
6162 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6163
6164         * SConstruct (symlink): 
6165         * GNUmakefile.in (link-tree): Add scripts to prefix.
6166
6167         * lily/general-scheme.cc (ly:effective-prefix): New function.
6168
6169         * scm/backend-library.scm (postscript->png): Use it.
6170
6171 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6172
6173         * lily/paper-score.cc (process): don't delete grobs after
6174         producing stencils. 
6175
6176         * scm/part-combiner.scm (determine-split-list): switch off
6177         debugging info.
6178
6179         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
6180         if available.
6181
6182         * scm/define-context-properties.scm
6183         (all-user-translation-properties): add stringNumberOrientations.
6184
6185         * lily/new-fingering-engraver.cc (position_scripts): make generic,
6186         so fingering and string-numbers are separately controlled.
6187
6188 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6189
6190         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
6191         not use debugging.
6192
6193 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6194
6195         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
6196
6197         * config.hh.in: add HAVE_FONTCONFIG.
6198
6199         * Documentation/user/instrument-notation.itely (String number
6200         indications): new node.
6201
6202         * input/regression/new-markup-syntax.ly (texidoc): add circle.
6203
6204         * lily/new-fingering-engraver.cc (add_string): new function. 
6205         (acknowledge_grob): accept string-number-event as well.
6206
6207         * scm/define-markup-commands.scm (circle): new markup command.
6208
6209         * scm/output-lib.scm (print-circled-text-callback): new function.
6210
6211         * lily/GNUmakefile: move ifeq after include stepmake.make.
6212
6213 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6214
6215         * config.make.in (HAVE_LIBKPATHSEA_SO):
6216         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
6217
6218         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
6219         add KPATHSEA_LIBS.
6220
6221         * debian/watch: 
6222         * debian/control: Update.
6223
6224 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6225
6226         * input/test/title-markup.ly (spaceTest): remove.
6227
6228         * input/test/embedded-tex.ly (Module): remove.
6229
6230         * input/test/music-box.ly: use 'name property, not ly:music-name.
6231
6232         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
6233
6234         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
6235
6236 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6237
6238         * Documentation/topdocs/INSTALL.texi (Top): Remove information
6239         about xdeltas.  Add information about CVS.
6240
6241         * scm/lily.scm (lilypond-main): Fix invocation of handler,
6242         gracefully handle failed files.
6243
6244         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
6245
6246         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
6247         small fixes.
6248
6249         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
6250         No unnecessarily specific i18n messages.  Remove stray `1'.
6251
6252 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6253
6254         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
6255         documentencoding
6256
6257         * scm/documentation-lib.scm (texi-file-head): set utf-8
6258         documentencoding.
6259
6260         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
6261         Delta, not the Symbol one. 
6262
6263         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
6264         for the .map file.
6265
6266         * Documentation/topdocs/INSTALL.texi (Top): add running
6267         requirement as compilation requirement.
6268
6269 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6270
6271         * buildscripts/mutopia-index.py (headertext): add h1 header and
6272         utf-8 charset meta field.
6273
6274         * input/GNUmakefile: prune example list.
6275
6276         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
6277         options.
6278
6279         * lily/slur-scoring.cc (get_base_attachments): only look at stem
6280         extent for visible stems.
6281
6282         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
6283
6284 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6285
6286         * Documentation/topdocs/INSTALL.texi (Top): Updates.
6287
6288         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
6289
6290 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6291
6292         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
6293         pass inf/nan into slur scoring.
6294
6295         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
6296         page.
6297
6298         * scripts/abc2ly.py (dump_voices): use alphabet().
6299
6300 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
6301         
6302         * mf/GNUmakefile (depth): use $(FONTFORGE). 
6303
6304 2005-03-27 Matthias Neeracher <neeracher@mac.com>
6305         
6306         * flower/include/virtual-methods.hh: simplify. Patch by
6307
6308 2005-03-25  John Williams <williams@tni.com>  
6309
6310         * scripts/lilypond-book.py (main): add png for HTML too, guess
6311         only if necessary. 
6312
6313 2005-03-25  Graham Percival  <gperlist@shaw.ca>
6314
6315         * Documentation/topdocs/INSTALL.texi: now recommends
6316         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
6317
6318         * Documentation/user/basic-notation.itely,
6319         Documentation/user/tutoria.itely: warn about
6320         only one (phrasing) slur at once.
6321
6322 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
6323
6324         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
6325
6326 2005-03-23  Graham Percival  <gperlist@shaw.ca>
6327
6328         * Documentation/user/basic-notation.itely: fixed info about
6329         ending a (de)cresc.
6330
6331         * Documentation/user/lilypond-book.itely: fixed
6332         lilypond-book filter example and warned about not doing
6333         --filter and --process at the same time.
6334
6335 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6336
6337         * lily/parser.yy (bass_number),
6338         Documentation/user/instrument-notation.itely (Figured bass): 
6339         Add the possibility to use text markup in figured bass. 
6340
6341 2005-03-19  Graham Percival  <gperlist@shaw.ca>
6342
6343         * Documentation/user/global.itely: added info about naming
6344         identifiers and breakbefore.
6345
6346         * Documentation/user/invoking.itely: added info about batch
6347         processing files with convert-ly, removed references to TeX
6348         in the jail section.
6349
6350         * Documentation/user/examples.itely: possibly fixed piano
6351         dynamics.
6352
6353         * Documentation/user/advanced-notation.itely: added info
6354         about removing other types of Staff.
6355
6356         * Documentation/user/instrument-notation.itely: possibly
6357         fixed piano staff line switch.
6358
6359         * Documentation/user/changing-defaults.itely: added info
6360         about using normal font in titles.
6361
6362 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6363
6364         * VERSION (PATCH_LEVEL): release 2.5.16
6365
6366         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
6367         explicitly.
6368
6369 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6370
6371         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
6372         whitespace.
6373
6374         * python/lilylib.py (make_ps_images):
6375         * scm/backend-library.scm (postscript->pdf, postscript->png):
6376         Quote file name.  Use format rather than string-append juggling.
6377
6378 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6379
6380         * python/lilylib.py (make_ps_images): add x to -g argument. 
6381
6382         * lily/key-performer.cc (create_audio_elements): don't use
6383         scm_eval_string. Check for minor 3rd directly.
6384   
6385         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
6386         (sarabandeCelloGlobal): key is D minor, not F major.
6387
6388 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6389
6390         Fix truncated --png output (Peter Danenberg).
6391         
6392         * python/lilylib.py (make_ps_images):
6393         * scripts/ps2png.py (copyright): Grok --papersize option.
6394
6395         * scm/backend-library.scm (postscript->png): Add parameter
6396         PAPERSIZE.  Update callers.
6397
6398         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
6399         Fixes symbol placement.
6400
6401         * lily/spanner.cc: 
6402         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
6403         <libc-extension.hh>).
6404
6405 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6406
6407         * Nitpick run.
6408
6409         * buildscripts/fixcc.py: Update.
6410
6411         Builddir run fixes.
6412
6413         * HACKING (datadir): Add VERSION.
6414
6415         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
6416         higher up.
6417
6418 2005-03-15  Werner Lemberg  <wl@gnu.org>
6419
6420         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
6421         diagonal stem doesn't become thinner.
6422
6423 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6424
6425         * buildscripts/fixcc.py: Fixes (Werner).
6426
6427 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6428
6429         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
6430         Emmentaler/Aybabtu.
6431
6432         * GNUmakefile.in: fix lilypond-words path.
6433
6434         * po/tr.po: update to 2.3.21
6435
6436         * lily/new-fingering-engraver.cc (position_scripts): take priority
6437         from head position.
6438
6439         * input/regression/finger-chords-order.ly (texidoc): new file.
6440
6441 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6442
6443         * make/ly-rules.make: 
6444         * stepmake/aclocal.m4: 
6445         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
6446
6447         * buildscripts/fixcc.py (rules): Leave space after operator.
6448
6449 2005-03-14  Werner Lemberg  <wl@gnu.org>
6450
6451         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
6452         top of the glyph with smooth curve.
6453
6454 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6455
6456         * Documentation/user/global.itely (Page layout): remove
6457         printpagenumber.
6458
6459 2005-03-13  JĂĽrgen Reuter  <reuter@ipd.uka.de>
6460
6461         * input/regression/mensural-ligatures.ly: new file (with examples
6462         compiled by Pal Benko).
6463
6464         * Documentation/user/instrument-notation.itely: Bugfix: yet some
6465         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
6466         musicglyph access.  Many small beautifications in ancient
6467         examples.
6468
6469         * input/test/divisiones.ly: fixed indentation; small
6470         beautifications
6471
6472         * ly/engraver-init.ly: added FIXME comment
6473
6474         * scripts/lilypond-book.py,
6475         Documentation/user/lilypond-book.itely: added music fragment
6476         option "packed" to lilypond-book
6477
6478         * Documentation/user/instrument-notation.itely: Bugfix: added
6479         missing LedgerLineSpanner color setting in several places.  Added
6480         music fragment option "packed" to VaticanaContext example.
6481
6482 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6483
6484         * scm/define-grobs.scm (all-grob-descriptions): switch off
6485         Hyphen_spanner::set_spacing_rods 
6486
6487         * lily/lyric-hyphen.cc (print): add padding between syllable and
6488         hyphen.
6489         (print): shorten hyphen in tight situations (determine using
6490         minimum-length)
6491
6492         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
6493         0.4pt.
6494
6495 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6496
6497         * ly/titling-init.ly (bookTitleMarkup): Refinements.
6498
6499         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
6500         header/footer markings for regression-test.
6501
6502         * scm/backend-library.scm (output-scopes, header-to-file): Move
6503         from framework-tex.scm.
6504
6505         * scm/framework-ps.scm (output-framework)
6506         (output-preview-framework):
6507         * scm/framework-eps.scm (output-classic-framework)
6508         (output-framework): Use it.  Fixes collated files.
6509
6510 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6511
6512         * input/sakura-sakura.ly: 
6513         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
6514
6515         * buildscripts/guile-gnome.sh: Update.
6516
6517         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
6518
6519         * mf/aybabtu.pe.in: Capitalize Aybabtu.
6520
6521 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6522
6523         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
6524         culprit: always exit the loop if we find a rod, even if it has
6525         distance < 0. 
6526
6527         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
6528         algorithm.
6529
6530         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
6531         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
6532
6533         * scm/output-svg.scm (dashed-line): new  function body.
6534         
6535         * GNUmakefile.in: create .htaccess.
6536
6537 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6538
6539         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
6540
6541 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6542
6543         * VERSION (PACKAGE_NAME): release 2.5.15
6544
6545         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
6546
6547         * scm/framework-svg.scm (output-framework): put scaling in
6548         document header. Apply scaling only once.
6549         (output-framework): dump page size in px, not mm. 
6550
6551         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
6552         from font-size.
6553
6554         * lily/paper-outputter-scheme.cc (LY_DEFINE):
6555         ly:outputter-output-scheme, new function.
6556
6557         * scm/output-svg.scm (pango-description-to-svg-font): new function
6558
6559 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6560
6561         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
6562         target.
6563
6564         * input/typography-demo.ly: new file.
6565
6566 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6567
6568         * Documentation/user/global.itely (File structure): Add markup blocks
6569         to toplevel expressions.
6570         (Multiple movements, Creating titles): Add markup blocks.
6571
6572         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
6573         <libc-extension.hh>).
6574
6575         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
6576
6577         * flower
6578         * lily
6579         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
6580
6581 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6582
6583         * lily/accidental.cc: special bboxes for natural. 
6584
6585         * mf/feta-toevallig.mf: make stems heavier.
6586
6587         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
6588         texts as well.
6589
6590         * mf/feta-klef.mf: revise. 
6591
6592         * mf/feta-schrift.mf: make thinning of accent less pronounced.
6593
6594         * mf/feta-klef.mf: add rounded curve at top. 
6595         make thinnib a little heavier.
6596
6597 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6598
6599         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
6600
6601         * buildscripts/fixcc.py: New file.
6602
6603         * input/regression/utf8.ly: Update Debian font description.
6604
6605 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6606
6607         * stepmake/aclocal.m4: Fix test.
6608
6609 2005-03-09  Graham Percival  <gperlist@shaw.ca>
6610
6611         * Documentation/user/invoking.itely: added Sebastino Vigna's
6612         docs for the --jail option.
6613
6614 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6615
6616         * lily/stem.cc (print): only produce stemlets if there are no
6617         noteheads on this stem.
6618
6619         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
6620         don't crash on stemlet (visible stem without heads).
6621
6622         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
6623         unbroken situations. 
6624
6625         * scm/output-lib.scm (center-invisible): new function.
6626
6627         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
6628         wishes to determine loose column space.
6629
6630         * lily/font-config.cc (init_fontconfig): add
6631         fonts/{otf,type1,cff}  to path.
6632
6633         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
6634
6635         * mf/GNUmakefile (Module): install all fonts under otf/
6636
6637         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
6638         replace /fonts/otf/ by /ps/ 
6639
6640         
6641 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6642
6643         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
6644
6645         * lily/book.cc (process): Oops, add score_.header_.
6646
6647         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
6648
6649         * lily/parser.yy: Handle toplevel and book texts as score.
6650
6651         * scm/page-layout.scm (default-page-make-stencil):
6652         Bugfix: (page-properties rename.
6653
6654         * scm/backend-library.scm (ly:system): Typo.
6655
6656 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6657
6658         * stepmake/stepmake/executable-targets.make (installexe): don't
6659         strip installed executables
6660
6661         * lily/font-select.cc (get_font_by_design_size): revert
6662         pango_description_string as well.
6663
6664         * lily/system.cc (set_loose_columns): put loose column just left
6665         of next column.
6666
6667         * lily/include/group-interface.hh (extract_grob_array): rename
6668         from Pointer_group_interface__extract_grobs
6669
6670         * input/regression/ledger-line-minimum.ly (texidoc): new file.
6671
6672         * lily/ledger-line-spanner.cc (set_spacing_rods): new
6673         function. Keep ledgered note heads at a minimum distance.
6674         Introduce minimum-length-fraction
6675         (print): introduce length-fraction property.
6676
6677 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6678
6679         * tex/GNUmakefile: remove latin1.enc rules.
6680
6681 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6682
6683         * scm/titling.scm: Typo.
6684
6685         * input/regression/score-text.ly: Really add.
6686
6687         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
6688
6689 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6690
6691         * lily/open-type-font-scheme.cc:  new file.
6692
6693 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6694
6695         * scm/titling.scm (layout-extract-page-properties): Rename from
6696         page-properties.  Update callers.
6697
6698         * lily/lexer.ll (Lily_lexer):
6699         * lily/parser.yy: Junk lyric_markup state.
6700
6701         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
6702
6703         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
6704         Add texts parameter.
6705
6706 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6707
6708         * lily/lexer.ll (lyric_markup): New mode.
6709         (Lily_lexer::push_lyric_markup_state): New method.
6710         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
6711
6712         * lily/parser.yy (book_body):
6713         (toplevel_expression): Grok \markup texts.
6714
6715         * lily/score-scheme.cc (ly:music-scorify): 
6716         * scm/lily-library.scm (collect-music-for-book): Take texts
6717         parameter.
6718
6719         * lily/score.cc (texts_): New member.
6720
6721         * lily/paper-book.cc (systems): Format score texts.
6722
6723         * score-text.ly: New file.
6724
6725         * ttftool/SConscript:
6726         * kpath-guile/SConscript: New file.
6727
6728         * lily/SConscript:
6729         * SConstruct: Update.
6730
6731 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6732
6733         * VERSION (PACKAGE_NAME): release 2.5.14
6734
6735 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6736
6737         * lily/main.cc: Add dummy xgettext markers.
6738
6739 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6740
6741         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
6742         requirements
6743
6744         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
6745         executable is < 40k
6746
6747         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
6748         hack.
6749
6750 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6751
6752         * flower/libc-extension.cc:
6753         * flower/include/libc-extension.hh: [Open]BSD simply cast
6754         cookie/funopen declarations.
6755
6756         * stepmake/aclocal.m4: Check for libkpathsea.so.
6757
6758         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
6759         dl_kpse_find_file.
6760
6761 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6762
6763         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
6764         (open_library): alternative for static library.
6765
6766 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6767
6768         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
6769
6770         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
6771
6772         Drop run-time dependency on teTeX.
6773
6774         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
6775
6776         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
6777         KPATHSEA_LIBS in LIBS.
6778         (STEPMAKE_DLOPEN): New function.
6779
6780         * lily/font-config.cc (init_fontconfig): Use dir for directory,
6781         not path.
6782
6783         * flower/file-path.cc (directories): Rename from paths, as this
6784         return an array of directories (a single path).
6785
6786 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6787
6788         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
6789
6790         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
6791         new ly:kpathsea-find-file
6792
6793         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
6794
6795         * kpath-guile/GNUmakefile: new file
6796
6797         * buildscripts/gen-emmentaler-scripts.py (i): generate
6798         emmentaler-X.fontname as well.
6799
6800         * buildscripts/ps-embed-cff.py: new script
6801
6802         * scm/lily-library.scm: remove ps-embed-cff.
6803
6804         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
6805         font loading. 
6806
6807         * scm/font.scm (add-music-fonts): load dynamics/numbers through
6808         fontconfig as well.
6809
6810         * lily/font-config.cc (init_fontconfig): add cff/ too.
6811
6812         * ly/generate-embedded-cff.ly: capitalize.
6813
6814         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
6815         so as to register the pango font.
6816
6817         * lily/font-config.cc (init_fontconfig): add
6818         prefix/{otf,type1,mf/out} to fontconfig path.
6819
6820         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
6821         overrides all. 
6822
6823         * configure.in (gui_b): remove ec mftrace check
6824
6825         * config.hh.in: use lilypond-Major.Minor as data directory.
6826
6827         * scm/framework-ps.scm (dump-page): use output-units for landscape.
6828
6829         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
6830         name.
6831
6832 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6833
6834         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
6835         error messages.
6836
6837         * flower/libc-extension.cc:
6838         * flower/include/libc-extension.hh: [Open]BSD fixes for
6839         cookie/funopen declarations.
6840
6841 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6842
6843         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
6844         emmentaler.
6845
6846         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
6847         lcrm10.
6848
6849         * scm/define-markup-commands.scm (fontsize): new markup
6850         command. Also set baseline-skip
6851
6852 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
6853         
6854         * lily/main.cc (do_chroot_jail): paranoia security for webserver
6855         use.
6856
6857 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6858
6859         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
6860
6861         * lily/pdf.cc: remove PDF related files
6862
6863 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6864
6865         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
6866         <hamamatsu@gmx.de>
6867
6868 2005-03-05  Graham Percival  <gperlist@shaw.ca>
6869
6870         * Documentation/user/advanced-notation.itely: first draft
6871         of reorg done.
6872
6873         * Documentation/user/global.itely: fixed (sub)section
6874         bits of MIDI.
6875
6876 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6877
6878         * cygwin/mknetrel (extras): Bufix (Bertalan).
6879
6880         * Documentation/user/basic-notation.itely (Chords): @ref fix.
6881         * Documentation/user/instrument-notation.itely (Introducing chord
6882         names): Compile fix: must have unique name.
6883
6884 2005-03-02  Graham Percival  <gperlist@shaw.ca>
6885
6886         * Documentation/user/instrument-notation.itely: reorg.
6887
6888 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6889
6890         * scm/output-gnome.scm:
6891         * scm/output-svg.scm: Fix font scaling.
6892
6893 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6894
6895         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
6896         what link to use best.
6897
6898         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
6899         * Documentation/user/tutorial.itely (Automatic and manual beams):
6900         Fix @ref.
6901
6902         * lily/tweak-registration.cc (replace_grob_tweak): New function.
6903         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
6904         * scm/framework-gnome.scm (tweak): Use it.
6905
6906 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6907
6908         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
6909
6910         * scm/output-ps.scm (white-text): reinstate white-text
6911
6912 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6913
6914         * scm/output-ps.scm (offset-add): Remove.
6915
6916         * scm/lily-library.scm (offset-flip-y): New function.
6917         * scm/framework-gnome.scm (tweak): Use it.
6918
6919         * scm/output-gnome.scm (grob-cause): Add parameter.
6920
6921         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
6922         * scm/output-ps.scm (url-link): Move.
6923         (white-text): Warn user about brokenness.
6924
6925         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
6926         wrt ghostscript.
6927
6928 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6929
6930         * lily/slash-repeat-engraver.cc (try_music): always make slashes
6931         if body length smaller than measure length.
6932
6933         * scm/define-markup-commands.scm (with-url): oops. use Y extent
6934         for Y.
6935
6936         * ly/titling-init.ly (tagline): put default tagline in \paper
6937
6938 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6939
6940         * lily/kpath.cc: 
6941         * lily/pdf.cc (Pdf_file): Use more generic error messages.
6942
6943         * scm/lily-library.scm (version-not-seen-message): New function.
6944         * ly/init.ly: Use it.
6945
6946         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
6947         breaks as progess.
6948
6949         * scripts/lilypond-book.py (do_process_cmd): Do not lump
6950         whitespace with l10n message.
6951
6952         * scm/framework-tex.scm (convert-to-ps):
6953         (convert-to-dvi): Do not use overly specific l10n messages.
6954
6955         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
6956
6957         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
6958         merge stderr with stdout.  
6959
6960 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6961
6962         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
6963         Neeracher).
6964
6965 2005-02-29  Graham Percival  <gperlist@shaw.ca>
6966
6967         * Documentation/user/instrument-notation.teily: moved
6968         \arpeggio to Basic.
6969
6970         * Documentation/user/advanced-notation.itely: Articulation to
6971         Basic, a bunch of stuff from Basic moved to Advanced.
6972
6973         * Documentation/user/basic.itely: swapped various sections,
6974         reorganized Basic.
6975
6976 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6977
6978         * flower/memory-stream.cc: 
6979         * flower/libc-extension.cc: Remove obsolete #undefs.
6980
6981         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
6982         more carefully.
6983
6984 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6985
6986         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
6987         dependency.
6988
6989         * VERSION (PACKAGE_NAME): release 2.5.13
6990
6991         * GNUmakefile.in (web-ext): don't ship ps.gz
6992
6993         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
6994         stdout
6995
6996 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6997
6998         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
6999         without libintl.  Now it compiles too.
7000
7001 2005-02-28  Graham Percival  <gperlist@shaw.ca>
7002
7003         * Documentation/user/basic-notation.itely,
7004         instument-notation.itely, advanced-notation.itely:
7005         split up contents of notation.itely.
7006
7007         * Documentation/user/notation.itely: file removed.
7008
7009         * Documentation/user/invoking.itely, converters.itely:
7010         moved convert-ly info to invoking.itely.
7011
7012         * Documentation/user/global.itely, changing-defaults.itely,
7013         sound-output.itexi: moved global settings, file layout, and
7014         sound into global.itely.
7015
7016         * Documentation/user/sound-output.itexi: file removed.
7017
7018         * Documentation/user/lilypond.tely: removed links to
7019         notation.itely and sound.itely.
7020
7021 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7022
7023         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
7024
7025         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
7026  
7027         * THANKS: add sponsor.
7028
7029         * scm/define-markup-commands.scm (with-url): new markup command.
7030
7031         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
7032         tagline.
7033         
7034         * scm/output-tex.scm (url-link): stub.
7035
7036         * scm/output-ps.scm (url-link): new function.
7037
7038         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
7039         ly:set-point-and-click
7040
7041 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7042
7043         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
7044         based on pdf-viewer setting.
7045
7046         * scm/framework-ps.scm (write-preamble): Find and set preferred
7047         pdf-viewer.
7048
7049 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7050
7051         * Documentation/user/point-and-click.itely: update for PDF point &
7052         click.
7053
7054         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
7055         editors based on EDITOR setting.
7056
7057 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7058
7059         * scm/*: Oops, more grand 2005 replace bits.
7060
7061 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7062
7063         * ps/music-drawing-routines.ps: new routine: insert PDF mark
7064
7065         * scm/output-ps.scm (grob-cause): point & click support for
7066         PostScript
7067
7068 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7069
7070         * lily/input-scheme.cc (LY_DEFINE): rename to
7071         ly:input-file-line-column
7072
7073 2005-02-26  Graham Percival  <gperlist@shaw.ca>
7074
7075         * Documentation/user/examples.itely: small fix from Steve Doonan.
7076
7077         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
7078
7079         * THANKS: added Yuval Harel.
7080
7081         * Documentation/user/{various}: inserted two spaces after a period.
7082
7083         * Documentation/user/lilypond.tely: added framework for reorg.
7084
7085         * Documentation/user/basic-notation.itely, instrument-notation.itely,
7086         advanced-notation.itely, global.itely: new files, placeholder for
7087         future reorg.
7088
7089 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
7090
7091         * Documentation/user/notation.itely: revamped Polyphony section
7092         
7093 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7094
7095         * Documentation/user/lilypond-book.itely (Music fragment options):
7096         doc fontload.
7097
7098         * Documentation/user/changing-defaults.itely (Text encoding): add
7099         fontload option to utf8 include
7100
7101         * scripts/lilypond-book.py (compose_ly): add fontload option
7102
7103         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
7104         force-eps-font-include option.
7105
7106         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
7107         black triangle
7108
7109         * Documentation/user/invoking.itely (Editor support): remove
7110         lilypond-latex section.
7111
7112         * scripts/lilypond-latex.py (Module): remove script.
7113
7114         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
7115         overwrite .log. 
7116
7117         * lily/main.cc: remove -m, --no-layout
7118
7119         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
7120         to define. We don't want to override fprintf everywhere.
7121
7122 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
7123
7124         * cygwin/lilypond.hint: 
7125         * cygwin/README.in: Update dependencies.
7126
7127         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
7128         Bugfix: do not pollute CPPFLAGS, LIBS.
7129
7130         * cygwin/mknetrel (extras): Cross compile fixes.
7131
7132         * ttftool/util.c: 
7133         * ttftool/ttfps.c: 
7134         * ttftool/ps.c: #include libc-extension.hh
7135
7136         * flower/include/libc-extension.hh:
7137         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
7138         wrapper using funopen.
7139         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
7140         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
7141
7142         * config.hh.in:
7143         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
7144         (AC_CHECK_HEADERS): Add libio.h
7145
7146         * scripts/convert-ly.py: Uniformize, internationalize.
7147         (2.5.2): Remove fatal encoding rule.
7148         (2.5.13): Handle latin1 encoding gracefully.
7149
7150 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7151
7152         * HACKING: Fix line breaks.
7153
7154 2005-02-23  Werner Lemberg  <wl@gnu.org>
7155
7156         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
7157         contains those two files.
7158
7159 2005-02-21  Werner Lemberg  <wl@gnu.org>
7160
7161         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
7162         to improve overlap removal process.
7163
7164         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
7165         left and right ending.  This ensures better overlapping.
7166         Update all callers.
7167         ("lineprall"): Don't use draw_gridline to get better overlapping.
7168
7169 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7170
7171         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
7172
7173         * Documentation/topdocs/NEWS.tely (Top): oops.
7174
7175 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
7176
7177         * HACKING: new file.
7178
7179         * input/regression/utf8.ly (portuguese): added a portuguese example
7180         to show latin1 accents.
7181
7182 2005-02-21  Pal Benko  <benkop@freestart.hu>
7183
7184         * lily/mensural-ligature-engraver.cc:
7185         * lily/mensural-ligature.cc:
7186         * lily/include/mensural-ligature.hh: new algorithm implemented
7187
7188         * scm/define-grob-properties.scm: join-left killed (add-join may
7189         be used); join-left-amount changed to join-right-amount
7190
7191 2005-02-21  Graham Percival  <gperlist@shaw.ca>
7192
7193         * Documentation/user/notation.itely: small but urgent fix.
7194
7195 2005-02-21  JĂĽrgen Reuter  <reuter@ipd.uka.de>
7196
7197         * lily/duration-scheme.cc: bugfix: correct parameters to
7198         SCM_ASSERT_TYPE.
7199
7200         * THANKS: added Pal.
7201
7202         * Documentation/user/notation.itely: bugfix: unTeXified
7203         $\\backslash$.  Bugfix: yet another glyph renaming victim:
7204         "timesig.*x/y" -> "timesig.*xy".
7205
7206 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7207         
7208         * VERSION (PACKAGE_NAME): release 2.5.12
7209
7210 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7211
7212         * ly/engraver-init.ly: set tieWaitForNote to #t by default
7213
7214         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
7215
7216         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
7217
7218         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
7219
7220 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7221
7222         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
7223         latin1..utf-8.
7224
7225         * input/regression/stanza-number.ly:
7226         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
7227
7228         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
7229
7230 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7231
7232         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
7233         NEWS. Refer to website for older news.  
7234
7235         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
7236         .HTML. This should be done for specific servers only.
7237
7238         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
7239         .ly image examples.
7240
7241         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
7242         in layer 0 too.
7243
7244         * scm/define-context-properties.scm
7245         (all-user-translation-properties): add tieWaitForNote
7246
7247         * scm/define-grobs.scm (all-grob-descriptions): add
7248         Tie_column::before_line_breaking
7249
7250         * lily/tie.cc (get_column_rank): new function
7251
7252         * lily/tie-column.cc (before_line_breaking): new function.
7253         (werner_directions): take into account ties that start on
7254         different columns.  
7255
7256         * lily/score-engraver.cc (set_columns): move add_column() so we
7257         have column rank available.
7258
7259         * lily/tie.cc (get_column_rank): new function.
7260
7261         * input/regression/utf8.ly (japanese): add japanese lyrics.
7262
7263         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
7264
7265         * THANKS: add Steve D
7266
7267         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
7268         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
7269
7270 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
7271
7272         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
7273         to show harmonic notes
7274         * scm/define-markup-commands.scm: in \markup-by-number
7275         "dots-dot" -> "dots.dot" to show dotted notes
7276
7277 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7278
7279         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
7280
7281         * flower/memory-stream.cc (writer): new file.
7282
7283         * configure.in: add endian test.
7284
7285 2005-02-19  JĂĽrgen Reuter  <reuter@ipd.uka.de>
7286
7287         * Documentation/user/examples.itely: small
7288         simplification/beautification
7289
7290         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
7291         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
7292         notation manual.
7293
7294         * lily/mensural-ligature.cc: bugfix: another few victims of the
7295         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
7296
7297         * ly/gregorian-init.ly: commit some experimental code for hi-level
7298         ligature input language lying around here for several months.
7299
7300         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
7301         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
7302
7303         * lily/vaticana-ligature-engraver.cc: bugfix: another few
7304         "x-y-z"->"x.y.s-z" fixes.
7305
7306 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7307
7308         * scm/framework-pdf.scm (scm): new file
7309
7310         * lily/include/pdf.hh (class Pdf_file): new file.
7311
7312         * lily/pdf.cc (write_trailer): new file.
7313
7314 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
7315
7316         * input/regression/color.ly: new file
7317
7318         * lily/stencil.cc (interpret_stencil_expression):
7319         when a color expression is encountered: save current color,
7320         process the rest of the expression, and restore previous color.
7321
7322         * lily/system.cc (get_line): check all grobs for color property and
7323         prepare the stencil scheme expressions for further processing.
7324         Fix layer-loop.
7325
7326         * scm/define-grob-properties.scm: introduce the color property.
7327
7328         * scm/output-lib.scm: color helper functions.
7329
7330         * scm/output-ps.scm: introduce setcolor/resetcolor.
7331
7332 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
7333
7334         * ly/*.ly, input/regression/*.ly: Added missing \version
7335         statements in some files.
7336
7337 2005-02-15  Graham Percival  <gperlist@shaw.ca>
7338
7339         * Documentation/user/notation.itely: minor editing.
7340
7341         * Documentation/user/converters.itely: updated convert-ly bugs.
7342
7343         * Documentation/user/lilypond-book.itely: add info about using
7344         feta characters in latex.
7345
7346 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7347
7348         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
7349
7350 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7351
7352         * scm/define-grob-properties.scm (all-user-grob-properties):
7353         removed 'dashed property.
7354
7355 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7356
7357         * scm/lily.scm (define-safe-public): new macro for defining
7358         variables that can be used in --safe mode. Use it in *.scm
7359         instead of manually setting safe-objects in safe-lily.scm.
7360
7361 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7362         
7363         * lily/slur.cc: Slur-dash patch by Bertalan.
7364
7365         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
7366
7367         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
7368
7369 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7370
7371         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
7372
7373 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7374
7375         * mf/GNUmakefile: teTeX-3.0 install fix.
7376
7377         * Cygwin patch from Bertalan.
7378
7379         * stepmake/stepmake/metafont-rules.make: Remove bashism.
7380
7381 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7382
7383         * GNUmakefile.in: 
7384         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
7385
7386         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
7387         2.0.x compatibility.
7388
7389 2005-02-08  Werner Lemberg  <wl@gnu.org>
7390
7391         * mf/feta-din-code.mf: Format; clean up code.
7392         Replace `---' with `--' plus explicit path directions.
7393         (linethickness#, stafflinethickness#): Remove.
7394         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
7395         ("dynamic s"): Improve shape.
7396         ("dynamic p"): Improve shape.
7397         Replace `draw' with better outline approximation.
7398         ("dynamic r"): Improve shape.
7399         Don't call `fill' and `draw' at the same time.
7400
7401 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7402
7403         * SConstruct (symlink):
7404         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
7405         build fix: add enc symlink.
7406
7407         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
7408
7409         Support for DESTDIR besides prefix=/foo
7410
7411         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
7412
7413         * stepmake/stepmake/*.make:
7414         * */GNUmakefile:
7415         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
7416
7417         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
7418
7419         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
7420         mawk in fontforge (date) test.
7421
7422 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7423
7424         * scm/font.scm (make-century-schoolbook-tree): add NCS as
7425         font-family=roman. Add Luxi Sans as sans
7426
7427 2005-02-07  Graham Percival  <gperlist@shaw.ca>
7428
7429         * Documentation/user/notation.itely: add warning about
7430         percent repeats and Voice contexts.
7431
7432         * Documentation/user/lilypond-book.itely: clarified the
7433         necessity of dvips -u arguments.
7434
7435 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
7436
7437         * THANKS: Added a bunch of bug hunters.
7438
7439 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7440
7441         * scm/framework-ps.scm (output-preview-framework): bugfix.
7442
7443         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
7444         o/ for chord modifier..
7445
7446         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
7447
7448         * lily/drum-note-performer.cc:  remove unused (thanks Michael
7449         Welsh Duggan). 
7450
7451 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7452
7453         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
7454
7455         * ly/titling-init.ly: Do not also print intstrument in header on
7456         first page.  Do not print page number on first and only page.
7457
7458 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7459
7460         * input/regression/*.ly: remove old-relative everywhere
7461
7462         * lily/music-sequence.cc (simultaneous_relative_callback): do
7463         what-if analysis on copy, not on original. Fixes old-relative
7464         compatibility.
7465
7466         * scm/backend-library.scm (postscript->png): space before
7467         --verbose.
7468         
7469 2005-02-05  Werner Lemberg  <wl@gnu.org>
7470
7471         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
7472         is defined.
7473
7474         * mf/feta-alphabet.mf: Define `staffsize#'.
7475         Include `feta-params.mf'.
7476         s/staffheight/design_size/.
7477
7478         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
7479
7480         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
7481
7482         * mf/feta-nummer-code.mf: Reformatted.
7483         (draw_six): Use outline intersection to avoid a self-intersecting
7484         path.
7485         ("Numeral comma"): Fix serious outline glitches.  This slightly
7486         changes the glyph shape.
7487         ("Numeral dash"): Use `draw_rounded_block'.
7488         ("Numeral dot"): Use `drawdot'.
7489         ("Numeral 1"): Assure identical tangent directions for the
7490         intersection points of paths.  The glyph shape improvement is only
7491         visible at very high magnifications.
7492         ("Numeral 2"): Use `solve' macro to make the lower right part of
7493         the glyph outline touch the x axis exactly.  This changes the
7494         glyph shape.
7495         Minor fixes for better overlap removal support.
7496         ("Numeral 4"): Make lefter corner `rounder'.
7497         ("Numeral 5"): Assure identical tangent directions for the
7498         intersection points of paths.  This improves the glyph shape at
7499         high magnifications.
7500         ("Numeral 7"): Use `solve' macro to make the upper right part of
7501         the glyph outline touch the metrics box exactly.  This changes the
7502         glyph shape.
7503         Avoid corner in the upper left part of the glyph (causing a minor
7504         shape change).
7505
7506         * mf/feta-ital-*.mf: Removed.  Unused.
7507
7508 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7509
7510         * VERSION (PATCH_LEVEL): release 2.5.11
7511
7512         * input/regression/fill-line-test.ly: new file.
7513
7514         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
7515         emmentaler name, eg. emmentaler-23. 
7516
7517 2005-02-04  Christian Hitz  <chhitz@gmx.net>
7518
7519         * scm/scm/define-markup-commands.scm (fill-line): rework for better
7520         alignment with centered texts
7521
7522         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
7523         list of paddings
7524
7525 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7526
7527         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
7528
7529         * lily/note-column.cc (translate_rests): call flush_extent_cache()
7530         of parents when translating rests. Fixes: c-chord-rest.ly 
7531
7532         * lily/include/dimension-cache.hh (struct Dimension_cache): add
7533         dimension_callback_ member.
7534
7535         * lily/grob.cc (flush_extent_cache): new function. Force recompute
7536         of extents.
7537
7538 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
7539
7540         * all but lily/*: The grand 2004/2005 replace.
7541
7542 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7543
7544         * lily/*: add space after ,  
7545
7546         * scm/music-functions.scm (has-request-chord): don't use
7547         ly:music-name anywhere. Fixes <<\\>> notation. 
7548
7549         * scm/define-markup-commands.scm (box): use font-size for
7550         padding. Fixes boxed-rehearsal-marks.ly
7551
7552         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
7553         identifier definition too, so foo = \lyrics { ...   } bar = #1
7554         doesn't complain about "bar" being LYRICS_STRING.
7555
7556         * lily/paper-def.cc (find_pango_font): new routine; Store
7557         pango_fonts in hash tab too. This is necessary for retrieving
7558         Pango_fonts::physical_font_tab() later on.
7559  
7560         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
7561         crash if psname is null.
7562
7563         * lily/lily-guile.cc (ly_hash2alist): new function
7564
7565         * Documentation/user/changing-defaults.itely (Text encoding):
7566         rewrite. 
7567
7568         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
7569         -> font_filename mapping.
7570
7571         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
7572         ly_pango_font_physical_fonts
7573
7574         * scm/framework-ps.scm (supplies-or-needs): extract names from
7575         physical Pango_fonts.
7576
7577         * utf8.ly: new file.
7578
7579 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7580
7581         * Documentation/user/changing-defaults.itely (Page layout): add
7582         doco about systemSeparatorMarkup.
7583
7584         * scm/page-layout.scm (default-page-make-stencil): add-to-page
7585         function.
7586         (default-page-make-stencil): insert system separators.
7587
7588         * scm/define-markup-commands.scm (hcenter): add
7589         (beam): add.
7590
7591 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7592
7593         * scm/output-ps.scm (ez-ball): reinstate ez notation.
7594
7595 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7596
7597         * lily/main.cc: Spell backend consistently.  Sort options.
7598
7599 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7600
7601         * scripts/lilypond-book.py (Module): revert @include.
7602         
7603 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7604
7605         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
7606         Bugfix: @include .tex (not .texi).  Small cleanups.
7607
7608         * stepmake/bin/add-html-footer.py (i18n): New function.
7609
7610 2005-01-31  Werner Lemberg  <wl@gnu.org>
7611
7612         * mf/feta-nummer.mf: Removed.  Unused.
7613
7614 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7615
7616         * lily/ : 2004 -> 2005 s&r
7617
7618         * scm/file-cache.scm (cached-file-contents): add file. Read each
7619         file only once.
7620
7621         * scm/font.scm (add-pango-fonts): change order. Medium weight is
7622         now default.
7623
7624         * VERSION: release 2.5.10
7625         
7626         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
7627
7628         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
7629
7630         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
7631         that both X and Y extents of bbox are non-nil.
7632
7633 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7634
7635         * scm/chord-name.scm (alteration->text-accidental-markup): change
7636         - to . 
7637
7638         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
7639
7640         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
7641
7642         * Documentation/user/invoking.itely (Invoking lilypond): add note
7643         about EPS backend.
7644
7645         * scm/framework-eps.scm: new file: create per-system/per-page EPS
7646         files for inclusion in lilypond-book document.
7647
7648         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
7649
7650         * input/tutorial/lbook-texi-test.texi: new file.
7651
7652         * scm/safe-lily.scm (safe-objects): add
7653         {begin,end}-of-line-(in)?visible as safe.
7654  
7655 2005-01-30  Graham Percival  <gperlist@shaw.ca>
7656
7657         * Documentation/user/changing-defaults.itely: fixed example
7658         of (dynamics).
7659
7660 2005-01-29  Graham Percival  <gperlist@shaw.ca>
7661
7662         * lily/main.cc: fix info about -o=FILE.
7663
7664 2005-01-29  Werner Lemberg  <wl@gnu.org>
7665
7666         * mf/feta-toevallig.mf ("Natural"): Completely changed the
7667         construction to assure smooth transition from straight to curved
7668         lines.
7669
7670 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7671
7672         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
7673         stencils.
7674
7675         * ps/lilyponddefs.ps: add start-page, start-system doesn't
7676         translate to top of page. Fixes alignment problems of
7677         lilypond-generated EPS files.
7678
7679 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7680
7681         * scm/part-combiner.scm (analyse-spanner-states): trigger on
7682         crescendo-end as well, since Decrescendo maybe ended with Stop
7683         Crescendo.). Fixes: partcombine-diminuendo.ly
7684
7685         * scm/script.scm (default-script-alist): swap portato symbols.
7686
7687         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
7688
7689         * lily/paper-outputter-scheme.cc (LY_DEFINE):
7690         ly:outputter-port. New function.
7691
7692         * scm/framework-ps.scm (output-classic-framework): dump a
7693         -systems.texi too
7694         (output-classic-framework): dump multiple systems on an "infinite"
7695         page EPS including fonts. 
7696
7697         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
7698         .eps files for both texi and tex formats. Use PNG coming from
7699         lilypond.
7700         
7701 2005-01-28  Graham Percival  <gperlist@shaw.ca>
7702
7703         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
7704
7705         * scripts/lilypond-latex.py: fix info about -o=FILE.
7706
7707 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7708
7709         * ly/generate-embedded-cff.ly: write .cff.ps files.
7710
7711         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
7712
7713         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
7714         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
7715
7716 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7717
7718         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
7719
7720 2005-01-28  Werner Lemberg  <wl@gnu.org>
7721
7722         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
7723         macros.
7724         (draw_bulb): Improved.
7725
7726         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
7727         metapost bug.
7728         (draw_pedal_P): Use soft_end_penstroke.
7729         (draw_pedal_d): Use soft_start_penstroke.
7730
7731         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
7732         path.
7733         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
7734         doesn't change the glyph shape.
7735
7736         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
7737         changing the shape) to avoid fontforge warnings.
7738
7739         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
7740         soft_end_penstroke and fix glyph shape.
7741
7742 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7743
7744         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
7745
7746 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7747
7748         * scm/define-markup-commands.scm (line): filter out empty stencils
7749         from line command.
7750
7751         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
7752         amount.
7753
7754 2005-01-27  Graham Percival  <gperlist@shaw.ca>
7755
7756         * Documentation/user/notation.itely: added info about what
7757         \voiceFoo does.  Also rewrote warning about marks at
7758         a line break.
7759
7760         * Documentation/user/changing-defaults.itely: added info
7761         about putting dynamics in parenthesis and brackets.
7762
7763 2005-01-27  Werner Lemberg  <wl@gnu.org>
7764
7765         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
7766
7767 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7768
7769         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
7770         portato-direction.ly
7771
7772         * lily/beam.cc (consider_auto_knees): add beam height to
7773         threshold. Fixes: knee-multiple-beam.ly
7774
7775         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
7776         pedal line spanners. Fixes: instrument-center-pedal.ly
7777
7778         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
7779         if encountering barline. Fixes: auto-beam-repeat.ly
7780
7781 2005-01-26  Werner Lemberg  <wl@gnu.org>
7782
7783         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
7784         overlapping.
7785
7786         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
7787         with inflections for the 1/2 sharp glyph.
7788
7789         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
7790         connection between `t' and `r'.
7791         Unify bulb with the rest of `r' to avoid grazing outlines which
7792         confuses the overlap removal algorithm of fontforge.
7793
7794         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
7795         inflections.
7796         (draw_cross): Fix shape to have uniform thickness in corners.
7797
7798         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
7799         to avoid an uneven number of self-intersections; this confuses
7800         fontforge.
7801         Fix a slight bug in the shape at left bottom (which is visible only
7802         at high magnifications).
7803         `Center' the stem horizontally to avoid overlapping.
7804
7805 2005-01-24  Werner Lemberg  <wl@gnu.org>
7806
7807         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
7808         to `asis'.
7809         (fet_begingroup): Save group name in string `feta_group'.
7810         (fet_endgroup): Updated.
7811         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
7812
7813         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
7814
7815         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
7816         in metapost.
7817
7818 2005-01-24  Graham Percival  <gperlist@shaw.ca>
7819
7820         * Documentation/user/notation.itely: really minor editing.
7821
7822 2005-01-22  Graham Percival  <gperlist@shaw.ca>
7823
7824         * Documentation/user/examples.itely: minor editing.
7825
7826         * Documentation/user/changing-defaults.itely: minor editing.
7827
7828         * Documentation/user/notation.itely: clarified info on polyphony
7829         and \addlyrics.
7830
7831 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
7832
7833         * scm/output-gnome.scm: 
7834         * scm/output-svg.scm:
7835         * scm/lily-library.scm (font-name-style): Update font name
7836         kludging for fontconfig use.
7837
7838 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
7839
7840         * scm/define-markup-commands.scm: Document right-align and
7841         larger markup commands. Remove "TODO" from the topmost comment
7842         "each markup function should have a doc string." More consistent
7843         use of new-lines.
7844
7845 2005-01-22  Graham Percival  <gperlist@shaw.ca>
7846
7847         * Documentation/user/changing-defaults: removed info about
7848         copyright symbol, since it's likely to change soon.
7849         Added info about betweensystemspace.
7850
7851         * Documentation/user/notation.itely: minor fixes.
7852
7853         * Documentation/user/lilypond.tely,
7854         Documentation/user/music-glossary.tely: changed copyright
7855         date to 2005 instead of 2004.
7856
7857         * input/test/volta-chord-names.ly: added old example back.
7858
7859 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7860
7861         * mf/feta-beugel.mf: use design size 20 (not 15).
7862
7863         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
7864         change name to aybabtu completely
7865
7866 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7867
7868         * buildscripts/gen-emmentaler-scripts.py (outdir): add
7869         design_size to fontname
7870
7871 2005-01-19  Werner Lemberg  <wl@gnu.org>
7872
7873         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
7874         mf/feta-schrift.mf: s/p/pat/ if a path variable.
7875
7876         * mf/feta-autometric.mf (set_char_box): Add code which emits
7877         specials for mf2pt1 if run with metapost.
7878         (to_bp): New macro for mf2pt1.
7879
7880 2005-01-18  Graham Percival  <gperlist@shaw.ca>
7881
7882         * Documentation/user/changing-defaults: added info on
7883         creating a copyright symbol.
7884
7885 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * VERSION: release 2.5.9
7888         
7889 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
7890
7891         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
7892
7893         * Documentation/user/notation.itely: Document
7894         score-override-auto-beam-setting Fix documentation for
7895         revert-auto-beam-setting.
7896
7897 2005-01-18  Werner Lemberg  <wl@gnu.org>
7898
7899         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
7900         (procset): New function to define a procset resource.
7901         (ps-embed-pfa): New function to define a font resource.
7902         (setup): New function to define a `Setup' environment.
7903         (preamble): Use new functions.
7904
7905         * ps/lilypond.defs (init-lilypond-parameters): New function to
7906         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
7907
7908 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7909
7910         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
7911
7912 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
7913
7914         * scm/define-markup-commands.scm: Change number->markletter-string
7915         to take two arguments (vector number). Add number->mark-alphabet-vector
7916         and markalphabet markup command.
7917
7918         * scm/translation-functions.scm: Add format-mark-box-alphabet,
7919         format-mark-alphabet, format-mark-box-barnumbers and
7920         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
7921
7922 2005-01-17  Graham Percival  <gperlist@shaw.ca>
7923
7924         * Documentation/user/examples.itely: add SATB automatic piano
7925         reduction template.
7926
7927         * Documentation/user/notation.itely: added info about changing
7928         partcombine texts.  Also adds examples of alternate lyrics.
7929
7930         * Documentation/user/changing-defaults.itely: added warning
7931         about \RemoveEmptyStaffContext overriding previous changes.
7932
7933 2005-01-17  Werner Lemberg  <wl@gnu.org>
7934
7935         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
7936         feta-alphabet*.
7937
7938 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7939
7940         * python/lilylib.py (make_ps_images): don't do final showpage for
7941         multi-page documents.
7942         
7943         * VERSION (MY_PATCH_LEVEL): release 2.5.8
7944
7945 2005-01-16  Graham Percival  <gperlist@shaw.ca>
7946
7947         * Documentation/user/lilypond.tely: changed order of appendices;
7948         unified index should be last.
7949
7950         * Documentation/user/notation.itely: add example of key signatures
7951         and info about Staff.printKeyCancellation.
7952
7953 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7954
7955         * lily/include/repeated-music.hh (class Repeated_music): change
7956         into "namespace" class.
7957
7958         * lily/event.cc: remove Key_change_event.
7959
7960         * lily/include/transposed-music.hh (class Transposed_music): remove.
7961
7962         * lily/transposed-music.cc: remove
7963
7964         * lily/include/relative-music.hh: remove.
7965
7966         * lily/include/music-sequence.hh (struct Music_sequence): change
7967         into "namespace" class.
7968
7969         * lily/untransposable-music.cc (Module): remove
7970
7971         * lily/include/un-relativable-music.hh (Module): remove
7972
7973         * lily/include/untransposable-music.hh (Module): remove
7974
7975         * lily/include/music-list.hh (Module): remove file
7976
7977         * lily/un-relativable-music.cc: remove file.
7978
7979 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7980
7981         * lily/parser.yy: Compile fix.
7982
7983 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7984
7985         * lily/include/music.hh (class Music): unvirtualize transpose().
7986
7987         * lily/sequential-music.cc: remove file.
7988
7989         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
7990
7991         * lily/slur-scoring.cc (get_best_curve): only switch on
7992         DEBUG_SLUR_SCORING for non NDEBUG builds.
7993
7994         * lily/include/music.hh (class Music): replace Music::start_mom()
7995         by start-callback property
7996
7997         * lily/include/grace-music.hh: remove file. 
7998
7999         * lily/stem.cc (height): robustness fix.
8000
8001         * lily/time-scaled-music.cc: remove file.
8002
8003         * lily/include/music.hh (class Music): include SCM init argument.
8004         (class Music): replace Music::get_length() virtual by
8005         length-callback property everywhere.
8006
8007         * scripts/convert-ly.py (conv): add  # to \property scalar value.
8008
8009         * mf/GNUmakefile: don't install *list.ly
8010
8011 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8012
8013         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
8014
8015 2005-01-12  Werner Lemberg  <wl@gnu.org>
8016
8017         This patch addresses the following problems in the feta sources
8018         files which contribute to the fetaXX fonts.
8019
8020         . Many fixes for rasterization at low resolutions (consistent use of
8021           `vround' and `hround', integer shift values for paths, applying
8022           `eps' for mirrored paths, use of `define_whole_pixels' and
8023           friends, etc.) -- while this probably looks like a waste of time
8024           it has revealed deficiencies in some glyph shapes.  See comment at
8025           the end of feta-params.mf how vertical symmetry is achieved.
8026
8027         . The `---' operator has been replaced everywhere with `--'; this
8028           both improves and considerably reduces the font size after
8029           conversion with mf2pt1.
8030
8031         These change aren't explicitly mentioned below since virtually all
8032         glyphs are affected.
8033
8034         Other notable differences:
8035
8036         . Glyphs from feta-accordion.mf now have charboxes around the
8037           outline.
8038
8039         . Fixed incorrect charbox for `accDot'.
8040
8041         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
8042
8043         . Fixed position of the bow in the `upprall' glyph and its siblings.
8044
8045         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
8046           dependent on the staff line thickness to avoid touching the middle
8047           staff line at smaller sizes.
8048
8049         . Largely extended output for feta-testXX: Where useful, glyphs
8050         are shown both between and on staff lines.
8051
8052
8053         * mf/feta-params.mf (staff_space_rounded,
8054         stafflinethickness_rounded, linethickness_rounded,
8055         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
8056         Update all code which uses them where appropriate.
8057         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
8058         New variables used to control rasterization at low resolutions.  Set
8059         to zero if feta code is processed with metapost.
8060
8061         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
8062         (draw_rounded_block, draw_square_block): Updated to use `--' only.
8063         (flare_path): Updated.
8064         Make it work with `filldraw' (but only circular pens).
8065         (hfloor, vfloor, hceiling, vceiling): New macros.
8066
8067         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
8068         Use `draw' again in mf mode to have good pixel dropout control.
8069         Fix intersection points of horizontal lines with circle.
8070         ("accDot"): Fix parameters for set_char_box.
8071         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
8072         control.
8073
8074         * mf/feta-banier.mf: Updated.
8075
8076         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
8077         testing.
8078         (undraw_inside_ellipse): Remove `center' argument.  Update all
8079         callers.
8080         (draw_brevis): New macro, called by "Brevis notehead".
8081         (draw_whole_triangle_head): New macro, called by "Whole
8082         trianglehead".
8083         (draw_small_triangle_head): Use `filldraw'.
8084
8085         * mf/feta-eindelijk.mf: Remove useless global group.
8086         Updated.
8087
8088         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
8089         `filldraw'.
8090
8091         * mf/feta-pendaal.mf: Updated.
8092
8093         * mf/feta-puntje.mf: Updated.
8094
8095         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
8096         less points.
8097         ("Flageolet"): Use `draw' again in mf mode to have good pixel
8098         dropout control.
8099         ("Varied Coda"): Use `draw_block'.
8100         (draw_comma): Fix typo.
8101         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
8102         pixel dropout control.
8103
8104         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
8105         position of bow.
8106
8107         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
8108         sizes.
8109
8110         * mf/feta-toevallig.mf (remember_pic): New variable, used for
8111         testing.
8112         (draw_meta_sharp): Much simplified.
8113         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
8114
8115         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
8116
8117 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8118
8119         * Documentation/user/notation.itely (Ancient rests): Fix typo
8120         (thanks Anthony)
8121
8122 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8123
8124         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
8125
8126         * lily/main.cc (setup_paths): Add cff.
8127
8128         * mf/GNUmakefile (foe): Include actual target %.cff.
8129         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
8130
8131 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8132
8133         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
8134         suffix for main_input_b_.
8135
8136         * scm/music-functions.scm (toplevel-music-functions):
8137         precompute music lengths for music expressions.  
8138
8139 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8140
8141         * lily/include/input.hh (class Input): new `end_' slot for end of
8142         input. Renamed defined_str0_ to start_.
8143
8144         * lily/input.cc (Input): Add Input::Input (Input const &) and
8145         remove Input::Input (Source_file*, char const *). Use the new
8146         slots.
8147         (set_location): method used by bison to propagate input
8148         locations (YYLLOC_DEFAULT).
8149         (end_line_number, end_column_number, step_forward): new methods
8150         
8151         * lily/input-scheme.cc (ly:input-both-locations): new function,
8152         similar to ly:input-location, but also return the end line and
8153         column.
8154
8155         * lily/include/includable-lexer.hh: 
8156         * lily/includable-lexer.cc: 
8157         * lily/include/lily-lexer.hh (class Lily_lexer): 
8158         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
8159         Includable_lexer to Lily_lexer, in order to update lexloc (the
8160         yylloc), a new slot of Lily_lexer.
8161         (here_input, LexerError): simplify by using the lexloc slot (aka
8162         yylloc)
8163
8164         * lily/lexer.ll: #define yylloc to use input locations (it may
8165         be useless here?). Fixed the #embedded_scm rule (step the location
8166         forward in order to skip the sharp sign before parsing the scheme
8167         expression)
8168
8169         * lily/include/lily-parser.hh (class Lily_parser): 
8170         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
8171         here_input()
8172         (parser_error): overload for more precise locations of errors.
8173
8174         * lily/parser.yy (YYLTYPE): set location type to Input
8175         (YYLLOC_DEFAULT): use Input::set_location()
8176         (yylex): add the YYLTYPE* location parameter.
8177         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
8178         Give an Input parameter to THIS->parser-error() for more accurate
8179         messages.
8180
8181 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8182
8183         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
8184
8185         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
8186         on BEAMQUANTING for non-NDEBUG builds.
8187
8188         * lily/stem.cc (head_count): performance: avoid String::String()
8189         inside oft called function.
8190
8191 2005-01-09  Graham Percival  <gperlist@shaw.ca>
8192
8193         * Documentation/user/examles.itely: attempted fix for broken
8194         string quartet template.
8195
8196         * Documentation/user/notation.itely: remove unnecessary broken
8197         link.
8198
8199 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8200
8201         * VERSION (PACKAGE_NAME): release 2.5.7
8202
8203 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8204
8205         * config.make.in (METAFONT): Append -progname=mf, fixes use with
8206         mf-nowin for teTeX-3.0.  Backportme.
8207
8208         * scm/output-svg.scm (utf8-string): New function.
8209
8210         * scm/output-gnome.scm (utf8-string): New function.
8211         (otf-name-mangling): Remove.
8212
8213         * lily/pango-font.cc (Pango_font): Use font string iso font
8214         filename for utf8-text.
8215
8216         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
8217         name.
8218
8219 2005-01-08  Graham Percival  <gperlist@shaw.ca>
8220
8221         * Documentation/user/notation.itely: add info about
8222         Staff.extraNatural = ##f in Pitches section.  Also
8223         fixed some minor issues in the Vocal music section.
8224
8225 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8226
8227         * scm/output-ps.scm (white-text): comment out Helvetica font,
8228         which is broken for my GS install.
8229
8230         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
8231         which provides a tighter bbox.
8232
8233         * scm/define-grobs.scm (all-grob-descriptions): remove all
8234         extra-offsets from definitions.
8235
8236 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
8237
8238         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
8239         add tuning for 4-string bass and some common 4/5-string banjo
8240         tunings.  New function (four-string-banjo) turns a 5-string tuning
8241         into a 4-string tuning.  New function
8242         (fret-number-tablature-format-banjo) computes correct fret numbers
8243         on 5-string banjos.
8244
8245         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
8246         Add beam correction to TabVoice.
8247
8248         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
8249         using bold font; makes tabs more readable.
8250
8251 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8252
8253         * lily/font-select.cc (get_font_by_design_size): don't make
8254         Modified_font_metric; this causes trouble, since we don't know the
8255         font magnification from inside Pango_font::text_stencil()
8256
8257         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
8258
8259         * Documentation/user/notation.itely (The Lyrics context): comment out
8260         broken {Small ensembles} link.
8261
8262         * scm/framework-svg.scm (output-framework): change calling convention.
8263
8264         * lily/object-key-dumper-scheme.cc: new file.
8265
8266         * lily/object-key-undumper-scheme.cc: new file.
8267
8268         * lily/tweak-registration-scheme.cc: new file.
8269
8270         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
8271
8272         * Documentation/user/examples.itely (String quartet): uncomment
8273         broken example.
8274
8275         * lily/font-config.cc: new file.
8276
8277 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8278
8279         * scm/output-svg.scm: 
8280         * scm/output-gnome.scm: s/bigcheese/emmentaler.
8281
8282         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
8283
8284 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8285
8286         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
8287         Add headers.
8288
8289         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
8290
8291 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8292
8293         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
8294
8295         * lily/include/main.hh: lose _b hungarian suffixes for global
8296         variables.
8297
8298         * lily/include/lily-guile-macros.hh: new file.
8299
8300         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
8301
8302         * lily/general-scheme.cc: new file. 
8303
8304         * lily/font-select.cc (get_font_by_design_size): retrieve
8305         PangoFont for (designsize . "pango-descr") entries.
8306
8307         * lily/lily-parser-scheme.cc: new file.
8308
8309         * lily/output-def-scheme.cc: new file.
8310
8311         * lily/paper-book-scheme.cc: new file.
8312
8313         * lily/duration-scheme.cc (LY_DEFINE): new file.
8314
8315         * lily/pitch-scheme.cc:  new file.
8316
8317         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
8318
8319 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8320
8321         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
8322
8323 2005-01-06  Graham Percival  <gperlist@shaw.ca>
8324
8325         * Documentation/user/notation.itely: minor editing.
8326
8327         * Documentation/user/changing-defaults: minor editing.
8328
8329         * Documentation/user/examples.itely: add template for
8330         string quartet part extraction; demonstrates tag.
8331
8332 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
8333
8334         * Documentation/user/notation.itely: documents
8335         format-mark-box-letters and format-mark-box-numbers
8336
8337         * scm/define-context-properties.scm: change comment.
8338
8339 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8340
8341         * scm/framework-ps.scm (output-classic-framework): new function:
8342         dump systems as separate .eps files (without fonts) and write a
8343         single collecting .tex file.
8344
8345 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8346
8347         * Documentation/user/notation.itely (Setting simple songs):
8348         Correct several errors in the equivalent formulation of
8349         \addlyrics. 
8350         (The Lyrics context): Corrected link to the SATB example.
8351
8352 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8353
8354         * scm/lily.scm (completize-formats): new function
8355         (postprocess-output): new function
8356
8357         * lily/paper-book.cc (classic_output): change calling
8358         convention. Give basename as first argument. 
8359         remove Paper_book::post_processing().
8360
8361         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
8362
8363 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8364
8365         * lily/paper-outputter.cc (LY_DEFINE): new function
8366         ly:outputter-close.
8367
8368         * lily/main.cc: change --format,-f to --backend,-b
8369
8370         * lily/include/main.hh: rename format to backend.
8371
8372         * scm/translation-functions.scm (format-mark-box-numbers): add.
8373         patch by Erlend Aasland
8374
8375 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8376
8377         * lily/pango-font.cc (text_stencil): dump string as
8378         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
8379
8380 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8381
8382         * configure.in (gui_b): Remove handy developer-only
8383         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
8384         CVS source installations (but break other non-default but correct
8385         PKG_CONFIG_PATH setups), as this is no longer developer-only.
8386
8387         * SConstruct: 
8388         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
8389         compatibility (backportme).
8390
8391         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
8392
8393 2005-01-03  Werner Lemberg  <wl@gnu.org>
8394
8395         Prepare glyph shapes for mf2pt1 conversion.
8396
8397         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
8398         (accDiscant, accFreebase, accStdbase): Replace `draw' with
8399         `penstroke'.
8400         (accDot): Use `drawdot'.
8401         (accBayanbase): Replace `draw' with `draw_gridline'.
8402         (print_penpos): Moved to feta-macros.mf.
8403         (accOldEE): Replace `filldraw' with `penstroke'.
8404         Replace `draw' with `penstroke' and `drawdot'.
8405
8406         * mf/feta-banier.mf: Code clean-up.
8407         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
8408         `fill'.
8409
8410         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
8411
8412         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
8413         paremeter to control drawing of labels.  Update all callers.
8414
8415         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
8416         (new_bulb): Return a bulb as a single path.  To do that, it now
8417         takes some more parameters.  Updated all callers.
8418         (draw_gclef): Major clean-up.  `draw' has been replaced with
8419         `penstroke', unnecessary outlines have been removed.
8420         Remove (unused) gnome-canvas code.
8421
8422         * mf/feta-macros.mf (print_penpos): New macro (from
8423         feta-accordion.mf).
8424         Other minor fixes.
8425
8426         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
8427         ("Pedal dot"): Use `drawdot'.
8428         (draw_pedal_P): Add parameter to control drawing of labels.  Update
8429         all callers.
8430         Fix shape at top.
8431         (draw_pedal_e): Add parameter to control drawing of labels.  Update
8432         all callers.
8433         (draw_pedal_d): Add parameter to control drawing of labels.  Update
8434         all callers.
8435         Revert drawing direction.
8436
8437         * mf/feta-schrift.mf (draw_fermata): Use single path.
8438         (draw_short_fermata): Replace `filldraw' with `fill'.
8439         (draw_long_fermata, draw_very_long_fermata): Replace calls to
8440         `draw_rounded_block' with a single path.
8441         ("Thumb"): Draw full circle instead of mirroring segments.
8442         (draw_accent): New macro.
8443         ("> accent", "espr"): Use it.
8444         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
8445         ("open (unstopped)"): Draw full circle instead of mirroring
8446         segments.
8447         (draw_vee): Removed.
8448         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
8449         ("Downbow"): Replace calls to `draw_rounded_block' with a single
8450         path.
8451         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
8452         partial pieces drawn with `fill' -- these do still overlap with the
8453         stem of the `t' but just once, not multiple times so that fontforge
8454         can handle it gracefully.
8455         Change other parts of the glyph so that fontforge's overlapping
8456         algorithm reliably works.
8457         (draw_heel): Replace `draw' with `fill'.
8458         (draw_toe): Use `draw_accent' instead of `draw_vee'.
8459         ("Flageolet"): Replace `draw' with `penstroke'.
8460         ("Segno"): Replace `filldraw' with `penstroke'.
8461         Replace `draw' with `drawdot'.
8462         ("Coda"): Replace `fill' with `penstroke', using a single path.
8463         ("Varied Coda"): Use less overlapping paths.
8464         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
8465         single path.
8466
8467         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
8468         group to better control the `labels' command.
8469         Rename argument to `offset' and use it actually.  Update all
8470         callers.
8471         Replace `filldraw' with `fill'.
8472         ("mordent", "prallmordent", "upmordent", "downmordent",
8473         "lineprall"): Replace `draw' with `draw_gridline'.
8474         ("upprall", "downprall"): Replace `draw' with `fill'.
8475
8476         * mf/feta-timesig.mf: Formatting.
8477
8478         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
8479         to...
8480         ("Flat"): Here.
8481         (draw_paren): Move code to draw labels to...
8482         ("Right Parenthesis"): Here.
8483
8484 2005-01-02  Graham Percival <gperlist@shaw.ca>
8485
8486         * Documentation/user/notation.itely: add example of \setTextDecresc
8487         and \setTextDim.
8488
8489 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
8490
8491         * scm/define-markup-commands.scm :  fix glyph-strings of
8492         accidentals and \note-by-number
8493
8494 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8495
8496         * VERSION: 2.5.6 released.
8497         
8498         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
8499
8500         * input/regression/new-markup-scheme.ly: oops. font-family=music
8501         -> font-encoding fetaMusic.  
8502
8503         * lily/main.cc: put default to PS.
8504
8505         * lily/tfm.cc: idem.
8506
8507         * lily/afm.cc: idem.
8508
8509         * lily/include/modified-font-metric.hh (struct
8510         Modified_font_metric): remove coding_scheme() method.
8511
8512         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
8513
8514         * scripts/convert-ly.py (conv): crash on encountering \encoding.
8515
8516         * input/les-nereides.ly: convert to utf8
8517
8518         * lily/modified-font-metric.cc (text_dimension): idem.
8519
8520         * lily/parser.yy (TODO): idem.
8521
8522         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
8523
8524         * lily/lexer.ll: remove encoding
8525
8526         * scm/framework-ps.scm (output-variables): separately scale the
8527         page to mm 
8528
8529         * lily/pango-font.cc (Pango_font): fix scaling.
8530
8531         * lily/font-metric.cc (design_size): design_size returns a
8532         dimension now as well.
8533
8534 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8535
8536         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
8537         brace generation. 
8538
8539         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
8540
8541 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8542
8543         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
8544         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
8545
8546 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8547
8548         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
8549         in first run as well.
8550
8551         * scm/paper.scm (layout-set-staff-size): use text-font-size in
8552         dimension less points (ie. 12 = 12 point)
8553
8554         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
8555
8556         * lily/all-font-metrics.cc (find_pango_font): set description_
8557
8558         * lily/pango-font.cc (text_stencil): export size as well.
8559         (text_stencil): fix scaling and extents box.
8560
8561 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8562
8563         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
8564
8565         * Documentation/user/invoking.itely (Invoking lilypond): document
8566         texstr
8567
8568         * scripts/convert-ly.py (conv): add ancient rules.
8569
8570         * scm/clef.scm (c0-pitch-alist): replace - with .
8571
8572         * scripts/lilypond-book.py (process_snippets): add texstr support.
8573
8574         * scm/framework-texstr.scm (header): change extension to .textmetrics
8575
8576         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
8577         -f tex.
8578
8579         * lily/text-metrics.cc: new file.
8580         (try_load_text_metrics): new function
8581
8582         * lily/include/text-metrics.hh: new file.
8583
8584 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8585
8586         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
8587         ly_scheme_function to ly_lily_module_constant.
8588
8589         * lily/modified-font-metric.cc (text_dimension): try
8590         lookup_tex_text_dimension() first.
8591
8592         * lily/tfm.cc: new function ly:load-text-dimensions
8593
8594 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8595
8596         * scm/output-texstr.scm (text): use \lilygetmetrics
8597
8598         * scm/framework-texstr.scm (header): dump in new format.
8599
8600         * tex/lilypond-tex-metrics: new file.
8601         
8602 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8603
8604         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
8605         mapping.
8606         (index_to_charcode): New method.
8607
8608         * scm/output-ps.scm (glyph-string): 
8609         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
8610
8611 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
8612
8613         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
8614         implement fully, need FONT to get to charcode.
8615
8616         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
8617
8618         * scm: Cleanups.
8619
8620         * Documentation/user/changing-defaults.itely: Fix internalsrefs
8621         {Tunable context properties},
8622         {All layout objects},
8623         {Music definitions}.
8624
8625 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8626
8627         * VERSION: release 2.5.5
8628         
8629         * lily/main.cc: use TeX as default output format.
8630
8631         * flower/file-path.cc (find): try to open directly as well, so we
8632         find absolute path files. 
8633
8634         * lily/pango-select.cc: new file.
8635
8636         * scm/framework-ps.scm: remove all encoding code. 
8637         load pfb/pfa for PangoFont too.
8638         
8639         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
8640
8641 2004-12-22  Werner Lemberg  <wl@gnu.org>
8642
8643         Prepare glyph shapes for mf2pt1 conversion.
8644
8645         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
8646
8647         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
8648         (define_triangle_shape): Use it to replace `draw' with `fill' and
8649         `unfill'.  Update all callers.
8650         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
8651         (draw_cross): Ditto.
8652         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
8653         Use penrazor for better conversion with mf2pt1.
8654         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
8655         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
8656         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
8657         draw_la_head, draw_ti_head): Replace `filldraw' with
8658         `fill'.  Update all callers.
8659
8660 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8661
8662         * lily/paper-book.cc (output): revert: only allow a single output
8663         format.
8664
8665         * lily/include/pango-font.hh: new file.
8666
8667         * lily/pango-font.cc: new file.
8668
8669         * lily/font-metric.cc (text_stencil): new routine
8670
8671         * lily/all-font-metrics.cc (find_pango_font): new routine.
8672
8673         * lily/include/font-metric.hh (struct Font_metric): add
8674         text_stencil()
8675
8676         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
8677
8678 2004-12-22  Werner Lemberg  <wl@gnu.org>
8679
8680         Prepare glyph shapes for mf2pt1 conversion.
8681
8682         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
8683
8684         * mf/feta-toevallig.mf: Formatting.
8685         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
8686         ("Natural"): Fix paths to allow better postprocessing.
8687         (draw_meta_flat): Use `z3l' as additional point in path to get
8688         better conversion with mf2pt1.
8689         Other minor cleanups.
8690         ("3/4 Flat"): Add auxiliary points and modify path to replace
8691         `draw' with `fill'.
8692         ("Double Sharp"): Mirror path segments instead of picture elements
8693         to get a single outline.
8694         Modify path to replace `filldraw' with `fill'.
8695
8696 2004-12-22  Graham Percival  <gperlist@shaw.ca>
8697
8698         * input/test/unfold-all-repeats.ly: added file back.
8699
8700         * Documentation/user/notation.itely,
8701         Documentation/user/programming-interface.itely
8702         Documentation/user/changing-defaults.itely: fixed misc broken
8703         links to input/test/ files.
8704
8705 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8706
8707         * tex/texinfo.tex: Update.  We should not be distributing this,
8708         but since we do, use latest version.
8709
8710         * Documentation/user/macros.itexi: Comment-out \fetaflat,
8711         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
8712         macros for feta glyphs.
8713
8714 2004-12-22  Graham Percival  <gperlist@shaw.ca>
8715
8716         * Documentation/user/changing-defaults.itely: fix index for set.
8717
8718         * Documentation/user/converters.itely: added convert-ly bugs list
8719         from CVS.
8720
8721 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8722
8723         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
8724         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
8725         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
8726         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
8727
8728         * mf/GNUmakefile (pfa_warning): Use less broken check.
8729
8730         * python/lilylib.py (setup_environment): Remove cruft from
8731         GS_FONTPATH.
8732
8733         * configure.in: Bump mftrace requirement to 1.1.1.
8734
8735 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8736
8737         * scm/output-svg.scm (beam): Use polygon.
8738
8739         * scm/lily-library.scm: Bugfix.
8740
8741         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
8742
8743         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
8744
8745 2004-12-19  Werner Lemberg  <wl@gnu.org>
8746
8747         Prepare glyph shapes for mf2pt1 conversion.
8748
8749         * mf/feta-eindelijk: Some formatting.
8750         (multi_rest_x, multi_beam_height): Removed.  Unused.
8751         ("Quarter rest"): Use `intersectiontimes' to create a single
8752         outline.
8753         (rest_crook): Removed.  Unused.
8754         (draw_rest_bulb): Return path (without filling).  Update callers.
8755         Simplified.
8756         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
8757         "128th rest"): Simplify `pat'.
8758         Create single outline.
8759
8760 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8761
8762         * mf/GNUmakefile (ALL_GEN_FILES):
8763         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
8764
8765         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
8766         function.
8767
8768 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8769
8770         * scm/output-texstr.scm (placebox): add routine
8771
8772         * VERSION (PACKAGE_NAME): release 2.5.4
8773
8774         * scm/framework-texstr.scm (output-framework): new file.  
8775
8776         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
8777         processing.
8778
8779         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
8780
8781         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
8782         rule.
8783
8784         * configure.in (gui_b): bump mftrace requirement to 1.1.0
8785
8786         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
8787
8788         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
8789
8790 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8791
8792         * scm/framework-svg.scm (dump-page): Implement landscape.
8793
8794 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8795
8796         * lily/main.cc (setup_paths): Add svg to search path.
8797
8798         * scm/output-svg.scm:
8799         * scm/framework-svg.scm: Add pageSet.  Update.
8800         (dump-fonts): New function.
8801         (output-framework): Use it.
8802
8803         * mf/GNUmakefile: 
8804         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
8805
8806 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8807
8808         * tex/lilyponddefs.tex: comment out new ifpdf code.
8809
8810 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8811
8812         * GNUmakefile.in: 
8813         * SConstruct (symlink): Replace afm by otf.
8814
8815         * scm/framework-gnome.scm (gnome-main): Remove invocation of
8816         ly:pango-add-afm-decoder.
8817
8818         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
8819
8820 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8821
8822         * scm/output-ps.scm (new-text): don't access t glyph for getting
8823         space dimension.
8824
8825         * ly/init.ly: warn about \version
8826
8827         * lily/lexer.ll: set version-seen?
8828
8829 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8830
8831         * scm/output-svg.scm (string->entities): Update.
8832
8833 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8834
8835         * lily/main.cc (setup_paths): replace afm by otf for path. 
8836
8837         * lily/pangofc-afm-decoder.cc: remove.
8838
8839         * lily/include/pangofc-afm-decoder.hh: remove.
8840
8841         * scm/framework-scm.scm (output-framework): new file.
8842
8843         * mf/GNUmakefile: remove SAUTER_FONTS.
8844         remove SVG/sodipodi hacks.
8845
8846         * scm/lily-library.scm (stderr): move stderr.
8847
8848         * mf/GNUmakefile: remove AFM support.
8849
8850         * buildscripts/mf-to-table.py (base): remove AFM support.
8851
8852         * lily/open-type-font.cc (design_size): use design_size
8853
8854 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
8855
8856         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
8857
8858 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8859
8860         * mf/GNUmakefile: Generate combined aybabtu info.
8861         * mf/aybabtu.pe.in (i): Load it.
8862
8863         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
8864         are not symbols.
8865
8866         * lily/include/open-type-font.hh (count): New method.
8867
8868         * mf/aybabtu.pe.in: Typo.
8869
8870         * Documentation/user/out/lilypond-internals.nexi (Scheme
8871         functions): Typo.
8872
8873         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
8874
8875 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8876
8877         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
8878         subfonts.
8879
8880         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
8881
8882         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
8883         (tex-font-command-raw): new function.
8884
8885         * lily/include/virtual-font-metric.hh (Module): remove file
8886
8887         * lily/virtual-font-metric.cc (Module): remove file.
8888         
8889
8890         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
8891         (get_indexed_char): read bbox from lily table if present.
8892
8893 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8894
8895         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
8896         aybabtu.subfonts
8897
8898         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
8899         global glyphname. Enables more than 64 glyphs in the OTF.
8900
8901 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8902
8903         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
8904         braces.
8905
8906         * lily/open-type-font.cc (design_size): Use 12 as default for
8907         design size.
8908
8909         * mf/aybabtu.pe.in: New file.  Merge all our braces.
8910
8911         * mf/GNUmakefile: Generate aybabtu.
8912
8913         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
8914
8915 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8916
8917         * scm/lily-library.scm (char->unicode-index): Remove.
8918
8919         * scm/output-gnome.scm (text): Bugfix for plain string input.
8920         Updates.
8921
8922         * scm/output-svg.scm (svg-font): Add weight to font selection.
8923
8924 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8925
8926         * Documentation/topdocs/INSTALL.texi (Top): Point to
8927         buildscripts/out/clean-fonts instead of
8928         buildscripts/clean-fonts.sh. 
8929
8930 2004-12-13  Graham Percival  <gperlist@shaw.ca>
8931
8932         * input/regression/figured-bass.ly: attempt to clarify text.
8933
8934         * Documentation/user/notation.tely: add cindex for tag, attempt to
8935         add figured bass example.
8936
8937         * Documentation/user/changing-defaults: basic editing.
8938
8939 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8940
8941         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
8942
8943         * lily/open-type-font.cc (LY_DEFINE): new function
8944         ly:font-sub-fonts
8945
8946         * lily/include/font-metric.hh (struct Font_metric): new method
8947         sub_fonts()
8948
8949         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
8950         . with - in add.stem.
8951         
8952 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8953
8954         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
8955         and fetaDynamic.
8956
8957         * lily/rest.cc (glyph_name): Change - to . .
8958
8959         * scm/output-gnome.scm (text): Hello world, again.
8960
8961         * scm/output-svg.scm (named-glyph): New function.  Hello world!
8962
8963         * lily/modified-font-metric.cc (index_to_charcode): New method.
8964
8965         * lily/include/font-metric.hh (index_to_charcode): New function.
8966
8967         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
8968         new function.
8969         (ly:font-glyph-to-index): Remove.
8970
8971 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8972
8973         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
8974
8975         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
8976
8977         * lily/open-type-font.cc (load_scheme_table): new function
8978
8979         * lily/dots.cc (print): replace - 
8980
8981         * lily/open-type-font.cc (attachment_point): new function.
8982         (load_table): read LILC table
8983
8984         * buildscripts/gen-bigcheese-scripts.py (Module): new
8985         file. Generate FF scripts.
8986
8987         * mf/feta-din10.mf: idem.
8988
8989         * mf/feta-nummer10.mf: remove mf files.
8990
8991         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
8992
8993 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8994
8995         * lily/lily-guile.cc: Use scm_from_locale_stringn.
8996
8997         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
8998         compatibility.
8999
9000 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9001
9002         * lily/open-type-font.cc (get_indexed_char): scale metrics by
9003         design-size and units_per_EM.
9004
9005         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
9006
9007 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9008
9009         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
9010         does not crash fontforge.
9011
9012         * scm/lily-library.scm (char->unicode-index): Hack to map onto
9013         PUA.
9014
9015 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9016
9017         * scm/framework-ps.scm (ps-embed-cff): new function.
9018
9019         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
9020
9021 2004-12-12  Werner Lemberg  <wl@gnu.org>
9022
9023         * mf/bigcheese.pe.in: Add PUA mapping.
9024         Don't create Type 42 but bare CFF font.
9025
9026 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9027
9028         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
9029         within canvas boundaries.
9030
9031         * mf/merge.pe.in: Set font names, version, license GPL.
9032
9033         * make/substitute.make: Add FONTFORGE.
9034
9035         * config.make.in (FONTFORGE): Add.
9036
9037         * configure.in (gui_b): Use PATH_PROG for fontforge.
9038
9039 2004-12-11  Graham Percival  <gperlist@shaw.ca>
9040
9041         * scm/define-markup-commands.scm: add baseline-skip to info
9042         about \column.
9043
9044 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9045
9046         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
9047
9048         * scm/output-gnome.scm (named-glyph): Use it.
9049
9050         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
9051
9052         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
9053         (upper_string, lower_string, reverse_string): Remove.
9054
9055         * configure.in (fontforge): Reinstate version check.
9056
9057         * ly/engraver-init.ly: Fix clef glyph names.
9058
9059         * lily/time-signature.cc (special_time_signature): Fix fraction
9060         glyph names.
9061
9062 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9063
9064         * mf/merge.pe: new file.
9065
9066         * lily/freetype.cc: new file.
9067
9068         * lily/include/open-type-font.hh (class Open_type_font): new file.
9069
9070         * lily/include/freetype.hh: new file.
9071
9072         * lily/open-type-font.cc: new file.
9073
9074         * lily/all-font-metrics.cc (find_otf): new function.
9075
9076 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9077
9078         * lily/time-signature.cc (special_time_signature): Fix.
9079
9080         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
9081         GTK2 before checking for pango.  Fixes -fgnome.
9082
9083         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
9084         Scheme name.
9085
9086         * scm/define-markup-commands.scm:
9087         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
9088
9089         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
9090
9091         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
9092         date versions.  Fixes configure.
9093         (STEPMAKE_CHECK_VERSION): Support optional actual program version
9094         argument.
9095
9096 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9097
9098         * buildscripts/mf-to-table.py (write_ps_encoding): write real
9099         names in .enc
9100
9101         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
9102
9103 2004-12-09  Graham Percival  <gperlist@shaw.ca>
9104
9105         * Documentation/user/changing-defaults.itely: add info about
9106         make-dynamic-script
9107
9108         * Documentation/user/notation.itely: add link in dynamics to
9109         section about make-dynamic-script.
9110
9111 2004-12-09  Christian hitz  <chhitz@gmx.net>
9112
9113         * lily/lily-guile.cc: change MACOS_X to __APPLE__
9114
9115 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9116
9117         * buildscripts/mf-to-table.py (parse_logfile): use . for
9118         concatting name and group.
9119         (parse_logfile): use M for Minus (negative.)
9120
9121         * lily/include/type-swallow-translator.hh
9122         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
9123
9124         * lily/*.cc: cosmetics around = sign.
9125
9126         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
9127         lyric spacing on the penultimate column.
9128
9129 2004-12-05  Christian Hitz  <chhitz@gmx.net>
9130
9131         * configure.in:
9132         * lily/accidental-placement.cc:
9133         * lily/bar-line.cc:
9134         * lily/beam-concave.cc:
9135         * lily/beam-quanting.cc:
9136         * lily/beam.cc:
9137         * lily/bezier-bow.cc:
9138         * lily/bezier.cc:
9139         * lily/break-align-interface.cc:
9140         * lily/custos.cc:
9141         * lily/dimension-cache.cc:
9142         * lily/dot-column.cc:
9143         * lily/font-metric.cc:
9144         * lily/font-select.cc:
9145         * lily/gourlay-breaking.cc:
9146         * lily/grob-property.cc:
9147         * lily/grob.cc:
9148         * lily/lily-guile.cc:
9149         * lily/line-spanner.cc:
9150         * lily/lookup.cc:
9151         * lily/lyric-extender.cc:
9152         * lily/lyric-hyphen.cc:
9153         * lily/mensural-ligature.cc:
9154         * lily/midi-def.cc:
9155         * lily/misc.cc:
9156         * lily/note-collision.cc:
9157         * lily/note-column.cc:
9158         * lily/note-head.cc:
9159         * lily/paper-outputter.cc:
9160         * lily/percent-repeat-item.cc:
9161         * lily/rest-collision.cc:
9162         * lily/side-position-interface.cc:
9163         * lily/simple-spacer.cc:
9164         * lily/slur-configuration.cc:
9165         * lily/slur-scoring.cc:
9166         * lily/slur.cc:
9167         * lily/spaceable-grob.cc:
9168         * lily/spacing-spanner.cc:
9169         * lily/spanner.cc:
9170         * lily/staff-symbol-referencer.cc:
9171         * lily/stem.cc:
9172         * lily/stencil.cc:
9173         * lily/system-start-delimiter.cc:
9174         * lily/system.cc:
9175         * lily/text-item.cc:
9176         * lily/tie.cc:
9177         * lily/tuplet-bracket.cc:
9178         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
9179         <cmath> beacause isinf/isnan is undefined in <cmath>
9180
9181 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9182
9183         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
9184
9185 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9186
9187         * VERSION: release 2.5.3
9188         
9189 2004-11-29  Arno Waschk <arno@arnowaschk.de>
9190
9191         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
9192
9193 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9194
9195         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
9196
9197         * lily/note-head.cc (internal_print): always try the "s" head if
9198         u/d not found.
9199
9200         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
9201
9202 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9203
9204         * mf/parmesan-heads.mf (overdone_heads): typos.
9205
9206 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9207
9208         * lily/parser.yy (markup): in markups, { .. } without command
9209         before are also flattened, ie \line must be explicitely used.
9210
9211         * Documentation/user/changing-defaults.itely:
9212         * Documentation/user/notation.itely: 
9213         * input/wilhelmus.ly: 
9214         * input/regression/instrument-name-markup.ly: 
9215         * input/regression/markup-score.ly: 
9216         * input/regression/new-markup-scheme.ly: 
9217         * input/regression/new-markup-syntax.ly: 
9218         * input/test/coriolan-margin.ly: use \line in markups where
9219         appropriate
9220         
9221 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9222
9223         * scm/new-markup.scm (map-markup-command-list): helper function
9224         used in parser.yy to map markup commands on a markup list.
9225
9226         * lily/parser.yy: get rid off < > in markups by treating { } as
9227         real lists.
9228
9229         * lily/lexer.ll: remove < > from markup lexer mode.
9230
9231         * scripts/convert-ly.py (conv): add rule for converting 
9232         \markup < > to \markup { }
9233
9234         * ly/titling-init.ly: 
9235         * input/test/coriolan-margin.ly: 
9236         * input/regression/new-markup-syntax.ly: 
9237         * input/regression/new-markup-scheme.ly: 
9238         * input/regression/multi-measure-rest-text.ly: 
9239         * input/regression/markup-stack.ly: 
9240         * input/regression/markup-score.ly: 
9241         * input/regression/instrument-name-markup.ly: 
9242         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
9243         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
9244         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
9245         * input/wilhelmus.ly: 
9246         * Documentation/user/notation.itely: 
9247         * Documentation/user/music-glossary.tely: 
9248         * Documentation/user/changing-defaults.itely: change < > to { } in
9249         markups
9250
9251 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9252
9253         * lily/accidental-placement.cc (position_accidentals): shortcut if
9254         no accidentals to place.
9255
9256 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9257
9258         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
9259         typo s/ly:dimension ?/ly:dimension?/
9260
9261         * input/regression/lily-in-scheme.ly: 
9262         * input/regression/music-function.ly: 
9263         * ly/spanners-init.ly (assertBeamSlope): 
9264         * scm/music-functions.scm (def-grace-function): add the paper
9265         argument to music function definitions.
9266
9267 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9268
9269         * lily/moment.cc (LY_DEFINE):
9270         ly:moment-main-{denominator,numberator}, new function.
9271
9272         * lily/score-engraver.cc (typeset_all): assign to column on basis
9273         of axis-group-parent-X setting.
9274
9275         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
9276         add_element() on basis of axis-group-parent-Y setting.
9277
9278         * lily/grob.cc: add axis-group-parent-{XY} properties.
9279
9280         * input/regression/spacing-stick-out.ly: new file.
9281
9282         * lily/simple-spacer.cc (add_columns): use binary search for
9283         setting column rods. Changes O(n^2) to O(n log(n)) for
9284         constructing spacing problem from columns.
9285         (add_columns): read allow-outside-line to make sure no texts stick
9286         out.
9287         (solve): Simple_spacer::is_active() only determines
9288         satisfies_constraints_ for non-ragged typesetting.
9289
9290         * lily/simultaneous-music.cc (to_relative_octave): only set
9291         old_relative_used if return pitch actually changed.
9292
9293         * scm/define-context-properties.scm
9294         (all-user-translation-properties): change to match implementation.
9295
9296         * python/lilylib.py: Replace re.match by re.search and adds "-c
9297         showpage" to the gs command line (Johannes Schindelin)
9298
9299         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
9300         before processing. Prevents crash when inf is in the extent.
9301
9302         * scm/define-markup-commands.scm (note-by-number): add "s" to
9303         "noteheads-" glyphname.
9304  
9305         * lily/parser.yy (Generic_prefix_music): supply parser argument to
9306         music function as well.
9307         
9308 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9309
9310         * VERSION: release 2.5.2
9311
9312         * Documentation/user/changing-defaults.itely (Creating titles):
9313         add breakbefore variable.
9314
9315         * lily/paper-book.cc (set_system_penalty): new function. Set
9316         penalty_ based on breakBefore setting
9317
9318         * lily/context-specced-music-iterator.cc (construct_children):
9319         interpret special context id $uniqueContextId 
9320
9321         * lily/context.cc (create_unique_context): new method. Move
9322         creation of unique (\new) contexts into interpreting phase. This
9323         makes
9324
9325           foo= \new Staff ..
9326           << \foo \foo >>
9327
9328         produce 2 staves.
9329         
9330
9331         * scm/define-music-properties.scm (all-music-properties): add
9332         quoted-voice-direction
9333
9334         * ly/music-functions-init.ly: killCues function.
9335
9336         * scm/music-functions.scm (cue-substitute): move creation of voice
9337         contexts further to the back. 
9338
9339 2004-11-25  Werner Lemberg  <wl@gnu.org>
9340
9341         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
9342         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
9343
9344 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
9345
9346         * buildscripts/guile-gnome.sh: Fixed typo.
9347
9348 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9349
9350         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
9351
9352         * scripts/abc2ly.py (dump_slyrics): add ord(). 
9353
9354         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
9355         to regular engraver. 
9356
9357 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9358
9359         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
9360
9361 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9362
9363         * scm/define-markup-commands.scm (fill-line): Typo.
9364
9365         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
9366         and newer.
9367
9368 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
9369
9370         * ly/dynamic-scripts-init.ly: Fixed typo.
9371
9372 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9373
9374         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
9375         note-head, to have different attachment points for up and down.
9376
9377         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
9378
9379         * mf/feta-generic.mf (else): remove solfa.
9380
9381         * mf/feta-bolletjes.mf (tishape): remove unicode test.
9382
9383         * scm/define-context-properties.scm
9384         (all-user-translation-properties): add shapeNoteStyles property.
9385
9386         * lily/shape-note-heads-engraver.cc (process_music): new file.
9387
9388         * lily/event.cc (transpose): call Event::transpose() for
9389         transposing the tonic.
9390
9391 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9392
9393         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
9394         Unicode/OpenType and AFM.
9395
9396         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
9397
9398 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9399
9400         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
9401
9402         * lily/context.cc (Context): unprotect key from ctor.
9403
9404         * scm/stencil.scm (stack-lines): return empty-stencil if argument
9405         is '()
9406         (stack-stencils): idem.
9407
9408         * Documentation/user/changing-defaults.itely (Creating titles):
9409         document new title layout options.
9410
9411         * lily/parser.yy (lilypond_header_body): copy previous
9412         $globalheader if present.
9413
9414         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
9415         ly:module-copy
9416         
9417         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
9418
9419         * scm/titling.scm: remove old titling functions
9420
9421         * lily/stencil.cc (translate): remove absolute dimension.
9422
9423         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
9424         via markup.
9425
9426         * scm/page-layout.scm (marked-up-headfoot): create header/footer
9427         field from user-supplied markup
9428
9429         * scm/define-markup-commands.scm (on-the-fly): new markup
9430         command. Enter SCM markup procedure directly in Scheme.
9431         (fromproperty): new markup command. Read markup from props argument.
9432
9433         * scm/titling.scm (marked-up-title): create title via
9434         user-specified markup. 
9435
9436         * scm/define-markup-commands.scm (column): remove empty stencils
9437         from column.
9438
9439         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
9440         not have side-effect of creating variable stub.
9441
9442         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
9443
9444 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
9445
9446         * scm/encoding.scm (coding-alist): 
9447         * scm/font.scm (add-ec-fonts):
9448         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
9449         Extended-TeX-Font-Encoding---Latin.
9450
9451         * lily/side-position-interface.cc (general_side_position): Add
9452         actual offset to error message (avoid constant error messages).
9453
9454         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
9455         block.
9456
9457         * lily/font-select.cc (select_encoded_font)
9458         (get_font_by_mag_step, get_font_by_design_size): 
9459         * lily/modified-font-metric.cc (Modified_font_metric): 
9460         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
9461
9462         * scm/encoding.scm (coding-alist): Add fetaDynamic.
9463         (read-encoding-file): Bugfix: do not require space after bracket.
9464
9465         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
9466         these do not exist.
9467
9468 2004-11-20  Graham Percival  <gperlist@shaw.ca>
9469
9470         * Documentation/user/notation.itely: added info about typesetting
9471         boxed bar numbers.
9472
9473 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9474
9475         * flower/interval.cc (T_to_string): gcc4 fixes.
9476
9477         * scm/define-markup-commands.scm (fill-line): use
9478         stack-stencils. This fixes problems with putting already centered
9479         stencils in a line.
9480
9481         * VERSION: release 2.5.1
9482
9483         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
9484
9485 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9486
9487         * input/example-[1-3].ly: simplify.
9488
9489         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
9490
9491         * scm/output-ps.scm (new-text): new function. Use glyphshow to
9492         show glyphs.
9493
9494         * scm/encoding.scm (decode-byte-string): new function.
9495
9496         * scripts/convert-ly.py (conv): add warning about
9497         set-global-staff-size.
9498
9499         * Doxyfile: add. 
9500
9501         * scripts/convert-ly.py (conv): add raggedlastbottom rule
9502         (conv): warn for TextSpanner split.
9503         (conv): warn for textheight.
9504
9505 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9506
9507         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
9508         building the documentation, info with images are installed.
9509         (final-install): Fix description.  Mention sourcing of login
9510         scripts (instead of running).
9511
9512 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9513
9514         * Debian lmodern support.  Note that LilyPond will issue warnings
9515         
9516             no such encoding: "FontSpecific"
9517
9518           The font selection mechanism wants to get the encoding from the
9519           font itself, but the idea of lmodern is that it is usable with
9520           different encodings, ie, Lily should get the encoding from the
9521           font tree, rather than the font itself.  This would require some
9522           more work.
9523         
9524         * configure.in: Test for and accept lmodern if EC fonts not found.
9525
9526         * scm/framework-tex.scm (font-load-command): TeX font name
9527         mangling for latin1 encoded cork-lm fonts.
9528         (convert-to-ps): Load lm.map if available.
9529
9530         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
9531         available.
9532
9533         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
9534
9535         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
9536         available.
9537
9538         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
9539         path for absolute file name, that is silly.
9540
9541         * lily/score-engraver.cc (initialize): 
9542
9543         * Documentation/user/GNUmakefile (local-install-info): Invoke
9544         install-info --remove first.
9545
9546         * #include cleanup (Andreas Scherer).
9547
9548 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
9549
9550         * input/test/script-abbreviations.ly: fix typos.
9551
9552 2004-11-17  Werner Lemberg  <wl@gnu.org>
9553
9554         * python/lilylib.py (options_help_str): Support pretty-printing of
9555         newlines in fourth element of option description.
9556
9557         * scripts/lilypond-book.py (option_definitions): Use new lilylib
9558         feature.
9559         Sort options.
9560
9561         * Documentation/user/lilypond-book.itely: Finish update.
9562
9563 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9564
9565         * Documentation/user/macros.itexi: Add comment about \command.
9566
9567         * Documentation/user/lilypond.tely:
9568         * Documentation/user/lilypond-book.itely: Fix names of lilypond
9569         and lilypond-book nodes, so that `info lilypond' visits the manual
9570         at top level, and `info lilypond-book' visits the lilypond-book
9571         section.
9572
9573         * Documentation/user/GNUmakefile (local-install-info): Fix rules
9574         and packager messages.
9575
9576         * lily/pangofc-afm-decoder.cc: Update test.
9577
9578 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9579
9580         * scm/lily-library.scm (char->unicode-index): New function.
9581
9582         * scm/output-gnome.scm: 
9583         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
9584
9585         * Proper naming of file name throughout; s/filename/file[-_]name/.
9586
9587         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
9588
9589         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
9590
9591 2004-11-16  Werner Lemberg  <wl@gnu.org>
9592
9593         * scripts/lilypond-book.py: The Lord has commanded me to use only
9594         tabs for indentation.  Your humble servant obeys.
9595
9596 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9597
9598         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
9599         including font, if LilyPond-feta font is only feta font in path.
9600
9601         * scm/output-gnome.scm (text): Revert to file name of font if font
9602         has no name.  Fixes ec font selection.
9603         (char): Bugfix: do not utf8 twice.  Fixes clefs.
9604
9605         * scm/framework-svg.scm:
9606         * scm/output-svg.scm: New file.  TODO: figure out how to
9607         do character by index in font.
9608
9609         * scm/output-sodipodi.scm: Remove.
9610
9611         * scm/output-ps.scm (stem): Remove.
9612
9613 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
9614
9615         * scm/output-gnome.scm (beam): New function.
9616         (slur): Round corners.
9617         (round-filled-box): Round corners.
9618
9619 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9620
9621         * scm/output-gnome.scm (beam): add function.
9622         (draw-line): new routine.
9623         (dashed-line): stub; call draw-line
9624         (polygon): new routine.
9625
9626 2004-11-15  Werner Lemberg  <wl@gnu.org>
9627
9628         * Documentation/user/lilypond-book.itely: Revise section on
9629         lilypond-book options.
9630         Other minor fixes.
9631
9632         * scripts/lilypond-book.py: Change indentation to 4.
9633         Minor formatting.
9634
9635 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9636
9637         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
9638         grobs that have tweaks specced.
9639         
9640 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
9641
9642         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
9643
9644 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9645
9646         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
9647         actual char #, not 0 based index.
9648
9649         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
9650
9651         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
9652         Warning: do make -C mf clean.
9653
9654         * lily/context-property.cc: Compile fix.
9655
9656         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
9657         Grok ec-fonts, braces and dynamics.
9658
9659         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
9660
9661 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9662
9663         * lily/include/tweak-registration.hh: new file.
9664
9665         * lily/tweak-registration.cc: new file.
9666
9667         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
9668         saving tweaks.
9669
9670         * scm/output-gnome.scm (text): comment dribble.
9671
9672 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9673
9674         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
9675
9676         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
9677         path-def before using.  Fixes muchtomany slurs in wrong places
9678         bug.
9679
9680 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9681
9682         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
9683
9684         * lily/include/object-key-undumper.hh (Module): new file.
9685
9686         * lily/object-key-undumper.cc (Module): New file. Deserialize
9687         keys. SCM bindings
9688
9689         * lily/object-key-dumper.cc (Object_key_dumper): idem.
9690         Provide SCM bindings.
9691
9692         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
9693         new file. Serialize object keys.
9694         
9695         * lily/object-key.cc (dump): new function.
9696         (as_scheme): new virtual function
9697         (undump): new function
9698         (undumpers): new table.
9699
9700         * lily/include/global-context.hh (Context): take \score key upon init.
9701
9702         * lily/object-key-dumper.cc (serialize_key): new file.
9703
9704         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
9705
9706         * lily/lily-lexer.cc: remove \quote.
9707
9708         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
9709
9710         * lily/context.cc (Context): take key argument in ctor.
9711         (create_context): new function
9712
9713         * lily/grob.cc (Grob): take key argument in ctor.  
9714
9715         * lily/lilypond-key.cc (do_compare): new file.
9716
9717         * lily/object-key.cc (Object_key): new file.
9718
9719         * lily/include/object-key.hh (class Object_key): new file.
9720
9721         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
9722
9723 2004-11-13  Graham Percival  <gperlist@shaw.ca>
9724
9725         * Documentation/user/lilypond-book.itely: add small warning about
9726         noindent default in lilypond-book.
9727
9728         * Documentation/user/converters.itely: add examples for convert-ly.
9729
9730         * Documentation/user/examples.itely: change version string in templates
9731         to 2.4.0.
9732
9733 2004-11-12  Karl Hammar  <karl@aspodata.se>
9734
9735         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
9736         cmdline, use xargs instead (backportme)
9737
9738 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
9739         
9740         * Documentation/user/: Numerous fixes in the user manual.
9741
9742 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9743
9744         * lily/parser.yy (re_rhythmed_music): search music expression for
9745         context-id, surround by \new Voice if not found. Fixes:
9746         addlyrics-second-staff.ly
9747
9748         * VERSION: 2.5.0 released.
9749         
9750 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9751
9752         * Documentation/index.html.in: Fix url to one big page.  (backportme)
9753
9754         * Documentation/user/GNUmakefile: Separate rules for split and
9755         unsplit html documents.  Remove perl massaging.  (backportme)
9756
9757 2004-11-11  Graham Percival  <gperlist@shaw.ca>
9758
9759         * Documentation/user/lilypond-book.itely: add short warning about
9760         \lilypond{} in LaTeX docs.
9761
9762 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9763
9764         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
9765         found.  (backportme)
9766
9767         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
9768         version requirement.  (backportme)
9769
9770         * configure.in: Be explicit about old versions of
9771         ec-fonts-mtraced.  (backportme)
9772
9773         * lily/context-selector.cc (set_tweaks): New function.
9774         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
9775         web with -DTWEAK.
9776
9777         * Documentation/user/introduction.itely (Automated engraving):
9778         Remove fragment option.  Fixes web.
9779
9780         * lily/context-property.cc (make_item_from_properties):
9781         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
9782         #ifdef.
9783
9784         * scm/define-context-properties.scm
9785         (all-internal-translation-properties): Add tweakRank and tweakCount.
9786
9787         * lily/grob.cc: 
9788         * scm/define-grob-properties.scm (all-internal-grob-properties):
9789         Add tweak-rank and tweak-count.
9790
9791 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9792
9793         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
9794         New function.
9795         (text): Use them.
9796
9797         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
9798         animated/opaque grob dragging tweaks.
9799
9800         * buildscripts/guile-gnome.sh: Update.
9801
9802 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9803
9804         * scm/define-grobs.scm (all-grob-descriptions): Added
9805         line-interface to the LigatureBracket object.
9806
9807 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9808
9809         * scm/framework-gnome.scm (item-event): Support non-animated mouse
9810         dragging tweaks.
9811
9812         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
9813
9814         * lily/context-selector.cc (store_context): New function.
9815
9816         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
9817         (store_grob): New function.
9818         (identify_grob): Add Moment parameter.
9819
9820         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
9821         exists.
9822
9823         * scm/framework-gnome.scm (save-tweaks): Write as alist.
9824
9825 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9826
9827         * scm/framework-gnome.scm (item-event): Print grob id.
9828         (save-tweaks): New function.
9829         (tweak): New funtion.
9830         (item-event): Use it, bound to arrow keys.
9831
9832         * lily/context-property.cc (make_item_from_properties): Register grob.
9833         * lily/context.cc (add_context): Register context.
9834
9835         * lily/include/context-selector.hh:
9836         * lily/include/grob-selector.hh:
9837         * lily/context-selector.cc:
9838         * lily/grob-selector.cc: New file.
9839
9840 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9841
9842         * lily/slur.cc: add 'positions to interface
9843
9844         * lily/main.cc: reinstate PS as standard output format. 
9845
9846         * scm/framework-tex.scm (output-preview-framework): print systems
9847         up to first non title system.
9848
9849         * lily/grace-engraver.cc (start_translation_timestep): split
9850         scm_cadddr
9851         
9852 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9853
9854         * lily/quote-iterator.cc (Module): remove old quote-iterator
9855
9856         * scm/define-music-types.scm (music-descriptions): move
9857         NewQuoteMusic over QuoteMusic
9858
9859         * Documentation/user/notation.itely (Formatting cue notes): use
9860         \cueDuring.
9861
9862         * lily/new-quote-iterator.cc (quote_ok): new function.
9863
9864         * input/regression/quote-cue-during.ly: new file.
9865
9866         * input/regression/quote-grace.ly: new file.
9867
9868         * scm/define-context-properties.scm (Module): change definition of
9869         graceSettings
9870
9871         * lily/context-property.cc (Module): rename from
9872         translator-property.cc
9873
9874         * lily/context.cc (context_name_symbol): new function
9875
9876         * lily/grace-engraver.cc: new file. Set properties for grobs based
9877         on the grace-ness of now_moment().
9878
9879         * scm/music-functions.scm (add-grace-property): use list
9880         iso. vector for graceSettings
9881         remove set-{start,stop}-grace-properties. 
9882
9883         * lily/new-quote-iterator.cc (construct_children): set
9884         quote_outlet_ if no quoted-context-{id,type} specified.
9885
9886         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
9887
9888         * lily/parser.yy (command_element): remove \quote.
9889
9890         * ly/music-functions-init.ly (location): add quoteDuring music
9891         function. 
9892
9893         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
9894         optional semicolon. (backportme)
9895
9896 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9897
9898         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
9899         need to link to GUILE et al.
9900
9901 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9902
9903         * scm/define-music-properties.scm (all-music-properties): add
9904         quoted-context-type, quoted-context-id.
9905
9906         * scm/lily.scm (type-check-list): new function.
9907         
9908         * scm/lily-library.scm: new file. Generic library routines.
9909
9910         * lily/parser.yy (Generic_prefix_music): move typechecking out of
9911         parser.
9912
9913         * ly/music-functions-init.ly: add quoteDuring function.
9914
9915         * lily/include/music-iterator.hh (class Music_iterator): rename
9916         set_translator -> set_context
9917
9918         * lily/parser.yy (Generic_prefix_music_scm): add
9919         MUSIC_FUNCTION_SCM_SCM_MUSIC
9920
9921         * scm/lily.scm (sanitize-command-option): new function. (backportme)
9922
9923         * scm/framework-tex.scm (header): sanitize TeX paper size.
9924         (backportme)
9925
9926 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9927
9928         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
9929
9930         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
9931
9932         * scm/framework-tex.scm (font-load-command): Use T1 if no
9933         font-encoding set.  (backportme)
9934
9935         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
9936         exists before converting.  (backportme)
9937
9938         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
9939         exists before converting.  (backportme)
9940         (convert-to-ps): Remove .ps file if it exists before
9941         converting.  (backportme)
9942
9943         * lily/lexer.ll: Remove extra progress newline, use present tense.
9944
9945         * scm/paper.scm (paper-alist): public.
9946         * scm/framework-tex.scm (convert-to-ps):
9947         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
9948         command line.
9949
9950 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9951
9952         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
9953
9954         * lily/recording-group-engraver.cc (derived_mark): mark
9955         now_events_. (backportme)
9956
9957 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9958
9959         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
9960
9961         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
9962         invoking latex. (backportme.)
9963
9964         * lily/stem.cc (off_callback): center stems for all rest stems.
9965
9966 2004-11-05  Werner Lemberg  <wl@gnu.org>
9967
9968         * Documentation/user/lilypond.tely: Add more guidelines for writing
9969         lilypond texinfo documents.
9970
9971 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
9972
9973         * Documentation/index.html.in: remove <hr>.
9974
9975         * THANKS: change 2.3 to 2.4.
9976
9977 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
9978
9979         * scm/output-gnome.scm: More fontconfig comment.
9980
9981 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
9982
9983         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
9984         <package> directory in $(builddir)/share according with
9985         PACKAGE_NAME defined in the VERSION file.
9986
9987 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9988
9989         * lily/beam.cc (rest_collision_callback): use local beam
9990         multiplicity.
9991
9992         * input/regression/stem-stemlet.ly: new file.
9993
9994         * lily/stem.cc (add_head): store rests as well.
9995
9996         * scm/define-grob-properties.scm (all-user-grob-properties): add
9997         stemlet-length
9998
9999         * lily/stem.cc: store rests as well.
10000         
10001         * input/regression/new-slur.ly: mention forcing.
10002
10003 2004-11-04  Werner Lemberg  <wl@gnu.org>
10004
10005         * Documentation/user/*: A new round of layout fixes and document
10006         structure cleanup.
10007
10008 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
10009
10010         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
10011
10012 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
10013
10014         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
10015
10016 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10017
10018         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
10019
10020         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
10021
10022         * lily/main.cc (main): Invoke identify.
10023
10024         * scm/lily.scm (postscript->pdf): Remove progress newline.
10025         Write progress to stderr.
10026
10027         * lily/paper-book.cc (output): Remove progress newline.
10028
10029         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
10030         gettext on user messages, and remove whitespace.
10031
10032         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
10033
10034         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
10035         argv[0] (Thomas Scharkowski).
10036
10037         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
10038         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
10039         for ec-fonts-mtraced.
10040
10041         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
10042         --srcdir build (Bertalan).
10043
10044         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
10045         headers and library too (Laura Conrad).
10046
10047         * Documentation/topdocs/INSTALL.texi (Top): Mention development
10048         package for guile too (Laura Conrad).
10049
10050         * lily/main.cc (usage): Typo.
10051
10052 2004-11-02  Werner Lemberg  <wl@gnu.org>
10053
10054         * Documentation/user/notation.ly: More fixes to improve appearance.
10055
10056         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
10057         better output for multicolumn tables.
10058
10059 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10060
10061         * lily/main.cc (dir_info): Fixed typo in the printouts.
10062
10063 2004-11-01  Werner Lemberg  <wl@gnu.org>
10064
10065         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
10066         of output.
10067         Set `per_line' to 2; replace hard-coded value with it.
10068
10069         * Documentation/user/*: Many fixes to improve appearance of
10070         printed manual.
10071
10072 2004-11-01  Werner Lemberg  <wl@gnu.org>
10073
10074         * Documentation/user/changing-defaults.itely,
10075         Documentation/user/notation.ly,
10076         Documentation/user/programming-interface.itely: Use @/.
10077         Fix formatting of some lilypond snippets and tables.
10078
10079         * scripts/lilypond-book.py (compose_ly): Provide useful default
10080         for LINEWIDTH in `override'.
10081
10082 2004-10-31  Graham Percival  <gperlist@shaw.ca>
10083
10084         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
10085
10086 2004-10-31  Werner Lemberg  <wl@gnu.org>
10087
10088         Resetting @exampleindent to `5' gives ugly results with texinfo's
10089         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
10090         (if not quoting) to change @exampleindent only locally.
10091
10092         * scripts/lilypond-book.py (NOQUOTE): New variable.
10093         (output) [LATEX]: Remove AFTER and BEFORE.
10094         [TEXINFO]: Remove AFTER and BEFORE.
10095         Fix QUOTE and VERBATIM pattern.
10096         Add NOQUOTE pattern.
10097         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
10098         and BEFORE.
10099         [output_texinfo]: Use NOQUOTE.
10100
10101 2004-10-31  Graham Percival  <gperlist@shaw.ca>
10102
10103         * Documentation/user/changing-defaults.itely: clarify paper
10104         size commands with correct info.
10105
10106         * Documentation/user/lilypond-book.itely: add more docs for
10107         filename extensions.
10108
10109 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10110
10111         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
10112         (PATCH_LEVEL): start 2.5.0.
10113
10114 #Local variables:
10115 #coding: utf-8
10116 #End:
10117