]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
80515e582902e963f9513a6b202677762935c307
[lilypond.git] / ChangeLog
1 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2
3         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4         ambitus lines.
5
6         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
7
8 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
9
10         * input/regression/: upgraded syntax for some files.
11
12         * THANKS: Add bughunters.
13
14 2006-02-22  Graham Percival  <gpermus@gmail.com>
15
16         * Documentation/user/ invoking.itely, advanced-notation.itely,
17         global.itely: long-awaited "let's make chapter 10 not suck"
18         update.  Rearrange chapter 10; now called "global issues",
19         addresses file structure, etc.  Some info from other files
20         moved into global.itely.
21
22 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
23
24         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
25         catch trill-span-event notes.
26
27         * Documentation/user/examples.itely (Ancient notation templates): typo.
28         (Jazz combo): typo.
29
30         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
31
32         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
33
34         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
35
36         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
37
38         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
39         froum Laissez_vibrer_engraver.
40
41         * ly/declarations-init.ly (repeatTie): add \repeatTie
42
43         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
44
45         * scm/define-grob-properties.scm (all-user-grob-properties): add
46         head-direction property.
47
48         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
49         from_lv_ties. Take head direction argument.
50
51         * lily/semi-tie-column.cc: rename from
52         laissez-vibrer-tie-column.cc. Rename class too.
53
54         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
55         class too.
56
57         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
58
59         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
60         0 case.
61         (find_breaks): idem.
62
63 2006-02-21  Graham Percival  <gpermus@gmail.com>
64
65         * Documentation/user/advanced-notation.itely: fixed make-moment]
66         example.
67
68         * Documentation/user/basic-notation.itely: more clarification to
69         transpose.
70
71 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
72
73         * lily/include/constrained-breaking.hh (class
74         Constrained_breaking): new file.
75
76         * lily/constrained-breaking.cc (resize): new file.
77
78         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
79
80         * Documentation/user/advanced-notation.itely (Clusters): insert
81         end ignore too.
82
83         * lily/tie-column.cc (calc_positioning_done): support for
84         tie-score debugging
85
86         * lily/tie-formatting-problem.cc
87         (generate_extremal_tie_variations): factor out.
88         (score_ties_configuration): annotate all tie 
89         (print_ties_configuration): new routine.
90         (generate_configuration): nudge extremal ties outside of the head
91         Y extents.
92         (score_ties_configuration): oops. convert to staff-space before
93         determining position symmetry.
94
95 2006-02-20  Graham Percival  <gpermus@gmail.com>
96
97         * Documentation/user/*-notation.itely: misc minor editing,
98         shifting doc sections around.
99
100         * Documentation/user/*-notation-itely, global.itely,
101         changing-defaults.itely: added new stuff from NEWS.
102
103 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
104
105         * po/fi.po: update.
106
107 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
108
109         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
110         lilypond --verbose for lp-book.
111
112         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
113         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
114
115         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
116         $(buildscript-dir) iso. absolute depth.
117
118         * buildscripts/genicon.py (dir): thinko.
119
120         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
121
122 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
123
124         * scm/output-lib.scm: swap darkcyan/darkyellow
125
126         * THANKS: Add bughunters.
127
128 2006-02-19  Graham Percival  <gpermus@gmail.com>
129
130         * Documentation/user/programming-interfaces.itely: fixed example.
131
132         * Documentation/user/instrument-notation.itely: fix @{ @}.
133
134         * scm/script.scm: add avoid-slur for \open.
135
136 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
137
138         * lily/tie-formatting-problem.cc (score_configuration): use
139         sliding score for min-length. 
140
141         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
142         spaghetti for icons.
143
144         * buildscripts/genicon.py (program_name): new file.
145
146         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
147         in outline too.  
148         (generate_configuration): for small ties, also look for collisions
149         at Y + DIR*h + DELTA_Y.
150         (get_variations): consider variation for dot positions too.
151
152         * lily/side-position-interface.cc (aligned_side): take abs for
153         quantized rounded position. Fixes tenuto below staff.
154
155         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
156         markers when necessary.
157
158         * lily/program-option.cc (internal_set_option): add
159         strict_infinity_checking option.
160
161         * scm/output-lib.scm (cyan): swap yellow and cyan.
162
163 2006-02-19  Graham Percival  <gpermus@gmail.com>
164
165         * darwin.patch: trivial linenumber update.
166
167         * Documentation/user/ {various}: `\context foo = named' changed
168         to `\new foo = "name"' in docs.
169
170 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
171
172         * scm/stencil.scm (annotate-y-interval): use it.
173
174         * scm/lily-library.scm (interval-sane?): new function.
175
176         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
177         tfm_checksum stuff.
178
179         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
180         common refpoint.
181
182         * flower/include/std-vector.hh (iterof): add iterof macro.
183
184         * lily/enclosing-bracket.cc (width): new function.
185
186         * lily/align-interface.cc (align_elements_to_extents): reinstate
187         warning.
188
189 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
190
191         * Documentation/index.html.in: fix spelling: thankyous.
192
193 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
194
195         * lily/lyric-hyphen.cc: typo.
196
197 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
198
199         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
200         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
201         builds don't work. 
202
203         * VERSION: release 2.7.35
204
205         * lily/beam.cc (get_default_dir): oops. Take abs () for
206         extremes[DOWN].
207         (get_default_dir): use extreme position criterion only in absence
208         of forced stem directions.
209
210         * VERSION (PATCH_LEVEL): bump VERSION.
211
212         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
213         dependencies. Necessary for -jX builds.  
214
215 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
216
217         * lily/relocate.cc (setup_paths): Yet another const fix.
218
219 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
220
221         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
222
223         * lily/relocate.cc (setup_paths): oops.
224
225 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
226
227         * Documentation/index.html.in: order links: html before PDF.
228
229 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
230
231         * lily/tie-column-format.cc (Module): remove.
232
233         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
234
235         * lily/text-spanner.cc (print): idem.
236
237         * lily/dynamic-text-spanner.cc (print): only print line if longer
238         than dash-period.
239
240         * lily/auto-change-iterator.cc (change_to): formatting.
241
242         * lily/beam.cc (get_default_dir): take extreme note head as input
243         for stem direction.
244
245         * lily/tie.cc (get_default_dir): only look directions for visible
246         stems. 
247
248         * lily/side-position-interface.cc (aligned_side): oops. Don't
249         mutiply with direction. This fixes quantized (staccato, tenuto)
250         scripts below notes.
251
252         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
253         direction. Fixes c-lyrics-center-align.ly
254
255 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
256
257         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
258         constructor.
259
260         * lily/std-string.cc:
261         * lily/include/std-vector.hh (split_string): Move and rename from
262         lily/include/misc.hh, lily/misc.cc.  Update callers.
263
264 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
265
266         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
267
268 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
269
270         * flower/test-file.cc: New file.
271
272         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
273         libraries.
274
275         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
276
277 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
278
279         * flower/include/file-storage.hh: remove file.
280
281         * lily/include/midi-item.hh (class Midi_track): idem.
282
283         * lily/include/source.hh (class Sources): idem.
284
285         * lily/include/performance.hh (class Performance): use vector
286         iso. Cons<>
287
288         * flower/include/cons.hh (class Cons): remove file.
289
290         * flower/include/flower-proto.hh: remove template cruft.
291
292         * lily/include/font-metric.hh: use size_t not vsize for indices.
293
294         * flower/include/flower-proto.hh (Module): remove std-vector.hh
295         from proto.
296
297         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
298
299         * lily/include/paper-book.hh (class Paper_book):
300         make get_system_specs() public.
301
302         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
303         the force=10000 case if we don't have a current-best. 
304
305         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
306         vsize 
307
308         * flower/include/flower-proto.hh: remove outdated templates.
309
310         * scm/page.scm: use annotate-spacing
311
312 2006-02-15  Graham Percival  <gpermus@gmail.com>
313
314         * scm/translation-functions.scm: circle patch from Erlend, thanks!
315
316         * THANKS: moved Erlend Aasland to contributors.
317
318 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
319
320         * config.hh.in: remove HAVE_PANGO_16
321
322         * lily/tuplet-bracket.cc (calc_positions): multiply with
323         staff-space for beam case. This fixes tuplets+beams on scaled
324         staves.
325
326         * config.hh.in: remove all Kpathsea related defines.
327
328         * lily/dot-column.cc (side_position): reach stem via dots->
329         head->stem. Inspect all stems for dot collisions. 
330
331         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
332         stem handling.
333
334         * lily/bar-number-engraver.cc (process_music): document function
335         of whichBar.
336
337         * lily/score.cc (default_rendering): add pscore, not systems
338         themselves.
339
340         * lily/paper-book.cc (get_system_specs): separate generation of
341         titles and systems.
342
343         * flower/include/std-vector.hh: don't include config.hh
344
345 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
346
347         * flower/include/std-vector.hh: Better wrapper compatibility with
348         std::vector.
349
350         * flower/include/flower-proto.hh: Remove cheap forward declaration
351         attempts.
352
353         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
354
355 2006-02-14  Graham Percival  <gpermus@gmail.com>
356
357         * Documentation/user/invoking.itely: add warning about command line.
358
359 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
360
361         * lily/include/lily-proto.hh: add Prob, rm Page.
362
363         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
364
365         * VERSION: release 2.7.34
366
367         * lily/relocate.cc (framework_relocation): show canary if
368         GHOSTSCRIPT_VERSION undefined.
369
370         * GNUmakefile.in: remove $(VERSION) symlink.
371
372         * lily/relocate.cc (setup_paths): add + 
373
374 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
375
376         * Documentation/index.html.in: specify sizes for all big HTML pages.
377
378 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
379
380         * config.hh.in: remove @FRAMEWORKDIR@
381
382         * lily/system-start-text.cc (get_stencil): new file: separate out
383         system-start-delimiter text support.
384
385         * input/**ly: replace \context with \new where appropriate.
386         
387         * THANKS: add Don.
388
389         * lily/slur-scoring.cc (get_base_attachments): use
390         robust_relative_extent. This fixes problems with empty paper-columns. 
391
392 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
393
394         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
395
396         * scm/define-music-properties.scm (all-music-properties):
397         create-new property.
398
399         * lily/context-specced-music-iterator.cc (construct_children):
400         inspect 'create-new property iso. magical $uniqueContextId context
401         id.
402
403         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
404
405         * lily/context-key-manager.cc (Module): new file. Encapsulate
406         object key generation.
407
408         * lily/include/context-key-manager.hh (Module): new file.
409
410 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
411
412         * scm/define-grobs.scm (all-grob-descriptions): center instrument
413         names vertically
414
415         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
416         options.
417         (reloc_b): excise --enable-framework-dir
418
419         * lily/relocate.cc (framework_relocation): use getenv
420         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
421
422 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
423
424         * flower/include/std-string.hh: 
425         * flower/include/std-vector.hh: Finish std:: conversion; move
426         flower extensions from std:: namespace.  Update users.
427
428         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
429         their expansion to vector<*>.  Update users.
430
431 2006-02-10  Graham Percival  <gpermus@gmail.com>
432
433         * Documentation/user/invoking.itely: add example to File structure.
434
435         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
436         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
437
438 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
439
440         * ly/paper-defaults.ly: typo.
441
442         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
443         set_parent() for parentheses. This will make it show up in bbox
444         calculations.
445
446         * scm/output-lib.scm (parentheses-item::print): rewrite, using
447         ly:grob-common* functions.
448
449         * lily/grob-scheme.cc (LY_DEFINE):
450         ly:grob-common-refpoint-of-array: new function 
451         ly:grob-common-refpoint: new function 
452         ly:grob-relative-coordinate: new function 
453
454         * lily/instrument-name-engraver.cc (process_music): use
455         Text_interface::is_markup(). This fixes \markup on instrument names.  
456
457         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
458         for ties and slurs.
459
460         * lily/slur.cc (print): idem.
461
462         * lily/tie.cc: add line-thickness for ties. 
463
464 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
465
466         * scm/output-svg.scm: Document diversion from GNU coding standards
467         as a workaround for a bug in Microsoft Internet Explorer.
468
469 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
470
471         * lily/instrument-name-engraver.cc (process_music): use
472         is_markup() iso. is_string()
473
474         * Documentation/user/changing-defaults.itely (Module): add menu entry.
475
476         * lily/percent-repeat-engraver.cc (process_music): only look at
477         main_part_ for % repeats.
478
479         * lily/stem-tremolo.cc (get_beam_translation): new function.
480         (calc_slope): new function.
481         (height): don't use real slope.
482
483 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
484
485         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
486         new connect-to-neighbor, control-points and staff-padding
487         properties to make ligature brackets showing up again.
488
489 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
490
491         * VERSION: release 2.7.33
492
493         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
494         too many.
495
496         * Documentation/user/changing-defaults.itely (Difficult tweaks):
497         remove applyOutput example.
498         (Objects connected to the input): document \tweak, \parenthesize
499
500         * lily/relocate.cc (prefix_relocation): allow "current"
501         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
502         changing VERSION in a lily tree less painful.
503
504         * input/regression/parenthesize.ly: new file. 
505
506         * scm/output-lib.scm (parenthesize-element): new function.
507
508         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
509
510         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
511
512         * lily/accidental-engraver.cc (make_standard_accidental): reroute
513         cause: accidentals are caused by note heads, not note events. 
514
515 2006-02-08  Graham Percival  <gpermus@gmail.com>
516
517         * darwin.patch: small patch from Erlend, thanks!
518
519         * Documentation/user/basic-notation.itely: add stem-neutral example.
520
521         * Documentation/user/putting.itely: clarifications.
522
523 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
524
525         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
526         note, add more guidelines to what should go into NEWS.
527
528         * input/sakura-sakura.ly: document how to override font.
529
530         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
531
532 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
533
534         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
535
536 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
537
538         * scripts/convert-ly.py (lilypond_version_re_str): Move from
539         convertrules.  Add explicit grouping, needed for python2.2.
540
541 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
542
543         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
544
545 2006-02-07  Graham Percival  <gpermus@gmail.com>
546
547         * Documentation/user/global.itely: fix line-width in (text) docs.
548
549         * Documentation/user/lilypond-book.itely: same.
550
551 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
552
553         * VERSION (PACKAGE_NAME): release 2.7.32
554
555         * Documentation/topdocs/NEWS.tely (Top): document new variable
556         naming.
557
558         * flower/include/array.icc (Message): remove file.
559
560         * flower/include/std-vector.hh: make sure vsize and VPOS are
561         defined for binary_search_bounds().
562
563         * flower/std-string.cc (std): add to_string(long unsigned).
564
565         * configure.in (gui_b): excise std_string option.
566         (gui_b): excise std_vector option.
567
568         * flower/string.cc (Module): excise flower array & string
569
570         * flower/include/std-string.hh: excise flower string.
571
572         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
573
574         * python/convertrules.py (lilypond_version_re_str): require
575         only numbers and dots in \version string.
576
577 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
578
579         * lily/system-start-delimiter.cc (print): allow style = text too.
580
581         * lily/system-start-delimiter-engraver.cc
582         (acknowledge_system_start_text): new function, also add add to
583         support of system-start-text (instrument names). This fixes
584         instrument names on piano staves.
585
586         * lily/instrument-name-engraver.cc: rewrite. Use
587         system-start-delimiter approach. This save memory and cpu.
588
589         * scm/define-grobs.scm (all-grob-descriptions): remove
590         instrument-name from break-alignment.
591
592         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
593
594 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
595
596         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
597         jobserver going.
598
599         * configure.in (std_vector): On by default.
600
601         * lily/include/font-metric.hh:
602         * lily/include/tfm-reader.hh: 
603         * lily/include/spanner.hh: Use unsigned for indices and sizes.
604         Update users.
605
606         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
607
608 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
609
610         * VERSION (PACKAGE_NAME): 2.7.31
611
612         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
613         EPS edge at 0, but take minimum with left-overshoot. This fixes
614         cut off system start delims. 
615
616         * lily/instrument-name-engraver.cc (stop_translation_timestep):
617         hack: add to axis group if not added yet. This fixes hara kiri'd
618         piano staves.
619
620         * lily/hara-kiri-group-spanner.cc
621         (force_hara_kiri_in_y_parent_callback): fix signatures.
622
623         * lily/hairpin.cc (print): check next hairpin to see whether or
624         not to be continuing.
625
626 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
627
628         * Remove trailing whitespace from makefiles.
629         
630         * flower/include/std-vector.hh: Add binary_search_bounds workaround
631         for earlier gcc.
632
633         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
634
635         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
636
637         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
638
639         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
640
641         * configure.in: Use it.
642
643 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
644
645         * scm/music-functions.scm (pitch-of-note): new function.
646
647         * ly/music-functions-init.ly: add \octave and \addquote
648
649         * lily/parser.yy (music_function_chord_body): softcode \octave.
650         (lilypond_header): softcode \addquote
651
652 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
653
654         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
655         array.hh, parray.hh at all.  Getting ready to flip the
656         configure default.
657
658         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
659
660         * lily/source-file.cc (file::get_line): Help binary_search_bounds
661         a bit.
662
663         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
664
665 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
666
667         * flower/include/array.hh: typo. 
668
669 2006-02-02  Graham Percival  <gpermus@gmail.com>
670
671         * Documentation/user/advanced-notation.itely: doc "\#" in text.
672
673 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
674
675         * flower/include/pqueue.hh: Derive from std::vector.
676
677         * flower/include/parray.hh: Conform to std::vector interface.
678         Update users.
679
680 2006-02-02  Graham Percival  <gpermus@gmail.com>
681
682         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
683
684 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
685
686         * flower/file-path.cc (is_file): remove if 0 section.
687
688         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
689         selecting afii61352.
690
691 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
692
693         * flower/include/std-vector.hh (boundary): Oops, reverse.
694
695         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
696         remove superfluous `d'.
697
698         * flower/include/std-vector.hh (boundary, top): Detach from class.
699         Remove empty vector shell.
700
701         * flower/include/array.hh (reverse, swap): Detach from class.
702         Update users.
703         
704         * flower/include/std-vector.hh
705         * flower/include/array.hh (concat): Globally change to insert ().
706
707         
708         * flower/include/std-vector.hh
709         * flower/include/parray.hh
710         * flower/include/array.hh (elem, elem_ref): Globally replace by
711         at ().
712
713 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
714
715         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
716
717         * python/convertrules.py (FatalConversionError.sub_cxx_id):
718         anticipate on identifier substitutions.
719
720 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
721
722         * flower/include/std-vector.hh (insert): Remove, replace by
723         std::vector interface.  Update callers.
724
725         * flower/include/array.icc (insert): Change signature to
726         match std::vector interface.
727         
728         * flower/include/array.icc (vector_sort): Bugfix.
729
730 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
731
732         * lily/parser.yy (output_def_head_with_mode_switch): new
733         production. Result: dashes and underscores may be used in the
734         \paper block.
735
736         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
737
738         * python/convertrules.py (conv): oops. One slash too much.
739
740 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
741
742         * flower/include/std-vector.hh (sort): Remove, replace by
743         ::vector_sort.  Update callers.
744
745         * flower/include/std-vector.hh (slice): Remove.  Update callers.
746         (sort): Bugfix.
747
748         * flower/test-std.cc (vector_sort): New test.
749
750 2006-02-01  Graham Percival  <gpermus@gmail.com>
751
752         * Documentation/user/putting.itely: fixes from Erik.
753
754 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
755
756         * flower/test-std.cc: Add simple unit test for vector migration.
757
758         * stepmake/stepmake/test*: Unit test support.
759
760         * flower/include/std-vector.hh (del): Remove.  Use erase (),
761         update callers.
762
763         * flower/include/array.hh (begin, end): Add.
764         (del, get): Remove.
765
766 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
767
768         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
769         std::string not String. 
770
771         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
772         iso UINT_MAX.
773
774         * lily/prob.cc (Prob): copy type_ too.
775
776         * lily/lily-guile.cc (mangle_cxx_identifier): new
777         function. Class_bla::foo_bar_[px] ->
778         ly:class-bla::foo-bar[?!]. Changes throughout
779
780 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
781
782         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
783
784         * lily/beam.cc (calc_direction): take dir from visible stem in
785         degenerate case.
786
787 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
788
789         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
790         Fix -1, >=0 boundary checks for unsigned vsize.
791
792         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
793         loop for unsigned vsize.
794
795         * configure.in (--enable-std-vector): New option.
796         (--enable-std-string): On by default.
797
798         * flower/include/std-vector.hh: New file.  Enable switch to
799         std::vector, update client code.
800
801 2006-01-30  Graham Percival  <gpermus@gmail.com>
802
803         * scm/document-translation.scm: clarify "this context is also
804         known as".  Thanks, Werner!
805
806         * Documentation/user/putting.itely: small fixes from Don Blaheta.
807
808         * Documentation/user/invoking.itely: small fix from Don.
809
810 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
811
812         * scm/lily.scm (define-scheme-options): rename option
813         preview-include-book-title to book-title-preview
814         (define-scheme-options): move force-eps-font-include (from paper
815         block) to eps-font-include -d option.
816
817         * VERSION (PATCH_LEVEL): release 2.7.30
818
819         * input/bach-schenker.ly (staffPiano): new file.
820
821         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
822
823         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
824         credits to Nicolas.
825
826         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
827
828         * ps/lilyponddefs.ps: remove start-system, stop-system,
829         start-page fluff. This saves putting { } code on the stack, fixing
830         stack overflows when including EPS files.
831
832 2006-01-29  Graham Percival  <gpermus@gmail.com>
833
834         * Documentation/user/putting.itely: minor fixes (comments on -devel).
835
836 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
837
838         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
839
840 2006-01-28  Graham Percival  <gpermus@gmail.com>
841
842         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
843
844 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
845
846         * input/mutopia/claop.py: Update.
847
848 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
849
850         * input/regression/completion-heads.ly (texidoc): fix.
851
852         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
853
854         * lily/tie-formatting-problem.cc
855         (set_ties_config_standard_directions): use abs iso fabs for ints.
856
857         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
858
859         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
860         little less than noteheight, to prevent overlaps in chords.
861
862         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
863         head, and fudge stem-attachment.
864
865         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
866
867         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
868
869 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
870
871         * lily/main.cc (main): Debugging aid: catch exceptions.
872
873         * flower/std-string.cc (to_string): Robustification.  Fixes midi
874         output with std::string.
875
876 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
877
878         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
879
880 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
881
882         * Fix -DSTRING_UTILS_INLINED.
883
884 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
885
886         * VERSION (PATCH_LEVEL): release 2.7.29
887
888         * lily/relocate.cc (setup_paths): mingw uses std string too.
889
890         * lily/*.cc: various fixes for substr(ARG).
891
892         * lily/sustain-pedal.cc (print): 
893
894         * flower/file-name.cc (slashify): use std strings.
895
896         * flower/string-convert.cc: remove publib.h
897
898         * scm/define-markup-commands.scm (verbatim-file): new markup
899         command \verbatim-file
900
901         * Documentation/topdocs/NEWS.tely: fixup URLs
902
903         * input/regression/alignment-vertical-manual-setting.ly (Module):
904         new file.
905
906         * lily/align-interface.cc (align_elements_to_extents): overwrite
907         translations with numbers in alignment-offsets from left bound
908
909         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
910         (page-translate-systems): new function: take into account Y-offset.
911
912         * Documentation/topdocs/NEWS.tely (Top): document new features.
913
914         * input/regression/page-layout-manual-position.ly (Module): new
915         file.
916
917 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
918
919         * flower/file-path.cc (path::parse_path): Oops.
920
921         * Finish std::string interface.  For now, use std:: marker
922         throughout for easy s/r.
923
924 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
925
926         * Documentation/user/putting.itely (Score is a single musical
927         expression): typo.
928         (Score is a single musical expression): more typos.
929
930         * scm/page.scm (annotate-space-left): thinko.
931         (annotate-page): more thinkos.
932
933 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
934
935         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
936         for different \score blocks separately.
937         (post-process-pages): put write-page-layout into paper block.
938
939         * lily/output-def.cc (get_parser): new file.
940
941         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
942         file.
943
944         * lily/include/output-def.hh (class Output_def): add parser_ member.
945
946         * input/regression/page-layout-twopass.ly (Module): new file.
947
948         * scm/lily.scm: remove cpp hack.
949
950         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
951
952 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
953
954         * GNUmakefile.in (c-clean): New target.
955
956         * flower/include/std-string.hh: String/std::string compatibility:
957         Use NPOS for `not found' (iso -1), use ssize for length () and pos
958         type.
959
960         * flower/rational.cc: 
961         * flower/include/rational.hh: 
962
963         * flower/offset.cc: 
964         * flower/include/offset.hh: 
965
966         * flower/interval.cc: 
967         * flower/include/interval.hh: 
968
969         * flower/string-convert.cc: 
970         * flower/include/string-convert.hh: Use std::string [interface].
971         Update callers.
972
973 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
974
975         * Documentation/index.html.in: clean up.
976
977 2006-01-25  Graham Percival  <gpermus@gmail.com>
978
979         * Documentation/user/putting.itely: another new untested doc section.
980
981 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
982
983         * scm/layout-page-layout.scm (write-page-breaks): write
984         \spacingTweaks #ALIST. Handle grace timing.
985
986         * scm/: more imports.
987
988         * scm/page.scm (make-page): add footer/header.
989         (annotate-space-left): revise: only take page argument.
990         (layout->page-init): new function.
991
992         * scm/layout-page-layout.scm (write-page-breaks): preliminary
993         version of the system/spacing/linebreak hack writing to the output
994
995         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
996         ly:make-prob.
997
998         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
999         ly:spanner-bound
1000
1001 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1002
1003         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
1004
1005         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
1006
1007         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
1008         handling to page.scm
1009
1010         * lily/prob-scheme.cc (LY_DEFINE): new file.
1011         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
1012
1013         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
1014         prob functions.
1015
1016         * lily/music.cc (derived_mark): derive Music from Prob.
1017
1018         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
1019
1020         * lily/prob.cc (Module): Implement Prob (Property Object), object
1021         with shared and r/w property alists.  
1022
1023         * lily/include/prob.hh (Module): new file. Declare Prob.
1024
1025         * flower/string.cc: remove is_empty().
1026
1027         * flower/include/string.hh (class String): remove String:: qualifier.
1028
1029         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
1030         substitute appropriate functions.
1031
1032         * flower/include/string.hh (class String): remove to_str0 and
1033         is_empty(). S&R everywhere.
1034
1035 2006-01-23  Graham Percival  <gpermus@gmail.com>
1036
1037         * Documentation/user/basic-notation.itely: add hairpin
1038         after-linebreak tweak to commonprop.
1039
1040         * Documentation/user/putting.itely: added two new sections.
1041
1042 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1043
1044         * flower/international.cc: 
1045         * flower/include/international.hh: 
1046
1047         * flower/getopt-long.cc: 
1048         * flower/include/getopt-long.hh: Use std::string [interface].
1049         Update callers.
1050
1051         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
1052
1053         * stepmake/stepmake/executable-rules.make: Add dependency on
1054         module libraries.
1055
1056 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1057
1058         * flower/file-path.cc: 
1059         * flower/include/file-path.hh: Use std::string [interface].
1060         Update callers.
1061
1062         * flower/direction.cc: 
1063         * flower/axis.cc: Unused.  Remove.
1064
1065         * configure.in (--enable-std-string): New option.
1066
1067         * flower/std-string.cc: 
1068         * flower/include/std-string.hh: New file.
1069
1070         * flower/file-name.cc[STD_STRING]:
1071         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
1072
1073 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1074
1075         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
1076
1077         * scm/define-markup-commands.scm (with-dimensions):
1078         with-dimensions markup command.
1079
1080         * input/test/font-table.ly: use it.
1081
1082         * lily/open-type-font.cc (glyph_list): new function.
1083
1084         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
1085
1086         * lily/ttf.cc: remove ly:font-glyph-list scheme function
1087
1088 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1089
1090         * ly/music-functions-init.ly (parallelMusic): new music function
1091         for parallel music entry.
1092
1093         * scm/define-music-properties.scm (all-music-properties): new
1094         'void music property
1095
1096         * scm/music-functions.scm (ly:music-message): make public, to be
1097         used in music function definitions
1098
1099         * scm/lily-library.scm (collect-music-for-book): discard music
1100         when the 'void property is set.
1101
1102 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1103
1104         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
1105
1106         * mf/GNUmakefile: idem.
1107
1108         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
1109
1110         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
1111
1112         * Documentation/user/notation-appendices.itely (The Feta font):
1113         use it.
1114
1115         * input/test/font-table.ly: new file. Generate font table within lily.
1116
1117         * Documentation/user/notation-appendices.itely (The Feta font):
1118         use new font-table.ly file. 
1119
1120         * stepmake/stepmake/install-out-targets.make
1121         (local-install-outfiles): only create directory if
1122         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
1123
1124 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1125
1126         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
1127
1128         * VERSION (PACKAGE_NAME): release 2.7.28
1129
1130         * scm/framework-ps.scm (write-preamble): use it to pick exactly
1131         the right font from a Mac dfont.
1132         (write-preamble): don't forget directory, only look at files.
1133
1134         This fixes problems with TTF files in dfonts that don't match
1135         their PostScript names.
1136          
1137         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
1138         PS name from TTF font.
1139
1140         * input/regression/tie-manual.ly: document new feature.
1141
1142         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
1143
1144         * VERSION (MY_PATCH_LEVEL): bump to .28
1145
1146         * Documentation/user/basic-notation.itely (Ties): add tie examples
1147         refs.
1148
1149         * lily/tie-formatting-problem.cc (score_ties_configuration):
1150         symmetry penalties for outer ties.
1151
1152 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1153
1154         * lily/tie-formatting-problem.cc (generate_configuration) 
1155         (set_manual_tie_configuration): skip non-pair manual
1156         tie-configuration, so you can set individual ties as
1157
1158           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
1159
1160         * input/regression/tie-chord.ly: use generateTiePattern to
1161         simplify file.
1162
1163         * lily/tie-formatting-problem.cc (peak_around): new function.
1164         (score_configuration): use sliding criterion for staff line collisions. 
1165         (score_configuration): idem for dot collisions.
1166         (generate_configuration): use separate stem_gap for gap to stem.
1167
1168         * lily/include/tie-formatting-problem.hh (struct Tie_details):
1169         separate penalty factors for x and y distance.
1170         (struct Tie_details): separate penalties for tip and center line collisions.
1171
1172 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
1173
1174         * lily/tie-formatting-problem.cc (generate_configuration): make
1175         large ties avoid stafflines in the horizontal section.
1176         (score_configuration): use softcoded penalties
1177         (score_aptitude): idem.
1178
1179         * lily/tie-helper.cc (from_grob): softcode tie details
1180
1181         * lily/staff-symbol-referencer.cc (on_staff_line): new function
1182
1183         * lily/staff-symbol-referencer.cc (on_line): rename from
1184         on_staffline 
1185
1186 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1187
1188         * ly/music-functions-init.ly: remove duplicate tag.
1189
1190         * lily/include/*.hh: GCC 4.1 fixes.
1191
1192 006-01-16  Erlend Aasland  <erlenda@gmail.com>
1193
1194         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
1195
1196         * scm/define-music-types.scm: fix bug in desc. string
1197         for OverrideProperty
1198
1199 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
1200
1201         * scripts/lilypond-book.py: bugfix
1202
1203         * scm/define-music-types.scm: fix typos.
1204
1205 2006-01-14  Graham Percival  <gpermus@gmail.com>
1206
1207         * Documentation/user/ basic-notation.itely, global.itely,
1208         advanced-notation.itely, instrument-notation.itely: small
1209         additions (bugs and commonly tweaked properties).
1210
1211 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1212
1213         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
1214         detection of mingw build.
1215         (MINGW_BUILD): opps.
1216
1217 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1218
1219         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
1220         i686-mingw32.
1221
1222 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1223
1224         * scm/music-functions.scm (skip->rest): add skip->rest
1225
1226 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1227
1228         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
1229         explicitly.
1230
1231         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
1232         config dirs. Aids debugging. 
1233         (display_config): also display config files.
1234
1235 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1236
1237         * VERSION: release 2.7.27
1238
1239         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
1240         for determining bar size.
1241
1242         * lily/staff-symbol.cc (print): place lines at distance line-positions
1243
1244         * scm/define-grob-properties.scm (all-user-grob-properties): add
1245         line-positions.
1246
1247         * lily/staff-symbol.cc (height): new function.
1248
1249         * input/regression/staff-line-positions.ly:  new file.
1250
1251 2006-01-06  Graham Percival  <gpermus@gmail.com>
1252
1253         * input/test/add-staccato.ly: remove reference to old file.
1254
1255 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1256
1257         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
1258         lilypond binary too.
1259
1260 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1261
1262         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
1263
1264 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1265
1266         * scripts/midi2ly.py: Bugfix: Declare datadir.
1267
1268         * make/ly-rules.make:
1269         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
1270         that seems to be gone). Fixes make web.
1271
1272         * The grand 2005-2006 replace.
1273
1274         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
1275
1276 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1277
1278         * make/lilypond-vars.make: set LILYPOND_BINARY variable
1279         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
1280         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
1281         like -dgs-font-load.
1282
1283         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
1284         remove absolute path to lilypond binary.
1285         
1286 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
1287
1288         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
1289
1290 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1291
1292         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
1293
1294         * mf/GNUmakefile: remove broken dvips map symlink.
1295
1296 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1297
1298         * lily/main.cc: 
1299         * configure.in: Cosmetic fixes.
1300
1301 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1302
1303         * Documentation/user/music-glossary.tely (Pitch names): Added
1304         Spanish pitch names and durations, thanks to Ernesto Gancedo
1305
1306 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1307
1308         * scm/lily.scm (define-scheme-options): use quasi-quote for option
1309         init. Fixes verbose printing of .scm files.
1310
1311         * stepmake/aclocal.m4: add spaces before - options.
1312         
1313 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1314
1315         * lily/relocate.cc (setup_paths): Bugfix: do not store result
1316         of path search in local block variable.
1317
1318 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1319
1320         * configure.in (NCSB_DIR): --enable-ncsb-dir
1321         (LINK_GXX_STATICALLY): denko.
1322
1323         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
1324
1325         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
1326         use locate to find c059033l.pfb. 
1327         
1328 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1329
1330         * lily/tie-formatting-problem.cc
1331         (problem::generate_base_chord_configuration): Use my_round (was
1332         round).
1333
1334         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
1335         do not invoke mbrtowc.
1336
1337         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
1338
1339 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1340
1341         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
1342
1343 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
1344
1345         * Documentation/user/invoking.itely (svg): revise.
1346
1347 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1348
1349         * lily/lexer.ll: use sourcefilename iso. renameinput.
1350
1351 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1352
1353         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
1354         <PostScriptName>.ttf instead of c059XXXttf.
1355
1356         * lily/program-option.cc (LY_DEFINE): special support for
1357         --verbose, so it works before option init too.
1358  
1359         * mf/GNUmakefile (local-install): oops.
1360
1361         * lily/lyric-hyphen.cc (print): oops.
1362
1363         * buildscripts/pfx2ttf.fontforge: new file.
1364         
1365         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
1366         ($(outdir)/%.ttf): new rule. 
1367
1368         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
1369         to LyricHyphen.
1370
1371         * lily/lyric-hyphen.cc (print): multiply hyphen height by
1372         font-size
1373
1374 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1375
1376         * VERSION: release 2.7.26
1377         
1378         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
1379
1380 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1381
1382         * lily/font-config.cc (init_fontconfig): verbosity.
1383
1384         * THANKS: add Muziekacademie Lede. 
1385
1386         * scripts/musicxml2ly.py (print_voice_definitions): new function 
1387         (print_score_setup): new function
1388         (convert): read part definition to output staves properly.
1389
1390         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
1391         Music_xml notes.
1392
1393         * python/musicexp.py (Output_printer.__init__): use _ in data
1394         members.
1395         (Output_printer.unformatted_output): new function: no formatting,
1396         but count braces.
1397         (Duration.get_length): remove isinstance() checks for
1398         Output_printer everywhere.
1399
1400         * input/regression/lyrics-bar.ly (texidoc): add
1401         Separating_line_group_engraver.
1402
1403 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1404
1405         * lily/relocate.cc (framework_relocation): New function,
1406         factored from set_relocation ().
1407         (prefix_relocation): Rename from set_relocation ().
1408         (setup_paths): Use it.
1409
1410 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1411
1412         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
1413         numbers. Patch by Erlend Aasland.
1414
1415 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1416
1417         * lily/font-config.cc (init_fontconfig): print warning if cache
1418         file is not existant.
1419
1420         * lily/main.cc: don't use #ifdef but #if
1421
1422 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1423
1424         * lily/grob-property.cc (internal_set_property): don't abort on
1425         calculation-in-progress.
1426
1427         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
1428
1429         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
1430         connect-to-neighbor property not connect-to-other
1431
1432         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
1433         (LY_DEFINE): oops. don't forget protection.
1434
1435         * flower/parse-afm.cc (Module): strip AFM handling completely.
1436
1437         * lily/stencil-expression.cc: idem.
1438
1439         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
1440
1441         * lily/function-documentation.cc (ly_add_function_documentation):
1442         use static member iso. Protected_scm
1443
1444         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
1445
1446         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
1447
1448 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1449
1450         * lily/relocate.cc (set_env_dir): New function.
1451         (set_relocation): Use it to fix setting PANGO_PREFIX.
1452
1453 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1454
1455         * input/regression/stem-direction-context.ly: remove rest.
1456
1457         * lily/melody-engraver.cc (process_music): restart for bar lines.
1458         (acknowledge_slur): restart for slurs.
1459
1460 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
1461
1462         * Documentation/user/invoking.itely: describe how to view SVG 
1463         output using Inkscape which replace embedded fonts with OTF fonts.
1464
1465 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1466
1467         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
1468
1469 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1470
1471         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
1472         comment.
1473
1474 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1475
1476         * VERSION (PACKAGE_NAME): release 2.7.25
1477
1478         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1479
1480         * input/regression/stem-direction-context.ly: new file.
1481
1482         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
1483
1484         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
1485         on rest.
1486
1487         * ly/engraver-init.ly: add Melody_engraver
1488
1489         * lily/beam.cc (calc_direction): use default-direction
1490         iso. get_default_direction()
1491
1492         * scm/define-grob-properties.scm (all-user-grob-properties): add
1493         default-direction property.
1494
1495         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
1496
1497         * lily/stem.cc (calc_default_direction): remove
1498         Stem::get_default_direction, use default-direction with callback
1499         instead.
1500
1501         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
1502
1503         * lily/melody-engraver.cc: new file. Acknowledge stems for
1504         interpolated stem directions. 
1505
1506         * lily/melody-spanner.cc: new file. Interpolate stem directions.
1507
1508         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
1509
1510         * lily/slur-configuration.cc (fit_factor): more robust check for
1511         point in curve X-extent.
1512
1513         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
1514         (outside_slur_callback): check for 'outside avoidance.
1515
1516         * lily/slur-configuration.cc (score_extra_encompass): don't use
1517         bound->column() == avoid->column() for checking extents, as this
1518         doesn't work for accidentals. 
1519
1520         * lily/slur-engraver.cc (acknowledge_extra_object): remove
1521         DynamicText hardcoding.
1522
1523         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
1524         crash if bound stem is NULL
1525
1526         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
1527         pedals.
1528
1529 2005-12-22  Graham Percival  <gpermus@gmail.com>
1530
1531         * scm/define-markup-commands.scm: typo.  @code{\raise}
1532         => @code{\\raise}.
1533
1534         * darwin.patch: now used again, includes a
1535         required patch from fink.
1536
1537 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
1538
1539         * po/TODO: mention gtranslator along with kbabel.
1540         * po/fi.po: update translations.
1541
1542 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1543
1544         * lily/relocate.cc (setup_paths): Bugfix.
1545
1546 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1547
1548         * lily/slur-configuration.cc (score_extra_encompass): don't use
1549         "avoid" choice for avoid-slur.
1550
1551         * stepmake/bin/install.py (dest): don't create existing dir.
1552
1553 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1554
1555         * stepmake/bin/install.py: Remove file before copying.
1556
1557         * config.make.in: 
1558         * stepmake/aclocal.m4: Do not substitute INSTALL.
1559
1560 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1561
1562         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1563         depend on link-tree.
1564
1565         * lily/relocate.cc (setup_paths): only check path for non-absolute
1566         dir without directory part.
1567
1568         * flower/file-name.cc (is_absolute):  new method.
1569         (is_absolute): check root_ too.
1570
1571 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1572
1573         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
1574         relocation code.  Oops, don't comment out too much.
1575
1576         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
1577         iso itself.
1578
1579         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
1580         compile.
1581
1582 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1583
1584         * .cvsignore: Add install-sh.
1585
1586         * autogen.sh (srcdir): Typo.
1587
1588 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1589
1590         * autogen.sh (srcdir): urg. Touch install-sh.
1591
1592         * stepmake/bin/install-sh (Module): remove.
1593
1594         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
1595
1596         * lily/include/relocate.hh: new file.
1597
1598         * lily/relocate.cc: new file. Contain relocation logic.
1599
1600         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
1601         (main): read LILYPOND_VERBOSE as the first thing.
1602
1603         * stepmake/aclocal.m4: remove INSTALL variable.
1604
1605         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1606         separate target for making font symlinks.
1607         (documentation-dir): use $(if $(findstring )) for switching off
1608         Documentation.
1609
1610         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
1611         something if DOCUMENTATION is no.
1612
1613 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1614
1615         * VERSION: release 2.7.24
1616
1617         * lily/script-column-engraver.cc (stop_translation_timestep):
1618         delay adding to script-column.
1619
1620         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
1621
1622         * python/convertrules.py (conv): rule for number-visibility
1623
1624         * lily/slur-configuration.cc (score_extra_encompass): different
1625         distance measure for avoid and inside avoidance.
1626         (score_extra_encompass): use 1/(distance+eps) as penalty.
1627
1628         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
1629         encompass objects for generating slur curves.
1630
1631         * lily/slur.cc: use details iso. slur-details property.
1632
1633         * input/regression/slur-tuplet.ly: new file.
1634
1635         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
1636
1637         * flower/include/offset.hh (class Offset): new operator /=
1638
1639         * lily/tuplet-number.cc (print): new file, new interface.
1640
1641         * scm/define-grob-properties.scm (all-user-grob-properties):
1642         remove number-visibility property.
1643
1644         * lily/tuplet-bracket.cc (calc_control_points): new function
1645         (calc_connect_to_neighbors): new function.
1646         (print): remove text handling for tuplet numberdef.
1647
1648         * lily/tuplet-engraver.cc (struct Tuplet_description): create
1649         TupletNumbers too. 
1650
1651         * lily/lily-guile.cc (robust_scm2booldrul): new function
1652
1653         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
1654
1655         * lily/tuplet-bracket.cc (calc_position_and_height): use
1656         staff-padding to control whether tuplet brackets are over staves.
1657
1658         * lily/grob.cc (suicide): clear dim_caches_.
1659
1660         * lily/dimension-cache.cc (clear): new function.
1661
1662         * lily/grob.cc (extent): swap order of min-extent and extent
1663         calculations. This fixes hara kiri staves. 
1664
1665 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1666
1667         * lily/main.cc: Nitpick: relocation is not based on path, but on
1668         directory (location).
1669
1670 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1671
1672         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
1673
1674         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
1675
1676         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
1677
1678         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
1679
1680         * stepmake/stepmake/generic-vars.make (Module): idem.
1681
1682         * stepmake/stepmake/executable-targets.make (default): use it.
1683
1684         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
1685
1686         * make/GNUmakefile: don't install make rules.
1687
1688         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
1689         slashes.
1690         (prepend_env_path): more verbosity.
1691
1692 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1693
1694         * GNUmakefile.in: add dir argument for find command.
1695
1696         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
1697         fixes weird line numbers for point & click.
1698
1699         * lily/source-file.cc (get_counts): init line/column/char counts.
1700
1701 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1702
1703         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
1704
1705 2005-12-16  Graham Percival  <gpermus@gmail.com>
1706
1707         * Documentation/user/basic-notation.itely, advanced-notation.itely:
1708         minor fixes from Fredric.  Thanks!
1709
1710 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1711
1712         * ly/music-functions-init.ly: add \bar and \clef music function 
1713
1714         * lily/lily-lexer.cc: idem.
1715
1716         * lily/parser.yy (FIXME): remove BAR and CLEF.
1717
1718 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1719
1720         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
1721
1722         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
1723         function arguments too
1724
1725         * lily/main.cc (set_relocation): new function.
1726
1727         * scripts/musicxml2ly.py (convert): add \version
1728
1729         * lily/tie.cc: remove get_default_attachments()
1730
1731         * VERSION (PACKAGE_NAME): release 2.7.23
1732         
1733         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
1734         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
1735
1736         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1737
1738         * lily/tie-formatting-problem.cc (score_ties): new function
1739         (get_variations): new function. Try flipping dirs for collisions.
1740         (generate_optimal_chord_configuration): new function. 1-opt search
1741         for better configuration.
1742
1743         * lily/tie-configuration.cc: new file.
1744
1745         * lily/tie.cc: junk Tie::get_configuration()
1746
1747         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
1748         (score_ties_configuration): new function.
1749         (generate_ties_configuration): new function.
1750         (generate_base_chord_configuration): new function.
1751         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
1752         (set_manual_tie_configuration): Move body from tie-column-format.cc 
1753
1754         * input/regression/tie-dot.ly: new file.
1755
1756         * lily/tie-formatting-problem.cc (score_configuration): score
1757         tie/dot collisions.
1758
1759         * lily/tie-helper.cc (get_transformed_bezier): new function
1760
1761         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
1762
1763         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
1764         -undefined suppress iso. -framework Python 
1765
1766         * scm/define-grobs.scm (all-grob-descriptions): set
1767         springs-and-rods (thanks Joe Neeman!)
1768
1769 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1770
1771         * input/no-notation/display-lily-tests.ly (test): 
1772         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
1773         changed from \tag #'(a b) to \tag #'a \tag #'b
1774
1775 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1776
1777         * Documentation/topdocs/NEWS.tely: strip out-www.
1778
1779         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
1780
1781         * config.make.in (AR): add AR and RANLIB
1782
1783         * flower/libc-extension.cc: include cassert
1784
1785         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
1786         darwin check.
1787
1788 2005-12-11  Graham Percival  <gpermus@gmail.com>
1789
1790         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
1791
1792         * stepmake/stepmake/python-modules-vars.make: define
1793         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
1794
1795         * THANKS: added Johannes Schindelin.
1796
1797 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1798
1799         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
1800
1801         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1802         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
1803
1804         * lily/parser.yy: reorganize file layout.
1805
1806         * ly/music-functions-init.ly: add tweak music function.
1807
1808         * lily/grob-info.cc (ultimate_music_cause): new function:
1809         recursively lookup causes. 
1810
1811         * lily/parser.yy (chord_body_element): allow music functions for
1812         post-events, allow music functions for chord elements. 
1813  
1814         * lily/font-config-scheme.cc (display_fontset): add cast.
1815
1816         * python/convertrules.py (FatalConversionError.sub_syms): \tag
1817         #'(a b) -> \tag #'a \tag #'b rule.
1818
1819         * python/musicexp.py (Output_printer.dump_version): new function
1820
1821 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1822
1823         * lily/parser.yy (FIXME): remove \tag
1824         (FIXME): remove tag_music() function.
1825
1826         * lily/lily-lexer.cc: remove \tag
1827
1828         * ly/music-functions-init.ly: define music-function "tag"
1829
1830         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
1831
1832 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1833
1834         * VERSION (PATCH_LEVEL): release 2.7.22
1835
1836         * input/regression/lyric-hyphen-retain.ly: renew.
1837
1838         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
1839         grob
1840
1841         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
1842         iso. minimum-length property for rods.
1843
1844         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
1845         LyricSpace item to keep lyrics spaced apart.
1846
1847         * ly/engraver-init.ly: remove Separating_line_group_engraver
1848
1849         * Documentation/user/music-glossary.tely: do setfilename before
1850         music-glossary.
1851
1852 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
1853
1854         * Documentation/user/lilypond-book.itely: use `,´ after xref:
1855         See xref documentation, for example.
1856
1857 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1858
1859         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
1860         pending_skip iso. ly_voice[-1]
1861         (main): add if __main__ for debugging.
1862
1863         * python/musicxml.py (Accidental.__init__): new class.
1864
1865         * scripts/musicxml2ly.py (progress): new function
1866         (musicxml_key_to_lily): don't barf on modeless keys.
1867         (create_skip_music): new function.
1868         (musicxml_spanner_to_lily_event): new function. Handle beams too.
1869         (musicxml_note_to_lily_main_event): new function.
1870
1871         * python/musicexp.py (Music.__init__): add comment field.
1872         (NestedMusic.append): new routine.
1873         (SequentialMusic.print_ly): print comment.
1874         (ArpeggioEvent.ly_expression): new class
1875         (BeamEvent.ly_expression): new class
1876         (NoteEvent.__init__): support for cautionary/forced accs.
1877
1878         * lily/lookup.cc (slur): normal order for array loop.
1879
1880         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
1881         to 0.0.
1882
1883         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
1884         collapsed.
1885
1886 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
1887
1888         * scm/music-functions.scm: Make phrasing slurs follow voice direction
1889
1890         * scripts/lilypond-book.py: Introduce option
1891         --preserve-line-breaks, for usage with srcltx
1892
1893 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1894
1895         * scm/output-lib.scm (print-circled-text-callback): draw circle
1896         around text using make-circle-markup.
1897
1898         * Documentation/user/*: strip out-www from file names.
1899
1900 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
1901
1902         * Documentation/user/lilypond.tely (direntry): remove empty lines;
1903         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
1904
1905 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1906
1907         * Documentation/user/GNUmakefile: idem.
1908
1909         * Documentation/user/macros.itexi: strip out-www
1910
1911         * python/rational.py: python 2.3 compat.
1912
1913         * VERSION (PATCH_LEVEL): release 2.7.21
1914
1915         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
1916         option formatting, lilypond style.
1917
1918         * python/musicexp.py: grab from Ikebana: a library for composing
1919         ly music expressions. 
1920         (Output_printer): class for advanced .ly printing.
1921         (eg. tupletting) 
1922
1923         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
1924         convert to pythonesque structure.
1925
1926         * python/rational.py: PD rational number class.
1927
1928         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
1929
1930 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
1931
1932         * lily/part-combine-iterator.cc: Minor bugfix
1933         
1934         * THANKS: Update bughunters
1935
1936 2005-12-02  Werner Lemberg  <wl@gnu.org>
1937
1938         * mf/README: Document process for proper mf2pt1 conversion.
1939
1940         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
1941         overlapping.
1942
1943         * mf/feta-harmonica.mf: Removed.  Unused.
1944
1945 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1946
1947         * scripts/lilypond-book.py (do_file): fix thinkos.
1948
1949 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1950
1951         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
1952         ($(outdir)/parser.cc): 
1953         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
1954
1955 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
1956
1957         * ly/titling-init.ly (tagline): it should be a space between
1958         "Music engraving by LilyPond" and the version number.
1959
1960 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1961
1962         * VERSION (PACKAGE_NAME): release 2.7.20
1963
1964 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1965
1966         * scm/define-markup-commands.scm (pad-to-box): new markup command.
1967
1968         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
1969         1.0.
1970         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
1971
1972 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1973
1974         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
1975
1976         * kpath-guile/: remove directory
1977
1978         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
1979         file. Encapsulate kpathsea using commandline tools.
1980
1981         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
1982         kpathsea) module.
1983
1984 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1985
1986         * Documentation/user/advanced-notation.itely (Setting automatic
1987         beam behavior): Correct a few typos. Thanks to David Bobroff.
1988
1989         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
1990         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
1991
1992 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1993
1994         * scripts/*.py: gmane address for bugs.
1995
1996 2005-11-28 Pal Benko <benkop@freestart.hu>
1997         
1998         * make/ly-rules.make: add -f switch to mv
1999
2000         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
2001
2002         * lily/bar-line.cc: interpret it
2003
2004 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2005
2006         * configure.in (--disable-documentation): New switch.
2007
2008         * GNUmakefile.in: Use it.
2009
2010         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
2011
2012 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2013
2014         * scripts/lilypond-book.py (do_file): search chunks for
2015         \\begin{document}
2016
2017         * GNUmakefile.in: add copy step in between so we can lose the
2018         out-www directories.
2019
2020 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2021
2022         * lily/pango-font.cc (pango_item_string_stencil): put
2023         geometry.width into glyph-string too.
2024
2025 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2026
2027         * scm/define-music-display-methods.scm (RevertProperty):
2028         (OverrideProperty): Use grob-property-path property, a list of
2029         symbols, instead of grob-property, which used to be a single
2030         symbol.
2031         (BassFigureEvent): a figure can be a plain number, not necessarily a
2032         markup.
2033
2034 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2035
2036         * VERSION: release 2.7.19
2037         
2038         * lily/figured-bass-engraver.cc (process_music): check
2039         figuredBassCenterContinuations first.
2040
2041         * scm/translation-functions.scm (format-bass-figure): make double
2042         sharp larger. 
2043
2044         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
2045         determine X-parent.
2046
2047         * lily/system-start-delimiter-engraver.cc: move from
2048         Nested_system_start_delimiter_engraver, rename
2049         Nested_system_start_delimiter_engraver ->
2050         System_start_delimiter_engraver.
2051
2052         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
2053         bracket type from hierarchy.
2054
2055 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2056
2057         * lily/rest.cc (y_offset_callback): read staff-position.
2058
2059         * scm/define-grob-properties.scm (all-user-grob-properties): don't
2060         mark after-line-breaking-callback as internal.
2061
2062         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
2063
2064 2005-11-25  Werner Lemberg  <wl@gnu.org>
2065
2066         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
2067
2068 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2069
2070         * stepmake/bin/add-html-footer.py (do_file): add google
2071
2072         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
2073         staff if first_start_ is true.
2074
2075 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2076
2077         * scripts/midi2ly.py (split_track): add __repr__ members.
2078         (track_first_item): only return Item if not None. This fixes a
2079         problem when dumping a track that starts with an empty channel.
2080
2081         * python/midi.c: doc module.
2082
2083 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2084
2085         * Documentation/user/global.itely (Creating MIDI files): Fix
2086         compilation problem.
2087
2088 2005-11-22  Graham Percival  <gpermus@gmail.com>
2089
2090         * Documentation/user/basic-notation.itely: clarify dynamic
2091         padding text.
2092
2093         * Documentation/user/advanced-notation.itely: add unicode
2094         escape control example, whatever that is.  :)
2095
2096         * Documentation/user/global.itely: added "removing dynamics
2097         from MIDI" code.
2098
2099 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2100
2101         * VERSION (PATCH_LEVEL): release 2.7.18
2102
2103         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
2104         System_start_delimiter_engraver by
2105         Nested_system_start_delimiter_engraver.
2106
2107         * lily/nested-system-start-delimiter-engraver.cc (struct
2108         Bracket_nesting_node): new class.
2109         (struct Bracket_nesting_group): new class
2110         (struct Bracket_nesting_staff): new class.
2111         (process_music): create hierarchy of grobs. This allows separate
2112         tuning of different SSDs. 
2113
2114         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
2115         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
2116
2117 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2118
2119         * lily/side-position-interface.cc (aligned_side): multiply
2120         staff_radius by 2.
2121
2122         * lily/script-engraver.cc (make_script_from_event): allow setting
2123         values to '()
2124
2125 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2126
2127         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
2128
2129         * scm/define-grobs.scm (all-grob-descriptions): new grob
2130         NestedSystemStartDelimiter.
2131
2132         * input/regression/system-start-heavy-bar.ly: new file.
2133
2134         * lily/nested-system-start-delimiter-engraver.cc: new file.
2135
2136         * lily/nested-system-start-delimiter.cc: new file.
2137
2138         * input/regression/system-start-nesting.ly: new file.
2139
2140         * scm/define-grobs.scm (all-grob-descriptions): use X side
2141         positioning for positioning braces for nested contexts.
2142
2143         * lily/system-start-delimiter.cc (print): don't divide extent by
2144         staff_space.
2145         (print): use style iso. glyph.
2146         (staff_bracket): translate glyph inside routine already.
2147
2148 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
2149
2150         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
2151         names.
2152
2153 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2154
2155         * scm/define-context-properties.scm
2156         (all-user-translation-properties): rename figuredBassFormatter
2157         from newFiguredBassFormatter.
2158
2159         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
2160
2161         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
2162
2163         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
2164
2165         * lily/beam.cc (calc_beaming): new function.
2166         (calc_shorten): new function.
2167
2168         * THANKS: add Edward Neeman.
2169
2170         * input/regression/accidental-clef-change.ly: new file.
2171
2172         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
2173
2174         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
2175
2176         * lily/clef-engraver.cc (inspect_clef_properties): reset
2177         localKeySignature for clef changes.
2178
2179 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2180
2181         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
2182         add dummy definition that works in Linux and add information in
2183         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
2184
2185         * Documentation/user/changing-defaults.itely (Modifying context
2186         plug-ins): Add index for \with.
2187
2188         * Documentation/user/music-glossary.tely (dal segno): Updated
2189         example to version >=2.6.
2190
2191 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2192
2193         * Documentation/user/instrument-notation.itely (Printing chord
2194         names): Reorder \chordmode and \repeat in one example.
2195
2196 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2197
2198         * VERSION: release 2.7.17
2199         
2200         * Documentation/topdocs/NEWS.tely (Top): add note about
2201         refactoring.
2202
2203         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
2204         new function. Search region of 3 positions for best tie.
2205         (score_configuration): new function.
2206         (score_aptitude): new function.
2207         (generate_configuration): new function.
2208         (get_configuration): new function.
2209         (Tie_formatting_problem): new function
2210
2211         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
2212
2213         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
2214
2215         * THANKS: add Eduardo Vieira & Ralph Little
2216
2217         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
2218         narrower.
2219
2220         * lily/include/tie-formatting-problem.hh (class
2221         Tie_formatting_problem): add Tie_details to
2222         Tie_formatting_problem. Update calling conventions.
2223
2224         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
2225         config.make.
2226
2227         * Documentation/user/lilypond.tely: remove musedata2ly entry.
2228
2229 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
2230
2231         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
2232         scm/define-context-properties.scm: Maintenance bugfix: make
2233         ligature brackets work again by removing obsolete ligature
2234         primitive callback push/pop.
2235
2236         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
2237         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
2238         value.
2239
2240 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2241
2242         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
2243         used and do not call it a path.
2244         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
2245
2246 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2247
2248         * lily/include/tie-formatting-problem.hh (class
2249         Tie_formatting_problem): new file.
2250
2251         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
2252
2253         * Documentation/misc/ChangeLog-2.3:  new file.
2254
2255         * lily/audio-staff.cc (output): degarianize.
2256
2257 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2258
2259         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
2260         Unset PYTHONOPTIMIZE.  Fixes install if set.
2261
2262 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2263
2264         * python/convertrules.py (conv): add warning about drums. 
2265
2266         * make/stepmake.make: include toplevel-version.make after config.make.
2267
2268         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
2269         also allow python2.4
2270
2271         * config.make.in (configure-srcdir): remove GXX GCC vars.
2272
2273         * stepmake/aclocal.m4: don't do non-srcdir build with
2274         symlinks. Use inclusion, so the src directory name can be changed.
2275
2276 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2277
2278         * make/mutopia-vars.make:
2279         * make/ly-vars.make: Use src-wildcard iso wildcard for source
2280         files.
2281
2282 2005-11-13  Werner Lemberg  <wl@gnu.org>
2283
2284         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
2285         but the affected path.  This ensures that the (overlapping) outlines
2286         have the same direction, which is a necessary prerequisite for
2287         FontForge's algorithm to remove overlaps.
2288         Formatting.
2289
2290         * mf/feta-haak.mf: Formatting.
2291         (draw_bracket): Slightly modify outline to avoid an unnecessary
2292         corner.
2293         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
2294         them from the affected paths.
2295
2296 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2297
2298         * mf/README: remove xpm / accordion notes.
2299
2300         * lily/tie-column-format.cc (set_chord_outline): add dots into
2301         skyline extents. This fixes tie formatting if the left head has dots.
2302
2303         * lily/tie.cc (get_configuration): only shift tie by a whole staff
2304         space inside the staff.
2305         (get_configuration): shift another position if necessary in case
2306         of left head tie  
2307
2308 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2309
2310         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
2311         buildscript-dir iso. $(depth)/buildscripts.
2312
2313         * tex/GNUmakefile (local-uninstall): remove
2314         music-drawing-routines.ps juggling.
2315
2316         * stepmake/stepmake/install-targets.make (local-install-files):
2317         prepend src-dir to install targets.
2318
2319         * lily/system-start-delimiter-engraver.cc
2320         (acknowledge_system_start_delimiter): use
2321         add_offset_callback(). This fixes translation of nested
2322         staffgroups.
2323
2324         * lily/grob-closure.cc (add_offset_callback): only encaps in
2325         simple_closure if it's a procedure.
2326         
2327         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
2328         from bar-line.
2329
2330         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
2331         remove-empty where pertinent.
2332
2333 2005-11-12  Graham Percival  <gpermus@gmail.com>
2334
2335         * Documentation/user/instrument-notation.itely: added
2336         Cameron Horsburgh's multiple stanzas docs.  Thanks!
2337
2338 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2339
2340         * lily/GNUmakefile
2341         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
2342         make picture in builddir, not srcdir.
2343
2344 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2345
2346         * VERSION: release 2.7.16
2347         
2348         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
2349         shell arguments. 
2350
2351 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2352
2353         * Documentation/user/examples.itely (Piano templates): Minor
2354         modification to the Piano centered lyrics example.
2355
2356 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2357
2358         * scripts/lilypond-invoke-editor.scm (run-browser): look at
2359         $BROWSER.
2360
2361         * Documentation/user/point-and-click.itely: simplify p&c
2362         instruction: don't configure firefox. Put lilypond-invoke-editor
2363         in front of the browser.
2364
2365         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
2366         (run-browser): new function.
2367
2368         * lily/parser.yy (Lily_lexer): recognize Book
2369
2370         * lily/book.cc (clone): new function
2371
2372         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
2373
2374 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
2375
2376         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
2377         Maintenance bugfix: reduce number of font related warnings by
2378         updating naming conventions for glyph-name.
2379
2380 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2381
2382         * scm/define-grobs.scm (all-grob-descriptions): add
2383         rhythmic-grob-interface to TabNoteHead.
2384
2385         * scm/layout-beam.scm (check-quant-callbacks): remove
2386         set_stem_lengths()
2387
2388 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
2389
2390         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
2391         alignment of centered divisiones.
2392
2393         * scm/scripts.scm (articulations): Maintenance bugfix:
2394         follow-into-staff -> quantize-position.
2395
2396         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
2397         plica head in porrectus deminutus.
2398
2399 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2400
2401         * make/lilypond.fedora.spec.in (Group): add %clean section.
2402
2403         * lily/tuplet-bracket.cc (print): change check: remove bracket if
2404         less then 1/5th of total length.  
2405         (print): use gap too.  Fixes tupletUp-single-bracket.ly
2406
2407         * scm/music-functions.scm (glue-mm-rest-texts): also put other
2408         events into EventChord. This fixes textspanners on mm rests. Fixes
2409         spanner-rest.ly
2410
2411         * lily/side-position-interface.cc (get_axis): read side-axis
2412         (set_axis): set side-axis.
2413
2414         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
2415         properties everywhere.
2416
2417         * lily/spacing-spanner.cc (breakable_column_spacing): add
2418         average-spacing-wishes. Take maximum if not set.
2419         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
2420
2421         * scm/define-grobs.scm (all-grob-descriptions): add
2422         average-spacing-wishes.
2423
2424         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
2425         offset callbacks. This fixes alignment for Fingering objects.
2426
2427         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
2428         space for key - timesig combination. 
2429
2430         * input/regression/script-stem-tremolo.ly (Module): new file.
2431
2432         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
2433         to key sig.
2434
2435         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
2436         Fixes: c-tremolo-script.ly.
2437         
2438         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
2439
2440         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
2441         
2442         * scm/define-grobs.scm (all-grob-descriptions): remove
2443         self-X-offset. Fixes alignment of octavate-8.
2444
2445         * scripts/lilypond-book.py (datadir): look in
2446         LILYPONDPREFIX/share/lilypond/current/
2447
2448         * GNUmakefile.in: symlink current to <VERSION>. 
2449
2450 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
2451
2452         * lily/main.cc: eps listed as a backend.
2453
2454 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2455
2456         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
2457
2458 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2459
2460         * lily/include/score.hh (class Score): remove texts_ member.
2461
2462         * lily/beam.cc (set_stem_lengths): force direction callback.
2463         (print): read quantized-positions, so we can force
2464         Beam::set_stem_lengths to occur.
2465         (rest_collision_callback): use common X parent. 
2466
2467 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2468
2469         * flower/file-path.cc (find): Bugfix: Return name of file found.
2470
2471         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
2472         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
2473         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
2474
2475 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2476
2477         * flower/offset.cc: idem.
2478
2479         * mf/*.mf: update email address.
2480
2481         * lily/font-config-scheme.cc:  new file.
2482
2483         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
2484
2485         * lily/*:  cs.uu.nl -> xs4all.nl
2486
2487         * VERSION (PATCH_LEVEL): release 2.7.15
2488
2489         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
2490         spec files.
2491
2492         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
2493
2494 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2495
2496         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
2497
2498         * lily/staff-performer.cc (process_music): add audio
2499         elements. This makes MIDI instrument changes work once again.
2500
2501         * lily/main.cc (LY_DEFINE): add gmane address.
2502
2503         * lily/beam.cc: remove calc_positions()
2504
2505         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
2506         original_ in private scope.
2507         (class Grob): drop pscore_ pointer, change to output_def pointer.
2508         (class Grob): cleanup class definition.
2509
2510         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
2511
2512 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2513
2514         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
2515         absolute.  Better diagnostics.
2516
2517         * GNUmakefile.in: Add bin/ to tree and populate with some links.
2518         This makes lilypond run from the build directory using argv0
2519         relocation (without any --prefix or LILYPONDPREFIX setting).
2520
2521 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2522
2523         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
2524
2525         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
2526         with simple-closure.
2527
2528         * lily/self-aligment-interface.cc (set_align_self): new function
2529         (set_center_parent): new function.
2530
2531         * lily/side-position-interface.cc (set_axis): new function.
2532
2533         * lily/new-fingering-engraver.cc (position_scripts): use drul for
2534         generic code. 
2535
2536         * scm/define-grob-properties.scm (all-user-grob-properties):
2537         remove [XY]-offset-callbacks add [YX]-offset
2538         
2539 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2540
2541         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
2542         entry for time signatures after breathing signs. Bug report by
2543         Scott Russell.
2544
2545 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2546
2547         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
2548         not absolute, make it absolute using PATH.
2549
2550 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2551
2552         * python/midi.c (initmidi): Fix type for mingw.
2553
2554 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2555
2556         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
2557
2558         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
2559         cross compiling.
2560
2561         * stepmake/aclocal.m4: Support python cross compiling.
2562
2563         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
2564         Add mingw section.
2565
2566 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2567
2568         * scm/output-lib.scm (chain-grob-member-functions): replace
2569         chained-callback.cc
2570
2571         * lily/chained-callback.cc (Module): remove file.
2572
2573         * lily/rest-collision.cc (force_shift_callback_rest): change to
2574         chained callback.
2575
2576         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
2577
2578         * lily/grob.cc (y_parent_positioning): remove axis argument from
2579         parent_positioning callbacks.
2580         (Grob): junk init code
2581         (get_offset): use generic property callbacks for
2582         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
2583         (axis_parent_positioning): new function
2584         (axis_offset_symbol): new function
2585         (chain_offset_callback): new function
2586         (add_offset_callback): new function
2587
2588         * lily/beam.cc (rest_collision_callback): change signature; this
2589         is now a chained callback.
2590
2591         * lily/include/dimension-cache.hh (class Dimension_cache): remove
2592         callback administration.
2593
2594         * lily/simple-closure.cc: new file. Smob type that allows "grob
2595         member functions",
2596
2597             (ly:make-simple-closure FUNC A B)
2598
2599         is evaluated as (FUNC grob A B). This allows chaining of callbacks
2600         in various ways.
2601
2602         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
2603         callbacks.
2604
2605         * lily/slur.cc (outside_slur_callback): take 2 arguments.
2606
2607         * lily/rest.cc (polyphonic_offset_callback): remove.
2608
2609         * lily/script-engraver.cc (try_music): remove bool* argument.
2610
2611         * scm/script.scm (default-script-alist): set quantize-position
2612         appropriately.
2613
2614         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
2615
2616         * lily/side-position-interface.cc (aligned_side): move staff
2617         position quantization from
2618         Side_position_interface::quantised_position().
2619         (quantised_position): remove
2620         
2621 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2622
2623         * input/regression/beam-quant-standard.ly: reindent, set
2624         debug-beam-quanting to #t.
2625
2626         * lily/beam-concave.cc (calc_concaveness): set concaveness to
2627         10000 if this is a "hard" concave beam.
2628
2629         * lily/beam.cc (calc_least_squares_positions): change from
2630         calc_least_squares_dy
2631         (set_stem_lengths): this is now a chained callback.
2632
2633         * lily/context-property.cc (execute_general_pushpop_property):
2634         bugfix override with procedure should have effect.
2635
2636         * scm/define-grob-properties.scm (all-internal-grob-properties):
2637         remove position-callbacks.
2638
2639         * scm/define-grobs.scm (all-grob-descriptions): use
2640         ly:make-callback-chain for positions property.
2641
2642         * scm/layout-beam.scm (check-quant-callbacks): return list of
2643         chained callbacks.
2644
2645         * scm/lily.scm (type-p-name-alist): add callback-chain
2646
2647         * lily/lily-guile.cc (type_check_assignment): type check failure
2648         is warning not message.
2649
2650         * lily/grob-property.cc (try_callback): walk callback chain if
2651         appropriate.
2652
2653         * lily/chained-callback.cc: new file. new smob type.
2654
2655         * lily/lily-guile.cc (procedure_arity): new function.
2656
2657 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2658
2659         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
2660
2661 2005-10-25  John Mandereau  <john.mandereau@free.fr>
2662  
2663         * Documentation/user/instrument-notation.itely (Figured bass):
2664         describe new features
2665
2666 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2667
2668         * lily/beam.cc (calc_least_squares_dy): use property callback.
2669
2670         * lily/beam-concave.cc (calc_concaveness): use property callback.
2671
2672         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
2673
2674 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2675
2676         * HACKING: Update.
2677
2678 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2679
2680         * scm/layout-page-layout.scm (page-headfoot): annotate
2681         pagetopspace too.
2682
2683         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
2684
2685         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
2686         doesn't take y-space.
2687
2688         * scm/paper.scm (paper-alist): fix A7 dimensions. 
2689
2690 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2691
2692         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
2693         src-wildcard, remove $(wildcard).
2694
2695         * po/GNUmakefile (PO_FILES): 
2696         * ps/GNUmakefile (PS_FILES): 
2697         * tex/GNUmakefile (TEX_FILES): 
2698         * cygwin/GNUmakefile (POSTINSTALLS):
2699         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
2700         some wildcard calls.
2701
2702 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2703
2704         * THANKS: add Thomas Bushnell.
2705
2706 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2707
2708         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
2709         (lilypond-main): Redirect to gui-main if 'gui is set.
2710         Backportme.
2711
2712         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
2713         for alternative installations kludging s/share/lib/g
2714         LILYPONDPREFIX. Backportme.
2715
2716         * SConstruct (libdir_package_version): Define.
2717
2718         * python/SConscript: 
2719         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
2720         module in libdir.  Backportme.
2721
2722 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2723
2724         * lily/main.cc: clarify --safe.
2725
2726 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2727
2728         * VERSION: release 2.7.14
2729         
2730         * Documentation/user/*.itely: remove minimumVerticalExtent.
2731
2732         * scm/define-grobs.scm (all-grob-descriptions): remove
2733         RemoveEmptyVerticalGroup
2734
2735         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
2736
2737         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
2738         compile on MOSX
2739
2740         * python/convertrules.py (conv): add rules.
2741
2742         * lily/grob.cc: remove is_empty()
2743
2744         * lily/grob-property.cc: remove add_to_list_property().
2745
2746         * scripts/convert-ly.py (datadir): add prefix switching hack to
2747         .py too.
2748
2749         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
2750         space-function tweak.
2751
2752         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
2753
2754         * scm/define-grob-properties.scm (all-user-grob-properties):
2755         remove callback property.
2756
2757         * lily/include/grob.hh (class Grob): remove property_callbacks_
2758         member. Properties of procedure type are assumed to be callbacks.
2759
2760         * lily/ligature-engraver.cc (override_stencil_callback):
2761         rewrite. Use noteHeadLigaturePrimitive as source.
2762
2763         * scm/define-grob-properties.scm (all-internal-grob-properties):
2764         remove ligature-primitive-callback
2765
2766         * lily/include/dimension-cache.hh (class Dimension_cache): make
2767         class, with Grob as friend.
2768
2769         * lily/grob.cc: remove set_extent_callback(), set_extent() and
2770         has_extent_callback()
2771
2772         * scm/translation-functions.scm (format-new-bass-figure): read
2773         figuredBassPlusDirection
2774
2775         * scm/define-context-properties.scm
2776         (all-user-translation-properties): add figuredBassPlusDirection.
2777
2778         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
2779
2780         * lily/align-interface.cc (set_ordered): new function.
2781
2782         * lily/grob.cc (flush_extent_cache): rewrite.
2783
2784         * lily/dimension-cache.cc (Dimension_cache): cache extent as
2785         Interval pointer directly.
2786
2787         * lily/main.cc (setup_paths): insert extra / .
2788         (setup_paths): junk cff entry.
2789
2790         * lily/font-config.cc (init_fontconfig): only add type1 / otf
2791         directories.
2792
2793         * lily/axis-group-engraver.cc (finalize): remove
2794         extraVerticalExtent, minimumVerticalExtent verticalExtent.
2795
2796         * lily/grob.cc (Grob): don't set extent from ctor.
2797         (extent): use property callbacks. 
2798
2799         * lily/axis-group-interface.cc: remove set_axes() function.
2800
2801         * lily/grob-property.cc (del_property): new function.
2802
2803 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2804
2805         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
2806         
2807 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2808
2809         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
2810
2811 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2812
2813         * mf/SConscript: Updates.
2814
2815         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
2816
2817         * stepmake/stepmake/*:
2818         * */GNUmakefile:
2819         * config.make.in:
2820         * GNUmakefile.in:
2821         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
2822         from any directory in build-dir.  Cleanups.
2823
2824         * make/srcdir.make.in: Remove.
2825
2826         * lily/main.cc (setup_paths): Fix and document build-dir hack.
2827
2828         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
2829         main).
2830
2831         * lily/SConscript: Remove ttftools.
2832
2833         * SConstruct: Resurrect.
2834
2835 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2836
2837         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
2838         Y coordinate. 
2839
2840         * lily/paper-book.cc (add_score_title): put Paper_score title into
2841         systems_ list.
2842
2843         * scm/translation-functions.scm (format-new-bass-figure): also
2844         allow plus in combination with _
2845
2846 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2847
2848         * VERSION: 2.7.13 released.
2849
2850         * lily/note-collision.cc (check_meshing_chords): don't wipe
2851         stencil, merely set transparent.
2852
2853         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
2854         (Top): document #'callbacks.
2855         (Top): document nested \override.
2856
2857         * input/regression/figured-bass.ly: update for slash and pluses.
2858
2859         * input/regression/figured-bass-continuation-forbid.ly (Module):
2860         new file.
2861
2862         * scm/translation-functions.scm (format-new-bass-figure): use
2863         slashed-digit if diminished is set.
2864         (format-new-bass-figure): add + if 'augmented is set.
2865
2866         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
2867
2868         * input/test/piano-staff-distance.ly: remove file.
2869
2870         * Documentation/user/advanced-notation.itely (Formatting cue
2871         notes): use length-fraction for making stems/beams smaller.
2872
2873         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
2874         modifications.
2875
2876         * lily/new-figured-bass-engraver.cc: new property
2877         centerFiguredBassContinuations
2878
2879         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2880         use callbacks.
2881
2882         * lily/context-property.cc (execute_general_pushpop_property):
2883         robustness checks.
2884
2885         * input/regression/override-nest.ly: new file.
2886
2887         * python/convertrules.py (FatalConversionError.subber): conversion
2888         rule for #'callbacks
2889
2890         * input/regression/override-nest.ly: new function.
2891
2892         * lily/parser.yy (music_property_def): allow \override #'a #'b =
2893         #c too. 
2894
2895         * lily/context-property.cc (lookup_nested_property): new function.
2896         (evict_from_alist): new function.
2897         (general_pushpop_property): new function.
2898         (execute_general_pushpop_property): rewrite. Support nested
2899         properties too.
2900
2901 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2902
2903         * lily/beam.cc: use length-fraction too.
2904
2905         * scm/define-grob-properties.scm (all-user-grob-properties):
2906         remove property flag-width-function
2907         (all-user-grob-properties): remove space-function.
2908
2909         * scm/layout-beam.scm: remove flag-width-function.
2910
2911         * lily/beam.cc: remove flag-width-function
2912
2913         * scm/layout-beam.scm: remove beam dir functions.
2914
2915         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
2916
2917         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
2918         for easier grace tweaks.
2919
2920         * lily/beam.cc: remove dir-function.
2921
2922         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
2923
2924         * lily/grob.cc: remove spacing-procedure.
2925
2926         * lily/note-head.cc (calc_stem_attachment): new function.
2927         (internal_print): use callback to get glyph-name.
2928
2929         * lily/grob-property.cc (get_interfaces): new function.
2930
2931         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
2932
2933         * lily/stem.cc (calc_stem_end_position): new function.
2934         (calc_length): new function.
2935         document details for stem.
2936         remove Stem::get_direction()
2937
2938         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
2939
2940         * lily/grob-property.cc (set_callback): new function.
2941
2942         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
2943
2944         * lily/item-scheme.cc: new file.
2945
2946         * lily/bar-line.cc (before_line_breaking): remove function.
2947         remove bar-size-procedure, break-glyph-function
2948
2949         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
2950
2951         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
2952
2953         * lily/system-start-delimiter.cc (print): suicide from
2954         here. Remove after_line_breaking_callback.
2955
2956         * lily/script-interface.cc (calc_direction): use callback for direction.
2957
2958         * lily/side-position-interface.cc (aligned_side): don't use
2959         Side_position_interface::get_direction directly. Use callback. 
2960
2961         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
2962         calculate stencil.
2963         (get_print_stencil): rename from get_stencil: create stencil with
2964         transparency, color and cause. 
2965
2966         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
2967
2968         * python/convertrules.py (conv): insert temporary warning rule.
2969
2970         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
2971
2972         * lily/grob-property.cc (try_callback): remove marker if applicable.
2973
2974         * lily/grob.cc: elucidate doc about after/before-line-breaking
2975
2976         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
2977
2978         * lily/stem.cc (height): idem.
2979
2980         * lily/stem-tremolo.cc: idem.
2981
2982         * lily/slur.cc (height): don't use get_uncached_stencil()
2983
2984         * lily/rest.cc (y_offset_callback): use offset callback
2985         iso. after-line-breaking callback.
2986
2987         * lily/grob.cc: change after/before-line-breaking-callback to
2988         after/before-line-breaking dummy properties.
2989
2990         * lily/include/grob.hh: remove Grob_status.
2991
2992         * scm/define-context-properties.scm
2993         (all-user-translation-properties): remove verticalAlignmentChildCallback
2994
2995         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
2996         (calc_direction): use callback
2997         (calc_positions): use callback.
2998
2999         * lily/tie.cc (calc_direction): use callback. Only call parent
3000         positioning for more than one tie.
3001
3002         * lily/tie-column.cc (calc_positioning_done): use callback
3003
3004         * lily/slur-scoring.cc (calc_control_points): use callback
3005
3006         * lily/slur.cc (calc_direction): use callback.
3007
3008         * lily/note-collision.cc (force_shift_callback): remove.
3009
3010         * lily/dot-column.cc (force_shift_callback): remove. Use
3011         other_axis_parent_positioning.
3012
3013         * lily/grob.cc (other_axis_parent_positioning): new function.
3014         (same_axis_parent_positioning): new function
3015
3016         * lily/align-interface.cc (alignment_callback): remove function.
3017
3018         * lily/note-collision.cc (calc_positioning_done): use callback.
3019
3020         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
3021         (calc_direction): idem.
3022         remove print function.
3023
3024         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
3025
3026         * lily/dot-column.cc (calc_positioning_done): use callback.
3027
3028         * lily/break-align-interface.cc (calc_positioning_done): use callback.
3029
3030         * lily/beam.cc (calc_direction): use pseudo-property for beam
3031         direction callback.
3032         (calc_positions): use callback 
3033
3034         * lily/align-interface.cc (calc_positioning_done): use
3035         callback. Fold fixed  distance and normal alignment in one function.
3036
3037         * lily/stem.cc (calc_stem_end_position): use callback.
3038         (calc_positioning_done): idem.
3039         (calc_direction): idem.
3040         (calc_stem_end_position): idem
3041         (calc_stem_info): idem.
3042
3043         * lily/grob-property.cc (get_property_data): new function: 
3044         (try_callback): new function.
3045
3046         * scm/define-grob-properties.scm (all-user-grob-properties): doc
3047         callbacks property.
3048
3049         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
3050
3051 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3052
3053         * lily/tie.cc (get_position): robustness fix. Don't crash if a
3054         tie
3055         has no heads.
3056         
3057         * lily/include/*.hh (Module): compile fixes.
3058
3059 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
3060
3061         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
3062         as an argument for char-syntax: use (char-syntax (or nil 0)) 
3063         instead of (char-syntax nil), thanks to Milan Zamazal.
3064
3065 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3066
3067         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
3068         dist.
3069
3070         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
3071         themselves.
3072
3073 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3074
3075         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
3076         add class_name() method.
3077
3078         * lily/music-scheme.cc: remove ly:music-name.
3079
3080 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3081
3082         * cygwin/postinstall-lilypond.sh: Remove cruft.
3083
3084         * cygwin/postremove-lilypond.sh: Remove.
3085
3086         * cygwin/GNUmakefile (default): Remove postremove rules.
3087
3088 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3089
3090         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
3091         even header too.
3092         
3093         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
3094         MacOS 9 users.
3095
3096         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
3097         consider break index for broken spanner.
3098
3099         * scm/define-markup-commands.scm (wordwrap-string): remove \r
3100         characters from string before splitting.
3101
3102 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3103
3104         * scm/framework-ps.scm (output-preview-framework): use
3105         is-book-title to determine whether to chop off the booktitle.
3106
3107         * lily/paper-book.cc (systems): init from book-title-properties
3108         (add_score_title): init score-title-properties.
3109
3110         * ly/paper-defaults.ly: add {score,book}-title-properties.
3111
3112         * scm/document-backend.scm (lookup-interface): error message if
3113         using unknown interface.
3114
3115         * lily/volta-bracket.cc (after_line_breaking): new function. Set
3116         edge-height.
3117
3118         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
3119         make_bracket.
3120         (make_bracket): new function.
3121
3122         * scm/lily.scm (define-scheme-options): add paper-size option.
3123
3124         * ly/declarations-init.ly (laissezVibrer): get paper size from
3125         -dpaper-size
3126
3127         * scm/translation-functions.scm: use \fontsize for changing the
3128         fontsize.
3129
3130         * scm/define-grobs.scm (all-grob-descriptions): set
3131         between-length-limit to 1.0
3132
3133         * lily/tie-helper.cc: add between_length_limit_ detail property.
3134
3135         * mf/feta-bolletjes.mf: typos.
3136
3137         * lily/note-head.cc (internal_print): don't shadow idx
3138         parameter. This fixes wrong attachment for do shape heads.
3139
3140 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3141
3142         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
3143
3144         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
3145
3146         * scm/layout-slur.scm: rename from slur.scm
3147
3148         * scm/layout-page-layout.scm: rename from page-layout.scm
3149
3150         * scm/layout-beam.scm: rename from beam.scm
3151
3152         * scm/define-grob-interfaces.scm (bass-figure-interface): add
3153         bass-figure-interface
3154
3155         * lily/new-figured-bass-engraver.cc (process_music): add
3156         implicitBassFigures property.
3157         
3158         * scm/define-markup-commands.scm (pad-x): new markup.
3159
3160         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
3161         minimumVerticalExtent on FiguredBass context.
3162
3163         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
3164         case the continuation crosses a line break.
3165
3166 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3167
3168         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
3169         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
3170         absolute file name bug.  Backportme.
3171
3172 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3173
3174         * VERSION (PACKAGE_NAME): release 2.7.12
3175
3176         * input/regression/figured-bass-continuation-center.ly: new file.
3177
3178         * input/regression/beam-outside-beamlets.ly: new file.
3179
3180         * lily/beam.cc (set_beaming): don't clip edges.
3181         (connect_beams): don't clip edges.
3182
3183         * lily/beaming-info.cc (clip_edges): new function.
3184
3185         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
3186
3187         * Documentation/user/instrument-notation.itely (Figured bass):
3188         demonstrate extenders, update seealso links.
3189
3190         * scm/titling.scm (marked-up-headfoot): change tagline
3191         handling. tagline = ##f will blank the tagline as well.
3192
3193 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3194
3195         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
3196
3197         * lily/new-figured-bass-engraver.cc (struct
3198         New_figured_bass_engraver): add new_music_found_ member.
3199
3200         * lily/lilypond-version.cc (Lilypond_version): deal with
3201         incorrectly formatted version strings. 
3202
3203         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
3204         New_figured_bass_engraver by default.
3205
3206         * lily/ttf.cc (print_trailer): only define glyph names when
3207         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
3208
3209 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3210
3211         * lily/horizontal-bracket.cc (make_bracket): new function.
3212
3213         * scm/define-grobs.scm (all-grob-descriptions): new grobs
3214         NewBassFigure, BassFigureBracket, BassFigureContinuation,
3215         BassFigureLine, BassFigureAlignment
3216
3217         * lily/new-figured-bass-engraver.cc (process_music): new file.
3218
3219         * lily/figured-bass-continuation.cc: new file.
3220
3221         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
3222         new file.
3223
3224 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3225
3226         * scripts/lilypond-book.py: Bug fix, put the quote around the
3227         actual score for LaTeX documents.
3228
3229         * scm/define-grobs.scm (all-grob-descriptions): Change
3230         collapse-height of the SystemStartBracket grob to 5.0, 
3231         so the bracket disappears for single stave score lines (similarly
3232         to SystemStartBraces). 
3233
3234         * Documentation/user/advanced-notation.itely (Polymetric
3235         notation): Clarify the use of compressMusic.
3236
3237         * Documentation/user/basic-notation.itely (Grace notes): Clarify
3238         that the grace spacer note in other staves need the same duration
3239         and document the stroke-style property.
3240
3241 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3242
3243         * Documentation/user/global.itely (Vertical spacing): document
3244         alignment-extra-space and fixed-alignment-extra-space.
3245
3246         * Documentation/topdocs/NEWS.tely (Top): add entry.
3247
3248         * input/regression/alignment-vertical-spacing.ly: new file.
3249
3250         * python/convertrules.py (conv): add rule.
3251
3252         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
3253
3254         * lily/align-interface.cc (stretch_after_break): new
3255         function. Read fixed-alignment-extra-space property.
3256         (align_elements_to_extents): read alignment-extra-space property.
3257
3258         * lily/lily-guile.cc (robust_scm2dir): new function.
3259
3260         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
3261         (annotate-space-left): new function. Annotate space left on page. 
3262         (annotate-y-interval): new function.
3263         (paper-system-annotate-last): new function. Annotate bottom-space.
3264
3265         * mf/feta-beugel.mf (y): 
3266
3267 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3268
3269         * VERSION (PACKAGE_NAME):  release 2.7.11
3270
3271         * scm/lily-library.scm (interval-translate): new function
3272         (interval-center): new function. 
3273
3274         * scm/page-layout.scm (paper-system-annotate): new function. Add
3275         arrows for dimensions.
3276  
3277         * scm/stencil.scm (dimension-arrows): new function.
3278
3279         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
3280
3281         * input/regression/page-spacing.ly: add annotatespacing
3282
3283         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
3284         (LY_DEFINE): new function ly:paper-system-set-property!
3285
3286         * Documentation/user/global.itely (Paper size): explain how to add
3287         sizes.
3288
3289         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
3290         correspond to GS's definition.
3291
3292         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
3293         tuplet bracket.
3294         (print): only connect to next bracket if the next one is alive.
3295         (print): set padding to 0.0 if the bound is a breakable
3296         column. This makes tupletFullLength brackets reach up to the staff
3297         line if it doesn't connect to the next line.
3298
3299 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3300
3301         * lily/bar-number-engraver.cc: correct docs.
3302
3303         * scm/output-lib.scm (first-bar-number-invisible): rename from
3304         default-bar-number-visibility
3305
3306 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3307
3308         * scm/define-music-properties.scm (all-music-properties): remove
3309         predicate property.
3310
3311 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
3312
3313         * po/fi.po: refresh.
3314
3315 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3316
3317         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
3318         superfluous s1.
3319         (disappear): bugfix.
3320
3321         * lily/stem-tremolo.cc (raw_stencil): read slope property.
3322
3323         * lily/include/paper-system.hh (class Paper_system): remove
3324         staff_extents_ member.
3325
3326         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
3327
3328         * lily/include/paper-system.hh (class Paper_system): remove
3329         number_ variable. Remove is_title_. Remove break_before_penalty_
3330
3331         * lily/paper-book.cc (systems): use 'number property iso. number_
3332         member.
3333
3334         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
3335         remove ly:paper-system-number.
3336
3337         * scm/lily-library.scm (paper-system-title?): new function.
3338
3339         * lily/book.cc (process): bugfix: flip ?: cases. 
3340
3341         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3342         add outputProperty.
3343
3344         * ly/music-functions-init.ly: add outputProperty music function.
3345
3346         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
3347
3348         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
3349         and next-padding.
3350         (optimal-page-breaks): rename from ly:optimal-page-breaks.
3351
3352         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
3353
3354         * lily/paper-system.cc (internal_get_property): new function.
3355
3356         * Documentation/user/global.itely (Vertical spacing): refer to
3357         page-spacing.ly
3358
3359         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
3360         pagetopspace
3361
3362         * input/regression/page-spacing.ly: new file.
3363
3364         * input/regression/page-top-space.ly: new file.
3365
3366         * lily/spacing-spanner.cc: cmath -> math.h
3367
3368         * lily/paper-system.cc (read_left_bound): new function. Read
3369         line-break-system-details from left bound to determine extents.
3370  
3371         * Documentation/user/programming-interface.itely (Using LilyPond
3372         syntax inside Scheme): change applyxxx -> applyXxx.
3373
3374         * ly/music-functions-init.ly: add outputProperty music function.
3375
3376         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
3377
3378         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
3379
3380         * python/convertrules.py (conv): rule
3381
3382         * ly/music-functions-init.ly: applyxxx -> applyXxx
3383
3384         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
3385         TabVoice to Voice.
3386
3387 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3388
3389         * flower/include/real.hh: include <math.h> iso. <cmath>
3390
3391         * flower/include/offset.hh: include real.hh
3392
3393 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3394
3395         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3396         fix example, now that 'interfaces is no longer directly available.
3397
3398         * lily/book.cc (process): don't crash if paper == NULL.
3399
3400         * po/fr.po: update.
3401
3402 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3403
3404         * scm/define-music-types.scm (music-descriptions): set length and
3405         start-callback for QuoteMusic
3406
3407 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3408
3409         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
3410         arguments. Fixes compilation error with gcc 3.3.
3411
3412 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3413
3414         * VERSION: release 2.7.10
3415
3416         * stepmake/stepmake/python-module-rules.make
3417         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
3418
3419         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
3420         real.hh
3421
3422 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3423
3424         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
3425         -Werror. Otherwise GCC barfs over various optimizations.
3426
3427         * scm/define-grob-properties.scm (all-internal-grob-properties):
3428         add note-head property
3429
3430         * Documentation/user/instrument-notation.itely (Laissez vibrer
3431         ties): new node.
3432
3433         * input/regression/laissez-vibrer-ties.ly: new file.
3434
3435         * lily/laissez-vibrer-engraver.cc: new file.    
3436
3437         * lily/include/tie-column-format.hh: new file.
3438
3439         * lily/tie-column-format.cc: new file. 
3440
3441         * lily/tie-column.cc (set_manual_tie_configuration): new function.
3442
3443         * lily/laissez-vibrer-tie.cc: new file.
3444
3445         * lily/include/laissez-vibrer-tie.hh: new file.
3446
3447         * ly/engraver-init.ly: add Laissez_vibrer_engraver
3448
3449         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
3450
3451         * scm/define-grobs.scm (all-grob-descriptions): add
3452         LaissezVibrerTie, LaissezVibrerTieColumn
3453
3454         * lily/tie-column.cc (set_tie_config_directions): new function
3455         (final_shape_adjustment): new function.
3456         (shift_small_ties): new function.
3457
3458         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
3459
3460         * lily/include/tie.hh (struct Tie_details): add x_gap_
3461         (struct Tie_configuration): add head_position_
3462
3463         * lily/tie-column.cc (set_chord_outline): new function.
3464
3465         * mf/cmr.enc.in:  remove file.
3466
3467 2005-09-11  Graham Percival  <gpermus@gmail.com>
3468
3469         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
3470
3471 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3472
3473         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
3474         reduce aliasing effects.
3475
3476         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
3477         box in skyline.
3478
3479 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3480
3481         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
3482
3483         * flower/include/real.hh: std::fabs too.
3484
3485 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3486
3487         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
3488
3489         * lily, flower: Include C++ iso C headers.  Import namespace std
3490         throughout.
3491
3492         * lily/side-position-interface.cc: 
3493         * lily/scm-hash.cc: 
3494         * lily/note-head.cc: 
3495         * lily/include/includable-lexer.hh: 
3496         * flower/include/string-data.icc: Remove using std::*.
3497
3498         * lily, flower: Include C++ iso C headers.  Import namespace std
3499         throughout.
3500
3501         * lily/side-position-interface.cc: 
3502         * lily/scm-hash.cc: 
3503         * lily/note-head.cc: 
3504         * lily/include/includable-lexer.hh: 
3505         * flower/include/string-data.icc: Remove using std::*.
3506
3507         * Documentation/user/instrument-notation.itely (Entering lyrics):
3508         Multiple latin-1->utf-8 conversion fix.
3509
3510         * Documentation/user/*tely: Update Emacs cookie to utf-8.
3511
3512 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3513
3514         * lily/tie.cc (get_configuration): also avoid dots for non-space
3515         situations.
3516
3517 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3518
3519         * Documentation/user/instrument-notation.itely: Bugfix.
3520
3521 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3522
3523         * tex/GNUmakefile: don't install texinfo.tex
3524
3525         * tex/ : cleanup: remove unused files.
3526
3527         * lily/general-scheme.cc: remove my_{isinf,isnan}.
3528
3529         * flower/include/real.hh: using std::{isnan,isinf}
3530         
3531         * VERSION (PATCH_LEVEL): release 2.7.9
3532
3533 2005-09-05  Graham Percival  <gpermus@gmail.com>
3534
3535         * Documentation/user/ instrument-notation.itely,
3536         advanced-notation.itely: minor tweaks.
3537
3538         * input/test/script-chart.ly: add item padding.
3539
3540 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3541
3542         * flower/offset.cc: use math.h iso. <cmath>
3543
3544         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
3545         of IE users.
3546
3547         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
3548         (widen-left-stencil-edges): new function. Fix alignment problems
3549         with LaTeX includegraphics.
3550
3551         * lily/text-interface.cc (interpret_markup): use abort().
3552
3553 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3554
3555         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
3556
3557         * lily/tie.cc (get_configuration): update bezier shape as we
3558         change Y positions.
3559         (get_configuration): don't move large ties if we're outside of the
3560         staff.
3561
3562 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3563
3564         * scm/define-markup-commands.scm (strut): swap X and Y dims.
3565         
3566 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3567
3568         * .cvsignore: Add auto-generated configure files and then some.
3569
3570 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3571
3572         * scm/define-grobs.scm (DynamicLineSpanner): Add
3573         X-extent-callback.  Fixes hairpin-slur collision.
3574
3575 2005-08-31  Graham Percival  <gpermus@gmail.com>
3576
3577         * Documentation/user/advanced-notation.itely,
3578         basic-notation.itely: minor changes.
3579
3580 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3581
3582         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
3583         \linebreak between each .eps file if \betweenLilyPondSystem is
3584         undefined. 
3585
3586         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
3587         music): Document the \linebreak
3588
3589         * Documentation/user/lilypond-book.itely,
3590         input/tutorial/lbook-latex-test.tex,
3591         Documentation/user/examples.itely: Remove \usepackage{graphics}
3592
3593 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3594
3595         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
3596
3597         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
3598         compat bugfix.
3599
3600         * scripts/lilypond-book.py (PREAMBLE_LY): define
3601         inside-lilypond-book
3602         (modify_preamble): new function. Insert \RequirePackage{graphics}
3603         when no {graphics found in preamble.  
3604
3605 2005-08030  Graham Percival  <gpermus@gmail.com>
3606
3607         * Documentation/user/basic-notation.itely, global.itely,
3608         tutorial.itely: misc small changes.
3609
3610 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3611
3612         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
3613         VERSION.
3614
3615 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3616
3617         * lily/tie-column.cc (new_directions): put Tie down on center
3618         staff line. 
3619
3620         * lily/script-interface.cc (before_line_breaking): use
3621         Grob::programming_error
3622
3623         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
3624
3625         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
3626         of splitext.
3627
3628 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3629
3630         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
3631
3632 2005-08-29  Werner Lemberg  <wl@gnu.org>
3633
3634         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
3635         the `*.scale.pfa' files to avoid warnings.
3636
3637 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3638
3639         * lily/tempo-performer.cc (process_music): idem.
3640
3641         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
3642
3643 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3644
3645         * Documentation/user/advanced-notation.itely (Text markup): not a
3646         fragment.
3647
3648         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
3649
3650         * lily/staff-performer.cc (initialize): add tempo/name to
3651         audio_staff_
3652
3653
3654 2005-08-26  Graham Percival  <gpermus@gmail.com>
3655
3656         * Documentation/user/advanced.itely: add text-only example.
3657
3658         * Documentation/user/invoking.itely: add index entries for
3659         convert-ly.
3660
3661         * Documentation/user/ tutorial.itely, basic-notation.itely:
3662         small fixes suggested by Steve D.  Thanks!
3663
3664 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3665
3666         * input/regression/markup-bidi-pango.ly: new file.
3667
3668         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
3669         standard. Remove #ifdef. Remove memleak.
3670         (text_stencil): use text_dir to decide how to composite items.
3671         (text_stencil): determine uniform text direction for the entire
3672         string.
3673
3674         * scripts/lilypond-book.py (output_name): remove
3675         latex_filter_cmd. Non-portable to non-Unix systems. 
3676         (get_latex_textwidth): use File.write and os.unlink() instead.
3677
3678         * THANKS: add Vicente & Trevor.
3679
3680         * lily/grob.cc (discretionary_processing): look up origin for
3681         programming_error too. 
3682
3683         * input/regression/tie-broken.ly: new file.
3684
3685         * lily/tie-column.cc (set_chord_outlines): set outline for line
3686         break case too.
3687         
3688 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3689
3690         * lily/pango-font.cc (text_stencil): don't translate glyphs in
3691         unscaled transform, just translate stencils.
3692
3693         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
3694         MIDI.
3695
3696         * scm/define-markup-commands.scm (wordwrap-string): use
3697         text-direction
3698         (wordwrap-stencils): idem.
3699         (line): idem.
3700         (fill-line): idem.
3701         (wordwrap-stencils): translate last line to right for
3702         text-direction = LEFT.
3703
3704         * scm/define-grob-properties.scm (all-user-grob-properties): add
3705         text-direction.
3706
3707 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3708
3709         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
3710         when copying a Lily_parser object.
3711
3712 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3713
3714         * scm/define-markup-commands.scm (null): add null markup.
3715
3716 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3717
3718         * lily/item.cc: Add documentation of center-invisible
3719
3720 2005-08-24  Graham Percival  <gpermus@gmail.com>
3721
3722         * Documentation/user/advanced-notation.itely: add info about
3723         raising text.
3724
3725         * Documentation/user/programming-interface.itely: fix example
3726         involving raised text.
3727
3728 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3729
3730         * lily/beam.cc (print): fix X start/end points of isolated
3731         beamlets.
3732
3733         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
3734
3735         * lily/multi-measure-rest.cc (set_text_rods): new function.
3736
3737         * lily/vertical-align-engraver.cc (process_music): call
3738         Align_interface::set_axis(). This forces #'elements to be ordered,
3739         preventing random vertical reordering of staves.
3740
3741         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
3742         add avoid-slur property. 
3743
3744         * Documentation/user/basic-notation.itely (Measure repeats): add
3745         countPercentRepeats example.
3746
3747         * Documentation/user/advanced-notation.itely (Other text markup
3748         issues): remove remark about normal-font.  We have \normal-text
3749
3750         * input/regression/tie-chord.ly: add note about remaining bugs.
3751
3752         * lily/tie.cc (print): try Tie_column::set_directions () if
3753         control-points not yet defined.
3754
3755 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3756
3757         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
3758         extent. This fixes braces falling out of the EPS bbox.
3759
3760         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
3761         exactly to bbox.
3762
3763 2005-08-23  Graham Percival  <gpermus@gmail.com>
3764
3765         * {various} : change #up->#UP and #down->#DOWN.
3766
3767         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
3768
3769         * Documentation/user/advanced-notation.itely: clarify
3770         what objects handles text on a multimeasure rest.
3771
3772 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3773
3774         * VERSION (PATCH_LEVEL): release 2.7.7
3775
3776 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3777
3778         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
3779
3780         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
3781
3782         * input/regression/*.ly: formatting clean-up. Default layout
3783         before music expression.
3784
3785         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
3786         romanze28-2 example.
3787
3788         * scm/ps-to-png.scm: remove dir-re function.
3789         (make-ps-images): generate page names, instead of globbing them.
3790         This brings down LilyPond memory usage for make web by a factor
3791         10. (backportme?) 
3792
3793         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
3794         don't use glob. With 3000 files, globbing
3795         Documentation/user/out-www/ can take too much time. (backportme?)
3796         
3797         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
3798
3799         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
3800
3801         * input/regression/tie-manual.ly: new file
3802
3803         * input/regression/tie-chord.ly: update.
3804
3805         * flower/include/interval.hh (struct Interval_t): 
3806
3807         * lily/tie.cc (distance): new function 
3808         (height): new function.
3809         (init): new function
3810         (Tie_details): new struct.
3811
3812         * lily/skyline.cc (skyline_height): new function.
3813
3814         * lily/tie-column.cc (set_chord_outlines): new function.
3815         (new_directions): read tie-configuration
3816
3817         * lily/skyline.cc: fix ASCII art.
3818         
3819 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3820
3821         * python/convertrules.py (string_or_scheme): Fix spelling error
3822
3823 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3824         
3825         * lily/tie-column.cc (set_directions): set directions only once.
3826         (add_configuration): new function.
3827
3828         * lily/tie.cc (set_control_points): new function
3829
3830         * lily/tie-column.cc (new_directions): new function.
3831
3832         * ly/music-functions-init.ly: set 'pitch property
3833         iso. trill-pitch. This makes \relative work with \pitchedTrill
3834
3835         * lily/tie.cc (get_configuration): new function. Don't generate
3836         control points, rather, generate configuration.
3837         remove head-pair property.
3838
3839         * lily/include/tie.hh (struct Tie_configuration): new struct.
3840
3841 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
3842
3843         * Documentation/topdocs/NEWS.tely: clarify.
3844
3845 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3846
3847         * lily/tie.cc: remove minimum-length
3848
3849         * scm/define-grob-properties.scm (all-user-grob-properties):
3850         remove staffline-clearance, y-offset 
3851
3852         * input/regression/tie-dots.ly (Module): remove.
3853
3854         * lily/tie.cc (get_control_points): rewrite. Put short ties in
3855         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
3856
3857         * input/regression/tie-single.ly: new file.
3858
3859 2005-08-21  Graham Percival  <gpermus@gmail.com>
3860
3861         * ly/bagpipe.ly: fix compile problem.
3862
3863 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3864
3865         * lily/midi-item.cc (name): new method.
3866
3867         * lily/staff-performer.cc (acknowledge_audio_element): use
3868         signature of baseclass.
3869
3870         * lily/engraver-group.cc (do_announces): move recursion call out
3871         of while loop. 
3872
3873         * lily/drum-note-performer.cc (class Drum_note_performer): use
3874         process_music everywhere.
3875
3876         * ly/performer-init.ly: add default children everywhere.
3877
3878         * lily/paper-book.cc (output): call paper-book-write-midis
3879         directly: always write MIDI, even if no \layout {} block. 
3880
3881 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3882
3883         * VERSION (PACKAGE_NAME): release 2.7.6
3884
3885         * lily/percent-repeat-engraver.cc (try_music): don't print warning
3886         about not being able to handle repeat.
3887
3888 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3889
3890         * Documentation/user/examples.itely (Piano templates):
3891         * lily/include/performer-group.hh: Remove last traces of
3892         Performer_group_performer.  Fixes make web.
3893
3894 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3895
3896         * Documentation/user/examples.itely (Piano templates): change
3897         Engraver_group_engraver -> Engraver_group
3898
3899         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
3900         scm_stand_in_procs is not weak_any.
3901
3902         * lily/volta-bracket.cc (print): don't use strcmp().
3903
3904         * lily/volta-engraver.cc (process_music): use
3905         Text_interface::is_markup() for setting the 'text property of the
3906         volta bracket.
3907
3908         * input/mutopia/claop.py (accents): update syntax to 2.6
3909
3910         * scm/define-context-properties.scm
3911         (all-user-translation-properties): add countPercentRepeats.
3912
3913         * Documentation/user/basic-notation.itely (Measure repeats): add
3914         isolated percent example.
3915
3916 2005-08-18  Graham Percival  <gpermus@gmail.com>
3917
3918         * input/ {various}: change direction #1, #-1 to
3919         #up/#down or \fooUp, \fooDown.
3920
3921         * Documentation/user/music-glossary.tely: #-1 to #down.
3922
3923         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
3924         to #up, #-1 to #down.
3925
3926 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3927
3928         * lily/include/engraver-group.hh: rename.
3929
3930         * lily/include/performer-group.hh: rename.
3931
3932 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3933
3934         * input/test/script-abbreviations.ly: Removed some old LaTeX
3935         left overs.
3936
3937 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3938
3939         * python/convertrules.py (conv): inside-slur -> avoid-slur.
3940         Remove functions.  Remove if 1: constructs, reindent.
3941
3942         * scripts/convert-ly.py (add_version): Add functions from
3943         convertrules.py
3944
3945         * scm/script.scm (default-script-alist):
3946         s/priority/script-priority.  Fixes script stacking.  Backportme.
3947         (Fermata): Very low priority.
3948
3949 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3950
3951         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
3952
3953         * input/regression/slur-script.ly: remove padding tweaks. Add
3954         comment strings.
3955
3956         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
3957         time sigs and related stuff.
3958
3959         * scm/define-grob-properties.scm (all-user-grob-properties): add
3960         @code{} tags to property description.
3961
3962         * lily/include/line-group-group-engraver.hh (Module): remove file.
3963
3964         * python/convertrules.py (conv): add rule for
3965         Engraver_group_engraver -> Engraver_group.
3966
3967         * lily/include/performer-group-performer.hh: analogous.
3968
3969         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
3970
3971         * lily/context-def.cc (instantiate): check for
3972         Engraver_group_engraver and Performer_group_performer not
3973         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
3974  
3975 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3976
3977         * input/les-nereides.ly: Remove three fingering tweaks, update
3978         remaining one.
3979
3980         * input/regression/slur-script-inside.ly: Update, fix doc.
3981
3982         * scm/script.scm: Update to avoid-slur.
3983
3984         * scm/define-grob-properties.scm (avoid-slur): New property.
3985
3986         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
3987         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
3988         outside_slur_callback if avoid-slur != #'inside.
3989
3990         * scm/define-grobs.scm (Fingering, Textscript): No
3991         inside-slur/outside-slur preference.
3992         (DynamicLineSpanner): Always outside slur.
3993
3994         * input/regression/slur-script.ly: More tests.
3995
3996 2005-08-17  Graham Percival  <gpermus@gmail.com>
3997
3998         * Documentation/user/lilypond-book: fix notime entry.
3999
4000         * Documentation/user/advanced-notation.itely: add info on
4001         getting an I rehearsal mark.
4002
4003         * Documentation/user/putting.itely: reinstate "I", re-enforce
4004         the fact that \override numbers are the result of
4005         experimentation and personal taste.
4006
4007         * Documentation/user/invoking.itely: update convert-ly bugs.
4008
4009 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4010
4011         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
4012         to #t.
4013
4014         * lily/timing-translator.cc (initialize): don't initialize timing.
4015
4016         * input/regression/stem-spacing.ly (Module): remove file.
4017
4018         * input/regression/spacing-stick-out.ly: specify Score context for
4019         \override
4020
4021         * input/regression/clefs.ly: remove spurious {}s 
4022
4023 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
4024
4025         * Documentation/topdocs/NEWS.tely,
4026         input/regression/repeat-percent-count.ly: clarify a bit.
4027
4028 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4029
4030         * input/no-notation/display-lily-tests.ly: delete
4031         display-lily-init call.
4032
4033         * ly/music-functions-init.ly (displayLilyMusic): move
4034         display-lily-init call at top level, so that the user should not
4035         have to call it.
4036
4037         * scm/define-music-display-methods.scm (note-name->lily-string):
4038         retrieve note names directly from pitchnames using new function `rassoc'.
4039         (display-lily-init): note names list construction removed.
4040
4041 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4042
4043         * THANKS: spello.
4044
4045         * lily/lily-parser.cc (get_header): copy module, instead of
4046         returning it.
4047
4048         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
4049         counters.
4050
4051         * Documentation/user/basic-notation.itely (Measure repeats): add
4052         links to Counter grobs.
4053
4054         * scm/define-grobs.scm (all-grob-descriptions): add
4055         DoublePercentRepeatCounter
4056         (all-grob-descriptions): add PercentRepeatCounter
4057
4058         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
4059         also create counter grobs.
4060
4061         * lily/separation-item.cc (extremal_break_aligned_grob): don't
4062         return grob without space-alist.
4063
4064         * input/proportional.ly: tune staff-padding.
4065
4066         * input/regression/repeat-percent-count.ly: new file. 
4067
4068 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4069
4070         * input/no-notation/display-lily-tests.ly: moved from
4071         input/regression/ to input/no-notation. Be sure to call
4072         `display-lily-init' before trying to use the display function.
4073
4074 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4075
4076         * scripts/lilypond-book.py (option_definitions): Don't localize
4077         the empty string. Fixes bug when --psfonts was used with
4078         non-English locale.
4079
4080 2005-08-15  Graham Percival  <gpermus@gmail.com>
4081
4082         * lily/tuplet-bracket.cc: simple build fix.
4083
4084         * Documentation/user/putting.itely: use "we" instead of "I".
4085
4086         * Documentation/user/basic-notation.itely: cautionary accidentals
4087         work with naturals, too.
4088
4089 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4090
4091         * lily/tuplet-bracket.cc (calc_position_and_height): add
4092         staff-padding support.
4093
4094         * input/proportional.ly: set staff-padding.
4095         
4096         * VERSION (PATCH_LEVEL): release 2.7.5
4097
4098         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
4099         fixes. Remove tweaks.
4100
4101         * input/regression/tuplet-slope.ly: add a test case.
4102
4103         * lily/tuplet-bracket.cc (calc_position_and_height): revert
4104         erroneous fix. Add spanner bounds to offset array with relative X
4105         positions.
4106
4107         * ly/engraver-init.ly: add Rest_engraver only once.
4108
4109         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
4110         (*parser*) lookup if (*parser*) != #f.
4111
4112 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4113
4114         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4115         Cut-and paste update.
4116
4117         * input/regression/slur-script.ly: Add example of reverting
4118         inside-slur for fingering.
4119
4120         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
4121         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
4122
4123         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
4124         outside_slur_callback if inside-slur == #f (as opposed to unset).
4125
4126 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4127
4128         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
4129         encoding files are already removed.
4130
4131 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4132
4133         * Documentation/user/advanced-notation.itely (Instrument names):
4134         Document a workaround for instrument names that collide with
4135         system start braces/brackets.
4136
4137 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4138
4139         * lily/rest-collision.cc (do_shift): spello.
4140
4141         * input/proportional.ly: use #'used property. Set break-overshoot
4142         property.
4143
4144         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
4145
4146         * lily/paper-column.cc: add #'used property
4147
4148         * lily/mark-engraver.cc (stop_translation_timestep): set grob
4149         array for staves found.
4150
4151         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
4152         array for stavesFound.
4153
4154         * lily/staff-spacing.cc (next_note_correction): add fixed and
4155         space to calling convention. This fixes spacing of accidentals
4156         after barlines.
4157
4158         * input/regression/spacing-accidental-stretch.ly: add barline -
4159         accidental case.
4160
4161         * scm/framework-ps.scm (page-header): add version number to
4162         creator
4163         (eps-header): idem.
4164
4165         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
4166         
4167 2005-08-13  Graham Percival  <gpermus@gmail.com>
4168
4169         * Documentation/user/global.itely: add "fit as much as
4170         possible onto this page" example (Vertical spacing).
4171
4172 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4173
4174         * *: Nitpick run.
4175
4176         * buildscripts/fixcc.py: Fixes.
4177
4178 2005-08-12  Graham Percival  <gpermus@gmail.com>
4179
4180         * Documentation/user/advanced-notation.itely: add markup
4181         example to Text spanners.
4182
4183 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4184
4185         * Documentation/user/basic-notation.itely (Ties): Add example of
4186         tying a tremolo to a chord. Thanks to Steve Doonan. 
4187
4188         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
4189         properties and move tieMelismaBusy to the list of written
4190         properties. 
4191
4192 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
4193
4194         * po/TODO: suggest to use a dedicated tool like kbabel.
4195
4196         * po/fi.po: update using kbabel.
4197
4198 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4199
4200         * *: Remove obsolete files.  Nitpick run.
4201
4202         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
4203
4204 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4205
4206         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
4207         too.
4208
4209         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
4210
4211         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
4212         whitespace as symbol separator.
4213
4214         * lily/side-position-interface.cc: Add slur-padding.
4215
4216         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
4217         quite a large fix, and it never worked in a stable release; so not
4218         really a regression.
4219
4220         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
4221         Update cut and paste code from Slur_engraver.
4222
4223         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
4224         Add.
4225
4226         * scm/define-grobs.scm (DynamicLineSpanner): Add
4227         dynamic-line-spanner-interface.
4228         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
4229
4230 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4231
4232         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
4233         to_boolean () so that non-set 'inside-slur means false.
4234
4235         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
4236         slur has control-points.  Skip script without direction.  Always
4237         do_shift if script inside slur, even if slur not contained in
4238         script y-extent.  Increment k in loop.
4239
4240 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4241
4242         * scm/define-markup-commands.scm: Improved regexp to search for
4243         EPS bounding boxes and corrected call to ly:warning.
4244
4245 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4246
4247         * Documentation/user/programming-interface.itely (Displaying music
4248         expressions): doc for \displayLilyMusic. Also some precisions in
4249         "Markup construction in Scheme"
4250
4251 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4252
4253         * scm/define-markup-commands.scm (normal-text): Added 2 new
4254         markup commands, \normal-text and \medium (the latter thanks to
4255         Bruce Fairchild). 
4256
4257 2005-08-08  Graham Percival  <gpermus@gmail.com>
4258
4259         * Documentation/user/programming-interface.itely: fix @{ @}.
4260
4261         * scm/define-markup-commands.scm: add linewidth info to
4262         \justify and \wordwrap, add "upright is the opposite of italic".
4263
4264         * Documentation/user/advanced-notation.itely: shaped->shape,
4265         add (cons (markup "foo")) type of example to text markup,
4266         reword multi-measure rests section.
4267
4268         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
4269         comment.  No actual code was touched.
4270
4271         * Documentation/user/invoking.itely: add more info about
4272         \include.  Thanks, Bruce!
4273
4274         * THANKS: add Bruce Fairchild, alphabetise.
4275
4276         * Documentation/user/global.itely: document \score{\header{}}
4277         behavior.
4278
4279         * Documentation/user/basic-notation.itely: reword multi-measure
4280         rest discussion in Rests.
4281
4282 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4283
4284         * Documentation/user/programming-interface.itely (Markup
4285         construction in Scheme): Corrected example and tried to clarify
4286         the implicit \line in the table.
4287
4288 2005-08-07  Graham Percival  <gpermus@gmail.com>
4289
4290         * Documentation/user/instrument-notation.itely: moved
4291         some bagpipe info back into the bagpipe section.  Somehow
4292         it ended up in the "other vocal issues" section?!  :o_O
4293
4294 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4295
4296         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
4297         directories, not paths).
4298
4299 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4300
4301         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
4302         plain emmentaler/aybabtu.  Backportme.
4303
4304         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
4305         missing dir correction.
4306
4307 2005-08-05  Graham Percival  <gperlist@shaw.ca>
4308
4309         * scm/define-markup-commands: fix reversed justify/wordwrap
4310         doc strings.
4311
4312 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
4313
4314         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
4315         lily/gregorian-ligature-engaver.cc,
4316         lily/include/ligature-engraver.hh,
4317         lily/include/coherent-ligature-engraver.hh,
4318         lily/include/gregorian-ligature-engraver.hh: make these classes
4319         truely abstract.  This should fix some internal oddities such as
4320         duplicate as well as dead translator/property declarations, and
4321         also some dead code.
4322
4323         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
4324         bugfix: avoid message "junking empty ligature" on ligature
4325         brackets by collecting dummy grobs.
4326
4327 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4328
4329         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
4330
4331         * input/proportional.ly (staffKind): bugfix.
4332         (staffKind): updates by Trevor Baca.
4333
4334         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
4335         default layout. 
4336
4337         * lily/tuplet-bracket.cc (print): check whether edge-text is a
4338         pair.
4339
4340         * lily/beam.cc (rest_collision_callback): call position_beam() if
4341         necessary.
4342
4343         * VERSION: release 2.7.4
4344
4345         * input/regression/spacing-uniform-stretching.ly: new file.
4346
4347         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
4348
4349         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
4350         contributor.
4351
4352         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
4353
4354         * input/proportional.ly: new file.
4355
4356         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
4357         columns is empty
4358
4359         * lily/tuplet-engraver.cc (finalize): new function. Reset right
4360         bounds to currentCommandColumn for the last step.
4361         (start_translation_timestep): if tupletFullLength is set, set
4362         bound to Paper Column
4363
4364         * input/regression/tuplet-full-length.ly (indent): new file.
4365
4366         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
4367         clique of loose columns, eg. a set of grace notes in strict
4368         notespacing.
4369
4370         * input/regression/spacing-strict-spacing-grace.ly: new file.
4371
4372         * lily/key-signature-interface.cc: change property name to
4373         alteration-alist
4374
4375         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
4376         keyAccidentalOrder
4377
4378         * python/convertrules.py (conv): keyAccidentalOrder ->
4379         keyAlterationOrder
4380
4381         * lily/key-engraver.cc (create_key): always print a cancellation
4382         for going to C-major/A-minor, regardless of printKeyCancellation.
4383         (create_key): remove typecheck for visibility. This fixes key
4384         signature not being printed.
4385
4386         * lily/spacing-determine-loose-columns.cc: new file.
4387
4388         * input/regression/spacing-strict-notespacing.ly: new file.
4389
4390         * lily/spacing-spanner.cc (generate_springs): rename from
4391         do_measure. 
4392         (generate_pair_spacing): new function.
4393         (init, generate_pair_spacing): set between-cols for floating
4394         nonmusical columns.
4395
4396         * lily/spaceable-grob.cc (get_spring): new function. 
4397
4398         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
4399         relative to the right edge of the prefatory matter.
4400
4401         * lily/beam.cc (print): read break-overshoot to determine where to
4402         stop/start broken beams.
4403
4404         * input/regression/spanner-break-overshoot.ly: new file.
4405
4406 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4407
4408         * ly/bagpipe.ly: updated.
4409
4410         * Documentat/user/instrument.itely: un-comment out bagpipe example.
4411
4412 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4413
4414         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
4415         support: now (de)crescs avoid slurs as well.
4416
4417         * Documentation/user/instrument-notation.itely (Bagpipe example):
4418         comment out non-functioning bagpipe example.
4419         (Bagpipe definitions): idem.
4420
4421         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
4422         (Top): add proportionalNotationDuration example.
4423
4424         * input/regression/spacing-proportional.ly: new file.
4425
4426         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
4427         synched to a beam.
4428
4429         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
4430         fixes beams with a single stem (eg. beams across linebreaks.)
4431
4432         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
4433
4434         * flower/rational.cc (operator +): prevent overflow. This fixes
4435         heavily nested tuplets.
4436
4437         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
4438         have to protect even those unlikely to be corrupted data members.  
4439
4440 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4441
4442         * ly/bagpipe.ly: new file.
4443
4444         * THANKS: added Sven Axelsson.
4445
4446 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4447
4448         * lily/spacing-engraver.cc (stop_translation_timestep): directly
4449         copy proportionalNotationDuration into currentMusicalColumn if
4450         set.
4451
4452         * lily/spacing-spanner.cc (musical_column_spacing): if
4453         uniform-stretching set, fixed space is 0.0
4454
4455         * input/regression/spacing-multi-tuplet.ly: show
4456         uniform-stretching property.
4457
4458         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
4459
4460         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
4461         (struct Spacing_options): new struct.
4462
4463         * lily/spacing-basic.cc: new file.
4464
4465         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
4466         delta_t doesn't have to be smaller than shortest_playing_len
4467
4468 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * input/regression/markup-arrows.ly:  new file.
4471
4472         * lily/tuplet-bracket.cc: document new behavior.
4473
4474         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
4475         with line breaks.
4476
4477         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
4478
4479         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
4480         default 
4481
4482         * lily/tuplet-bracket.cc: add edge-text property.
4483         add break-overshoot.
4484         (print): read break-overshoot.
4485         (print): read edge-text, add stencils.
4486
4487         * mf/feta-arrow.mf: new file.
4488
4489         * mf/feta-generic.mf: add feta-arrow.
4490
4491 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4492
4493         * Documentation/user/lilypond-book.itely (An example of a
4494         musicological document): Added flag -o to dvips for people who use
4495         the default setting in teTeX where output is sent to the printer. 
4496
4497         * Documentation/user/global.itely (Vertical spacing): Added
4498         reference to the Axis_group_engraver which documents the *Extent
4499         properties.
4500
4501 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4502
4503         * Documentation/user/basic-notation.itely (Tuplets): add note
4504         about nested tuplets. Remove BUG. 
4505
4506         * input/regression/tuplet-nest.ly: update: remove manual hack. 
4507
4508         * lily/tuplet-bracket.cc (print): use robust_scm2drul
4509         (print): manually call print() for subtuplets.
4510         (calc_position_and_height): add subtuplets to the
4511         support. Vertically shift outer tuplet 
4512
4513         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
4514         remove-first for Lyrics, ChordNames and FiguredBass
4515
4516         * scm/define-grob-properties.scm (all-internal-grob-properties):
4517         use ly:grob-array? iso. grob-list?
4518         (all-internal-grob-properties): add tuplets grob-array.
4519
4520         * lily/tuplet-bracket.cc (add_tuplet_bracket):
4521         new function
4522
4523 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4524
4525         * input/test/time-signature-staff.ly: new file.
4526
4527         * ly/declarations-init.ly (center): escape to Scheme. Fixes
4528         spurious #<Music FingerEvent> errors. Backportme.
4529
4530 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4531
4532         * Documentation/user/programming-interface.itely (Markup
4533         construction in Scheme): Corrected markup syntax in the
4534         translation table.
4535
4536 2005-08-03  Graham Percival  <gperlist@shaw.ca>
4537
4538         * Documentation/user/instrument-notation.itely: small update
4539         to bagpipe notation docs; thanks Sven!
4540
4541         * Documentation/user/basic-notation.itely: add link about trills.
4542
4543 2005-08-02  Graham Percival  <gperlist@shaw.ca>
4544
4545         * Documentation/user/music-glossary: remove accidentally committed
4546         fink patch.
4547
4548 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
4549
4550         * lily/lily-parser.cc (get_header): new function. Enable multiple
4551         \header definitions.
4552
4553         * lily/parser.yy (lilypond_header_body): use get_header.
4554
4555         * ly/init.ly:
4556         * scm/lily-library.scm (print-score-with-defaults): renamed
4557         $globalheader to $defaultheader
4558         
4559         * Documentation/user/global.itely (Creating titles): added short
4560         explanation that multiple headers are useable.
4561
4562
4563 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4564
4565         * lily/module-scheme.cc (LY_DEFINE): new file. 
4566
4567         * Documentation/user/advanced-notation.itely (Font selection): add
4568         doco for make-pango-font-tree.
4569
4570 2005-07-31  Graham Percival  <gperlist@shaw.ca>
4571
4572         * Documentation/user/music-glossary: more languages
4573         for tenuto.
4574
4575         * Docuemntation/user/instrument-notation.itely: minor
4576         update for bagpipe example.
4577
4578 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4579
4580         * input/regression/+.ly (TODO): add some text.
4581
4582 2005-07-28  Graham Percival  <gperlist@shaw.ca>
4583
4584         * Documentation/user/invoking.itely: \score begins with music.
4585
4586         * Documentation/user/ basic-notation.itely,
4587         instrument-notation.itely: minor changes.
4588
4589         * Documentation/user/music-glossary.itely: began tenuto entry.
4590
4591 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4592
4593         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
4594
4595         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
4596
4597 2005-07-27  Graham Percival  <gperlist@shaw.ca>
4598
4599         * Documentation/user/examples.itely: remove bagpipe template.
4600
4601         * Documentation/user/instrument-notation.itely: add bagpipe
4602         section, maybe fix quotes in lyrics.  I hate text encoding.
4603         Clarify chord durations, more bagpipe stuff.
4604
4605 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4606  
4607         * lily/accidental-engraver.cc: formatting fixes.
4608
4609         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
4610         grob-array.
4611
4612         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
4613
4614         * lily/note-column.cc (arpeggio): new function.
4615
4616         * lily/note-spacing.cc (get_spacing): also take arpeggio into
4617         account for spacing.
4618
4619 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4620
4621         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
4622         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
4623         mingw build.
4624         
4625 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4626
4627         * scm/lily.scm (lilypond-all): clear anonymous modules after
4628         processing files.
4629
4630 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4631
4632         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
4633         SCM_I_CONSP
4634
4635         * VERSION: 2.7.3 released
4636
4637         * Documentation/user/invoking.itely (Invoking lilypond): add
4638         LILYPOND_GC_YIELD documentation.
4639
4640         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
4641         scm_from_real / scm_make_real.
4642
4643         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
4644         higher. This increases memory footprint, but provides overall
4645         speedup of 15 to 20%. 
4646
4647         * lily/include/translator.hh (class Translator): remove
4648         PRECOMPUTED_VIRTUAL everywhere.
4649
4650         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
4651
4652         * lily/context.cc (now_mom): non-recursive now_mom() 
4653
4654         * lily/include/profile.hh: new file.
4655
4656         * lily/profile.cc: new file.
4657
4658         * lily/grob.cc (Grob::Grob): look properties up directly.
4659
4660         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
4661         lookups.
4662
4663         * lily/include/box.hh (class Box): smob Box type.
4664
4665         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
4666
4667         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
4668         protect() and unprotect(). Use throughout.
4669
4670 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4671
4672         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
4673
4674         * scm/define-music-display-methods.scm (markup->lily-string):
4675         markup elements can also be strings (without simple-markup
4676         appended)
4677
4678 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4679
4680         * lily/context.cc (where_defined): also assign value in
4681         where_defined().
4682
4683         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
4684         (curve_coordinate): new function
4685
4686         * lily/simple-spacer.cc (add_columns): only add rods between
4687         column i and begin/end if keep-inside-line is set (this repleces
4688         allow-outside-line as default)
4689
4690 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4691
4692         * lily/tuplet-engraver.cc (start_translation_timestep): only read
4693         tupletSpannerDuration if applicable.
4694
4695         * lily/font-size-engraver.cc (process_music): read fontSize only
4696         once per timestep.
4697
4698         * lily/engraver*cc: use throughout.
4699         
4700         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
4701
4702         * lily/translator.cc (add_acknowledger): new file. Directly jump
4703         into an Engraver::acknowledge_xxx () method based on a grobs
4704         interface-list.
4705
4706         * lily/include/translator-dispatch-list.hh (class
4707         Engraver_dispatch_list): new struct, new file.
4708
4709         * scm/define-context-properties.scm
4710         (all-internal-translation-properties): remove acceptHashTable,
4711         acknowledgeHashTable
4712
4713         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
4714
4715         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
4716         change acknowledgeHashTable to C++ member. 
4717
4718         * lily/rest-collision.cc (do_shift): use extract_grob_set().
4719
4720 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4721
4722         * scm/display-lily.scm: new file. Define a `display-lily-music'
4723         function, that displays the music expression given as an argument,
4724         using LilyPond notation.
4725
4726         * scm/define-music-display-methods.scm: new file. Implementation
4727         of display methods for each music type.
4728
4729         * ly/music-functions-init.ly (displayLilyMusic): new function for
4730         displaying music with LilyPond notation.
4731
4732         * input/regression/display-lily-tests.ly: new regression test file
4733         for `display-lily-music'.
4734
4735         * scm/markup.scm: remove obsolete debugging code (for printing
4736         markups with LilyPond notation).
4737
4738         * scm/define-music-types.scm (music-name-to-property-table):
4739         * scm/clef.scm (supported-clefs): export, in order to be accessible
4740         from the (scm display-lily) module.
4741
4742 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4743
4744         * Documentation/topdocs/NEWS.tely (Top): Typo.
4745
4746 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
4747
4748         * Documentation/index.html.in, Documentation/texinfo.css,
4749           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4750           Documentation/bibliography/index.html.in,
4751           Documentation/bibliography/html-long.bst: revert css-width patch,
4752           it does not work with IE6.
4753
4754 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4755
4756         * Documentation/texinfo.css: revert 760px hack. 
4757
4758         * VERSION: release 2.7.2
4759
4760         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
4761
4762         * Documentation/user/basic-notation.itely (Barnumber check): add
4763         section.
4764
4765         * scm/music-functions.scm (skip-to-last): new function. Show only
4766         last showLastLength part of the \score.
4767
4768         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
4769
4770         * python/convertrules.py (conv): add ly:x-moment rule
4771
4772         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
4773
4774         * Documentation/topdocs/NEWS.tely (Top): add new feature.
4775
4776         * Documentation/user/instrument-notation.itely (Flexibility in
4777         alignment): options in subsections.
4778
4779         * lily/lyric-engraver.cc (process_music): don't typeset text for _
4780         syllable text. Instead, assume that the previous lyric text is a
4781         melismated text.
4782
4783         * Documentation/index.html.in: revert 800x600 change.
4784
4785 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4786
4787         * lily/main.cc (main): Remove invalid handle kludge.
4788
4789         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
4790         (lambda): add gui define.
4791
4792 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4793
4794         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
4795
4796         * Documentation/user/instrument-notation.itely (Musica ficta
4797         accidentals): add section Musica ficta accidentals
4798
4799         * lily/accidental-engraver.cc (make_suggested_accidental): new
4800         function.
4801         (make_standard_accidental): move into new function.
4802         (create_accidental): new function.
4803
4804         * scm/define-grobs.scm (all-grob-descriptions): new Grob
4805         AccidentalSuggestion
4806
4807         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
4808
4809         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
4810         undefined.
4811
4812         * Documentation/user/global.itely (Page formatting): document
4813         horizontalshift.
4814
4815         * scm/page-layout.scm (default-page-music-height):
4816         horizontalshift: new variable, shift all systems by
4817         horizontalshift to the right, to make space for instrument names.
4818
4819         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
4820
4821         * lily/input-scheme.cc (LY_DEFINE): take format commands.
4822
4823 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4824
4825         * lily/note-column.cc (dir): idem.
4826
4827         * lily/spacing-spanner.cc (Module): idem.
4828
4829         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
4830
4831         * lily/include/paper-column.hh (class Paper_column): add
4832         non-static get_rank() member.
4833
4834         * VERSION: release 2.7.1
4835         
4836         * scm/framework-null.scm: new file, used for benchmarking.
4837
4838 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
4839
4840         * Documentation/topdocs/INSTALL.texi, configure.in: fix
4841         version dependencies for fontforge and gs.
4842
4843         * Documentation/index.html.in, Documentation/texinfo.css,
4844         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4845         Documentation/bibliography/index.html.in, 
4846         Documentation/bibliography/html-long.bst: optimize width of
4847         html for a 800x600 screen (width:760), increases printability
4848         when 'fit to page' is not set and readability in wide screens.
4849
4850         * stepmake/bin/add-html-footer.py: add missing </p>.
4851
4852 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4853
4854         * scm/define-markup-commands.scm (beam): use polygon in beam
4855         command.
4856
4857         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
4858         all acknowledged grobs, and do potentially expensive merge and
4859         write in one go.
4860
4861         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
4862
4863         * configure.in (reloc_b): add --enable-static-gxx to statically
4864         link to libstdc++
4865
4866         * lily/GNUmakefile (static-gxx-libs): new target
4867         static-gxx-libs. Create symlink to libstdc++.a
4868
4869         * lily/new-lyric-combine-music-iterator.cc: rename to
4870         Lyric_combine_music_iterator
4871
4872         * lily/lyric-combine-music-iterator.cc
4873         (Old_lyric_combine_music_iterator): rename to
4874         Old_lyric_combine_music_iterator
4875
4876         * lily/*-engraver.cc (various): remove double use of
4877         PRECOMPUTED_VIRTUAL function: only use
4878         start_translation_timestep() and stop_translation_timestep(), not
4879         both.
4880
4881         * lily/break-substitution.cc (fast_substitute_grob_array): do
4882         fast_substitute_grob_array for all unordered grob_arrays.
4883         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
4884         (substitute_grob_array): optimize.
4885
4886         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
4887
4888         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
4889
4890         * lily/parser.yy: revert $globalheader patch.
4891         
4892         * lily/include/translator.icc
4893         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
4894         Translator methods, without _static helper.
4895  
4896         * lily/grob-smob.cc (derived_mark): rename from
4897         do_derived_mark(). Return void.
4898
4899         * scm/define-context-properties.scm
4900         (all-internal-translation-properties): remove tweakCount/tweakRank.
4901
4902         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
4903         predefined break-visibilities.
4904
4905         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
4906         booleans for break-visibility.
4907
4908         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
4909
4910         * python/convertrules.py (conv): rule for Timing_translator. 
4911
4912         * lily/include/translator.icc: new file. 
4913
4914         * lily/paper-column-engraver.cc (process_music): new
4915         file. Separate Paper_column factory from Score_engraver.
4916
4917         * lily/vertically-spaced-context-engraver.cc: administer
4918         spaceable-staves property of System.
4919
4920         * lily/translator-group-ctors.cc: new file.
4921
4922         * lily/context-property.cc (make_grob_from_properties): construct
4923         the right Grob class programmatically, looking at the class entry
4924         for the meta property.
4925
4926         * lily/break-align-engraver.cc (stop_translation_timestep): call
4927         Break_align_interface::add_element() directly.
4928
4929         * lily/context.cc (measure_position): measure_position() is now a
4930         normal function.
4931
4932         * lily/include/translator.hh (class Translator): rename
4933         process_acknowledged_grobs() to process_acknowledged() and move to
4934         Translator.
4935
4936         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
4937         field for each grob description.
4938
4939         * lily/include/translator-group.hh (class Translator_group):
4940         change to base class. Separate class from Translator. This gets
4941         rid of virtual inheritance for Engravers/Performers.
4942
4943         * lily/staff-performer.cc (class Staff_performer): derive
4944         Staff_performer from Performer, not Performer_group_performer 
4945
4946         * Lily/translator-group.cc (precomputed_recurse_over_translators):
4947         new function.
4948         (precompute_method_bindings): new function. Precompute lists of
4949         Translators, so we only call methods (process_music,
4950         start_translation_timestep, etc.) for Translators needing
4951         it. Also: dispose of pointer-to-member-function calls.
4952
4953         * lily/engraver-group-engraver.cc: remove engraver_each,
4954         recurse_down_engravers ()
4955
4956         * lily/note-head.cc (internal_print): only call
4957         glyph-name-procedure if style != default. 
4958
4959 2005-07-16  Graham Percival  <gperlist@shaw.ca>
4960
4961         * ly/titling-init.ly: add printallheaders option.
4962
4963         * Documentation/user/global.itely: document printallheaders.
4964
4965 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4966
4967         * lily/system.cc (do_derived_mark): don't mark from object_alist_
4968         anymore, but do it centrally.  
4969
4970         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4971         hammer hack.
4972
4973         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
4974
4975         * scm/output-lib.scm: remove hammer-print-function.
4976
4977         * lily/include/pointer-group-interface.hh (extract_grob_set): new
4978         macro. Declare a Link_array<Grob> and fill it from a grob.
4979         (extract_item_set): idem for item.
4980
4981         * lily/break-substitution.cc: add header.
4982         (fast_substitute_grob_array): rewrite for Grob_arrays.
4983         (substitute_grob_array): idem.
4984
4985         * lily/group-interface.cc (add_thing): remove file.
4986
4987         * flower/include/parray.hh (class Link_array): slice() is const.
4988
4989         * lily/include/grob-array.hh: new file.
4990
4991         * lily/grob-array.cc (spanner): new file.
4992
4993         * lily/beam-quanting.cc (fill): read details property from beam.
4994
4995         * lily/beam.cc: support details property.
4996
4997         * total speedups below: approx 10%.
4998
4999         * lily/include/beam.hh: new struct, softcode beam quanting parameters
5000
5001         * lily/include/grob.hh (class Grob): add interfaces_ member.
5002
5003         * lily/bezier.cc (init_polynomial_cache): new function: cache
5004         binom(3,j) t^j (1-t)^{3-j}
5005         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
5006
5007         * lily/*.cc: substitution throughout.
5008
5009         * lily/grob-property.cc (internal_get_object): new routine.
5010         (internal_set_object): idem. Store grob refrences in separate
5011         alist. This saves processing time, since properties aren't
5012         break-substituted, and the per grob namespace is smaller, both for
5013         grobs and non-grob properties.
5014
5015         * scm/define-grob-properties.scm (all-internal-grob-properties):
5016         remove center-element.
5017
5018         * lily/grob.cc: remove tweak-count, tweak-rank.
5019
5020 2005-07-15  Graham Percival  <gperlist@shaw.ca>
5021
5022         * Documentation/user/lilypond-book.itely: fixes example.
5023
5024 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5025
5026         * Documentation/user/global.itely (Creating titles):    
5027         * Documentation/user/examples.itely (All headers): change the
5028         place of \header in \score blocks (after music block) to make
5029         examples compile (cf. changes on parser.yy on 2005-07-10)
5030
5031 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5032
5033         * python/convertrules.py: add exc -> ecc rule.
5034
5035         * scripts/convert-ly.py: add location of convertrules.py
5036         in a comment.
5037
5038         * Documentation/user/changing-defaults.itely: fix language.
5039
5040 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5041
5042         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
5043
5044 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5045
5046         * scm/output-socket.scm (grob-bbox): don't use inf? 
5047
5048         * flower/include/rational.hh: add operator bool() 
5049
5050         * scm/define-music-types.scm (music-descriptions): remove
5051         internal-class-name properties.
5052
5053         * lily/include/event.hh: remove file.
5054
5055         * lily/include/music-constructor.hh: remove file.
5056
5057         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
5058         in 'types property.
5059
5060         * lily/music.cc (duration_length_callback): new function.
5061
5062         * lily/event.cc: remove file.
5063
5064         * lily/music-constructor.cc: remove file.
5065
5066         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
5067
5068         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
5069         (get_context_key): idem.
5070
5071         * scm/lily.scm (lambda): new option object-keys (default to #f)
5072
5073         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
5074
5075         * scm/output-gnome.scm: remove beam routine.
5076
5077         * scm/output-ps.scm (scm): idem.
5078
5079         * scm/output-svg.scm: remove beam.
5080
5081         * ps/music-drawing-routines.ps: remove draw_beam.
5082
5083         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
5084
5085         * flower/include/guile-compatibility.hh (scm_from_locale_string):
5086         add scm_from_locale_string compatibility glue. 
5087
5088 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
5089
5090         * scripts/lilypond-book.py: Prevent occuring error when
5091         'lilypond-book --output=foo/ somefile.ly' is executed multiple
5092         times and target file shoud be overwritten.  (Error message said
5093         'input file and output file is same'.)
5094
5095 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5096
5097         * input/regression/slur-extreme.ly,
5098         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
5099         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
5100         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
5101         "excentricity" to "eccentricity".
5102
5103         * Documentation/user/converters.itely: fix URL for Noteedit and
5104         Rosegarden.
5105
5106         * THANKS: added Yoshinobu Ishizaki.
5107
5108 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5109
5110         * scm/define-markup-commands.scm (justify-field): add. 
5111
5112         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
5113
5114 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5115
5116         * lily/lookup.cc (filled_box): express filled_box with
5117         round_filled_box
5118
5119         * scm/midi.scm (paper-book-write-midis): new function. Write all
5120         performances in numbered MIDI files.
5121
5122         * lily/performance-scheme.cc (LY_DEFINE): new file.
5123         (LY_DEFINE): new function ly:performance-write.
5124
5125         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
5126         new function.
5127         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
5128
5129         * scm/framework-*.scm: use port arguments throughout.
5130
5131         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
5132
5133         * lily/paper-outputter.cc (Paper_outputter): take port argument.
5134
5135         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
5136
5137         * scm/framework-texstr.scm (output-framework): 
5138
5139         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
5140
5141         * scm/output-lib.scm (tablature-stem-attachment-function):
5142         tablature stem attachment fix. 
5143
5144 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5145
5146         * lily/bezier.cc: hardcode binomial coefficients of order 3.
5147
5148         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
5149
5150         * scm/define-music-types.scm (music-descriptions): don't use
5151         Music_wrapper type.
5152
5153         * lily/paper-column.cc (print): print moment too.
5154
5155         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
5156         remove compatibility cruft.
5157
5158         * lily/parser.yy (score_body): \score can only begin with Music. 
5159
5160         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
5161         make-score. Take music argument only. Move parser interaction to
5162         Scheme.
5163
5164         * scm/lily-library.scm (scorify-music): new function.
5165
5166         * python/lilylib.py (datadir): remove 2.1 compat kludge.
5167         (datadir): remove resource import.
5168         (print_environment): remove get_bbox()
5169         (cp_to_dir): remove pre 1.5.2 compat glue.
5170
5171 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5172
5173         * lily/include/simple-spacer.hh (Module): idem.
5174
5175         * lily/include/spring.hh (struct Spring): store inverse
5176         strength. This prevents division by zero.
5177
5178         * VERSION: release 2.7.0
5179         
5180         * lily/include/music.hh (class Music): remove Music::duration_log()
5181
5182         * lily/stem-engraver.cc (make_stem): take duration log from event.
5183
5184         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
5185
5186 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5187
5188         * scm/lily.scm (ly:load): load autochange.scm
5189
5190         * Documentation/user/tutorial.itely (Running LilyPond for the
5191         first time): remove reference to DVI/TeX
5192
5193         * scm/define-markup-commands.scm (text): add \text markup command.
5194
5195         * configure.in (reloc_b): bump requirement to Python 2.2.
5196
5197         * lily/include/dots.hh (class Dots): make has_interface() static.
5198
5199         * python/convertrules.py (conv): add rule for ly:grob-default-font
5200
5201         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
5202         alphabetical order.
5203
5204         * input/regression/trill-spanner-pitched.ly: new file.
5205
5206         * lily/font-interface-scheme.cc (LY_DEFINE): function
5207         ly:grob-default-font (changed from get-default-font).
5208
5209         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
5210
5211         * lily/note-head.cc (internal_print): if style is not a symbol,
5212         set style to 'default. 
5213         (internal_print): no style suffix if glyph-name-procedure not
5214         set. Default to quarter head.
5215
5216         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
5217
5218         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
5219
5220         * ly/music-functions-init.ly: \pitchedTrill
5221
5222         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
5223
5224         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
5225
5226         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
5227
5228         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
5229
5230         * po/fr.po: update
5231
5232         * po/de.po: update.
5233
5234 2005-07-06  Graham Percival  <gperlist@shaw.ca>
5235
5236         * Documentation/user/changing-defaults.itely: add link
5237         to grob-iterface.
5238
5239         * Documentation/user/advanced-notation.itely: add material
5240         to Setting automatic beam behaviour.  Thanks, Joe!
5241
5242         * Documentation/user/lilypond.itely: change encoding to utf-8.
5243
5244 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5245
5246         * Documentation/user/advanced-notation.itely (Setting automatic
5247         beam behavior): Correct the documentation of
5248         revert-auto-beam-setting (backportme)
5249
5250 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5251
5252         * lily/ly-module.cc (ly_make_anonymous_module): define
5253         %module-public-interface of module. 
5254
5255         * lily/lily-parser.cc (print_smob): allow printing of parser smob
5256         without lexer.
5257
5258 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5259
5260         * input/regression/fret-diagrams.ly: stretch example.
5261
5262 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5263
5264         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
5265         Fodor).
5266
5267 2005-06-30  Graham Percival  <gperlist@shaw.ca>
5268
5269         * Documentation/topdocs/AUTHORS.texi: update personal web address.
5270
5271         * Documentation/user/examples.itely, lilypond-book.itely:
5272         change \RequirePackage to \usepackage.
5273
5274         * Documentation/user/global.itely: document copyright and tagline.
5275
5276 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5277
5278         * Documentation/user/basic-notation.itely (Transpose): remove link
5279         to nonexistent UntransposableMusic.
5280
5281         * scm/output-svg.scm: remove old definitions.
5282
5283         * scripts/lilypond-book.py (do_file): search for kpsewhich before
5284         invoking.
5285
5286         * python/lilylib.py (search_exe_path): new function.
5287
5288 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5289
5290         * python/lilylib.py (mkdir_p): remove setup_environment()
5291         (backportme)
5292
5293         * buildscripts/mutopia-index.py (headertext): trim text.
5294
5295         * Documentation/topdocs/NEWS.tely (Top): refresh.
5296
5297         * scm/define-markup-commands.scm (wordwrap-string): new function:
5298         split string in paras and words.
5299         (wordwrap-markups): new function.
5300         (wordwrap-stencils): new function. 
5301         (justify): use it.
5302         (wordwrap): use it.
5303         (wordwrap-string): use it
5304         (justify-string): use it.
5305
5306         * scm/lily-library.scm (regexp-split): new function.
5307
5308         * scm/define-markup-commands.scm: remove encoded-simple. 
5309         remove font-markup.
5310         (fontsize): remove old version  of fontsize.
5311         (wordwrap): new markup function. Wrap into paragraphs.
5312
5313         * VERSION: Branch lilypond_2_6
5314         (MINOR_VERSION): go to 2.7.0
5315
5316 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5317
5318         * po/zh_TW.po: update from translation project.
5319
5320 2005-06-28  Graham Percival  <gperlist@shaw.ca>
5321
5322         * scm/midi.scm: compile fix.
5323
5324 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5325
5326         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
5327         patch. Now, the tempfile module is loaded too, not only used.
5328
5329 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
5330
5331         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
5332         0.05 - 1.00 to 0.25 - 1.00
5333
5334         * scm/midi.scm: moved the default-instrument-equalizer procedure
5335         to just under the insturment-equalizer-alist it takes as an
5336         argument.
5337
5338 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5339
5340         * Documentation/user/advanced-notation.itely (Font selection):
5341         remove CMR note.
5342
5343         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
5344
5345 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5346
5347         * THANKS: Add UTF-8 marker.
5348
5349         * Documentation/user/point-and-click.itely (http): Update: use
5350         lilypond-invoke-editor.  Fix: instruct to use user.js.
5351
5352 2005-06-27  Graham Percival  <gperlist@shaw.ca>
5353
5354         * ly/titling-init.ly: implements printpagenumber, increases
5355         space between dedication and title (to avoid collisions with
5356         "g" and "q" in dedication), and nicer logic about copyright
5357         and instrument fields being printed on the first page.
5358         Thanks Vincent!
5359
5360         * Documentation/user/global.itely: document printpagenumber.
5361
5362 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5363
5364         * Documentation/topdocs/NEWS.tely: Update to 2.6.
5365
5366 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5367
5368         * THANKS: update to 2.6
5369
5370         * VERSION: 2.6.0 released.
5371
5372 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5373
5374         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
5375         rule, errorneously removed probably because of misleading comment.
5376
5377 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5378
5379         * python/lilylib.py (datadir): py2exe comments.
5380
5381         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
5382
5383         * configure.in (reloc_b): make fontconfig REQUIRED.
5384
5385 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
5386
5387         * po/fi.po: add latest translations.
5388
5389 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5390
5391         * ChangeLog: recode utf-8
5392
5393         * Documentation/pictures/lilypond.xpm (Module): edited photo as
5394         logo.
5395
5396         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
5397
5398         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
5399
5400         * python/convertrules.py (do_conversion): don't print program_name
5401         from within a module
5402
5403         * configure.in (reloc_b): bump fontforge requirement to 20050624.
5404
5405         * python/convertrules.py (conv): add 2.6.0 dummy rule.
5406
5407 2005-06-23  Graham Percival  <gperlist@shaw.ca>
5408
5409         * Documentation/user/lilypond-book.itely,
5410         Documentation/user/examples.itely: add \RequirePackage{graphics}.
5411
5412         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
5413         fixes baseline-skip.  Thanks Vincent!
5414
5415         * Documentation/user/advanced-notation.itely, global.itely:
5416         moved "Selecting font sizes" to global, since it deals with
5417         notation font size, not text fonts.
5418
5419 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5420
5421         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
5422         to fonts.
5423
5424 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5425
5426         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
5427         workaround since /dev/stdin doesn't work on Cygwin. Using a
5428         temporary file in the current directory since latex doesn't
5429         understand the path name to the default TMP in Cygwin (at least on
5430         win XP).
5431         
5432         * Documentation/user/global.itely (Creating titles): Correct
5433         misprint in example. Thanks to Rob Vlasaty.
5434
5435 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5436
5437         * VERSION (PATCH_LEVEL): release 2.5.32
5438
5439         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
5440         variable in lily module
5441
5442         * scm/framework-ps.scm (output-classic-framework): error message
5443         regarding the classic framework.
5444
5445         * Documentation/user/henle-flat-gray.png (Module): new file.
5446
5447         * Documentation/user/baer-flat-gray.png (Module): new file.
5448
5449         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
5450         whiteout for markups.
5451
5452         * buildscripts/substitute-encoding.py (note_glyph): include _ in
5453         regex too. This fixes change clef appearance in PDF. 
5454
5455         * ttftool/include/*: remove.
5456
5457         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
5458
5459         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
5460
5461         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
5462
5463         * ttftool/*: remove ttftool subdirectory.
5464
5465         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
5466
5467         * lily/ttf.cc (print_header): new file. Convert to type42, using
5468         FreeType to parse the TTF. 
5469
5470         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
5471         and post table may differ. Pass around post_nglyphs as well.
5472
5473 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5474
5475         * ly/music-functions-init.ly (musicMap): new music function
5476         musicMap. 
5477         
5478 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5479
5480         * make/mutopia-rules.make: anti-alias-factor = 2
5481
5482         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
5483         page switch.
5484
5485         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
5486         anti-alias-factor for lilypond-book runs.
5487
5488         * scm/ps-to-png.scm (scale-down-image): new function.
5489         (my-system): new function.
5490         (make-ps-images): blow up GS resolution by anti-alias-factor,
5491         scale down image by anti-alias-factor.  This improves appearance
5492         of bitmaps
5493         (make-ps-images): remove showpage. Fixes spurious empty png at
5494         end.
5495
5496         * scm/framework-ps.scm (write-preamble): downcase filename before
5497         string-matching. Should fix .TTF files (as opposed to ttf files)  
5498
5499         * Documentation/user/tutorial.itely (Running LilyPond for the
5500         first time): separate subsections for windows, macos and unix.  
5501
5502         * Documentation/user/invoking.itely (Updating files with
5503         convert-ly): add MacOS X note.
5504
5505 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5506
5507         * Documentation/user/introduction.itely (Engraving): don't include
5508         file optical-spacing, add directly.
5509
5510         * lily/paper-outputter.cc (file): open file in binary mode. This
5511         fixes OTF embedding on windows.
5512
5513 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5514
5515         * scm/framework-ps.scm (write-preamble): remove debugging output.
5516
5517         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
5518
5519         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
5520         outdir.
5521         (install-fc-cache): install font cache in installation directories.
5522
5523 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5524
5525         * scm/editor.scm (editor-command-template-alist): Use char iso
5526         column, except for Emacs.
5527         (get-editor-command): Substitute char too (Bertalan Fodor).
5528
5529 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5530
5531         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
5532         quoted ~s.  This should fix PNG output on Windows; single quotes
5533         are regular characters on Windows.
5534
5535 2005-06-16  Graham Percival  <gperlist@shaw.ca>
5536
5537         * Documentation/user/basic-notation.itely: include ChoirStaff
5538         in System start delimiters.
5539
5540         * Documentation/user/putting.itely: new doc section on
5541         fixing overlapping notation.
5542
5543 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5544
5545         * Documentation/user/global.itely (Paper size): \paper is in
5546         \book, not \score.
5547
5548         * make/mutopia-rules.make: -ddelete-intermediate-files
5549
5550         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
5551
5552 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5553
5554         * ChangeLog: Recode utf-8.
5555
5556         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
5557         datadir with .py modules.
5558
5559 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
5560
5561         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
5562
5563 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5564
5565         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
5566         
5567         * scm/framework-ps.scm (write-preamble): remove status check.
5568
5569         * Documentation/user/invoking.itely (Updating files with
5570         convert-ly): remove -o option.
5571
5572         * VERSION (PACKAGE_NAME): release 2.5.31
5573
5574         * scm/framework-ps.scm (write-preamble): use ly:system.
5575         (write-preamble): verbosity.
5576
5577         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
5578
5579         * python/convertrules.py: new file. Store conversion rules
5580         separately.
5581
5582 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5583
5584         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
5585
5586 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5587
5588         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
5589         \musicDisplay 
5590
5591         * Documentation/user/instrument-notation.itely (More stanzas): Add
5592         reference to StanzaNumber.
5593
5594 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5595
5596         * THANKS: separate section for website translators.
5597
5598 2005-06-14  Graham Percival  <gperlist@shaw.ca>
5599
5600         * Documentation/topdocs/INSTALL.texi: update vim info;
5601         thanks Simon Bailey!
5602
5603         * Documentation/user/advanced-notation.itely: included
5604         color names.
5605
5606         * Documentation/user/advanced-notation.itely,
5607         Documentation/usr/notation-appendices.itely: moved
5608         color names into an appendix.
5609
5610 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5611         
5612         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
5613
5614         * scm/lily.scm (lambda): initialize program options from here.
5615
5616         * scm/framework-*.scm: add header info.
5617
5618         * lily/main.cc (parse_argv): only set output format to pdf if no
5619         other format specified.
5620
5621         * scm/backend-library.scm (postprocess-output): process
5622         'delete-intermediate-files after running convert-to-*. This fixes
5623         PNG generation when 'delete-intermediate-files is set.
5624         
5625 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5626
5627         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
5628         links on website. 
5629
5630 2005-06-13  Graham Percival  <gperlist@shaw.ca>
5631
5632         * Documentation/topdocs/INSTALL.texi,
5633         Documentation/user/lilypond-book.itely: typos.
5634
5635 2005-06-12  Pal Benko  <benkop@freestart.hu>
5636
5637         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
5638         added between program name and switch; -b changed to -f not
5639         to generate pdf
5640
5641 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5642
5643         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
5644         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
5645
5646         * input/sakura-sakura.ly: add \midi.
5647
5648         * buildscripts/mutopia-index.py (find): use /usr/bin/find
5649         iso. python find. 
5650
5651         * ttftool/test.c (main): cosmetics.
5652
5653         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
5654
5655         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
5656         create a ttf2ps binary.
5657
5658         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
5659
5660         * scm/backend-library.scm (postscript->png): set rename-page-1 to
5661         true.
5662
5663 2005-06-11  Graham Percival <gperlist@shaw.ca>
5664
5665         * Documentation/user/lilypond-book.itely: add warning about
5666         the font warnings in dvips.
5667
5668 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5669
5670         * THANKS: typo
5671
5672         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
5673
5674         * GNUmakefile.in: remove links for .map, .enc
5675         don't fail if out/ doesn't exist yet.
5676
5677 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5678
5679         * ttftool/util.c (surely_read): return nbytes
5680
5681         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
5682
5683         * VERSION (PACKAGE_NAME): release 2.5.30
5684
5685         * flower/string-convert.cc (precision_string): >? fix.
5686
5687         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
5688         (make-ps-images): add verbose -q too.
5689
5690         * lily/default-actions.cc (Module): new file. default
5691         {book,score}-print functions.
5692
5693         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
5694         pass results via parseStringResult, lookup via ly:parser-lookup.  
5695
5696         * lily/lily-parser.cc (Lily_parser): only clone lexer in
5697         constructors.
5698         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
5699         (parse_string): idem.
5700
5701         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
5702
5703         * lily/main.cc (main_with_guile): copy be_verbose_global into
5704         ly_set_option()
5705
5706 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5707
5708         * scm/backend-library.scm (postscript->pdf):
5709         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
5710         verbose mode.  Search for several names of gs executable.
5711
5712 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5713
5714         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
5715         directly. This fixes a massive memory leak, provided you use CVS
5716         GUILE.
5717
5718 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
5719
5720         * ly/property-init.ly: Added tieDashed.
5721
5722         * THANKS: Added some bughunters for 2.5.
5723
5724 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5725
5726         * lily/program-option.cc: add debug-gc option.
5727
5728         * lily/include/lily-guile-macros.hh: don't protect exported module
5729         objects.
5730
5731         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
5732
5733         * scm/backend-library.scm (postscript->pdf): use
5734         delete-intermediate-files iso. running-from-gui? 
5735
5736         * ttftool/util.c (surely_read): robustness. Allow read() to return
5737         less bytes than requested, as per posix standards.
5738
5739         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
5740         program option.
5741
5742         * ttftool/include/ttftool.h ("C"): rename verbosity to
5743         ttf_verbosity. Add to public interface.
5744
5745         * scm/music-functions.scm (unfold-repeats): remove debugging display.
5746
5747         * lily/program-option.cc: rename from scm-option.cc
5748
5749         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
5750         (get_help_string): Print pretty help string.
5751
5752         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
5753         to snippet preamble.
5754
5755         * lily/scm-option.cc: remove command-line-settings option. Fold
5756         all command-line options plus default settings in a generic
5757         interface. 
5758
5759         * flower/getopt-long.cc (table_string): indent 2nd lines of help
5760         texts too.
5761
5762 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5763
5764         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
5765         or EXT_ components non-empty.
5766
5767 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5768
5769         * scm/lily.scm (running-from-gui?): Export.
5770
5771         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
5772         output in .ly source directory.
5773
5774 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5775
5776         * ttftool/util.c (surely_lseek): more verbosity.
5777
5778         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
5779         compile.
5780
5781         * lily/parser.yy (Repeated_music): remove >? 
5782
5783         * scm/backend-library.scm (postscript->pdf): Support for
5784         -dgs-font-load=1
5785
5786         * scm/framework-ps.scm (write-preamble): make font loading
5787         switchable to GS via --define-default gs-font-load=1
5788
5789 2005-06-09  Graham Percival  <gperlist@shaw.ca>
5790
5791         * Documentation/user/global.itely: added \layout docs.
5792
5793 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5794
5795         * lily/lily-parser-scheme.cc: add unistd.h
5796
5797 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5798
5799         * scm/editor.scm: add char argument.
5800
5801         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
5802
5803         * ttftool/util.c (syserror): use errno for better error reporting.
5804
5805         * lily/source-file.cc (get_counts): new function. Calc column,
5806         line and char count in one go.
5807
5808         * lily/binary-source-file.cc (quote_input): rename to quote_input
5809
5810         * lily/input.cc (set): new function.
5811
5812 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5813
5814         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
5815         directory part of file name to search directory.
5816
5817         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
5818         search path and chdir to DIR if --outname=DIR used.
5819
5820         * lily/main.cc (prepend_env_path): Bugfix: Check directory
5821         existence before appending original path.
5822
5823 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5824
5825         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
5826         file" massage.
5827
5828         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
5829         texinfo.tex is always used.
5830         
5831 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5832
5833         * flower/include/axis.hh: rename from axes.hh
5834
5835         * lily/include/text-interface.hh (Module): rename from text-item.hh
5836
5837         * VERSION (PATCH_LEVEL): release 2.5.29
5838
5839         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
5840
5841         * scm/framework-ps.scm (font-file-as-ps-string): new function.
5842         (handle-macfont): new function. Call fondu for Native mac fonts.
5843
5844         * scm/define-markup-commands.scm (fill-line): handle text-widths =
5845         '() case.
5846
5847 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5848
5849         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
5850         multi-page.  Fix .eps regular expression.
5851
5852 2005-06-07  Graham Percival  <gperlist@shaw.ca>
5853
5854         * Documentation/user/putting.itely: add info on modifying templates.
5855
5856         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
5857         misc small changes.
5858
5859 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5860
5861         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
5862
5863         * scripts/lilypond-ps2png.scm
5864
5865         * VERSION (PACKAGE_NAME): release 2.5.28
5866
5867 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5868
5869         * lily/main.cc (prepend_env_path): Do not append /, that does not
5870         work.  Localedir lives in datadir, not in prefix.
5871
5872         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
5873         hack for windows.
5874
5875         * flower/include/file-cookie.hh: Compile fix.
5876
5877 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5878
5879         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
5880
5881         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
5882         system primitives.
5883         (gulp-port): using read-string!/partial. We don't want to read an
5884         entire PS file  (GUILE 1.6 limits strings to 16M) 
5885
5886         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
5887         properties. Add font-interface. 
5888
5889         * scm/define-grob-properties.scm (all-user-grob-properties):
5890         remove old bracket properties.
5891
5892         * scm/x11-color.scm: reformat. 
5893
5894         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
5895         LedgerLineSpanner if new StaffSymbol is found. 
5896
5897         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
5898         staff-symbol for finishing staff. 
5899
5900         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
5901
5902         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
5903         change black to currentColor everywhere. This fixes color support
5904         in SVG.
5905
5906 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
5907
5908         * input/regression/fret-diagrams.ly: new file to test fret diagram
5909         capability
5910
5911         * scm/output-tex.scm: remove white-dot and white-text
5912
5913         * scm/output-ps.scm: remove white-dot and white-text
5914
5915         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
5916         using ly:stencil-in-color instead
5917         (draw-dots) : remove call to white-dot
5918
5919 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5920
5921         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
5922         support.
5923
5924         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
5925
5926         * flower/include/file-cookie.hh: new file. lily_cookie extension 
5927
5928         * flower/file-cookie.cc: new file. lily_cookie extension.
5929         
5930 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5931
5932         * scm/editor.scm (editor-command-template-alist): Add syn
5933         editor (Jaap [de Vos]).
5934
5935 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5936
5937         * scripts/lilypond-ps2png.scm:
5938         * scm/ps-to-png.scm: New file.
5939
5940         * scm/backend-library.scm (postscript->png): Use it.
5941
5942         * scripts/lilypond-ps-to-png.py: Remove file.
5943
5944         * python/lilylib.py (get_bbox, make_ps_images): Remove.
5945
5946 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5947
5948         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
5949
5950         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
5951         start on grace moment. Fixes autobeam-grace.ly.
5952
5953         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
5954         process anything unless we're at the end of a pending beam. Fixes
5955         syncopated 8ths beamed across a beat.
5956
5957 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5958
5959         * scm/editor.scm (editor-command-template-alist): Start emacs if
5960         emacslient fails.
5961
5962         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
5963
5964         * flower/file-path.cc (is_file, is_dir): Export.
5965
5966         * lily/main.cc (prepend_env_path, set_env_file): Use them.
5967
5968 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5969
5970         * lily/easy-notation.cc: Added include cctype to correct
5971         compilation error.
5972
5973 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5974
5975         * scm/backend-library.scm (postscript->pdf): set resolution to
5976         1200, so bitmap fonts aren't that ugly. 
5977
5978         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
5979
5980         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
5981         parent if we have a notehead. Fixes incorrect offsets when
5982         Paper_column is very wide in the X direction.
5983
5984         * input/regression/font-family-override.ly (Module): new file.
5985
5986         * scm/font.scm (make-pango-font-tree): new function.
5987
5988         * lily/beam.cc (before_line_breaking): remove warning about less
5989         than 2 visible stems. We still get a warning when there is only
5990         one stem.
5991
5992 2005-06-01  Werner Lemberg  <wl@gnu.org>
5993
5994         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
5995         correctly.
5996
5997 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5998
5999         * lily/slur-scoring.cc (generate_avoid_offsets): new
6000         function. Generate avoid offsets once per slur.
6001
6002         * lily/slur.cc (add_extra_encompass): add dependency to
6003         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
6004
6005         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
6006         too. Fixes inf error with added bass notes.
6007
6008         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
6009         argument anymore.
6010
6011         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
6012
6013         * input/tutorial/lbook-latex-test.tex: add line length test.
6014
6015         * scripts/lilypond-book.py (set_default_options): new
6016         function. Call this before dissecting snippets, so linewidth
6017         settings reach the snippets.
6018
6019 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6020
6021         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
6022
6023 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6024
6025         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
6026
6027 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6028
6029         * stepmake/aclocal.m4: More autopackage friendliness.
6030
6031 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6032
6033         * Documentation/index.html.in: remove link to LSR.
6034
6035         * Documentation/user/global.itely: remove duplicate
6036         "dedication" \header{} section.
6037
6038 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6039
6040         * VERSION (PACKAGE_NAME): release 2.5.27.
6041
6042         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
6043         too. Plugs memory leak.
6044
6045         * make/lilypond.fedora.spec.in (Group): remove
6046         lilypond-pdfpc-helper.
6047
6048         * scripts/GNUmakefile (SEXECUTABLES): remove
6049         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
6050
6051         * scm/font.scm (make-century-schoolbook-tree): add Mono as
6052         'typewriter family.
6053
6054         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
6055         memory leak.
6056
6057         * lily/parser.yy (score_body): don't clone Score, that's done in
6058         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
6059
6060         * lily/score-engraver.cc (derived_mark): new function.
6061         (initialize): unprotect Paper_score. This fixes a memory leak.
6062
6063         * lily/score-performer.cc (derived_mark): new function.
6064
6065         * lily/score-translator.cc (get_output): use SCM for get_output() call.
6066
6067         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
6068         spurious warning.
6069
6070         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
6071         serif.
6072
6073 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6074
6075         * configure.in (reloc_b): Add --enable-relocation.
6076
6077 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6078
6079         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
6080
6081         * input/regression/alignment-order.ly: add Staff example.
6082
6083 2005-05-31  John Mandereau   <john.mandereau@free.fr>
6084
6085         * po/fr.po: update.
6086
6087 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6088
6089         * Documentation/index.html.in: add link to LSR.
6090
6091 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6092
6093         * scm/define-stencil-commands.scm (Module): new file. Register all
6094         allowed stencil expression heads in a central place.
6095
6096         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
6097         ly:make-stencil
6098
6099         * lily/stencil-expression.cc (all_stencil_heads): registering
6100         stencil expressions.
6101
6102         * lily/stencil-interpret.cc: new file. Stencil expression
6103         interpreting.
6104
6105         * input/xiao-haizi-guai-guai.ly: move file back.
6106
6107 2005-05-30  Graham Percival  <gperlist@shaw.ca>
6108
6109         * Documentation/user/advanced.itely, converters.itely,
6110         instrument-notation.itely, lilypond-book.itely: misc small
6111         changes.
6112
6113 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6114
6115         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
6116
6117         * make/lilypond.fedora.spec.in: Fix source url.
6118
6119         * cygwin: Update from mingw patches.
6120
6121         * scm/editor.scm (editor-command-template-alist): Use jedit
6122         -reuseview (Bertalan), add uedit (Patrick Huberts).
6123
6124         * input/xiao-hai-zi-guai-guai.ly: Rename from
6125         xiao-haizi-guai-guai.ly.
6126
6127         * input/*: Reindent, do not use TAB.
6128
6129         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
6130         white background.
6131
6132 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6133
6134         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
6135         numerical overflow error.
6136
6137 2005-05-29 Laura Conrad <lconrad@laymusic.org>
6138         
6139         * abc2ly.py: fix to syntax error in multi-part output.
6140
6141 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6142
6143         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
6144         with disappearing span bars when alignAboveContext is active
6145
6146         * lily/property-iterator.cc (check_grob): use is-grob?
6147         object-property. Fixes crash-key-sig-font-size.ly. 
6148
6149 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6150
6151         * lily/bar-line.cc (print): don't round barlines; this produces
6152         odd aliasing effects in Acroread.
6153
6154         * lily/timing-engraver.cc (process_music): robustness fix.
6155
6156         * lily/context-def.cc (filter_engravers): bugfix.
6157
6158 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6159
6160         * lily/lilypond.rc.in: Add ly-icon.
6161
6162         * lily/GNUmakefile: 
6163         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
6164         rules.
6165
6166 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6167
6168         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
6169
6170         * ps/music-drawing-routines.ps: 
6171
6172         * scm/output-ps.scm: remove draw ez_ball.
6173
6174         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6175         EasyNotation context definition.
6176
6177         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
6178         Text_interface and color for making easy note heads.
6179
6180         * lily/stencil.cc (with_color): new function.
6181
6182         * ps/music-drawing-routines.ps: remove draw_zigzag_line
6183
6184         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
6185         output routine. Zigzag now works in SVG too.
6186
6187         * scm/output-tex.scm (filledbox): idem.
6188
6189         * scm/output-svg.scm (filledbox): idem.
6190
6191         * scm/output-ps.scm (lily-def): remove horizontal-line. 
6192
6193         * lily/lookup.cc (horizontal_line): use draw-line. 
6194
6195         * lily/system-start-delimiter.cc: remove old staff bracket code.
6196
6197         * mf/feta-haak.mf: further tweaks.
6198
6199         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
6200
6201         * mf/feta-generic.mf: include feta-haak.
6202
6203         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
6204
6205         * scm/framework-ps.scm (write-preamble): only load fonts if their
6206         filename is a string. 
6207
6208 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6209
6210         * scm/output-svg.scm (circle): support circle.
6211         (bracket): stub for bracket.
6212
6213         * scripts/lilypond-book.py (main): make sure --psfonts warning is
6214         correct.
6215
6216 2005-05-26  Graham Percival  <gperlist@shaw.ca>
6217
6218         * Documentation/user/lilypond.tely, advanced-notation.itely,
6219         basic-notation.itely, instrument-notation.itely, global.itely,
6220         introduction.itely, tutorial.itely: rearranging, editing,
6221         clean-up.
6222
6223         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
6224         for compiling on FreeBSD.
6225
6226 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6227
6228         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
6229         otf files.
6230
6231         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
6232         bugfixes.
6233
6234         * VERSION: 2.5.26 released.
6235
6236         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
6237
6238 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
6239
6240         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
6241         if printpagenumber is false.
6242
6243 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6244
6245         * lily/font-config.cc (init_fontconfig): comment out FontConfig
6246         cache warning.
6247
6248         * lily/tie.cc (print): support dotted ties.
6249         
6250 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6251
6252         * scm/define-grobs.scm (all-grob-descriptions): switch off
6253         debugging
6254         (all-grob-descriptions): Arpeggio has Y-extent.
6255
6256         * scm/define-music-properties.scm (all-music-properties): document
6257         length-callback and start-callback as "read-only".
6258
6259         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
6260         length-callback after creation. 
6261
6262         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
6263         compressmusic -> compressMusic.
6264
6265         * ly/music-functions-init.ly (oldaddlyrics): idem.
6266
6267         * lily/parser.yy: NewLyricCombineMusic ->
6268         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
6269
6270 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
6271
6272         * ly/Welcome_to_LilyPond.ly: typo.
6273
6274 2005-05-24  Graham Percival  <gperlist@shaw.ca>
6275
6276         * Documentation/user/lilypond.tely: move changing-defaults to be
6277         before global issues.
6278
6279         * Documentation/user/basic-notation.itely: move Transpose section
6280         here from advanced/Other.
6281
6282         * Documentation/user/changing-defaults.itely,
6283         advanced-notation.itely: move Fonts to advanced, edit.
6284
6285 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6286
6287         * lily/parser.yy (bare_int): remove rule.  From now on, we require
6288         # before negative integers.
6289
6290 2005-05-23  Graham Percival  <gperlist@shaw.ca>
6291
6292         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
6293
6294         * Documentation/user/lilypond.tely: change Unified index to
6295         LilyPond index.
6296
6297         * Documentation/user/advanced-notation.itely,
6298         instrument-notation.itely: editing.
6299
6300 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6301
6302         * scm/lily.scm (lilypond-all): Bugfix: return failed.
6303
6304         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
6305
6306 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6307
6308         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
6309         ly:port-move.  Needs to be stderr-specific on mingw.
6310         Run fixcc.
6311
6312 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6313
6314         * lily/general-scheme.cc (ly:port-move): Remove.
6315
6316         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
6317         windows.
6318
6319         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
6320         variables.  This eliminates the need for a gs.bat wrapper, which
6321         opens a console.
6322
6323         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
6324         * scm/lily.scm (running-from-gui?): 
6325         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
6326         artifact of not compiling with -mwindows.
6327
6328         * scm/editor.scm: Define PLATFORM.
6329
6330 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6331
6332         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
6333         can start to cut & paste lilypond-book fragments.  
6334
6335         * scm/define-music-types.scm (music-descriptions): remove
6336         UntransposableMusic
6337
6338 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6339
6340         * scm/output-ps.scm (glyph-string): remove / before CIDs.
6341
6342 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6343
6344         * Documentation/user/instrument-notation.itely: remove *Engraver.
6345
6346         * Documentation/user/advanced-notation.itely: edit, rearrange.
6347
6348 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6349
6350         * scm/output-ps.scm (glyph-string): take cid? argument. Use
6351         findresource iso. findfont for CID CFF fonts.
6352
6353         * VERSION (PACKAGE_NAME): release 2.5.25
6354
6355         * ly/Welcome_to_LilyPond.ly: add  \version
6356
6357 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6358
6359         * Documentation/user/programming-interface.itely: move
6360         \displayMusic into its own section.
6361
6362         * Documentation/user/basic-notation.itely: finish editing.
6363
6364 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6365
6366         * flower/file-path.cc (find): don't throw away file_name.dir, but
6367         append to it. Fixes \include with directories.
6368
6369         * flower/include/file-path.hh (class File_path): don't derive from
6370         Array<String>.
6371
6372         * flower/include/file-name.hh (class File_name): remove to_str0()
6373
6374         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
6375         Hara_kiri_engraver in separate file.
6376
6377         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
6378         translation went wrong. Fixes vertically translated slurs.
6379
6380 2005-05-19  Graham Percival  <gperlist@shaw.ca>
6381
6382         * Documentation/user/basic-notaton.itely: editing.
6383
6384 2005-05-18  Graham Percival  <gperlist@shaw.ca>
6385
6386         * Documentation/user/macros.itexi, basic-notation.itely:
6387         add @commonprop (commonly used properties) macro.
6388
6389 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6390
6391         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
6392
6393         * scripts/lilypond-book.py (invokes_lilypond): new function
6394         (main): only run fontextract if invokes_lilypond() is true.
6395
6396         * lily/function-documentation.cc (ly_add_function_documentation):
6397         duh, use !=
6398
6399         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
6400
6401         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
6402
6403         * scm/lily.scm (running-from-gui?): lowercase Darwin.
6404
6405         * lily/function-documentation.cc (ly_add_function_documentation):
6406         use scm_hash_table_p() for checking.
6407
6408 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6409
6410         * Documentation/user/advanced-notation.itely (Text scripts):
6411         Change nonexisting @internalsref{Text markup} to @ref{Text
6412         markup}.  Change @internalsref{Text script} to
6413         @internalsref{TextScript}.
6414
6415         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
6416
6417 2005-05-17  Graham Percival  <gperlist@shaw.ca>
6418
6419         * Documentation/user/tutorial.itely, basic-notation.itely,
6420         changing-defaults.itely: remove duplicate cindex entries
6421         that appear on the same page.
6422
6423         * scm/define-grobs.scm: change default padding for TextSpanner.
6424
6425         * Documentation/topdocs/AUTHORS.texi: update email address.
6426
6427         * Documentation/user/global.itely: add info about \include.
6428
6429 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6430
6431         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
6432         when running-from-gui.
6433
6434         * scm/editor.scm (get-editor): Add platform defaults.
6435
6436         * scm/backend-library.scm (postscript->pdf): Typo.
6437
6438 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6439
6440         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
6441
6442         * lily/font-config.cc (init_fontconfig): add warning about cache.
6443
6444 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6445
6446         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
6447
6448 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6449
6450         * lily/horizontal-bracket.cc (print): Take care of the direction
6451         property so brackets above the stave point downwards. 
6452
6453         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
6454         for HorizontalBracket so it doesn't end up within the stave.
6455
6456 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6457
6458         * lily/GNUmakefile (default): Typo.
6459
6460         * scm/lily.scm (PLATFORM): Export.
6461
6462         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
6463         load-font-via-GS, ttftool or fopencookie is broken on windows.
6464         
6465         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
6466         -dSAFER, that is broken on windows.
6467
6468 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6469
6470         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
6471         for FlexLexer.h
6472
6473         * scripts/lilypond-invoke-editor.scm: remove stray -
6474
6475 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6476
6477         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
6478         Fixes deprecation warning.
6479
6480         * flower/include/string.icc (to_string): Only inline if
6481         -DSTRING_UTILS_INLINED.
6482
6483         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
6484         name.  Remove windows comment.
6485
6486         * scm/editor.scm (slashify): New function.
6487         (get-editor-command): Use it.
6488         (get-command-template): Do not alter editor command if
6489         environment value includes `%(file)s' magic.
6490
6491         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
6492         (dissect-uri): Use it.
6493         (unquote-uri): Bugfix.
6494
6495 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6496
6497         * scm/framework-ps.scm (write-preamble): add TTF rule.
6498
6499         * Documentation/topdocs/README.texi (Top): remove note about
6500         xdelta.
6501
6502         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
6503         requirement.
6504
6505         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
6506         function. Figure out where FlexLexer.h lives
6507
6508         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
6509         
6510 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6511
6512         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
6513         with Windows root in file name.
6514
6515         * scm/backend-library.scm (ly:system): Only redirect output (using
6516         system and shell, ugh) if /dev/null is writable.
6517
6518         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
6519         windows icon.
6520
6521         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
6522         on Mingw.
6523
6524         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
6525         click.
6526
6527         * flower/file-path.cc (is_dir, is_file): New function.  Actually
6528         use result of stat when available.
6529
6530         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
6531         absolute file name and root.
6532
6533         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
6534
6535         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
6536
6537         * flower/file-name.cc (slashify): Bugfix, do substitute if no
6538         slashes in file name.
6539
6540 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6541
6542         * Documentation/user/preface.itely (Preface): Run
6543         texinfo-all-menus-update.
6544
6545         * scm/editor.scm (get-editor-command): Bugfix: allow full
6546         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
6547
6548         * Documentation/pictures/lilypond-48.xpm: New file.
6549
6550         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
6551
6552         * ly/Welcome_to_LilyPond.ly: New file.
6553
6554         * lily/main.cc (main): Only identify if we have a terminal.
6555
6556         * scm/backend-library.scm (postscript->png)
6557         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
6558         non-/bin/sh).
6559
6560 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
6561
6562         * Documentation/topdocs/AUTHORS.texi: polish, update.
6563
6564 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6565
6566         * Documentation/user/preface.itely (Notes for version 2.6): new
6567         notes for 2.6
6568
6569         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
6570         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
6571         is not fully contained" warnings.
6572
6573         * lily/slur-scoring.cc (get_bound_info): remove warning.
6574
6575         * lily/staff-symbol-engraver.cc (process_music): start initial
6576         spanner in process_music(). This fixes overrides of StaffSymbol
6577         properties.
6578
6579         * scm/framework-pdf.scm (Module): remove.
6580
6581         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
6582
6583         * lily/ambitus-engraver.cc: formatting cleanups.
6584
6585         * mf/feta-solfa.mf (Module): remove.
6586
6587         * ChangeLog: more details about contributions.
6588
6589 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6590
6591         * lily/align-interface.cc (align_elements_to_extents): warn if
6592         called too early. Fixes: disappearing-staff-lines.ly
6593
6594         * VERSION (PACKAGE_NAME): release 2.5.24
6595
6596 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6597
6598         * stepmake/aclocal.m4: Typo.
6599
6600         * flower/string.cc (substitute): Take two strings or two
6601         characters.  Update callers.
6602
6603 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6604
6605         * flower/file-name.cc (File_name): Slashify.
6606
6607         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
6608
6609         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
6610
6611         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
6612
6613         * configure.in (gui_b): Use it.
6614
6615         * lily/lilypond.rc.in: New file.
6616
6617         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
6618
6619 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6620
6621         * Documentation/user/advanced-notation.itely: edit of Text
6622         section; clarify text scripts vs. text markup.
6623
6624 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6625
6626         * lily/multi-measure-rest-engraver.cc
6627         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
6628         separation items on start. Fixes mm rests in start of score.
6629
6630         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
6631         don't access StaffSymbol if not there.
6632         Fixes: crash-staff-symbol-engraver.ly.
6633
6634         * lily/instrument-name-engraver.cc (class
6635         Instrument_name_engraver): data member first_. Create
6636         InstrumentName on start. 
6637
6638 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6639
6640         * Documentation/user/instrument-notation.itely: add guitar
6641         position.
6642
6643         * Documentation/user/introduction.itely,
6644         Documentation/user/lilypond.tely,
6645         Documentation/user/tutorial.itely: begin pruning
6646         unused (duplicated) cindex entries and misc cleanup.
6647
6648 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6649
6650         * input/test/volta-chord-names.ly: Bring the explanation up to
6651         date.
6652
6653 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6654
6655         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
6656         Specify `@documentencoding utf-8' for html, ignore warnings.
6657
6658 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
6659
6660         * THANKS: Added bughunters.
6661
6662 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6663
6664         * lily/main.cc: update help string for `lilypond -H'.
6665
6666         * po/fi.po: update.
6667         
6668 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6669
6670         * Documentation/user/advanced-notation.itely: minor fixes.
6671
6672 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6673
6674         * scm/editor.scm: New module.
6675
6676         * scm/lily.scm (gui-main): Use it.
6677
6678         * scm/framework-gnome.scm (spawn-editor): Use it.
6679
6680         * scripts/lilypond-invoke-editor.scm: Use it in new script.
6681
6682 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6683
6684         * scm/framework-ps.scm (load-font-via-GS):  new function.
6685
6686         * lily/pango-font.cc (pango_item_string_stencil): add support for
6687         CID keyed font.
6688
6689         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
6690
6691 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6692
6693         * Documentation/user/basic-notation.itely: add @ref.
6694
6695         * Documentation/user/advanced-notation.itely: add example
6696         of 5/8 beaming.
6697
6698 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6699
6700         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
6701
6702         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
6703         going through ps2pdf wrappers.
6704
6705 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
6706
6707         * Documentation/user/instrument-notation.itely: petrucci note
6708         heads: updated docu
6709
6710         * input/regression/note-head-style.ly: updated regression test;
6711         indentation fixes
6712
6713         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
6714         heads as default
6715
6716         * mf/parmesan-heads.mf: minor editing; use musicological names
6717         (rather than optical description) as note head names
6718
6719         * scm/output-lib.scm: complete petrucci heads
6720
6721 2005-05-09  Pal Benko  <benkop@freestart.hu>
6722
6723         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
6724         heads, but bigger)
6725
6726 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6727
6728         * lily/main.cc (main_with_guile): Remove no files check.
6729
6730         * lily/main.cc (ly:usage): Export to Scheme.
6731
6732         * scm/lily.scm (no-files-handler): New function.
6733
6734         * scm/lily.scm (lilypond-main): Use it.
6735
6736         * configure.in (gui_b): Add mbrtowc checking.
6737         Resurrect [utf8/]wchar.h checking.
6738
6739 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6740
6741         * Documentation/user/advanced-notation.itely (Metronome marks):
6742         Add link to the program reference for MetronomeMark
6743
6744         * Documentation/user/lilypond-book.itely (An example of a
6745         musicological document): Correct the example using psfonts 
6746
6747 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
6748
6749         * po/fi.po: update after a lesson how to update entries against
6750         source.
6751         
6752         * po/TODO: document the lesson.
6753
6754 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6755
6756         * configure.in (gui_b): remove wcrtomb checking.
6757
6758         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
6759         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
6760
6761 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6762
6763         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
6764         keep Scheme expressions and strings unmodified when doing the
6765         conversion to postfix notation for slurs and beams. Should
6766         hopefully solve most related conversion problems. 
6767
6768         * Documentation/user/lilypond-book.itely : Clarify and correct how
6769         to call dvips with -h psfonts.
6770
6771 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6772
6773         * Documentation/user/instrument-notation.itely (Entering lyrics):
6774         Typo.  Fixes build.
6775
6776 2005-05-09  Graham Percival  <gperlist@shaw.ca>
6777
6778         * Documentation/user/lilypond-book.itely: document PSFONTS file.
6779
6780         * Documentation/user/lilypond.tely, lilypond-book.itely,
6781         tutorial.itely: change references to 2.5.x to 2.6.x.
6782
6783         * Documentation/user/instrument-notation.itely: clarified \addlyrics
6784         vs \lyricmode.
6785
6786         * Documentation/user/invoking.itely: remove old info about
6787         lilypond-profile.
6788
6789         * Documentation/topdocs/INSTALL.texi: remove old info about
6790         lilypond-profile, add warning about needing international fonts
6791         to build docs.
6792
6793 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6794
6795         * lily/include/grob-info.hh (class Grob_info): make data member
6796         private. Changes throughout.
6797
6798         * input/regression/alignment-order.ly: new file. 
6799
6800         * lily/vertical-align-engraver.cc (acknowledge_grob): read
6801         alignAboveContext and alignBelowContext
6802
6803 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6804
6805         * lily/pfb.cc (LY_DEFINE): add cast.
6806
6807         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
6808         matches .otf
6809         (write-preamble): warn about unknown fonts.
6810
6811         * lily/pfb.cc (Module): new function ly:otf->cff
6812
6813         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
6814         (get_otf_table): new function.
6815
6816 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6817
6818         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
6819         iso. ps2png.
6820
6821 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
6822
6823         * po/fi.po: apply second round of update.
6824
6825 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6826
6827         * scm/x11-color.scm (make-x11-color-handler): don't use
6828         #\sp. Apparently doesn't work on all platforms. 
6829
6830 2005-05-06  Graham Percival  <gperlist@shaw.ca>
6831
6832         * Documentation/user/advanced-notation.itely, putting.itely,
6833         tutorial.itely, global.itely, introduction.itely: really minor fixes.
6834
6835 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6836
6837         * VERSION (PACKAGE_NAME): release 2.5.23
6838
6839 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6840
6841         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
6842         convert to utf-8.
6843
6844         * THANKS: Add translators for this release, convert to utf-8.
6845
6846         * mf/GNUmakefile (MFTRACE_FLAGS):
6847         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
6848         outdir as option (WAS: hardcoded).
6849
6850 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6851
6852         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
6853         finished_span_
6854
6855         * THANKS: add Hans Forbrich.
6856
6857         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6858
6859         * Documentation/user/basic-notation.itely (Staff symbol): document
6860         start/stop staff. Reference to ossia.ly
6861
6862         * input/test/ossia.ly: new example using stop and startStaff.
6863
6864         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
6865         in other words, don't create "|" barline at start of the score.
6866         (start_translation_timestep): don't set whichBar for start of score.
6867
6868         * input/regression/staff-halfway.ly: use new functionality.
6869
6870         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
6871         start and stop staff based on events.
6872
6873         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
6874
6875         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
6876
6877 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6878
6879         * Documentation/user/programming-interface.itely (How markups work
6880         internally ): remove \encoding reference.
6881
6882 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6883
6884         * scripts/convert-ly.py: Attempt to do a smarter update of 
6885         text markups from versions < 1.9.0 with arbitrary nesting.
6886
6887 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6888
6889         * po/fi.po: convert to utf-8, and update.
6890
6891 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6892
6893         * make/lilypond.suse.spec.in: update from suse 2.4 package.
6894
6895         * lily/*.cc: more <? >? to min/max changes
6896
6897         * lily/include/interpretation-context-handle.hh: rename
6898         Interpretation_context_handle to Context_handle.
6899
6900 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6901
6902         * input/regression/GNUmakefile (local_delete): use `find` together 
6903         with `xargs` to avoid too long argument-lists in cmd line.
6904
6905 2005-05-04  Graham Percival  <gperlist@shaw.ca>
6906
6907         * Documentation/user/introduction.itely: updates "About this manual".
6908
6909         * Documentation/user/advanced-notation.itely,
6910         invoking.itely: minor fixes.
6911
6912 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6913
6914         * COPYING: add font exception. Update FSF address. 
6915
6916         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
6917         should be taken without child context.
6918
6919         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
6920
6921         * scm/define-markup-commands.scm (triangle): new command, as
6922         robust replacement for unicode Delta/Triangle.
6923
6924 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6925
6926         * ps/music-drawing-routines.ps: add fillp argument.
6927
6928         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
6929
6930         * lily/font-config.cc (init_fontconfig): don't add cff/
6931
6932         * VERSION (PACKAGE_NAME): release 2.5.22
6933
6934         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
6935
6936         * lily/grace-engraver.cc (consider_change_grace_settings): use
6937         is_alias(). Fixes problem with CueVoice grace notes. 
6938
6939         * lily/simultaneous-music-iterator.cc (construct_children): call
6940         Music_iterator::quit() for iterators that start out invalid. This
6941         fixes indefinitely continuing contexts.
6942
6943         * buildscripts/substitute-encoding.py: new file
6944
6945         * Documentation/user/basic-notation.itely (Basic polyphony): fix
6946         missing @end 
6947
6948         * scripts/lilypond-book.py (write_if_updated): print file name.
6949
6950         * Documentation/user/basic-notation.itely (Explicitly
6951         instantiating voices): idem.
6952
6953         * Documentation/user/advanced-notation.itely (Text spanners):
6954         remove stray { } 
6955
6956         * lily/context.cc (default_child_context_name): the default child
6957         is now first in accepts_list_.
6958
6959         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6960         \defaultchild to all relevant contexts.  This fixes:
6961         drums-pitch.ly.
6962
6963         (Probably also fixes similar problems with ancient
6964         transcriptions getting CueVoices instead of the desired voices.)
6965  
6966         * lily/context-def.cc (get_default_child): new function.
6967         (get_accepted): place default child in front of list.
6968
6969         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
6970
6971         * lily/include/context-def.hh (struct Context_def): add
6972         default_accept_
6973
6974 2005-05-03  Graham Percival  <gperlist@shaw.ca>
6975
6976         * scm/define-grobs.scm: remove "remove-first" line, since
6977         the absent property is set to #f anyway.
6978
6979         * Documentation/user/basic-notation.itely,
6980         advanced-notation.itely, instrument-notation.itely: minor
6981         fixes.
6982
6983         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
6984
6985         * Documentation/user/advanced-notation.itely,
6986         changing-defaults.itely: consolidate Text stuff in
6987         advanced notation.
6988
6989         * Documentation/user/global.itely: better docs for \header.
6990
6991         * Documentation/user/putting.itely: new chapter; placeholder
6992         for future expansion.
6993
6994         * Documentation/user/examples.itely: moved "suggestions for
6995         writing LP files" section into putting.itely.
6996
6997         * Documentation/user/lilypond.itely: added new chapter,
6998         fixed the short table of contents.
6999
7000 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7001
7002         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
7003         infinity for unfeasible beams.
7004
7005         * make/lilypond.fedora.spec.in (Group): idem.
7006
7007         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
7008
7009         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
7010
7011         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
7012         fonts directly.
7013
7014         * buildscripts/gen-emmentaler-scripts.py (i): idem.
7015
7016         * mf/GNUmakefile: remove all CFF rules.
7017
7018         * scm/framework-ps.scm (ps-embed-cff): reinstate.
7019
7020         * lily/open-type-font-scheme.cc (LY_DEFINE):
7021         new function ly:otf-font-table-data.
7022         (LY_DEFINE): new function otf-font?
7023
7024 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7025
7026         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
7027         ($(outdir)/Fontmap.lily): idem.
7028
7029         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
7030         for PFAEmmentaler-XXX.pfa. 
7031
7032         * Documentation/user/music-glossary.tely (accidental): NL
7033         translation of accidental.
7034
7035 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7036
7037         * flower/include/international.hh: Bugfix: include "string.hh".
7038
7039         * lily/include/mingw-compatibility.hh: New file.
7040
7041         * flower/include/libc-extension.hh (memrev): Rename from strrev.
7042
7043         * configure.in: Search for mingw wcrtomb library.
7044
7045 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7046
7047         * scripts/convert-ly.py: Bug fix
7048
7049         * Documentation/user/changing-defaults.itely (Common tweaks):
7050         Added example where the context has to be specified explicitly
7051         (MetronomeMark). 
7052
7053 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7054
7055         * scripts/lilypond-book.py (ly_options): set timing to #f for
7056         notime option.
7057
7058         * scripts/convert-ly.py (conv): typo.
7059
7060         * flower/*.cc: remove <? and >?
7061         
7062         * lily/*.cc: remove <? and >?
7063
7064         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
7065         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
7066         editor.
7067
7068 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7069
7070         * lily/part-combine-engraver.cc: add space to variable list.
7071
7072 2005-04-30  Graham Percival  <gperlist@shaw.ca>
7073
7074         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
7075         remove-first to false (matches docs)
7076
7077         * Documentation/user/advanced-notation.itely: corrected docs
7078         concerning remove-first.
7079
7080 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7081
7082         * lily/part-combine-engraver.cc: make sure that the relevant
7083         properties are included in the documentation.
7084
7085 2005-04-28  Graham Percival  <gperlist@shaw.ca>
7086
7087         * Documentation/user/lilypond-book.itely: Bernard's docs
7088         for \betweenLilyPondSystem.
7089
7090 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7091
7092         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
7093         remarks.
7094
7095 2005-04-28  Pal Benko  <benkop@freestart.hu>
7096
7097         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
7098         only on vertical lines of flexa shape, and use a constant
7099         thickness value for horizontal lines (patch slightly modified by
7100         Jürgen Reuter)
7101
7102         * lily/include/mensural-ligature.hh: make 2 comments clearer
7103
7104 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
7105
7106         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
7107         to need_extra_horizontal_space; bugfix: use class scope to avoid
7108         global namespace pollution
7109
7110         * Documentation/user/instrument-notation.itely (ligatures): added
7111         comment on possible future syntax change and how to work around
7112
7113         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
7114         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
7115         intervals (fixes agnus dei example)
7116
7117         * Documentation/user/instrument-notation.itely (white mensural
7118         ligatures): selected a more illustrative example
7119
7120 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
7121
7122         * Documentation/index.html.in: specify utf-8 charset in meta content.
7123
7124 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7125
7126         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
7127         empty 2nd page for single page.
7128
7129         * scm/lily.scm: remove p&c definitions.
7130
7131         * po/zh_TW.po (Module): new translation.
7132
7133         * lily/lily-guile.cc (ly_chain_assoc): remove.
7134
7135         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
7136         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
7137
7138 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7139
7140         * lily/beaming-info.cc: remove infinity_i
7141
7142         * scripts/abc2ly.py (out_filename): fix thinko with \version.
7143
7144 2005-04-26  Graham Percival  <gperlist@shaw.ca>
7145
7146         * Documentation/user/basic-notation.itely,
7147         instrument-notation.itely, advanced-notation.itely,
7148         changing-defaults.itely: minor fixes.  Added docs
7149         for colors to advanced-notation.itely.
7150
7151         * Documentation/user/advanced-notation.itely: fixed compile
7152         problem and added Bernard's x11-color doc patch.
7153
7154 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7155
7156         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
7157         alright this time round.
7158
7159 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7160
7161         * Documentation/topdocs/INSTALL.texi (Top): idem.
7162
7163         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
7164
7165         * VERSION (MAJOR_VERSION): release 2.5.21
7166
7167         * scm/output-ps.scm (grob-cause): bugfix.
7168
7169 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7170
7171         * cygwin/*: Update.
7172
7173         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
7174         stuff.
7175
7176         * scm/output-ps.scm (grob-cause): Bugfix.
7177
7178         * scm/lily.scm (ly:load): Remove x11-color.
7179
7180         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
7181         quote executable, fixes getting version from program --with
7182         --options.
7183         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
7184         $ac_exeect.
7185
7186         * Documentation/user/GNUmakefile: Only build music-glossary with
7187         rendered lilypond snippets during web.
7188
7189 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7190
7191         * po/de.po: update.
7192
7193         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
7194
7195 2005-04-22  Laura Conrad <lconrad@laymusic.org>
7196  
7197         * scripts/abc2ly:
7198         second title line append with punctuation dash character;
7199         encode abc2ly python strings in utf-8
7200        
7201 2005-04-21  Laura Conrad <lconrad@laymusic.org>
7202
7203         * scripts/abc2ly fix chords (again)
7204  
7205 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
7206
7207         * scm/x11-color.scm: new file
7208         All x11 color names can be accessed with:
7209         #(x11-color 'ColorName),
7210         #(x11-color "ColorName") or:
7211         #(x11-color "color name")
7212         If the x11 color name is not recognised then it defaults
7213         to black
7214
7215         * scm/lily.scm: amended to call scm/x11-color.scm
7216
7217 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7218
7219         * Documentation/user/invoking.itely (Reporting bugs): comment out
7220         reference to online PNG bug repository.
7221
7222 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7223
7224         * lily/translator-scheme.cc (ly:translator-property): Remove.
7225         Update callers.
7226
7227         * lily/context-scheme.cc (ly:context-now): Move from translator.
7228         Update callers.
7229
7230 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7231
7232         * input/regression/grid-lines.ly (skips): refine example.
7233
7234         * scm/define-context-properties.scm
7235         (all-user-translation-properties): doc autoBeamCheck
7236
7237         * input/regression/grid-lines.ly (Module): new file.
7238
7239         * lily/grid-point-engraver.cc (Module): new file.
7240
7241         * lily/grid-line.cc (Module): new file.
7242
7243         * lily/grid-line-span-engraver.cc (Module): new file.
7244
7245         * lily/grid-line-interface.cc (Module): new file.
7246
7247 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7248
7249         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
7250         missing parameter, actualy cdr through list.  Actually return a
7251         list with ENTRY removed (was '()).
7252
7253         * scripts/convert-ly.py: Update.  Print warning if file cannot be
7254         opened.
7255         (do_conversion): Fix printing of continuation comma.
7256
7257         * Documentation/user/advanced-notation.itely (Beam formatting):
7258         Remove refbugs about compound time and mixed duration.
7259
7260         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
7261         modulo moments explicitely.
7262
7263         * lily/moment.cc (operator %): New function.
7264
7265         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
7266
7267         * lily/translator-scheme.cc (ly:translator-now,
7268         ly:translator-property): New function.
7269
7270         * scm/auto-beam.scm (default-auto-beam-check): New function.
7271
7272         * lily/auto-beam-engraver.cc (test_moment): Use it.
7273
7274         * flower/rational.cc (operator %): Bugfix.
7275
7276 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
7277
7278         * scripts/abc2ly: Bugfix
7279
7280 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7281
7282         * python/fontextract.py (write_extracted_fonts): bugfix, too many
7283         %'s on EndFont comment.
7284
7285         * lily/ledger-line-spanner.cc: some more words of explanation.
7286
7287 2005-04-20  John Williams <williams@tni.com>  
7288         
7289         * scripts/lilypond-book.py: htmlquote bugfix.
7290         Allow snippets to be given distinct filenames.
7291         Allow the default alt text to be overridden.
7292
7293 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
7294
7295         * ly/performer-init.ly: Bugfix
7296
7297         * THANKS: Added bughunters.
7298
7299 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7300
7301         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
7302
7303         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
7304         position (was: use modulo measure length).
7305
7306         * configure.in (no gui_b): Remove optional gtk+ requirement.
7307
7308 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7309
7310         * Documentation/user/basic-notation.itely (Pitches): add
7311         LedgerLineSpanner.
7312
7313         * lily/dynamic-engraver.cc (process_music): set right bound to
7314         script if present. Else, do not set.
7315         (acknowledge_grob): only set right bound of finished spanner to
7316         note column if no other bound is set.
7317
7318         * python/lilylib.py (make_ps_images): switch back to png16m.
7319         
7320 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7321
7322         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
7323         writing up to date file.  Add dvips usage suggestion.
7324
7325         * scripts/convert-ly.py: Fix error message.
7326         Print usage if no files on command line.
7327         (usage): Add example usage.
7328
7329         * input/test/compound-time.ly: New file.
7330
7331         * input/test/circle.ly: New file.
7332
7333         * Documentation/topdocs/NEWS.tely: Use them.
7334
7335         * input/test/boxed-stencil.ly: Remove \score.
7336
7337         * buildscripts/mf-to-table.py (base): Add .log dependency.
7338
7339         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
7340         pfa's.  Add .log dependency
7341
7342         * scm/define-markup-commands.scm (lower): New command.
7343
7344         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
7345         make it default.
7346
7347 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7348
7349         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
7350         also to finished cresc as right bound. This fixes:
7351         skip-string-decresc.ly
7352
7353         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
7354         relative_coordinate if extent is empty.
7355
7356         * lily/stem.cc (width_callback): determine correct extent if flag
7357         is not there. This fixes slur-no-flag.ly
7358
7359         * lily/grace-engraver.cc (consider_change_grace_settings): new
7360         function.
7361         (initialize): also consider_change_grace_settings() on
7362         initialization. Fixes large grace notes at start of score.
7363
7364         * lily/break-align-interface.cc (do_alignment): don't translate if
7365         total_extent is empty.
7366
7367         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
7368
7369 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7370
7371         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
7372         with slash.
7373
7374 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7375
7376         * stepmake/aclocal.m4: Remove tfm_path.
7377
7378 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7379
7380         * scm/music-functions.scm (markup-expression->make-markup): fix
7381         bug with cons arguments of markup commands.
7382         (music->make-music): fix music expression property list building
7383
7384 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7385
7386         * aclocal.m4: Massage package names.
7387
7388         * SCons updates.
7389
7390 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7391
7392         * VERSION (PACKAGE_NAME): release 2.5.20
7393
7394         * lily/stem.cc (calc_stem_info): add minimum Y extent of
7395         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
7396
7397         * lily/percent-repeat-engraver.cc (try_music): add measure before
7398         next_moment to future processing moment. Fixes:
7399         percent-repeat-mm-rest.ly
7400         (process_music): don't add moment for 2nd time.
7401
7402         * input/regression/repeat-percent.ly: add mmrests as extra test.
7403
7404         * lily/axis-group-engraver.cc (acknowledge_grob): read
7405         keepAliveInterfaces to decide what to kill.
7406
7407         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
7408         percent-repeat-interface to keepAliveInterfaces. This fixes
7409         percent-repeat-harakiri.
7410
7411 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7412
7413         * SCons updates.
7414
7415 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7416
7417         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
7418
7419         * aclocal.m4: remove --enable-tfm-path configure option
7420
7421         * input/test/ancient-font.ly (lowerStaff): clef name errors.
7422
7423         * scm/backend-library.scm (postscript->png): newline after
7424         finishing command.
7425
7426         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
7427         (LY_DEFINE): ly:paper-score-paper-systems: new function 
7428
7429         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
7430
7431         * lily/score.cc (default_rendering): use Music_output too.
7432
7433         * input/test/chord-names-languages.ly (Module): rename file.
7434
7435         * lily/text-spanner.cc: add bound-padding.
7436
7437         * lily/paper-book.cc (systems): accept Paper_score
7438         iso. Paper_system vector. 
7439
7440         * input/regression/line-arrows.ly: new file.
7441
7442         * lily/paper-score.cc (process): run get_paper_systems() only once.
7443
7444         * lily/line-spanner.cc (line_stencil): add arrows.
7445
7446 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
7447
7448         * lily/line-interface.cc (make_arrow): new function. 
7449         (arrows): idem.
7450
7451 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
7452
7453         * input/test/chord-names-german.ly: update for italian/french
7454         chords.
7455         
7456         * Documentation/user/instrument-notation.itely (Printing chord
7457         names): update.
7458
7459 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7460
7461         * lily/include/paper-score.hh (class Paper_score): remove unused
7462         prototypes.
7463
7464         * lily/book.cc (process): add -COUNT to midi output.
7465
7466         * lily/score.cc (book_rendering): remove outname argument
7467         (book_rendering): return list of Music_outputs. 
7468
7469         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
7470
7471         * lily/book.cc (process): loop over Music_outputs returned from
7472         Score::book_rendering().
7473
7474         * lily/*.cc (width_callback): remove spurious "unused" warnings
7475         for assert (axis==[XY]_AXIS); 
7476
7477         * lily/include/music-output.hh (class Music_output): smobify class.
7478
7479         * lily/include/paper-score.hh (class Paper_score): make members
7480         private.
7481
7482         * lily/performance.cc (process): return #f iso. #<undefined>. This
7483         prevents #<undefined> leaking into GUILE-userspace.
7484
7485 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7486
7487         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
7488
7489 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
7490
7491         * scm/chord-name.scm : support for italian and french
7492         chords names.
7493
7494         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
7495         a space defined by chordPrefixSpacer when the root name is
7496         direclty followed by a prefix.
7497
7498         * ly/engraver-init.ly : chordPrefixSpacer       
7499         * scm/define-context-properties.scm : chordPrefixSpacer
7500         * ly/property-init.ly : italianChords, frenchChords 
7501
7502 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7503
7504         * mf/feta-din.mf: Remove.
7505
7506         * mf/GNUmakefile (fontdir): Bugfix.
7507
7508         * mf/SConstruct: Some updates.
7509
7510         * SConstruct: Require pkg-config.
7511         (test_program): Bugfix for double digit version compares, use
7512         integer (not string-) compare.
7513         Optionally require gs 8.14.
7514
7515         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
7516
7517         * lily/*: s/ifdef HAVE_*/if have/.
7518
7519         * SConstruct (test_lib): New function.  Update pkg-config and some
7520         other requirements.
7521
7522         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
7523         freetype, pangof2t.
7524
7525 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7526
7527         * po/lilypond.pot, ...: Update using bison-CVS.
7528
7529         * python/lilylib.py (make_ps_images): Fixo.
7530
7531 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7532
7533         * python/lilylib.py (make_ps_images): typo.
7534
7535         * configure.in (gui_b): make bison optional.
7536
7537         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
7538
7539 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
7540
7541         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
7542         with one parameter can be defined in a LaTeX file when processed
7543         by lilypond-book this will be evaluated between the systems of
7544         a multi-system score. The parameter is the number of systems processed.
7545
7546 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7547
7548         * python/lilylib.py (make_ps_images): Escape newline.
7549
7550         * Documentation/user/music-glossary.tely: Run
7551         texinfo-all-menus-update.
7552
7553 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7554
7555         * scm/lily-library.scm (old-relative-not-used-message)
7556         (version-not-seen-message): Add input-file-name-location to message.
7557
7558         * lily/parser.yy (lilypond): Add token aliases.
7559
7560         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
7561         not confuse with alteration.
7562         (alteration): Add.
7563
7564 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7565
7566         * python/lilylib.py (make_ps_images): use -dEPSCrop
7567
7568         * VERSION (PACKAGE_NAME): release 2.5.19 
7569
7570         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
7571         only put xrefs in info documentation.
7572
7573         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
7574         .pdf rule to tex-rules.make.
7575
7576         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
7577         from -systems.* output.
7578
7579         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
7580         directly, remove -$(PAGESIZE) target.
7581
7582         * input/test/embedded-postscript.ly: update.
7583
7584 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7585
7586         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
7587
7588         * Documentation/user/changing-defaults.itely (Font selection):
7589         document font-name.
7590
7591         * input/regression/font-name.ly: show Pango fonts for
7592         font-name. Update example. 
7593
7594         * lily/pango-select.cc (properties_to_pango_description): don't
7595         convert symbol font-size to number, but use to lookup.
7596
7597         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
7598
7599         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
7600         (NAME . FILE-NAME) tuples for font descriptions. 
7601         (write-preamble): display BeginFont DSC comments.
7602
7603         * python/fontextract.py (write_extracted_fonts): new file. Extract
7604         font resources from a PS file.
7605
7606         * scripts/lilypond-book.py (option_definitions): --psfonts option.
7607         (Compile_error.process_include): do_file returns chunks.
7608
7609         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
7610
7611         * make/lysdoc-targets.make: .texi is .PRECIOUS
7612
7613         * scripts/lilypond-book.py (write_if_updated): new function.
7614
7615 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7616
7617         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
7618
7619 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7620
7621         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
7622
7623         * input/regression/markup-syntax.ly: remove \score.
7624
7625         * scm/define-markup-commands.scm (draw-circle): add fill argument
7626
7627         * scm/stencil.scm (make-circle-stencil): add fill argument
7628
7629         * ps/music-drawing-routines.ps: add fill argument.
7630
7631         * ly/performer-init.ly: add CueVoice to MIDI too.
7632
7633         * ps/music-drawing-routines.ps: new routine BeginEPSF /
7634         EndEPSF.
7635
7636         * input/regression/markup-eps.ly: new file.
7637
7638         * scm/framework-ps.scm (write-preamble): change order: vars should
7639         be inited before procedures.
7640
7641         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
7642         for EPS files.
7643
7644         * scm/define-markup-commands.scm (epsfile): add epsfile command.
7645
7646 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7647
7648         * configure.in (gui_b): add check for ghostscript 8.15
7649
7650 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7651
7652         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
7653         start of line. Fixes cresc-after-newline.ly
7654
7655         * lily/source-file.cc (file_line_column_string): use get_column().
7656
7657 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7658
7659         * lily/source-file.cc (get_column): utf-8 support for column numbers.
7660
7661 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7662
7663         * lily/*: use message () iso progress_indication () for messages.
7664         Revise/uniformise user messages.
7665
7666         * flower/warn.cc (progress_indication): New function.
7667         (message): Use it.  Fixes newline problems.
7668
7669         * config.make.in (webdir): Sort out install dirs.
7670
7671         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
7672
7673         * python/lilylib.py (command_name): Bugfix.
7674         (make_ps_images):
7675
7676 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
7677
7678         * lily/main.cc: --help says what types of backends are availabe
7679
7680 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7681
7682         Fix ./VERSION dependency, and without need to reconfigure.
7683
7684         * lily/main.cc (setup_paths): Update.
7685
7686         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
7687
7688         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
7689
7690         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
7691         Add \line for some simplistic cases.
7692
7693         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
7694
7695 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7696
7697         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
7698         to compile LY files (useful for adding eg. "-I" args)
7699         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
7700         2Gnome command for gnome backend.
7701         (LilyPond-command-formatgnome): call the 2Gnome command. key
7702         binding: C-c C-g
7703
7704 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7705
7706         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
7707         depend on all PNG images.
7708
7709 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7710
7711         * GNUmakefile.in: Bugfix: also link .map files.
7712
7713 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7714
7715         * scm/music-functions.scm (music->make-music): generate 
7716         a (make-music ...) sexpr from a music expression.
7717         (display-scheme-music): use guile pretty printer to display the
7718         make-music sexpr.
7719
7720 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7721
7722         * ly/engraver-init.ly: reindent.
7723         Add CueVoice.
7724
7725         * scm/music-functions.scm (music-pretty-string): handle moments
7726         too.
7727         (music-pretty-string): only print non-empty lists.
7728         (cue-substitute): create CueVoice context, which has smaller type.
7729
7730         * lily/moment-scheme.cc (LY_DEFINE): new methods
7731         ly:moment-grace-{numerator,denominator}
7732
7733         * lily/context-handle.cc: remove quit() method. 
7734
7735         * lily/font-config.cc (init_fontconfig): be verbose about font path.
7736         (init_fontconfig): success is 0, not !0
7737
7738 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7739
7740         * mf/feta-nummer-code.mf (code): add plus glyph.
7741
7742         * lily/tie.cc (print): idem.
7743
7744         * lily/slur.cc (print): don't use thickness property for
7745         slur shape-thickness.
7746
7747         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
7748         while adding stencils.
7749
7750         * scm/define-markup-commands.scm (with-color): with-color markup
7751         command.
7752         (whiteout): new markup command 
7753         (filled-box): new markup command
7754
7755 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7756
7757         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
7758         test for PDF docs.
7759
7760         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
7761         PFAAybabtu-Regular.  Fixes feta font in PDFs.
7762         
7763         Notes for tetex-3.0 make web:
7764            psclean.map: s/uhv8a/uhvr8a/
7765            config.ps add:
7766                 p +psfonts_t1.map
7767                 p +psclean.map
7768                 p +typeface.map
7769
7770 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7771
7772         * scm/music-functions.scm (music-pretty-string): fix bug with
7773         string argument.
7774
7775 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7776
7777         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
7778
7779 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7780
7781         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
7782         only process options if they're there.
7783         (write_file_map): add version-seen? to snippet-map.ly
7784
7785 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7786
7787         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
7788         formatting cleanups.
7789
7790         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
7791         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
7792
7793 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7794
7795         * scm/framework-ps.scm (ps-font-command): don't hash, just use
7796         name directly.
7797
7798         * lily/main.cc (setup_paths): either add mf/out to search path or 
7799         fonts/{otf,type1,etc}
7800         
7801         * lily/font-config.cc (init_fontconfig): either add mf/out to
7802         FontConfig or fonts/{otf,type1,etc}
7803
7804         * GNUmakefile.in: don't put mf/ link in share/ dir.
7805
7806         * lily/staff-spacing.cc: move same-direction-correction to
7807         note-spacing-interface
7808
7809         * scm/lily.scm (lilypond-main): use variable argument count for
7810         exception handler.
7811
7812         * lily/font-config.cc (init_fontconfig): add operator pacification
7813         message.
7814
7815         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
7816
7817         * buildscripts/gen-emmentaler-scripts.py (i): generate
7818         PFAEmmentaler as well.
7819
7820         * scm/framework-ps.scm (munge-lily-font-name): new function
7821         (write-preamble): hack: insert PFA equivalent of CFF into
7822         .PS. This makes LilyPond output printable on normal PS printers
7823         again.
7824
7825         * buildscripts/gen-emmentaler-scripts.py (i): generate
7826         PFAEmmentaler.pfa aswell.
7827
7828 2005-04-06  John Williams <williams@tni.com>  
7829         
7830         * scripts/lilypond-book.py: refactor the compose_ly procedure.
7831         
7832 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7833
7834         * scm/page-layout.scm (default-page-make-stencil): always combine
7835         the header stencil, even if empty. This prevents the body text to
7836         reach up to the margins.
7837
7838         * po/rw.po (Module): new file, for Kinyarwanda.
7839
7840         * input/test/spacing-optical.ly (Module): new file.
7841
7842         * lily/staff-spacing.cc: add same-direction-correction
7843
7844 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7845
7846         * Documentation/user/introduction.itely (Engraving): Comment-out
7847         non-existent file.
7848
7849 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7850
7851         * scm/define-grob-properties.scm (all-user-grob-properties): add
7852         same-direction-correction
7853
7854         * VERSION: release 2.5.18
7855
7856 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
7857
7858         * lily/grob.cc (mark_smob): Check pscore->layout_ before
7859         dereferencing.  Fixes make web.
7860
7861         * lily/midi-stream.cc: Handle unwritable midi file.  Include
7862         errno.h.
7863
7864         * Documentation/user/: Fix links.
7865
7866 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7867
7868         * lily/text-interface.cc (Module): rename from text-item.cc
7869
7870         * input/regression/apply-output.ly (texidoc): function naming fix.
7871
7872         * lily/time-signature-performer.cc (derived_mark): new function.
7873
7874         * lily/lily-parser-scheme.cc:  print mapped file name for progress
7875
7876         * scripts/lilypond-book.py (find_linestarts): new function.
7877         (find_toplevel_snippets): keep track of line numbers.
7878
7879         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
7880         all key changes.
7881
7882         * ly/declarations-init.ly (partCombineListener): use
7883         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
7884
7885         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
7886
7887 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
7888
7889         * lily/text-item.cc: Fix link.
7890
7891         * Documentation/user/changing-defaults.itely (Changing defaults):
7892         Fix programs reference links.
7893
7894         * Documentation/user/music-glossary.tely: Convert to utf-8.
7895
7896 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7897
7898         * make/lilypond-vars.make: remove TEXMF from variables.
7899         remove DEB_BUILD pk font variables.
7900         remove GUILE_LOAD_PATH
7901         remove TeX memory vars.
7902
7903 2005-04-04  Werner Lemberg  <wl@gnu.org>
7904
7905         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
7906
7907 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7908
7909         * ps/lilyponddefs.ps: remove reencode-font
7910
7911         * lily/simple-spacer.cc (add_columns): also compare
7912         directly. Column rank doesn't distinguish between broken and
7913         unbroken columns. This fixes large spaces before time sig changes.
7914
7915         * Documentation/user/point-and-click.itely: document ly:set-option.
7916
7917         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
7918         point_and_click_global is set.
7919
7920         * lily/scm-option.cc (LY_DEFINE): add point-and-click
7921         ly:set-option argument.
7922
7923 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7924
7925         * GNUmakefile.in: Include symlinks in webball.
7926
7927         * Documentation/user/GNUmakefile (source-links): Add symlinks to
7928         source dir for split and non-split manuals.
7929
7930         * Documentation/user/*y: Fix @uref/@inputfile links for
7931         split/non-split HTML documents.
7932
7933         * Documentation/user/GNUmakefile (local-WWW): Do not generate
7934         .ps.gz.
7935         
7936 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7937
7938         * GNUmakefile.in: Add newline.
7939
7940 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
7941
7942         * tex/lilyponddefs.tex: use color instead of xcolor
7943         * scm/output-tex.scm: minor editing
7944
7945 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7946
7947         * scm/music-functions.scm (display-scheme-music): pretty printer
7948         for music expressions.
7949
7950 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7951
7952         * buildscripts/install-info-html.sh (index_file): Fix link.
7953
7954 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7955
7956         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
7957
7958         * Documentation/index.html.in: Add size estimates with some big pages.
7959
7960         * Documentation/user/tutorial.itely (Running LilyPond for the
7961         first time): Add/replace some @rglos links.  TODO: add more
7962         @rglos links in tutorial, test non-intrusiveness (.css).
7963
7964         * stepmake/bin/add-html-footer.py (do_file): Remove info's
7965         annoying's indication of referencing external document.
7966
7967         * Documentation/user/GNUmakefile: Split version of glossary too.
7968         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
7969         links, not only for html.
7970
7971         * Documentation/user/introduction.itely: Fix some links for other
7972         than html, do not use `here' as link name.
7973
7974 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7975
7976         * scm/documentation-generate.scm (string-append): Fix @usermanref,
7977         @glossaryref.
7978
7979 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7980
7981         * scm/page-layout.scm (default-page-make-stencil): only add header
7982         if existing and not empty. Fixes spurious programming error.
7983
7984         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
7985
7986 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
7987
7988         * scm/output-tex.scm: implement {re,}setcolor
7989         * tex/lilyponddefs.tex: use color package
7990
7991 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7992
7993         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
7994         additions to website.
7995
7996         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
7997
7998         * Documentation/user/macros.itexi: Fix @usermanref html links in
7999         split documents: use @inforef.
8000
8001 2005-03-30  Graham Percival  <gperlist@shaw.ca>
8002
8003         * Documentation/user/programming-interface.itely: minor fix.
8004
8005         * Documentation/user/advanced-notation.itely: added info to
8006         Metronome markings.
8007
8008 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8009
8010         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
8011         use box-stencil.  Remove y-padding argument.
8012         (make-stencil-circler): New function.
8013
8014         * buildscripts/lilypond-words.py (F): 
8015         * elisp/SConscript (a): 
8016         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
8017         * vim/SConscript (a): 
8018         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
8019
8020         * lily/general-scheme.cc: Build fix.
8021
8022         * scm/markup.scm:
8023         * input/regression/markup-scheme.ly: 
8024         * input/regression/markup-syntax.ly: Drop 'new-' from name.
8025
8026         * scm/stencil.scm (make-circle-stencil): New function.
8027
8028         * scm/define-markup-commands.scm (draw-circle): Use it.  New
8029         name (was cicle).  Update callers.
8030         (circle): New markup command, similar to box.
8031
8032         * scm/stencil.scm (circle-stencil): New function.
8033
8034 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
8035
8036         * configure.in: Detect libutf8/wchar.h variant.
8037
8038         * stepmake/aclocal.m4: Modify shared size test.
8039
8040 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8041
8042         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
8043
8044 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8045
8046         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
8047         
8048         * VERSION (PACKAGE_NAME):  release 2.5.17
8049
8050 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
8051
8052         * scm/backend-library.scm (postscript->png): Fix comment and png
8053         message.
8054
8055         * GNUmakefile.in (link-tree): Fix locales.
8056
8057 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8058
8059         * lily/stencil-scheme.cc (LY_DEFINE): change to
8060         ly:stencil-aligned-to, non mutating.
8061
8062         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
8063
8064         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
8065
8066         * lily/quote-iterator.cc (derived_mark): call
8067         Music_wrapper_iterator::derived_mark() too.
8068
8069         * lily/grace-engraver.cc (derived_mark): change signature, add
8070         const.
8071
8072 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8073
8074         * SConstruct (symlink): 
8075         * GNUmakefile.in (link-tree): Add scripts to prefix.
8076
8077         * lily/general-scheme.cc (ly:effective-prefix): New function.
8078
8079         * scm/backend-library.scm (postscript->png): Use it.
8080
8081 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8082
8083         * lily/paper-score.cc (process): don't delete grobs after
8084         producing stencils. 
8085
8086         * scm/part-combiner.scm (determine-split-list): switch off
8087         debugging info.
8088
8089         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
8090         if available.
8091
8092         * scm/define-context-properties.scm
8093         (all-user-translation-properties): add stringNumberOrientations.
8094
8095         * lily/new-fingering-engraver.cc (position_scripts): make generic,
8096         so fingering and string-numbers are separately controlled.
8097
8098 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8099
8100         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
8101         not use debugging.
8102
8103 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8104
8105         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
8106
8107         * config.hh.in: add HAVE_FONTCONFIG.
8108
8109         * Documentation/user/instrument-notation.itely (String number
8110         indications): new node.
8111
8112         * input/regression/new-markup-syntax.ly (texidoc): add circle.
8113
8114         * lily/new-fingering-engraver.cc (add_string): new function. 
8115         (acknowledge_grob): accept string-number-event as well.
8116
8117         * scm/define-markup-commands.scm (circle): new markup command.
8118
8119         * scm/output-lib.scm (print-circled-text-callback): new function.
8120
8121         * lily/GNUmakefile: move ifeq after include stepmake.make.
8122
8123 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8124
8125         * config.make.in (HAVE_LIBKPATHSEA_SO):
8126         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
8127
8128         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
8129         add KPATHSEA_LIBS.
8130
8131         * debian/watch: 
8132         * debian/control: Update.
8133
8134 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8135
8136         * input/test/title-markup.ly (spaceTest): remove.
8137
8138         * input/test/embedded-tex.ly (Module): remove.
8139
8140         * input/test/music-box.ly: use 'name property, not ly:music-name.
8141
8142         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
8143
8144         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
8145
8146 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8147
8148         * Documentation/topdocs/INSTALL.texi (Top): Remove information
8149         about xdeltas.  Add information about CVS.
8150
8151         * scm/lily.scm (lilypond-main): Fix invocation of handler,
8152         gracefully handle failed files.
8153
8154         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
8155
8156         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
8157         small fixes.
8158
8159         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
8160         No unnecessarily specific i18n messages.  Remove stray `1'.
8161
8162 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8163
8164         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
8165         documentencoding
8166
8167         * scm/documentation-lib.scm (texi-file-head): set utf-8
8168         documentencoding.
8169
8170         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
8171         Delta, not the Symbol one. 
8172
8173         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
8174         for the .map file.
8175
8176         * Documentation/topdocs/INSTALL.texi (Top): add running
8177         requirement as compilation requirement.
8178
8179 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8180
8181         * buildscripts/mutopia-index.py (headertext): add h1 header and
8182         utf-8 charset meta field.
8183
8184         * input/GNUmakefile: prune example list.
8185
8186         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
8187         options.
8188
8189         * lily/slur-scoring.cc (get_base_attachments): only look at stem
8190         extent for visible stems.
8191
8192         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
8193
8194 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8195
8196         * Documentation/topdocs/INSTALL.texi (Top): Updates.
8197
8198         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
8199
8200 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8201
8202         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
8203         pass inf/nan into slur scoring.
8204
8205         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
8206         page.
8207
8208         * scripts/abc2ly.py (dump_voices): use alphabet().
8209
8210 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
8211         
8212         * mf/GNUmakefile (depth): use $(FONTFORGE). 
8213
8214 2005-03-27 Matthias Neeracher <neeracher@mac.com>
8215         
8216         * flower/include/virtual-methods.hh: simplify. Patch by
8217
8218 2005-03-25  John Williams <williams@tni.com>  
8219
8220         * scripts/lilypond-book.py (main): add png for HTML too, guess
8221         only if necessary. 
8222
8223 2005-03-25  Graham Percival  <gperlist@shaw.ca>
8224
8225         * Documentation/topdocs/INSTALL.texi: now recommends
8226         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
8227
8228         * Documentation/user/basic-notation.itely,
8229         Documentation/user/tutoria.itely: warn about
8230         only one (phrasing) slur at once.
8231
8232 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
8233
8234         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
8235
8236 2005-03-23  Graham Percival  <gperlist@shaw.ca>
8237
8238         * Documentation/user/basic-notation.itely: fixed info about
8239         ending a (de)cresc.
8240
8241         * Documentation/user/lilypond-book.itely: fixed
8242         lilypond-book filter example and warned about not doing
8243         --filter and --process at the same time.
8244
8245 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8246
8247         * lily/parser.yy (bass_number),
8248         Documentation/user/instrument-notation.itely (Figured bass): 
8249         Add the possibility to use text markup in figured bass. 
8250
8251 2005-03-19  Graham Percival  <gperlist@shaw.ca>
8252
8253         * Documentation/user/global.itely: added info about naming
8254         identifiers and breakbefore.
8255
8256         * Documentation/user/invoking.itely: added info about batch
8257         processing files with convert-ly, removed references to TeX
8258         in the jail section.
8259
8260         * Documentation/user/examples.itely: possibly fixed piano
8261         dynamics.
8262
8263         * Documentation/user/advanced-notation.itely: added info
8264         about removing other types of Staff.
8265
8266         * Documentation/user/instrument-notation.itely: possibly
8267         fixed piano staff line switch.
8268
8269         * Documentation/user/changing-defaults.itely: added info
8270         about using normal font in titles.
8271
8272 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8273
8274         * VERSION (PATCH_LEVEL): release 2.5.16
8275
8276         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
8277         explicitly.
8278
8279 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8280
8281         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
8282         whitespace.
8283
8284         * python/lilylib.py (make_ps_images):
8285         * scm/backend-library.scm (postscript->pdf, postscript->png):
8286         Quote file name.  Use format rather than string-append juggling.
8287
8288 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8289
8290         * python/lilylib.py (make_ps_images): add x to -g argument. 
8291
8292         * lily/key-performer.cc (create_audio_elements): don't use
8293         scm_eval_string. Check for minor 3rd directly.
8294   
8295         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
8296         (sarabandeCelloGlobal): key is D minor, not F major.
8297
8298 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8299
8300         Fix truncated --png output (Peter Danenberg).
8301         
8302         * python/lilylib.py (make_ps_images):
8303         * scripts/ps2png.py (copyright): Grok --papersize option.
8304
8305         * scm/backend-library.scm (postscript->png): Add parameter
8306         PAPERSIZE.  Update callers.
8307
8308         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
8309         Fixes symbol placement.
8310
8311         * lily/spanner.cc: 
8312         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
8313         <libc-extension.hh>).
8314
8315 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8316
8317         * Nitpick run.
8318
8319         * buildscripts/fixcc.py: Update.
8320
8321         Builddir run fixes.
8322
8323         * HACKING (datadir): Add VERSION.
8324
8325         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
8326         higher up.
8327
8328 2005-03-15  Werner Lemberg  <wl@gnu.org>
8329
8330         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
8331         diagonal stem doesn't become thinner.
8332
8333 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8334
8335         * buildscripts/fixcc.py: Fixes (Werner).
8336
8337 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8338
8339         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
8340         Emmentaler/Aybabtu.
8341
8342         * GNUmakefile.in: fix lilypond-words path.
8343
8344         * po/tr.po: update to 2.3.21
8345
8346         * lily/new-fingering-engraver.cc (position_scripts): take priority
8347         from head position.
8348
8349         * input/regression/finger-chords-order.ly (texidoc): new file.
8350
8351 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8352
8353         * make/ly-rules.make: 
8354         * stepmake/aclocal.m4: 
8355         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
8356
8357         * buildscripts/fixcc.py (rules): Leave space after operator.
8358
8359 2005-03-14  Werner Lemberg  <wl@gnu.org>
8360
8361         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
8362         top of the glyph with smooth curve.
8363
8364 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8365
8366         * Documentation/user/global.itely (Page layout): remove
8367         printpagenumber.
8368
8369 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
8370
8371         * input/regression/mensural-ligatures.ly: new file (with examples
8372         compiled by Pal Benko).
8373
8374         * Documentation/user/instrument-notation.itely: Bugfix: yet some
8375         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
8376         musicglyph access.  Many small beautifications in ancient
8377         examples.
8378
8379         * input/test/divisiones.ly: fixed indentation; small
8380         beautifications
8381
8382         * ly/engraver-init.ly: added FIXME comment
8383
8384         * scripts/lilypond-book.py,
8385         Documentation/user/lilypond-book.itely: added music fragment
8386         option "packed" to lilypond-book
8387
8388         * Documentation/user/instrument-notation.itely: Bugfix: added
8389         missing LedgerLineSpanner color setting in several places.  Added
8390         music fragment option "packed" to VaticanaContext example.
8391
8392 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8393
8394         * scm/define-grobs.scm (all-grob-descriptions): switch off
8395         Hyphen_spanner::set_spacing_rods 
8396
8397         * lily/lyric-hyphen.cc (print): add padding between syllable and
8398         hyphen.
8399         (print): shorten hyphen in tight situations (determine using
8400         minimum-length)
8401
8402         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
8403         0.4pt.
8404
8405 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8406
8407         * ly/titling-init.ly (bookTitleMarkup): Refinements.
8408
8409         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
8410         header/footer markings for regression-test.
8411
8412         * scm/backend-library.scm (output-scopes, header-to-file): Move
8413         from framework-tex.scm.
8414
8415         * scm/framework-ps.scm (output-framework)
8416         (output-preview-framework):
8417         * scm/framework-eps.scm (output-classic-framework)
8418         (output-framework): Use it.  Fixes collated files.
8419
8420 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8421
8422         * input/sakura-sakura.ly: 
8423         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
8424
8425         * buildscripts/guile-gnome.sh: Update.
8426
8427         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
8428
8429         * mf/aybabtu.pe.in: Capitalize Aybabtu.
8430
8431 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8432
8433         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
8434         culprit: always exit the loop if we find a rod, even if it has
8435         distance < 0. 
8436
8437         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
8438         algorithm.
8439
8440         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
8441         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
8442
8443         * scm/output-svg.scm (dashed-line): new  function body.
8444         
8445         * GNUmakefile.in: create .htaccess.
8446
8447 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8448
8449         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
8450
8451 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8452
8453         * VERSION (PACKAGE_NAME): release 2.5.15
8454
8455         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
8456
8457         * scm/framework-svg.scm (output-framework): put scaling in
8458         document header. Apply scaling only once.
8459         (output-framework): dump page size in px, not mm. 
8460
8461         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
8462         from font-size.
8463
8464         * lily/paper-outputter-scheme.cc (LY_DEFINE):
8465         ly:outputter-output-scheme, new function.
8466
8467         * scm/output-svg.scm (pango-description-to-svg-font): new function
8468
8469 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8470
8471         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
8472         target.
8473
8474         * input/typography-demo.ly: new file.
8475
8476 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8477
8478         * Documentation/user/global.itely (File structure): Add markup blocks
8479         to toplevel expressions.
8480         (Multiple movements, Creating titles): Add markup blocks.
8481
8482         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
8483         <libc-extension.hh>).
8484
8485         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
8486
8487         * flower
8488         * lily
8489         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
8490
8491 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8492
8493         * lily/accidental.cc: special bboxes for natural. 
8494
8495         * mf/feta-toevallig.mf: make stems heavier.
8496
8497         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
8498         texts as well.
8499
8500         * mf/feta-klef.mf: revise. 
8501
8502         * mf/feta-schrift.mf: make thinning of accent less pronounced.
8503
8504         * mf/feta-klef.mf: add rounded curve at top. 
8505         make thinnib a little heavier.
8506
8507 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8508
8509         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
8510
8511         * buildscripts/fixcc.py: New file.
8512
8513         * input/regression/utf8.ly: Update Debian font description.
8514
8515 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8516
8517         * stepmake/aclocal.m4: Fix test.
8518
8519 2005-03-09  Graham Percival  <gperlist@shaw.ca>
8520
8521         * Documentation/user/invoking.itely: added Sebastino Vigna's
8522         docs for the --jail option.
8523
8524 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8525
8526         * lily/stem.cc (print): only produce stemlets if there are no
8527         noteheads on this stem.
8528
8529         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
8530         don't crash on stemlet (visible stem without heads).
8531
8532         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
8533         unbroken situations. 
8534
8535         * scm/output-lib.scm (center-invisible): new function.
8536
8537         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
8538         wishes to determine loose column space.
8539
8540         * lily/font-config.cc (init_fontconfig): add
8541         fonts/{otf,type1,cff}  to path.
8542
8543         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
8544
8545         * mf/GNUmakefile (Module): install all fonts under otf/
8546
8547         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
8548         replace /fonts/otf/ by /ps/ 
8549
8550         
8551 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8552
8553         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
8554
8555         * lily/book.cc (process): Oops, add score_.header_.
8556
8557         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
8558
8559         * lily/parser.yy: Handle toplevel and book texts as score.
8560
8561         * scm/page-layout.scm (default-page-make-stencil):
8562         Bugfix: (page-properties rename.
8563
8564         * scm/backend-library.scm (ly:system): Typo.
8565
8566 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8567
8568         * stepmake/stepmake/executable-targets.make (installexe): don't
8569         strip installed executables
8570
8571         * lily/font-select.cc (get_font_by_design_size): revert
8572         pango_description_string as well.
8573
8574         * lily/system.cc (set_loose_columns): put loose column just left
8575         of next column.
8576
8577         * lily/include/group-interface.hh (extract_grob_array): rename
8578         from Pointer_group_interface__extract_grobs
8579
8580         * input/regression/ledger-line-minimum.ly (texidoc): new file.
8581
8582         * lily/ledger-line-spanner.cc (set_spacing_rods): new
8583         function. Keep ledgered note heads at a minimum distance.
8584         Introduce minimum-length-fraction
8585         (print): introduce length-fraction property.
8586
8587 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8588
8589         * tex/GNUmakefile: remove latin1.enc rules.
8590
8591 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8592
8593         * scm/titling.scm: Typo.
8594
8595         * input/regression/score-text.ly: Really add.
8596
8597         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
8598
8599 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8600
8601         * lily/open-type-font-scheme.cc:  new file.
8602
8603 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8604
8605         * scm/titling.scm (layout-extract-page-properties): Rename from
8606         page-properties.  Update callers.
8607
8608         * lily/lexer.ll (Lily_lexer):
8609         * lily/parser.yy: Junk lyric_markup state.
8610
8611         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
8612
8613         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
8614         Add texts parameter.
8615
8616 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8617
8618         * lily/lexer.ll (lyric_markup): New mode.
8619         (Lily_lexer::push_lyric_markup_state): New method.
8620         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
8621
8622         * lily/parser.yy (book_body):
8623         (toplevel_expression): Grok \markup texts.
8624
8625         * lily/score-scheme.cc (ly:music-scorify): 
8626         * scm/lily-library.scm (collect-music-for-book): Take texts
8627         parameter.
8628
8629         * lily/score.cc (texts_): New member.
8630
8631         * lily/paper-book.cc (systems): Format score texts.
8632
8633         * score-text.ly: New file.
8634
8635         * ttftool/SConscript:
8636         * kpath-guile/SConscript: New file.
8637
8638         * lily/SConscript:
8639         * SConstruct: Update.
8640
8641 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8642
8643         * VERSION (PACKAGE_NAME): release 2.5.14
8644
8645 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8646
8647         * lily/main.cc: Add dummy xgettext markers.
8648
8649 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8650
8651         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
8652         requirements
8653
8654         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
8655         executable is < 40k
8656
8657         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
8658         hack.
8659
8660 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8661
8662         * flower/libc-extension.cc:
8663         * flower/include/libc-extension.hh: [Open]BSD simply cast
8664         cookie/funopen declarations.
8665
8666         * stepmake/aclocal.m4: Check for libkpathsea.so.
8667
8668         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
8669         dl_kpse_find_file.
8670
8671 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8672
8673         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
8674         (open_library): alternative for static library.
8675
8676 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8677
8678         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
8679
8680         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
8681
8682         Drop run-time dependency on teTeX.
8683
8684         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
8685
8686         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
8687         KPATHSEA_LIBS in LIBS.
8688         (STEPMAKE_DLOPEN): New function.
8689
8690         * lily/font-config.cc (init_fontconfig): Use dir for directory,
8691         not path.
8692
8693         * flower/file-path.cc (directories): Rename from paths, as this
8694         return an array of directories (a single path).
8695
8696 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8697
8698         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
8699
8700         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
8701         new ly:kpathsea-find-file
8702
8703         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
8704
8705         * kpath-guile/GNUmakefile: new file
8706
8707         * buildscripts/gen-emmentaler-scripts.py (i): generate
8708         emmentaler-X.fontname as well.
8709
8710         * buildscripts/ps-embed-cff.py: new script
8711
8712         * scm/lily-library.scm: remove ps-embed-cff.
8713
8714         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
8715         font loading. 
8716
8717         * scm/font.scm (add-music-fonts): load dynamics/numbers through
8718         fontconfig as well.
8719
8720         * lily/font-config.cc (init_fontconfig): add cff/ too.
8721
8722         * ly/generate-embedded-cff.ly: capitalize.
8723
8724         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
8725         so as to register the pango font.
8726
8727         * lily/font-config.cc (init_fontconfig): add
8728         prefix/{otf,type1,mf/out} to fontconfig path.
8729
8730         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
8731         overrides all. 
8732
8733         * configure.in (gui_b): remove ec mftrace check
8734
8735         * config.hh.in: use lilypond-Major.Minor as data directory.
8736
8737         * scm/framework-ps.scm (dump-page): use output-units for landscape.
8738
8739         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
8740         name.
8741
8742 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8743
8744         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
8745         error messages.
8746
8747         * flower/libc-extension.cc:
8748         * flower/include/libc-extension.hh: [Open]BSD fixes for
8749         cookie/funopen declarations.
8750
8751 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8752
8753         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
8754         emmentaler.
8755
8756         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
8757         lcrm10.
8758
8759         * scm/define-markup-commands.scm (fontsize): new markup
8760         command. Also set baseline-skip
8761
8762 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
8763         
8764         * lily/main.cc (do_chroot_jail): paranoia security for webserver
8765         use.
8766
8767 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8768
8769         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
8770
8771         * lily/pdf.cc: remove PDF related files
8772
8773 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8774
8775         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
8776         <hamamatsu@gmx.de>
8777
8778 2005-03-05  Graham Percival  <gperlist@shaw.ca>
8779
8780         * Documentation/user/advanced-notation.itely: first draft
8781         of reorg done.
8782
8783         * Documentation/user/global.itely: fixed (sub)section
8784         bits of MIDI.
8785
8786 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8787
8788         * cygwin/mknetrel (extras): Bufix (Bertalan).
8789
8790         * Documentation/user/basic-notation.itely (Chords): @ref fix.
8791         * Documentation/user/instrument-notation.itely (Introducing chord
8792         names): Compile fix: must have unique name.
8793
8794 2005-03-02  Graham Percival  <gperlist@shaw.ca>
8795
8796         * Documentation/user/instrument-notation.itely: reorg.
8797
8798 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8799
8800         * scm/output-gnome.scm:
8801         * scm/output-svg.scm: Fix font scaling.
8802
8803 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8804
8805         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
8806         what link to use best.
8807
8808         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
8809         * Documentation/user/tutorial.itely (Automatic and manual beams):
8810         Fix @ref.
8811
8812         * lily/tweak-registration.cc (replace_grob_tweak): New function.
8813         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
8814         * scm/framework-gnome.scm (tweak): Use it.
8815
8816 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8817
8818         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
8819
8820         * scm/output-ps.scm (white-text): reinstate white-text
8821
8822 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8823
8824         * scm/output-ps.scm (offset-add): Remove.
8825
8826         * scm/lily-library.scm (offset-flip-y): New function.
8827         * scm/framework-gnome.scm (tweak): Use it.
8828
8829         * scm/output-gnome.scm (grob-cause): Add parameter.
8830
8831         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
8832         * scm/output-ps.scm (url-link): Move.
8833         (white-text): Warn user about brokenness.
8834
8835         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
8836         wrt ghostscript.
8837
8838 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8839
8840         * lily/slash-repeat-engraver.cc (try_music): always make slashes
8841         if body length smaller than measure length.
8842
8843         * scm/define-markup-commands.scm (with-url): oops. use Y extent
8844         for Y.
8845
8846         * ly/titling-init.ly (tagline): put default tagline in \paper
8847
8848 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8849
8850         * lily/kpath.cc: 
8851         * lily/pdf.cc (Pdf_file): Use more generic error messages.
8852
8853         * scm/lily-library.scm (version-not-seen-message): New function.
8854         * ly/init.ly: Use it.
8855
8856         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
8857         breaks as progess.
8858
8859         * scripts/lilypond-book.py (do_process_cmd): Do not lump
8860         whitespace with l10n message.
8861
8862         * scm/framework-tex.scm (convert-to-ps):
8863         (convert-to-dvi): Do not use overly specific l10n messages.
8864
8865         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
8866
8867         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
8868         merge stderr with stdout.  
8869
8870 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8871
8872         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
8873         Neeracher).
8874
8875 2005-02-29  Graham Percival  <gperlist@shaw.ca>
8876
8877         * Documentation/user/instrument-notation.teily: moved
8878         \arpeggio to Basic.
8879
8880         * Documentation/user/advanced-notation.itely: Articulation to
8881         Basic, a bunch of stuff from Basic moved to Advanced.
8882
8883         * Documentation/user/basic.itely: swapped various sections,
8884         reorganized Basic.
8885
8886 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8887
8888         * flower/memory-stream.cc: 
8889         * flower/libc-extension.cc: Remove obsolete #undefs.
8890
8891         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
8892         more carefully.
8893
8894 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8895
8896         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
8897         dependency.
8898
8899         * VERSION (PACKAGE_NAME): release 2.5.13
8900
8901         * GNUmakefile.in (web-ext): don't ship ps.gz
8902
8903         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
8904         stdout
8905
8906 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8907
8908         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
8909         without libintl.  Now it compiles too.
8910
8911 2005-02-28  Graham Percival  <gperlist@shaw.ca>
8912
8913         * Documentation/user/basic-notation.itely,
8914         instument-notation.itely, advanced-notation.itely:
8915         split up contents of notation.itely.
8916
8917         * Documentation/user/notation.itely: file removed.
8918
8919         * Documentation/user/invoking.itely, converters.itely:
8920         moved convert-ly info to invoking.itely.
8921
8922         * Documentation/user/global.itely, changing-defaults.itely,
8923         sound-output.itexi: moved global settings, file layout, and
8924         sound into global.itely.
8925
8926         * Documentation/user/sound-output.itexi: file removed.
8927
8928         * Documentation/user/lilypond.tely: removed links to
8929         notation.itely and sound.itely.
8930
8931 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8932
8933         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
8934
8935         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
8936  
8937         * THANKS: add sponsor.
8938
8939         * scm/define-markup-commands.scm (with-url): new markup command.
8940
8941         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
8942         tagline.
8943         
8944         * scm/output-tex.scm (url-link): stub.
8945
8946         * scm/output-ps.scm (url-link): new function.
8947
8948         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
8949         ly:set-point-and-click
8950
8951 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8952
8953         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
8954         based on pdf-viewer setting.
8955
8956         * scm/framework-ps.scm (write-preamble): Find and set preferred
8957         pdf-viewer.
8958
8959 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8960
8961         * Documentation/user/point-and-click.itely: update for PDF point &
8962         click.
8963
8964         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
8965         editors based on EDITOR setting.
8966
8967 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8968
8969         * scm/*: Oops, more grand 2005 replace bits.
8970
8971 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8972
8973         * ps/music-drawing-routines.ps: new routine: insert PDF mark
8974
8975         * scm/output-ps.scm (grob-cause): point & click support for
8976         PostScript
8977
8978 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8979
8980         * lily/input-scheme.cc (LY_DEFINE): rename to
8981         ly:input-file-line-column
8982
8983 2005-02-26  Graham Percival  <gperlist@shaw.ca>
8984
8985         * Documentation/user/examples.itely: small fix from Steve Doonan.
8986
8987         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
8988
8989         * THANKS: added Yuval Harel.
8990
8991         * Documentation/user/{various}: inserted two spaces after a period.
8992
8993         * Documentation/user/lilypond.tely: added framework for reorg.
8994
8995         * Documentation/user/basic-notation.itely, instrument-notation.itely,
8996         advanced-notation.itely, global.itely: new files, placeholder for
8997         future reorg.
8998
8999 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
9000
9001         * Documentation/user/notation.itely: revamped Polyphony section
9002         
9003 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9004
9005         * Documentation/user/lilypond-book.itely (Music fragment options):
9006         doc fontload.
9007
9008         * Documentation/user/changing-defaults.itely (Text encoding): add
9009         fontload option to utf8 include
9010
9011         * scripts/lilypond-book.py (compose_ly): add fontload option
9012
9013         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
9014         force-eps-font-include option.
9015
9016         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
9017         black triangle
9018
9019         * Documentation/user/invoking.itely (Editor support): remove
9020         lilypond-latex section.
9021
9022         * scripts/lilypond-latex.py (Module): remove script.
9023
9024         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
9025         overwrite .log. 
9026
9027         * lily/main.cc: remove -m, --no-layout
9028
9029         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
9030         to define. We don't want to override fprintf everywhere.
9031
9032 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9033
9034         * cygwin/lilypond.hint: 
9035         * cygwin/README.in: Update dependencies.
9036
9037         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
9038         Bugfix: do not pollute CPPFLAGS, LIBS.
9039
9040         * cygwin/mknetrel (extras): Cross compile fixes.
9041
9042         * ttftool/util.c: 
9043         * ttftool/ttfps.c: 
9044         * ttftool/ps.c: #include libc-extension.hh
9045
9046         * flower/include/libc-extension.hh:
9047         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
9048         wrapper using funopen.
9049         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
9050         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
9051
9052         * config.hh.in:
9053         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
9054         (AC_CHECK_HEADERS): Add libio.h
9055
9056         * scripts/convert-ly.py: Uniformize, internationalize.
9057         (2.5.2): Remove fatal encoding rule.
9058         (2.5.13): Handle latin1 encoding gracefully.
9059
9060 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9061
9062         * HACKING: Fix line breaks.
9063
9064 2005-02-23  Werner Lemberg  <wl@gnu.org>
9065
9066         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
9067         contains those two files.
9068
9069 2005-02-21  Werner Lemberg  <wl@gnu.org>
9070
9071         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
9072         to improve overlap removal process.
9073
9074         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
9075         left and right ending.  This ensures better overlapping.
9076         Update all callers.
9077         ("lineprall"): Don't use draw_gridline to get better overlapping.
9078
9079 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9080
9081         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
9082
9083         * Documentation/topdocs/NEWS.tely (Top): oops.
9084
9085 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
9086
9087         * HACKING: new file.
9088
9089         * input/regression/utf8.ly (portuguese): added a portuguese example
9090         to show latin1 accents.
9091
9092 2005-02-21  Pal Benko  <benkop@freestart.hu>
9093
9094         * lily/mensural-ligature-engraver.cc:
9095         * lily/mensural-ligature.cc:
9096         * lily/include/mensural-ligature.hh: new algorithm implemented
9097
9098         * scm/define-grob-properties.scm: join-left killed (add-join may
9099         be used); join-left-amount changed to join-right-amount
9100
9101 2005-02-21  Graham Percival  <gperlist@shaw.ca>
9102
9103         * Documentation/user/notation.itely: small but urgent fix.
9104
9105 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
9106
9107         * lily/duration-scheme.cc: bugfix: correct parameters to
9108         SCM_ASSERT_TYPE.
9109
9110         * THANKS: added Pal.
9111
9112         * Documentation/user/notation.itely: bugfix: unTeXified
9113         $\\backslash$.  Bugfix: yet another glyph renaming victim:
9114         "timesig.*x/y" -> "timesig.*xy".
9115
9116 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9117         
9118         * VERSION (PACKAGE_NAME): release 2.5.12
9119
9120 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9121
9122         * ly/engraver-init.ly: set tieWaitForNote to #t by default
9123
9124         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
9125
9126         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
9127
9128         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
9129
9130 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9131
9132         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
9133         latin1..utf-8.
9134
9135         * input/regression/stanza-number.ly:
9136         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
9137
9138         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
9139
9140 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9141
9142         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
9143         NEWS. Refer to website for older news.  
9144
9145         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
9146         .HTML. This should be done for specific servers only.
9147
9148         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
9149         .ly image examples.
9150
9151         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
9152         in layer 0 too.
9153
9154         * scm/define-context-properties.scm
9155         (all-user-translation-properties): add tieWaitForNote
9156
9157         * scm/define-grobs.scm (all-grob-descriptions): add
9158         Tie_column::before_line_breaking
9159
9160         * lily/tie.cc (get_column_rank): new function
9161
9162         * lily/tie-column.cc (before_line_breaking): new function.
9163         (werner_directions): take into account ties that start on
9164         different columns.  
9165
9166         * lily/score-engraver.cc (set_columns): move add_column() so we
9167         have column rank available.
9168
9169         * lily/tie.cc (get_column_rank): new function.
9170
9171         * input/regression/utf8.ly (japanese): add japanese lyrics.
9172
9173         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
9174
9175         * THANKS: add Steve D
9176
9177         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
9178         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
9179
9180 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
9181
9182         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
9183         to show harmonic notes
9184         * scm/define-markup-commands.scm: in \markup-by-number
9185         "dots-dot" -> "dots.dot" to show dotted notes
9186
9187 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9188
9189         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
9190
9191         * flower/memory-stream.cc (writer): new file.
9192
9193         * configure.in: add endian test.
9194
9195 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
9196
9197         * Documentation/user/examples.itely: small
9198         simplification/beautification
9199
9200         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
9201         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
9202         notation manual.
9203
9204         * lily/mensural-ligature.cc: bugfix: another few victims of the
9205         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9206
9207         * ly/gregorian-init.ly: commit some experimental code for hi-level
9208         ligature input language lying around here for several months.
9209
9210         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
9211         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9212
9213         * lily/vaticana-ligature-engraver.cc: bugfix: another few
9214         "x-y-z"->"x.y.s-z" fixes.
9215
9216 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9217
9218         * scm/framework-pdf.scm (scm): new file
9219
9220         * lily/include/pdf.hh (class Pdf_file): new file.
9221
9222         * lily/pdf.cc (write_trailer): new file.
9223
9224 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
9225
9226         * input/regression/color.ly: new file
9227
9228         * lily/stencil.cc (interpret_stencil_expression):
9229         when a color expression is encountered: save current color,
9230         process the rest of the expression, and restore previous color.
9231
9232         * lily/system.cc (get_line): check all grobs for color property and
9233         prepare the stencil scheme expressions for further processing.
9234         Fix layer-loop.
9235
9236         * scm/define-grob-properties.scm: introduce the color property.
9237
9238         * scm/output-lib.scm: color helper functions.
9239
9240         * scm/output-ps.scm: introduce setcolor/resetcolor.
9241
9242 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9243
9244         * ly/*.ly, input/regression/*.ly: Added missing \version
9245         statements in some files.
9246
9247 2005-02-15  Graham Percival  <gperlist@shaw.ca>
9248
9249         * Documentation/user/notation.itely: minor editing.
9250
9251         * Documentation/user/converters.itely: updated convert-ly bugs.
9252
9253         * Documentation/user/lilypond-book.itely: add info about using
9254         feta characters in latex.
9255
9256 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9257
9258         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
9259
9260 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9261
9262         * scm/define-grob-properties.scm (all-user-grob-properties):
9263         removed 'dashed property.
9264
9265 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9266
9267         * scm/lily.scm (define-safe-public): new macro for defining
9268         variables that can be used in --safe mode. Use it in *.scm
9269         instead of manually setting safe-objects in safe-lily.scm.
9270
9271 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9272         
9273         * lily/slur.cc: Slur-dash patch by Bertalan.
9274
9275         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
9276
9277         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
9278
9279 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9280
9281         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
9282
9283 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9284
9285         * mf/GNUmakefile: teTeX-3.0 install fix.
9286
9287         * Cygwin patch from Bertalan.
9288
9289         * stepmake/stepmake/metafont-rules.make: Remove bashism.
9290
9291 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9292
9293         * GNUmakefile.in: 
9294         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
9295
9296         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
9297         2.0.x compatibility.
9298
9299 2005-02-08  Werner Lemberg  <wl@gnu.org>
9300
9301         * mf/feta-din-code.mf: Format; clean up code.
9302         Replace `---' with `--' plus explicit path directions.
9303         (linethickness#, stafflinethickness#): Remove.
9304         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
9305         ("dynamic s"): Improve shape.
9306         ("dynamic p"): Improve shape.
9307         Replace `draw' with better outline approximation.
9308         ("dynamic r"): Improve shape.
9309         Don't call `fill' and `draw' at the same time.
9310
9311 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9312
9313         * SConstruct (symlink):
9314         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
9315         build fix: add enc symlink.
9316
9317         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
9318
9319         Support for DESTDIR besides prefix=/foo
9320
9321         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
9322
9323         * stepmake/stepmake/*.make:
9324         * */GNUmakefile:
9325         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
9326
9327         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
9328
9329         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
9330         mawk in fontforge (date) test.
9331
9332 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9333
9334         * scm/font.scm (make-century-schoolbook-tree): add NCS as
9335         font-family=roman. Add Luxi Sans as sans
9336
9337 2005-02-07  Graham Percival  <gperlist@shaw.ca>
9338
9339         * Documentation/user/notation.itely: add warning about
9340         percent repeats and Voice contexts.
9341
9342         * Documentation/user/lilypond-book.itely: clarified the
9343         necessity of dvips -u arguments.
9344
9345 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9346
9347         * THANKS: Added a bunch of bug hunters.
9348
9349 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9350
9351         * scm/framework-ps.scm (output-preview-framework): bugfix.
9352
9353         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
9354         o/ for chord modifier..
9355
9356         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
9357
9358         * lily/drum-note-performer.cc:  remove unused (thanks Michael
9359         Welsh Duggan). 
9360
9361 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9362
9363         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
9364
9365         * ly/titling-init.ly: Do not also print intstrument in header on
9366         first page.  Do not print page number on first and only page.
9367
9368 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9369
9370         * input/regression/*.ly: remove old-relative everywhere
9371
9372         * lily/music-sequence.cc (simultaneous_relative_callback): do
9373         what-if analysis on copy, not on original. Fixes old-relative
9374         compatibility.
9375
9376         * scm/backend-library.scm (postscript->png): space before
9377         --verbose.
9378         
9379 2005-02-05  Werner Lemberg  <wl@gnu.org>
9380
9381         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
9382         is defined.
9383
9384         * mf/feta-alphabet.mf: Define `staffsize#'.
9385         Include `feta-params.mf'.
9386         s/staffheight/design_size/.
9387
9388         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
9389
9390         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
9391
9392         * mf/feta-nummer-code.mf: Reformatted.
9393         (draw_six): Use outline intersection to avoid a self-intersecting
9394         path.
9395         ("Numeral comma"): Fix serious outline glitches.  This slightly
9396         changes the glyph shape.
9397         ("Numeral dash"): Use `draw_rounded_block'.
9398         ("Numeral dot"): Use `drawdot'.
9399         ("Numeral 1"): Assure identical tangent directions for the
9400         intersection points of paths.  The glyph shape improvement is only
9401         visible at very high magnifications.
9402         ("Numeral 2"): Use `solve' macro to make the lower right part of
9403         the glyph outline touch the x axis exactly.  This changes the
9404         glyph shape.
9405         Minor fixes for better overlap removal support.
9406         ("Numeral 4"): Make lefter corner `rounder'.
9407         ("Numeral 5"): Assure identical tangent directions for the
9408         intersection points of paths.  This improves the glyph shape at
9409         high magnifications.
9410         ("Numeral 7"): Use `solve' macro to make the upper right part of
9411         the glyph outline touch the metrics box exactly.  This changes the
9412         glyph shape.
9413         Avoid corner in the upper left part of the glyph (causing a minor
9414         shape change).
9415
9416         * mf/feta-ital-*.mf: Removed.  Unused.
9417
9418 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9419
9420         * VERSION (PATCH_LEVEL): release 2.5.11
9421
9422         * input/regression/fill-line-test.ly: new file.
9423
9424         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
9425         emmentaler name, eg. emmentaler-23. 
9426
9427 2005-02-04  Christian Hitz  <chhitz@gmx.net>
9428
9429         * scm/scm/define-markup-commands.scm (fill-line): rework for better
9430         alignment with centered texts
9431
9432         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
9433         list of paddings
9434
9435 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9436
9437         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
9438
9439         * lily/note-column.cc (translate_rests): call flush_extent_cache()
9440         of parents when translating rests. Fixes: c-chord-rest.ly 
9441
9442         * lily/include/dimension-cache.hh (struct Dimension_cache): add
9443         dimension_callback_ member.
9444
9445         * lily/grob.cc (flush_extent_cache): new function. Force recompute
9446         of extents.
9447
9448 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9449
9450         * all but lily/*: The grand 2004/2005 replace.
9451
9452 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9453
9454         * lily/*: add space after ,  
9455
9456         * scm/music-functions.scm (has-request-chord): don't use
9457         ly:music-name anywhere. Fixes <<\\>> notation. 
9458
9459         * scm/define-markup-commands.scm (box): use font-size for
9460         padding. Fixes boxed-rehearsal-marks.ly
9461
9462         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
9463         identifier definition too, so foo = \lyrics { ...   } bar = #1
9464         doesn't complain about "bar" being LYRICS_STRING.
9465
9466         * lily/paper-def.cc (find_pango_font): new routine; Store
9467         pango_fonts in hash tab too. This is necessary for retrieving
9468         Pango_fonts::physical_font_tab() later on.
9469  
9470         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
9471         crash if psname is null.
9472
9473         * lily/lily-guile.cc (ly_hash2alist): new function
9474
9475         * Documentation/user/changing-defaults.itely (Text encoding):
9476         rewrite. 
9477
9478         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
9479         -> font_filename mapping.
9480
9481         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
9482         ly_pango_font_physical_fonts
9483
9484         * scm/framework-ps.scm (supplies-or-needs): extract names from
9485         physical Pango_fonts.
9486
9487         * utf8.ly: new file.
9488
9489 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9490
9491         * Documentation/user/changing-defaults.itely (Page layout): add
9492         doco about systemSeparatorMarkup.
9493
9494         * scm/page-layout.scm (default-page-make-stencil): add-to-page
9495         function.
9496         (default-page-make-stencil): insert system separators.
9497
9498         * scm/define-markup-commands.scm (hcenter): add
9499         (beam): add.
9500
9501 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9502
9503         * scm/output-ps.scm (ez-ball): reinstate ez notation.
9504
9505 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9506
9507         * lily/main.cc: Spell backend consistently.  Sort options.
9508
9509 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9510
9511         * scripts/lilypond-book.py (Module): revert @include.
9512         
9513 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9514
9515         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
9516         Bugfix: @include .tex (not .texi).  Small cleanups.
9517
9518         * stepmake/bin/add-html-footer.py (i18n): New function.
9519
9520 2005-01-31  Werner Lemberg  <wl@gnu.org>
9521
9522         * mf/feta-nummer.mf: Removed.  Unused.
9523
9524 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9525
9526         * lily/ : 2004 -> 2005 s&r
9527
9528         * scm/file-cache.scm (cached-file-contents): add file. Read each
9529         file only once.
9530
9531         * scm/font.scm (add-pango-fonts): change order. Medium weight is
9532         now default.
9533
9534         * VERSION: release 2.5.10
9535         
9536         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
9537
9538         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
9539
9540         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
9541         that both X and Y extents of bbox are non-nil.
9542
9543 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9544
9545         * scm/chord-name.scm (alteration->text-accidental-markup): change
9546         - to . 
9547
9548         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
9549
9550         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
9551
9552         * Documentation/user/invoking.itely (Invoking lilypond): add note
9553         about EPS backend.
9554
9555         * scm/framework-eps.scm: new file: create per-system/per-page EPS
9556         files for inclusion in lilypond-book document.
9557
9558         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
9559
9560         * input/tutorial/lbook-texi-test.texi: new file.
9561
9562         * scm/safe-lily.scm (safe-objects): add
9563         {begin,end}-of-line-(in)?visible as safe.
9564  
9565 2005-01-30  Graham Percival  <gperlist@shaw.ca>
9566
9567         * Documentation/user/changing-defaults.itely: fixed example
9568         of (dynamics).
9569
9570 2005-01-29  Graham Percival  <gperlist@shaw.ca>
9571
9572         * lily/main.cc: fix info about -o=FILE.
9573
9574 2005-01-29  Werner Lemberg  <wl@gnu.org>
9575
9576         * mf/feta-toevallig.mf ("Natural"): Completely changed the
9577         construction to assure smooth transition from straight to curved
9578         lines.
9579
9580 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9581
9582         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
9583         stencils.
9584
9585         * ps/lilyponddefs.ps: add start-page, start-system doesn't
9586         translate to top of page. Fixes alignment problems of
9587         lilypond-generated EPS files.
9588
9589 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9590
9591         * scm/part-combiner.scm (analyse-spanner-states): trigger on
9592         crescendo-end as well, since Decrescendo maybe ended with Stop
9593         Crescendo.). Fixes: partcombine-diminuendo.ly
9594
9595         * scm/script.scm (default-script-alist): swap portato symbols.
9596
9597         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
9598
9599         * lily/paper-outputter-scheme.cc (LY_DEFINE):
9600         ly:outputter-port. New function.
9601
9602         * scm/framework-ps.scm (output-classic-framework): dump a
9603         -systems.texi too
9604         (output-classic-framework): dump multiple systems on an "infinite"
9605         page EPS including fonts. 
9606
9607         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
9608         .eps files for both texi and tex formats. Use PNG coming from
9609         lilypond.
9610         
9611 2005-01-28  Graham Percival  <gperlist@shaw.ca>
9612
9613         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
9614
9615         * scripts/lilypond-latex.py: fix info about -o=FILE.
9616
9617 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9618
9619         * ly/generate-embedded-cff.ly: write .cff.ps files.
9620
9621         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
9622
9623         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
9624         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
9625
9626 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9627
9628         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
9629
9630 2005-01-28  Werner Lemberg  <wl@gnu.org>
9631
9632         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
9633         macros.
9634         (draw_bulb): Improved.
9635
9636         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
9637         metapost bug.
9638         (draw_pedal_P): Use soft_end_penstroke.
9639         (draw_pedal_d): Use soft_start_penstroke.
9640
9641         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
9642         path.
9643         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
9644         doesn't change the glyph shape.
9645
9646         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
9647         changing the shape) to avoid fontforge warnings.
9648
9649         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
9650         soft_end_penstroke and fix glyph shape.
9651
9652 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9653
9654         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
9655
9656 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9657
9658         * scm/define-markup-commands.scm (line): filter out empty stencils
9659         from line command.
9660
9661         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
9662         amount.
9663
9664 2005-01-27  Graham Percival  <gperlist@shaw.ca>
9665
9666         * Documentation/user/notation.itely: added info about what
9667         \voiceFoo does.  Also rewrote warning about marks at
9668         a line break.
9669
9670         * Documentation/user/changing-defaults.itely: added info
9671         about putting dynamics in parenthesis and brackets.
9672
9673 2005-01-27  Werner Lemberg  <wl@gnu.org>
9674
9675         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
9676
9677 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9678
9679         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
9680         portato-direction.ly
9681
9682         * lily/beam.cc (consider_auto_knees): add beam height to
9683         threshold. Fixes: knee-multiple-beam.ly
9684
9685         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
9686         pedal line spanners. Fixes: instrument-center-pedal.ly
9687
9688         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
9689         if encountering barline. Fixes: auto-beam-repeat.ly
9690
9691 2005-01-26  Werner Lemberg  <wl@gnu.org>
9692
9693         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
9694         overlapping.
9695
9696         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
9697         with inflections for the 1/2 sharp glyph.
9698
9699         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
9700         connection between `t' and `r'.
9701         Unify bulb with the rest of `r' to avoid grazing outlines which
9702         confuses the overlap removal algorithm of fontforge.
9703
9704         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
9705         inflections.
9706         (draw_cross): Fix shape to have uniform thickness in corners.
9707
9708         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
9709         to avoid an uneven number of self-intersections; this confuses
9710         fontforge.
9711         Fix a slight bug in the shape at left bottom (which is visible only
9712         at high magnifications).
9713         `Center' the stem horizontally to avoid overlapping.
9714
9715 2005-01-24  Werner Lemberg  <wl@gnu.org>
9716
9717         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
9718         to `asis'.
9719         (fet_begingroup): Save group name in string `feta_group'.
9720         (fet_endgroup): Updated.
9721         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
9722
9723         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
9724
9725         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
9726         in metapost.
9727
9728 2005-01-24  Graham Percival  <gperlist@shaw.ca>
9729
9730         * Documentation/user/notation.itely: really minor editing.
9731
9732 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9733
9734         * Documentation/user/examples.itely: minor editing.
9735
9736         * Documentation/user/changing-defaults.itely: minor editing.
9737
9738         * Documentation/user/notation.itely: clarified info on polyphony
9739         and \addlyrics.
9740
9741 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9742
9743         * scm/output-gnome.scm: 
9744         * scm/output-svg.scm:
9745         * scm/lily-library.scm (font-name-style): Update font name
9746         kludging for fontconfig use.
9747
9748 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
9749
9750         * scm/define-markup-commands.scm: Document right-align and
9751         larger markup commands. Remove "TODO" from the topmost comment
9752         "each markup function should have a doc string." More consistent
9753         use of new-lines.
9754
9755 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9756
9757         * Documentation/user/changing-defaults: removed info about
9758         copyright symbol, since it's likely to change soon.
9759         Added info about betweensystemspace.
9760
9761         * Documentation/user/notation.itely: minor fixes.
9762
9763         * Documentation/user/lilypond.tely,
9764         Documentation/user/music-glossary.tely: changed copyright
9765         date to 2005 instead of 2004.
9766
9767         * input/test/volta-chord-names.ly: added old example back.
9768
9769 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9770
9771         * mf/feta-beugel.mf: use design size 20 (not 15).
9772
9773         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
9774         change name to aybabtu completely
9775
9776 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9777
9778         * buildscripts/gen-emmentaler-scripts.py (outdir): add
9779         design_size to fontname
9780
9781 2005-01-19  Werner Lemberg  <wl@gnu.org>
9782
9783         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
9784         mf/feta-schrift.mf: s/p/pat/ if a path variable.
9785
9786         * mf/feta-autometric.mf (set_char_box): Add code which emits
9787         specials for mf2pt1 if run with metapost.
9788         (to_bp): New macro for mf2pt1.
9789
9790 2005-01-18  Graham Percival  <gperlist@shaw.ca>
9791
9792         * Documentation/user/changing-defaults: added info on
9793         creating a copyright symbol.
9794
9795 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9796
9797         * VERSION: release 2.5.9
9798         
9799 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
9800
9801         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
9802
9803         * Documentation/user/notation.itely: Document
9804         score-override-auto-beam-setting Fix documentation for
9805         revert-auto-beam-setting.
9806
9807 2005-01-18  Werner Lemberg  <wl@gnu.org>
9808
9809         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
9810         (procset): New function to define a procset resource.
9811         (ps-embed-pfa): New function to define a font resource.
9812         (setup): New function to define a `Setup' environment.
9813         (preamble): Use new functions.
9814
9815         * ps/lilypond.defs (init-lilypond-parameters): New function to
9816         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
9817
9818 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9819
9820         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
9821
9822 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
9823
9824         * scm/define-markup-commands.scm: Change number->markletter-string
9825         to take two arguments (vector number). Add number->mark-alphabet-vector
9826         and markalphabet markup command.
9827
9828         * scm/translation-functions.scm: Add format-mark-box-alphabet,
9829         format-mark-alphabet, format-mark-box-barnumbers and
9830         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
9831
9832 2005-01-17  Graham Percival  <gperlist@shaw.ca>
9833
9834         * Documentation/user/examples.itely: add SATB automatic piano
9835         reduction template.
9836
9837         * Documentation/user/notation.itely: added info about changing
9838         partcombine texts.  Also adds examples of alternate lyrics.
9839
9840         * Documentation/user/changing-defaults.itely: added warning
9841         about \RemoveEmptyStaffContext overriding previous changes.
9842
9843 2005-01-17  Werner Lemberg  <wl@gnu.org>
9844
9845         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
9846         feta-alphabet*.
9847
9848 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9849
9850         * python/lilylib.py (make_ps_images): don't do final showpage for
9851         multi-page documents.
9852         
9853         * VERSION (MY_PATCH_LEVEL): release 2.5.8
9854
9855 2005-01-16  Graham Percival  <gperlist@shaw.ca>
9856
9857         * Documentation/user/lilypond.tely: changed order of appendices;
9858         unified index should be last.
9859
9860         * Documentation/user/notation.itely: add example of key signatures
9861         and info about Staff.printKeyCancellation.
9862
9863 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9864
9865         * lily/include/repeated-music.hh (class Repeated_music): change
9866         into "namespace" class.
9867
9868         * lily/event.cc: remove Key_change_event.
9869
9870         * lily/include/transposed-music.hh (class Transposed_music): remove.
9871
9872         * lily/transposed-music.cc: remove
9873
9874         * lily/include/relative-music.hh: remove.
9875
9876         * lily/include/music-sequence.hh (struct Music_sequence): change
9877         into "namespace" class.
9878
9879         * lily/untransposable-music.cc (Module): remove
9880
9881         * lily/include/un-relativable-music.hh (Module): remove
9882
9883         * lily/include/untransposable-music.hh (Module): remove
9884
9885         * lily/include/music-list.hh (Module): remove file
9886
9887         * lily/un-relativable-music.cc: remove file.
9888
9889 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9890
9891         * lily/parser.yy: Compile fix.
9892
9893 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9894
9895         * lily/include/music.hh (class Music): unvirtualize transpose().
9896
9897         * lily/sequential-music.cc: remove file.
9898
9899         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
9900
9901         * lily/slur-scoring.cc (get_best_curve): only switch on
9902         DEBUG_SLUR_SCORING for non NDEBUG builds.
9903
9904         * lily/include/music.hh (class Music): replace Music::start_mom()
9905         by start-callback property
9906
9907         * lily/include/grace-music.hh: remove file. 
9908
9909         * lily/stem.cc (height): robustness fix.
9910
9911         * lily/time-scaled-music.cc: remove file.
9912
9913         * lily/include/music.hh (class Music): include SCM init argument.
9914         (class Music): replace Music::get_length() virtual by
9915         length-callback property everywhere.
9916
9917         * scripts/convert-ly.py (conv): add  # to \property scalar value.
9918
9919         * mf/GNUmakefile: don't install *list.ly
9920
9921 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9922
9923         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
9924
9925 2005-01-12  Werner Lemberg  <wl@gnu.org>
9926
9927         This patch addresses the following problems in the feta sources
9928         files which contribute to the fetaXX fonts.
9929
9930         . Many fixes for rasterization at low resolutions (consistent use of
9931           `vround' and `hround', integer shift values for paths, applying
9932           `eps' for mirrored paths, use of `define_whole_pixels' and
9933           friends, etc.) -- while this probably looks like a waste of time
9934           it has revealed deficiencies in some glyph shapes.  See comment at
9935           the end of feta-params.mf how vertical symmetry is achieved.
9936
9937         . The `---' operator has been replaced everywhere with `--'; this
9938           both improves and considerably reduces the font size after
9939           conversion with mf2pt1.
9940
9941         These change aren't explicitly mentioned below since virtually all
9942         glyphs are affected.
9943
9944         Other notable differences:
9945
9946         . Glyphs from feta-accordion.mf now have charboxes around the
9947           outline.
9948
9949         . Fixed incorrect charbox for `accDot'.
9950
9951         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
9952
9953         . Fixed position of the bow in the `upprall' glyph and its siblings.
9954
9955         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
9956           dependent on the staff line thickness to avoid touching the middle
9957           staff line at smaller sizes.
9958
9959         . Largely extended output for feta-testXX: Where useful, glyphs
9960         are shown both between and on staff lines.
9961
9962
9963         * mf/feta-params.mf (staff_space_rounded,
9964         stafflinethickness_rounded, linethickness_rounded,
9965         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
9966         Update all code which uses them where appropriate.
9967         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
9968         New variables used to control rasterization at low resolutions.  Set
9969         to zero if feta code is processed with metapost.
9970
9971         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
9972         (draw_rounded_block, draw_square_block): Updated to use `--' only.
9973         (flare_path): Updated.
9974         Make it work with `filldraw' (but only circular pens).
9975         (hfloor, vfloor, hceiling, vceiling): New macros.
9976
9977         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
9978         Use `draw' again in mf mode to have good pixel dropout control.
9979         Fix intersection points of horizontal lines with circle.
9980         ("accDot"): Fix parameters for set_char_box.
9981         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
9982         control.
9983
9984         * mf/feta-banier.mf: Updated.
9985
9986         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
9987         testing.
9988         (undraw_inside_ellipse): Remove `center' argument.  Update all
9989         callers.
9990         (draw_brevis): New macro, called by "Brevis notehead".
9991         (draw_whole_triangle_head): New macro, called by "Whole
9992         trianglehead".
9993         (draw_small_triangle_head): Use `filldraw'.
9994
9995         * mf/feta-eindelijk.mf: Remove useless global group.
9996         Updated.
9997
9998         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
9999         `filldraw'.
10000
10001         * mf/feta-pendaal.mf: Updated.
10002
10003         * mf/feta-puntje.mf: Updated.
10004
10005         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
10006         less points.
10007         ("Flageolet"): Use `draw' again in mf mode to have good pixel
10008         dropout control.
10009         ("Varied Coda"): Use `draw_block'.
10010         (draw_comma): Fix typo.
10011         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
10012         pixel dropout control.
10013
10014         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
10015         position of bow.
10016
10017         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
10018         sizes.
10019
10020         * mf/feta-toevallig.mf (remember_pic): New variable, used for
10021         testing.
10022         (draw_meta_sharp): Much simplified.
10023         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
10024
10025         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
10026
10027 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10028
10029         * Documentation/user/notation.itely (Ancient rests): Fix typo
10030         (thanks Anthony)
10031
10032 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10033
10034         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
10035
10036         * lily/main.cc (setup_paths): Add cff.
10037
10038         * mf/GNUmakefile (foe): Include actual target %.cff.
10039         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
10040
10041 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10042
10043         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
10044         suffix for main_input_b_.
10045
10046         * scm/music-functions.scm (toplevel-music-functions):
10047         precompute music lengths for music expressions.  
10048
10049 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10050
10051         * lily/include/input.hh (class Input): new `end_' slot for end of
10052         input. Renamed defined_str0_ to start_.
10053
10054         * lily/input.cc (Input): Add Input::Input (Input const &) and
10055         remove Input::Input (Source_file*, char const *). Use the new
10056         slots.
10057         (set_location): method used by bison to propagate input
10058         locations (YYLLOC_DEFAULT).
10059         (end_line_number, end_column_number, step_forward): new methods
10060         
10061         * lily/input-scheme.cc (ly:input-both-locations): new function,
10062         similar to ly:input-location, but also return the end line and
10063         column.
10064
10065         * lily/include/includable-lexer.hh: 
10066         * lily/includable-lexer.cc: 
10067         * lily/include/lily-lexer.hh (class Lily_lexer): 
10068         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
10069         Includable_lexer to Lily_lexer, in order to update lexloc (the
10070         yylloc), a new slot of Lily_lexer.
10071         (here_input, LexerError): simplify by using the lexloc slot (aka
10072         yylloc)
10073
10074         * lily/lexer.ll: #define yylloc to use input locations (it may
10075         be useless here?). Fixed the #embedded_scm rule (step the location
10076         forward in order to skip the sharp sign before parsing the scheme
10077         expression)
10078
10079         * lily/include/lily-parser.hh (class Lily_parser): 
10080         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
10081         here_input()
10082         (parser_error): overload for more precise locations of errors.
10083
10084         * lily/parser.yy (YYLTYPE): set location type to Input
10085         (YYLLOC_DEFAULT): use Input::set_location()
10086         (yylex): add the YYLTYPE* location parameter.
10087         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
10088         Give an Input parameter to THIS->parser-error() for more accurate
10089         messages.
10090
10091 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10092
10093         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
10094
10095         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
10096         on BEAMQUANTING for non-NDEBUG builds.
10097
10098         * lily/stem.cc (head_count): performance: avoid String::String()
10099         inside oft called function.
10100
10101 2005-01-09  Graham Percival  <gperlist@shaw.ca>
10102
10103         * Documentation/user/examles.itely: attempted fix for broken
10104         string quartet template.
10105
10106         * Documentation/user/notation.itely: remove unnecessary broken
10107         link.
10108
10109 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10110
10111         * VERSION (PACKAGE_NAME): release 2.5.7
10112
10113 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10114
10115         * config.make.in (METAFONT): Append -progname=mf, fixes use with
10116         mf-nowin for teTeX-3.0.  Backportme.
10117
10118         * scm/output-svg.scm (utf8-string): New function.
10119
10120         * scm/output-gnome.scm (utf8-string): New function.
10121         (otf-name-mangling): Remove.
10122
10123         * lily/pango-font.cc (Pango_font): Use font string iso font
10124         filename for utf8-text.
10125
10126         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
10127         name.
10128
10129 2005-01-08  Graham Percival  <gperlist@shaw.ca>
10130
10131         * Documentation/user/notation.itely: add info about
10132         Staff.extraNatural = ##f in Pitches section.  Also
10133         fixed some minor issues in the Vocal music section.
10134
10135 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10136
10137         * scm/output-ps.scm (white-text): comment out Helvetica font,
10138         which is broken for my GS install.
10139
10140         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
10141         which provides a tighter bbox.
10142
10143         * scm/define-grobs.scm (all-grob-descriptions): remove all
10144         extra-offsets from definitions.
10145
10146 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
10147
10148         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
10149         add tuning for 4-string bass and some common 4/5-string banjo
10150         tunings.  New function (four-string-banjo) turns a 5-string tuning
10151         into a 4-string tuning.  New function
10152         (fret-number-tablature-format-banjo) computes correct fret numbers
10153         on 5-string banjos.
10154
10155         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
10156         Add beam correction to TabVoice.
10157
10158         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
10159         using bold font; makes tabs more readable.
10160
10161 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10162
10163         * lily/font-select.cc (get_font_by_design_size): don't make
10164         Modified_font_metric; this causes trouble, since we don't know the
10165         font magnification from inside Pango_font::text_stencil()
10166
10167         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
10168
10169         * Documentation/user/notation.itely (The Lyrics context): comment out
10170         broken {Small ensembles} link.
10171
10172         * scm/framework-svg.scm (output-framework): change calling convention.
10173
10174         * lily/object-key-dumper-scheme.cc: new file.
10175
10176         * lily/object-key-undumper-scheme.cc: new file.
10177
10178         * lily/tweak-registration-scheme.cc: new file.
10179
10180         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
10181
10182         * Documentation/user/examples.itely (String quartet): uncomment
10183         broken example.
10184
10185         * lily/font-config.cc: new file.
10186
10187 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10188
10189         * scm/output-svg.scm: 
10190         * scm/output-gnome.scm: s/bigcheese/emmentaler.
10191
10192         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
10193
10194 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10195
10196         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
10197         Add headers.
10198
10199         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
10200
10201 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10202
10203         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
10204
10205         * lily/include/main.hh: lose _b hungarian suffixes for global
10206         variables.
10207
10208         * lily/include/lily-guile-macros.hh: new file.
10209
10210         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
10211
10212         * lily/general-scheme.cc: new file. 
10213
10214         * lily/font-select.cc (get_font_by_design_size): retrieve
10215         PangoFont for (designsize . "pango-descr") entries.
10216
10217         * lily/lily-parser-scheme.cc: new file.
10218
10219         * lily/output-def-scheme.cc: new file.
10220
10221         * lily/paper-book-scheme.cc: new file.
10222
10223         * lily/duration-scheme.cc (LY_DEFINE): new file.
10224
10225         * lily/pitch-scheme.cc:  new file.
10226
10227         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
10228
10229 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10230
10231         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
10232
10233 2005-01-06  Graham Percival  <gperlist@shaw.ca>
10234
10235         * Documentation/user/notation.itely: minor editing.
10236
10237         * Documentation/user/changing-defaults: minor editing.
10238
10239         * Documentation/user/examples.itely: add template for
10240         string quartet part extraction; demonstrates tag.
10241
10242 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
10243
10244         * Documentation/user/notation.itely: documents
10245         format-mark-box-letters and format-mark-box-numbers
10246
10247         * scm/define-context-properties.scm: change comment.
10248
10249 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10250
10251         * scm/framework-ps.scm (output-classic-framework): new function:
10252         dump systems as separate .eps files (without fonts) and write a
10253         single collecting .tex file.
10254
10255 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10256
10257         * Documentation/user/notation.itely (Setting simple songs):
10258         Correct several errors in the equivalent formulation of
10259         \addlyrics. 
10260         (The Lyrics context): Corrected link to the SATB example.
10261
10262 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10263
10264         * scm/lily.scm (completize-formats): new function
10265         (postprocess-output): new function
10266
10267         * lily/paper-book.cc (classic_output): change calling
10268         convention. Give basename as first argument. 
10269         remove Paper_book::post_processing().
10270
10271         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
10272
10273 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10274
10275         * lily/paper-outputter.cc (LY_DEFINE): new function
10276         ly:outputter-close.
10277
10278         * lily/main.cc: change --format,-f to --backend,-b
10279
10280         * lily/include/main.hh: rename format to backend.
10281
10282         * scm/translation-functions.scm (format-mark-box-numbers): add.
10283         patch by Erlend Aasland
10284
10285 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10286
10287         * lily/pango-font.cc (text_stencil): dump string as
10288         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
10289
10290 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10291
10292         * configure.in (gui_b): Remove handy developer-only
10293         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
10294         CVS source installations (but break other non-default but correct
10295         PKG_CONFIG_PATH setups), as this is no longer developer-only.
10296
10297         * SConstruct: 
10298         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
10299         compatibility (backportme).
10300
10301         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
10302
10303 2005-01-03  Werner Lemberg  <wl@gnu.org>
10304
10305         Prepare glyph shapes for mf2pt1 conversion.
10306
10307         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
10308         (accDiscant, accFreebase, accStdbase): Replace `draw' with
10309         `penstroke'.
10310         (accDot): Use `drawdot'.
10311         (accBayanbase): Replace `draw' with `draw_gridline'.
10312         (print_penpos): Moved to feta-macros.mf.
10313         (accOldEE): Replace `filldraw' with `penstroke'.
10314         Replace `draw' with `penstroke' and `drawdot'.
10315
10316         * mf/feta-banier.mf: Code clean-up.
10317         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
10318         `fill'.
10319
10320         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
10321
10322         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
10323         paremeter to control drawing of labels.  Update all callers.
10324
10325         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
10326         (new_bulb): Return a bulb as a single path.  To do that, it now
10327         takes some more parameters.  Updated all callers.
10328         (draw_gclef): Major clean-up.  `draw' has been replaced with
10329         `penstroke', unnecessary outlines have been removed.
10330         Remove (unused) gnome-canvas code.
10331
10332         * mf/feta-macros.mf (print_penpos): New macro (from
10333         feta-accordion.mf).
10334         Other minor fixes.
10335
10336         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
10337         ("Pedal dot"): Use `drawdot'.
10338         (draw_pedal_P): Add parameter to control drawing of labels.  Update
10339         all callers.
10340         Fix shape at top.
10341         (draw_pedal_e): Add parameter to control drawing of labels.  Update
10342         all callers.
10343         (draw_pedal_d): Add parameter to control drawing of labels.  Update
10344         all callers.
10345         Revert drawing direction.
10346
10347         * mf/feta-schrift.mf (draw_fermata): Use single path.
10348         (draw_short_fermata): Replace `filldraw' with `fill'.
10349         (draw_long_fermata, draw_very_long_fermata): Replace calls to
10350         `draw_rounded_block' with a single path.
10351         ("Thumb"): Draw full circle instead of mirroring segments.
10352         (draw_accent): New macro.
10353         ("> accent", "espr"): Use it.
10354         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
10355         ("open (unstopped)"): Draw full circle instead of mirroring
10356         segments.
10357         (draw_vee): Removed.
10358         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
10359         ("Downbow"): Replace calls to `draw_rounded_block' with a single
10360         path.
10361         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
10362         partial pieces drawn with `fill' -- these do still overlap with the
10363         stem of the `t' but just once, not multiple times so that fontforge
10364         can handle it gracefully.
10365         Change other parts of the glyph so that fontforge's overlapping
10366         algorithm reliably works.
10367         (draw_heel): Replace `draw' with `fill'.
10368         (draw_toe): Use `draw_accent' instead of `draw_vee'.
10369         ("Flageolet"): Replace `draw' with `penstroke'.
10370         ("Segno"): Replace `filldraw' with `penstroke'.
10371         Replace `draw' with `drawdot'.
10372         ("Coda"): Replace `fill' with `penstroke', using a single path.
10373         ("Varied Coda"): Use less overlapping paths.
10374         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
10375         single path.
10376
10377         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
10378         group to better control the `labels' command.
10379         Rename argument to `offset' and use it actually.  Update all
10380         callers.
10381         Replace `filldraw' with `fill'.
10382         ("mordent", "prallmordent", "upmordent", "downmordent",
10383         "lineprall"): Replace `draw' with `draw_gridline'.
10384         ("upprall", "downprall"): Replace `draw' with `fill'.
10385
10386         * mf/feta-timesig.mf: Formatting.
10387
10388         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
10389         to...
10390         ("Flat"): Here.
10391         (draw_paren): Move code to draw labels to...
10392         ("Right Parenthesis"): Here.
10393
10394 2005-01-02  Graham Percival <gperlist@shaw.ca>
10395
10396         * Documentation/user/notation.itely: add example of \setTextDecresc
10397         and \setTextDim.
10398
10399 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
10400
10401         * scm/define-markup-commands.scm :  fix glyph-strings of
10402         accidentals and \note-by-number
10403
10404 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10405
10406         * VERSION: 2.5.6 released.
10407         
10408         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
10409
10410         * input/regression/new-markup-scheme.ly: oops. font-family=music
10411         -> font-encoding fetaMusic.  
10412
10413         * lily/main.cc: put default to PS.
10414
10415         * lily/tfm.cc: idem.
10416
10417         * lily/afm.cc: idem.
10418
10419         * lily/include/modified-font-metric.hh (struct
10420         Modified_font_metric): remove coding_scheme() method.
10421
10422         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
10423
10424         * scripts/convert-ly.py (conv): crash on encountering \encoding.
10425
10426         * input/les-nereides.ly: convert to utf8
10427
10428         * lily/modified-font-metric.cc (text_dimension): idem.
10429
10430         * lily/parser.yy (TODO): idem.
10431
10432         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
10433
10434         * lily/lexer.ll: remove encoding
10435
10436         * scm/framework-ps.scm (output-variables): separately scale the
10437         page to mm 
10438
10439         * lily/pango-font.cc (Pango_font): fix scaling.
10440
10441         * lily/font-metric.cc (design_size): design_size returns a
10442         dimension now as well.
10443
10444 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10445
10446         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
10447         brace generation. 
10448
10449         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
10450
10451 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10452
10453         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
10454         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
10455
10456 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10457
10458         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
10459         in first run as well.
10460
10461         * scm/paper.scm (layout-set-staff-size): use text-font-size in
10462         dimension less points (ie. 12 = 12 point)
10463
10464         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
10465
10466         * lily/all-font-metrics.cc (find_pango_font): set description_
10467
10468         * lily/pango-font.cc (text_stencil): export size as well.
10469         (text_stencil): fix scaling and extents box.
10470
10471 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10472
10473         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
10474
10475         * Documentation/user/invoking.itely (Invoking lilypond): document
10476         texstr
10477
10478         * scripts/convert-ly.py (conv): add ancient rules.
10479
10480         * scm/clef.scm (c0-pitch-alist): replace - with .
10481
10482         * scripts/lilypond-book.py (process_snippets): add texstr support.
10483
10484         * scm/framework-texstr.scm (header): change extension to .textmetrics
10485
10486         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
10487         -f tex.
10488
10489         * lily/text-metrics.cc: new file.
10490         (try_load_text_metrics): new function
10491
10492         * lily/include/text-metrics.hh: new file.
10493
10494 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10495
10496         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
10497         ly_scheme_function to ly_lily_module_constant.
10498
10499         * lily/modified-font-metric.cc (text_dimension): try
10500         lookup_tex_text_dimension() first.
10501
10502         * lily/tfm.cc: new function ly:load-text-dimensions
10503
10504 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10505
10506         * scm/output-texstr.scm (text): use \lilygetmetrics
10507
10508         * scm/framework-texstr.scm (header): dump in new format.
10509
10510         * tex/lilypond-tex-metrics: new file.
10511         
10512 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10513
10514         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
10515         mapping.
10516         (index_to_charcode): New method.
10517
10518         * scm/output-ps.scm (glyph-string): 
10519         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
10520
10521 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
10522
10523         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
10524         implement fully, need FONT to get to charcode.
10525
10526         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
10527
10528         * scm: Cleanups.
10529
10530         * Documentation/user/changing-defaults.itely: Fix internalsrefs
10531         {Tunable context properties},
10532         {All layout objects},
10533         {Music definitions}.
10534
10535 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10536
10537         * VERSION: release 2.5.5
10538         
10539         * lily/main.cc: use TeX as default output format.
10540
10541         * flower/file-path.cc (find): try to open directly as well, so we
10542         find absolute path files. 
10543
10544         * lily/pango-select.cc: new file.
10545
10546         * scm/framework-ps.scm: remove all encoding code. 
10547         load pfb/pfa for PangoFont too.
10548         
10549         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
10550
10551 2004-12-22  Werner Lemberg  <wl@gnu.org>
10552
10553         Prepare glyph shapes for mf2pt1 conversion.
10554
10555         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
10556
10557         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
10558         (define_triangle_shape): Use it to replace `draw' with `fill' and
10559         `unfill'.  Update all callers.
10560         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
10561         (draw_cross): Ditto.
10562         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
10563         Use penrazor for better conversion with mf2pt1.
10564         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
10565         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
10566         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
10567         draw_la_head, draw_ti_head): Replace `filldraw' with
10568         `fill'.  Update all callers.
10569
10570 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10571
10572         * lily/paper-book.cc (output): revert: only allow a single output
10573         format.
10574
10575         * lily/include/pango-font.hh: new file.
10576
10577         * lily/pango-font.cc: new file.
10578
10579         * lily/font-metric.cc (text_stencil): new routine
10580
10581         * lily/all-font-metrics.cc (find_pango_font): new routine.
10582
10583         * lily/include/font-metric.hh (struct Font_metric): add
10584         text_stencil()
10585
10586         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
10587
10588 2004-12-22  Werner Lemberg  <wl@gnu.org>
10589
10590         Prepare glyph shapes for mf2pt1 conversion.
10591
10592         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
10593
10594         * mf/feta-toevallig.mf: Formatting.
10595         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
10596         ("Natural"): Fix paths to allow better postprocessing.
10597         (draw_meta_flat): Use `z3l' as additional point in path to get
10598         better conversion with mf2pt1.
10599         Other minor cleanups.
10600         ("3/4 Flat"): Add auxiliary points and modify path to replace
10601         `draw' with `fill'.
10602         ("Double Sharp"): Mirror path segments instead of picture elements
10603         to get a single outline.
10604         Modify path to replace `filldraw' with `fill'.
10605
10606 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10607
10608         * input/test/unfold-all-repeats.ly: added file back.
10609
10610         * Documentation/user/notation.itely,
10611         Documentation/user/programming-interface.itely
10612         Documentation/user/changing-defaults.itely: fixed misc broken
10613         links to input/test/ files.
10614
10615 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10616
10617         * tex/texinfo.tex: Update.  We should not be distributing this,
10618         but since we do, use latest version.
10619
10620         * Documentation/user/macros.itexi: Comment-out \fetaflat,
10621         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
10622         macros for feta glyphs.
10623
10624 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10625
10626         * Documentation/user/changing-defaults.itely: fix index for set.
10627
10628         * Documentation/user/converters.itely: added convert-ly bugs list
10629         from CVS.
10630
10631 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10632
10633         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
10634         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
10635         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
10636         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
10637
10638         * mf/GNUmakefile (pfa_warning): Use less broken check.
10639
10640         * python/lilylib.py (setup_environment): Remove cruft from
10641         GS_FONTPATH.
10642
10643         * configure.in: Bump mftrace requirement to 1.1.1.
10644
10645 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10646
10647         * scm/output-svg.scm (beam): Use polygon.
10648
10649         * scm/lily-library.scm: Bugfix.
10650
10651         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
10652
10653         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
10654
10655 2004-12-19  Werner Lemberg  <wl@gnu.org>
10656
10657         Prepare glyph shapes for mf2pt1 conversion.
10658
10659         * mf/feta-eindelijk: Some formatting.
10660         (multi_rest_x, multi_beam_height): Removed.  Unused.
10661         ("Quarter rest"): Use `intersectiontimes' to create a single
10662         outline.
10663         (rest_crook): Removed.  Unused.
10664         (draw_rest_bulb): Return path (without filling).  Update callers.
10665         Simplified.
10666         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
10667         "128th rest"): Simplify `pat'.
10668         Create single outline.
10669
10670 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10671
10672         * mf/GNUmakefile (ALL_GEN_FILES):
10673         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
10674
10675         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
10676         function.
10677
10678 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10679
10680         * scm/output-texstr.scm (placebox): add routine
10681
10682         * VERSION (PACKAGE_NAME): release 2.5.4
10683
10684         * scm/framework-texstr.scm (output-framework): new file.  
10685
10686         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
10687         processing.
10688
10689         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
10690
10691         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
10692         rule.
10693
10694         * configure.in (gui_b): bump mftrace requirement to 1.1.0
10695
10696         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
10697
10698         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
10699
10700 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10701
10702         * scm/framework-svg.scm (dump-page): Implement landscape.
10703
10704 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10705
10706         * lily/main.cc (setup_paths): Add svg to search path.
10707
10708         * scm/output-svg.scm:
10709         * scm/framework-svg.scm: Add pageSet.  Update.
10710         (dump-fonts): New function.
10711         (output-framework): Use it.
10712
10713         * mf/GNUmakefile: 
10714         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
10715
10716 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10717
10718         * tex/lilyponddefs.tex: comment out new ifpdf code.
10719
10720 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10721
10722         * GNUmakefile.in: 
10723         * SConstruct (symlink): Replace afm by otf.
10724
10725         * scm/framework-gnome.scm (gnome-main): Remove invocation of
10726         ly:pango-add-afm-decoder.
10727
10728         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
10729
10730 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10731
10732         * scm/output-ps.scm (new-text): don't access t glyph for getting
10733         space dimension.
10734
10735         * ly/init.ly: warn about \version
10736
10737         * lily/lexer.ll: set version-seen?
10738
10739 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10740
10741         * scm/output-svg.scm (string->entities): Update.
10742
10743 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10744
10745         * lily/main.cc (setup_paths): replace afm by otf for path. 
10746
10747         * lily/pangofc-afm-decoder.cc: remove.
10748
10749         * lily/include/pangofc-afm-decoder.hh: remove.
10750
10751         * scm/framework-scm.scm (output-framework): new file.
10752
10753         * mf/GNUmakefile: remove SAUTER_FONTS.
10754         remove SVG/sodipodi hacks.
10755
10756         * scm/lily-library.scm (stderr): move stderr.
10757
10758         * mf/GNUmakefile: remove AFM support.
10759
10760         * buildscripts/mf-to-table.py (base): remove AFM support.
10761
10762         * lily/open-type-font.cc (design_size): use design_size
10763
10764 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
10765
10766         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
10767
10768 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10769
10770         * mf/GNUmakefile: Generate combined aybabtu info.
10771         * mf/aybabtu.pe.in (i): Load it.
10772
10773         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
10774         are not symbols.
10775
10776         * lily/include/open-type-font.hh (count): New method.
10777
10778         * mf/aybabtu.pe.in: Typo.
10779
10780         * Documentation/user/out/lilypond-internals.nexi (Scheme
10781         functions): Typo.
10782
10783         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
10784
10785 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10786
10787         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
10788         subfonts.
10789
10790         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
10791
10792         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
10793         (tex-font-command-raw): new function.
10794
10795         * lily/include/virtual-font-metric.hh (Module): remove file
10796
10797         * lily/virtual-font-metric.cc (Module): remove file.
10798         
10799
10800         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
10801         (get_indexed_char): read bbox from lily table if present.
10802
10803 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10804
10805         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
10806         aybabtu.subfonts
10807
10808         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
10809         global glyphname. Enables more than 64 glyphs in the OTF.
10810
10811 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10812
10813         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
10814         braces.
10815
10816         * lily/open-type-font.cc (design_size): Use 12 as default for
10817         design size.
10818
10819         * mf/aybabtu.pe.in: New file.  Merge all our braces.
10820
10821         * mf/GNUmakefile: Generate aybabtu.
10822
10823         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
10824
10825 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10826
10827         * scm/lily-library.scm (char->unicode-index): Remove.
10828
10829         * scm/output-gnome.scm (text): Bugfix for plain string input.
10830         Updates.
10831
10832         * scm/output-svg.scm (svg-font): Add weight to font selection.
10833
10834 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10835
10836         * Documentation/topdocs/INSTALL.texi (Top): Point to
10837         buildscripts/out/clean-fonts instead of
10838         buildscripts/clean-fonts.sh. 
10839
10840 2004-12-13  Graham Percival  <gperlist@shaw.ca>
10841
10842         * input/regression/figured-bass.ly: attempt to clarify text.
10843
10844         * Documentation/user/notation.tely: add cindex for tag, attempt to
10845         add figured bass example.
10846
10847         * Documentation/user/changing-defaults: basic editing.
10848
10849 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10850
10851         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
10852
10853         * lily/open-type-font.cc (LY_DEFINE): new function
10854         ly:font-sub-fonts
10855
10856         * lily/include/font-metric.hh (struct Font_metric): new method
10857         sub_fonts()
10858
10859         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
10860         . with - in add.stem.
10861         
10862 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10863
10864         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
10865         and fetaDynamic.
10866
10867         * lily/rest.cc (glyph_name): Change - to . .
10868
10869         * scm/output-gnome.scm (text): Hello world, again.
10870
10871         * scm/output-svg.scm (named-glyph): New function.  Hello world!
10872
10873         * lily/modified-font-metric.cc (index_to_charcode): New method.
10874
10875         * lily/include/font-metric.hh (index_to_charcode): New function.
10876
10877         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
10878         new function.
10879         (ly:font-glyph-to-index): Remove.
10880
10881 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10882
10883         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
10884
10885         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
10886
10887         * lily/open-type-font.cc (load_scheme_table): new function
10888
10889         * lily/dots.cc (print): replace - 
10890
10891         * lily/open-type-font.cc (attachment_point): new function.
10892         (load_table): read LILC table
10893
10894         * buildscripts/gen-bigcheese-scripts.py (Module): new
10895         file. Generate FF scripts.
10896
10897         * mf/feta-din10.mf: idem.
10898
10899         * mf/feta-nummer10.mf: remove mf files.
10900
10901         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
10902
10903 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10904
10905         * lily/lily-guile.cc: Use scm_from_locale_stringn.
10906
10907         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
10908         compatibility.
10909
10910 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10911
10912         * lily/open-type-font.cc (get_indexed_char): scale metrics by
10913         design-size and units_per_EM.
10914
10915         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
10916
10917 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10918
10919         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
10920         does not crash fontforge.
10921
10922         * scm/lily-library.scm (char->unicode-index): Hack to map onto
10923         PUA.
10924
10925 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10926
10927         * scm/framework-ps.scm (ps-embed-cff): new function.
10928
10929         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
10930
10931 2004-12-12  Werner Lemberg  <wl@gnu.org>
10932
10933         * mf/bigcheese.pe.in: Add PUA mapping.
10934         Don't create Type 42 but bare CFF font.
10935
10936 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10937
10938         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
10939         within canvas boundaries.
10940
10941         * mf/merge.pe.in: Set font names, version, license GPL.
10942
10943         * make/substitute.make: Add FONTFORGE.
10944
10945         * config.make.in (FONTFORGE): Add.
10946
10947         * configure.in (gui_b): Use PATH_PROG for fontforge.
10948
10949 2004-12-11  Graham Percival  <gperlist@shaw.ca>
10950
10951         * scm/define-markup-commands.scm: add baseline-skip to info
10952         about \column.
10953
10954 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10955
10956         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
10957
10958         * scm/output-gnome.scm (named-glyph): Use it.
10959
10960         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
10961
10962         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
10963         (upper_string, lower_string, reverse_string): Remove.
10964
10965         * configure.in (fontforge): Reinstate version check.
10966
10967         * ly/engraver-init.ly: Fix clef glyph names.
10968
10969         * lily/time-signature.cc (special_time_signature): Fix fraction
10970         glyph names.
10971
10972 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10973
10974         * mf/merge.pe: new file.
10975
10976         * lily/freetype.cc: new file.
10977
10978         * lily/include/open-type-font.hh (class Open_type_font): new file.
10979
10980         * lily/include/freetype.hh: new file.
10981
10982         * lily/open-type-font.cc: new file.
10983
10984         * lily/all-font-metrics.cc (find_otf): new function.
10985
10986 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10987
10988         * lily/time-signature.cc (special_time_signature): Fix.
10989
10990         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
10991         GTK2 before checking for pango.  Fixes -fgnome.
10992
10993         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
10994         Scheme name.
10995
10996         * scm/define-markup-commands.scm:
10997         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
10998
10999         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
11000
11001         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
11002         date versions.  Fixes configure.
11003         (STEPMAKE_CHECK_VERSION): Support optional actual program version
11004         argument.
11005
11006 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11007
11008         * buildscripts/mf-to-table.py (write_ps_encoding): write real
11009         names in .enc
11010
11011         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
11012
11013 2004-12-09  Graham Percival  <gperlist@shaw.ca>
11014
11015         * Documentation/user/changing-defaults.itely: add info about
11016         make-dynamic-script
11017
11018         * Documentation/user/notation.itely: add link in dynamics to
11019         section about make-dynamic-script.
11020
11021 2004-12-09  Christian hitz  <chhitz@gmx.net>
11022
11023         * lily/lily-guile.cc: change MACOS_X to __APPLE__
11024
11025 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11026
11027         * buildscripts/mf-to-table.py (parse_logfile): use . for
11028         concatting name and group.
11029         (parse_logfile): use M for Minus (negative.)
11030
11031         * lily/include/type-swallow-translator.hh
11032         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
11033
11034         * lily/*.cc: cosmetics around = sign.
11035
11036         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
11037         lyric spacing on the penultimate column.
11038
11039 2004-12-05  Christian Hitz  <chhitz@gmx.net>
11040
11041         * configure.in:
11042         * lily/accidental-placement.cc:
11043         * lily/bar-line.cc:
11044         * lily/beam-concave.cc:
11045         * lily/beam-quanting.cc:
11046         * lily/beam.cc:
11047         * lily/bezier-bow.cc:
11048         * lily/bezier.cc:
11049         * lily/break-align-interface.cc:
11050         * lily/custos.cc:
11051         * lily/dimension-cache.cc:
11052         * lily/dot-column.cc:
11053         * lily/font-metric.cc:
11054         * lily/font-select.cc:
11055         * lily/gourlay-breaking.cc:
11056         * lily/grob-property.cc:
11057         * lily/grob.cc:
11058         * lily/lily-guile.cc:
11059         * lily/line-spanner.cc:
11060         * lily/lookup.cc:
11061         * lily/lyric-extender.cc:
11062         * lily/lyric-hyphen.cc:
11063         * lily/mensural-ligature.cc:
11064         * lily/midi-def.cc:
11065         * lily/misc.cc:
11066         * lily/note-collision.cc:
11067         * lily/note-column.cc:
11068         * lily/note-head.cc:
11069         * lily/paper-outputter.cc:
11070         * lily/percent-repeat-item.cc:
11071         * lily/rest-collision.cc:
11072         * lily/side-position-interface.cc:
11073         * lily/simple-spacer.cc:
11074         * lily/slur-configuration.cc:
11075         * lily/slur-scoring.cc:
11076         * lily/slur.cc:
11077         * lily/spaceable-grob.cc:
11078         * lily/spacing-spanner.cc:
11079         * lily/spanner.cc:
11080         * lily/staff-symbol-referencer.cc:
11081         * lily/stem.cc:
11082         * lily/stencil.cc:
11083         * lily/system-start-delimiter.cc:
11084         * lily/system.cc:
11085         * lily/text-item.cc:
11086         * lily/tie.cc:
11087         * lily/tuplet-bracket.cc:
11088         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
11089         <cmath> beacause isinf/isnan is undefined in <cmath>
11090
11091 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11092
11093         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
11094
11095 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11096
11097         * VERSION: release 2.5.3
11098         
11099 2004-11-29  Arno Waschk <arno@arnowaschk.de>
11100
11101         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
11102
11103 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11104
11105         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
11106
11107         * lily/note-head.cc (internal_print): always try the "s" head if
11108         u/d not found.
11109
11110         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
11111
11112 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11113
11114         * mf/parmesan-heads.mf (overdone_heads): typos.
11115
11116 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11117
11118         * lily/parser.yy (markup): in markups, { .. } without command
11119         before are also flattened, ie \line must be explicitely used.
11120
11121         * Documentation/user/changing-defaults.itely:
11122         * Documentation/user/notation.itely: 
11123         * input/wilhelmus.ly: 
11124         * input/regression/instrument-name-markup.ly: 
11125         * input/regression/markup-score.ly: 
11126         * input/regression/new-markup-scheme.ly: 
11127         * input/regression/new-markup-syntax.ly: 
11128         * input/test/coriolan-margin.ly: use \line in markups where
11129         appropriate
11130         
11131 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11132
11133         * scm/new-markup.scm (map-markup-command-list): helper function
11134         used in parser.yy to map markup commands on a markup list.
11135
11136         * lily/parser.yy: get rid off < > in markups by treating { } as
11137         real lists.
11138
11139         * lily/lexer.ll: remove < > from markup lexer mode.
11140
11141         * scripts/convert-ly.py (conv): add rule for converting 
11142         \markup < > to \markup { }
11143
11144         * ly/titling-init.ly: 
11145         * input/test/coriolan-margin.ly: 
11146         * input/regression/new-markup-syntax.ly: 
11147         * input/regression/new-markup-scheme.ly: 
11148         * input/regression/multi-measure-rest-text.ly: 
11149         * input/regression/markup-stack.ly: 
11150         * input/regression/markup-score.ly: 
11151         * input/regression/instrument-name-markup.ly: 
11152         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
11153         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
11154         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
11155         * input/wilhelmus.ly: 
11156         * Documentation/user/notation.itely: 
11157         * Documentation/user/music-glossary.tely: 
11158         * Documentation/user/changing-defaults.itely: change < > to { } in
11159         markups
11160
11161 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11162
11163         * lily/accidental-placement.cc (position_accidentals): shortcut if
11164         no accidentals to place.
11165
11166 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11167
11168         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
11169         typo s/ly:dimension ?/ly:dimension?/
11170
11171         * input/regression/lily-in-scheme.ly: 
11172         * input/regression/music-function.ly: 
11173         * ly/spanners-init.ly (assertBeamSlope): 
11174         * scm/music-functions.scm (def-grace-function): add the paper
11175         argument to music function definitions.
11176
11177 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11178
11179         * lily/moment.cc (LY_DEFINE):
11180         ly:moment-main-{denominator,numberator}, new function.
11181
11182         * lily/score-engraver.cc (typeset_all): assign to column on basis
11183         of axis-group-parent-X setting.
11184
11185         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
11186         add_element() on basis of axis-group-parent-Y setting.
11187
11188         * lily/grob.cc: add axis-group-parent-{XY} properties.
11189
11190         * input/regression/spacing-stick-out.ly: new file.
11191
11192         * lily/simple-spacer.cc (add_columns): use binary search for
11193         setting column rods. Changes O(n^2) to O(n log(n)) for
11194         constructing spacing problem from columns.
11195         (add_columns): read allow-outside-line to make sure no texts stick
11196         out.
11197         (solve): Simple_spacer::is_active() only determines
11198         satisfies_constraints_ for non-ragged typesetting.
11199
11200         * lily/simultaneous-music.cc (to_relative_octave): only set
11201         old_relative_used if return pitch actually changed.
11202
11203         * scm/define-context-properties.scm
11204         (all-user-translation-properties): change to match implementation.
11205
11206         * python/lilylib.py: Replace re.match by re.search and adds "-c
11207         showpage" to the gs command line (Johannes Schindelin)
11208
11209         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
11210         before processing. Prevents crash when inf is in the extent.
11211
11212         * scm/define-markup-commands.scm (note-by-number): add "s" to
11213         "noteheads-" glyphname.
11214  
11215         * lily/parser.yy (Generic_prefix_music): supply parser argument to
11216         music function as well.
11217         
11218 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11219
11220         * VERSION: release 2.5.2
11221
11222         * Documentation/user/changing-defaults.itely (Creating titles):
11223         add breakbefore variable.
11224
11225         * lily/paper-book.cc (set_system_penalty): new function. Set
11226         penalty_ based on breakBefore setting
11227
11228         * lily/context-specced-music-iterator.cc (construct_children):
11229         interpret special context id $uniqueContextId 
11230
11231         * lily/context.cc (create_unique_context): new method. Move
11232         creation of unique (\new) contexts into interpreting phase. This
11233         makes
11234
11235           foo= \new Staff ..
11236           << \foo \foo >>
11237
11238         produce 2 staves.
11239         
11240
11241         * scm/define-music-properties.scm (all-music-properties): add
11242         quoted-voice-direction
11243
11244         * ly/music-functions-init.ly: killCues function.
11245
11246         * scm/music-functions.scm (cue-substitute): move creation of voice
11247         contexts further to the back. 
11248
11249 2004-11-25  Werner Lemberg  <wl@gnu.org>
11250
11251         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
11252         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
11253
11254 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
11255
11256         * buildscripts/guile-gnome.sh: Fixed typo.
11257
11258 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11259
11260         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
11261
11262         * scripts/abc2ly.py (dump_slyrics): add ord(). 
11263
11264         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
11265         to regular engraver. 
11266
11267 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11268
11269         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
11270
11271 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11272
11273         * scm/define-markup-commands.scm (fill-line): Typo.
11274
11275         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
11276         and newer.
11277
11278 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
11279
11280         * ly/dynamic-scripts-init.ly: Fixed typo.
11281
11282 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11283
11284         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
11285         note-head, to have different attachment points for up and down.
11286
11287         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
11288
11289         * mf/feta-generic.mf (else): remove solfa.
11290
11291         * mf/feta-bolletjes.mf (tishape): remove unicode test.
11292
11293         * scm/define-context-properties.scm
11294         (all-user-translation-properties): add shapeNoteStyles property.
11295
11296         * lily/shape-note-heads-engraver.cc (process_music): new file.
11297
11298         * lily/event.cc (transpose): call Event::transpose() for
11299         transposing the tonic.
11300
11301 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11302
11303         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
11304         Unicode/OpenType and AFM.
11305
11306         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
11307
11308 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11309
11310         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
11311
11312         * lily/context.cc (Context): unprotect key from ctor.
11313
11314         * scm/stencil.scm (stack-lines): return empty-stencil if argument
11315         is '()
11316         (stack-stencils): idem.
11317
11318         * Documentation/user/changing-defaults.itely (Creating titles):
11319         document new title layout options.
11320
11321         * lily/parser.yy (lilypond_header_body): copy previous
11322         $globalheader if present.
11323
11324         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
11325         ly:module-copy
11326         
11327         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
11328
11329         * scm/titling.scm: remove old titling functions
11330
11331         * lily/stencil.cc (translate): remove absolute dimension.
11332
11333         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
11334         via markup.
11335
11336         * scm/page-layout.scm (marked-up-headfoot): create header/footer
11337         field from user-supplied markup
11338
11339         * scm/define-markup-commands.scm (on-the-fly): new markup
11340         command. Enter SCM markup procedure directly in Scheme.
11341         (fromproperty): new markup command. Read markup from props argument.
11342
11343         * scm/titling.scm (marked-up-title): create title via
11344         user-specified markup. 
11345
11346         * scm/define-markup-commands.scm (column): remove empty stencils
11347         from column.
11348
11349         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
11350         not have side-effect of creating variable stub.
11351
11352         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
11353
11354 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11355
11356         * scm/encoding.scm (coding-alist): 
11357         * scm/font.scm (add-ec-fonts):
11358         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
11359         Extended-TeX-Font-Encoding---Latin.
11360
11361         * lily/side-position-interface.cc (general_side_position): Add
11362         actual offset to error message (avoid constant error messages).
11363
11364         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
11365         block.
11366
11367         * lily/font-select.cc (select_encoded_font)
11368         (get_font_by_mag_step, get_font_by_design_size): 
11369         * lily/modified-font-metric.cc (Modified_font_metric): 
11370         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
11371
11372         * scm/encoding.scm (coding-alist): Add fetaDynamic.
11373         (read-encoding-file): Bugfix: do not require space after bracket.
11374
11375         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
11376         these do not exist.
11377
11378 2004-11-20  Graham Percival  <gperlist@shaw.ca>
11379
11380         * Documentation/user/notation.itely: added info about typesetting
11381         boxed bar numbers.
11382
11383 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11384
11385         * flower/interval.cc (T_to_string): gcc4 fixes.
11386
11387         * scm/define-markup-commands.scm (fill-line): use
11388         stack-stencils. This fixes problems with putting already centered
11389         stencils in a line.
11390
11391         * VERSION: release 2.5.1
11392
11393         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
11394
11395 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11396
11397         * input/example-[1-3].ly: simplify.
11398
11399         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
11400
11401         * scm/output-ps.scm (new-text): new function. Use glyphshow to
11402         show glyphs.
11403
11404         * scm/encoding.scm (decode-byte-string): new function.
11405
11406         * scripts/convert-ly.py (conv): add warning about
11407         set-global-staff-size.
11408
11409         * Doxyfile: add. 
11410
11411         * scripts/convert-ly.py (conv): add raggedlastbottom rule
11412         (conv): warn for TextSpanner split.
11413         (conv): warn for textheight.
11414
11415 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11416
11417         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
11418         building the documentation, info with images are installed.
11419         (final-install): Fix description.  Mention sourcing of login
11420         scripts (instead of running).
11421
11422 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11423
11424         * Debian lmodern support.  Note that LilyPond will issue warnings
11425         
11426             no such encoding: "FontSpecific"
11427
11428           The font selection mechanism wants to get the encoding from the
11429           font itself, but the idea of lmodern is that it is usable with
11430           different encodings, ie, Lily should get the encoding from the
11431           font tree, rather than the font itself.  This would require some
11432           more work.
11433         
11434         * configure.in: Test for and accept lmodern if EC fonts not found.
11435
11436         * scm/framework-tex.scm (font-load-command): TeX font name
11437         mangling for latin1 encoded cork-lm fonts.
11438         (convert-to-ps): Load lm.map if available.
11439
11440         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
11441         available.
11442
11443         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
11444
11445         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
11446         available.
11447
11448         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
11449         path for absolute file name, that is silly.
11450
11451         * lily/score-engraver.cc (initialize): 
11452
11453         * Documentation/user/GNUmakefile (local-install-info): Invoke
11454         install-info --remove first.
11455
11456         * #include cleanup (Andreas Scherer).
11457
11458 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
11459
11460         * input/test/script-abbreviations.ly: fix typos.
11461
11462 2004-11-17  Werner Lemberg  <wl@gnu.org>
11463
11464         * python/lilylib.py (options_help_str): Support pretty-printing of
11465         newlines in fourth element of option description.
11466
11467         * scripts/lilypond-book.py (option_definitions): Use new lilylib
11468         feature.
11469         Sort options.
11470
11471         * Documentation/user/lilypond-book.itely: Finish update.
11472
11473 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11474
11475         * Documentation/user/macros.itexi: Add comment about \command.
11476
11477         * Documentation/user/lilypond.tely:
11478         * Documentation/user/lilypond-book.itely: Fix names of lilypond
11479         and lilypond-book nodes, so that `info lilypond' visits the manual
11480         at top level, and `info lilypond-book' visits the lilypond-book
11481         section.
11482
11483         * Documentation/user/GNUmakefile (local-install-info): Fix rules
11484         and packager messages.
11485
11486         * lily/pangofc-afm-decoder.cc: Update test.
11487
11488 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11489
11490         * scm/lily-library.scm (char->unicode-index): New function.
11491
11492         * scm/output-gnome.scm: 
11493         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
11494
11495         * Proper naming of file name throughout; s/filename/file[-_]name/.
11496
11497         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
11498
11499         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
11500
11501 2004-11-16  Werner Lemberg  <wl@gnu.org>
11502
11503         * scripts/lilypond-book.py: The Lord has commanded me to use only
11504         tabs for indentation.  Your humble servant obeys.
11505
11506 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11507
11508         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
11509         including font, if LilyPond-feta font is only feta font in path.
11510
11511         * scm/output-gnome.scm (text): Revert to file name of font if font
11512         has no name.  Fixes ec font selection.
11513         (char): Bugfix: do not utf8 twice.  Fixes clefs.
11514
11515         * scm/framework-svg.scm:
11516         * scm/output-svg.scm: New file.  TODO: figure out how to
11517         do character by index in font.
11518
11519         * scm/output-sodipodi.scm: Remove.
11520
11521         * scm/output-ps.scm (stem): Remove.
11522
11523 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11524
11525         * scm/output-gnome.scm (beam): New function.
11526         (slur): Round corners.
11527         (round-filled-box): Round corners.
11528
11529 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11530
11531         * scm/output-gnome.scm (beam): add function.
11532         (draw-line): new routine.
11533         (dashed-line): stub; call draw-line
11534         (polygon): new routine.
11535
11536 2004-11-15  Werner Lemberg  <wl@gnu.org>
11537
11538         * Documentation/user/lilypond-book.itely: Revise section on
11539         lilypond-book options.
11540         Other minor fixes.
11541
11542         * scripts/lilypond-book.py: Change indentation to 4.
11543         Minor formatting.
11544
11545 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11546
11547         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
11548         grobs that have tweaks specced.
11549         
11550 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
11551
11552         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
11553
11554 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11555
11556         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
11557         actual char #, not 0 based index.
11558
11559         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
11560
11561         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
11562         Warning: do make -C mf clean.
11563
11564         * lily/context-property.cc: Compile fix.
11565
11566         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
11567         Grok ec-fonts, braces and dynamics.
11568
11569         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
11570
11571 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11572
11573         * lily/include/tweak-registration.hh: new file.
11574
11575         * lily/tweak-registration.cc: new file.
11576
11577         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
11578         saving tweaks.
11579
11580         * scm/output-gnome.scm (text): comment dribble.
11581
11582 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11583
11584         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
11585
11586         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
11587         path-def before using.  Fixes muchtomany slurs in wrong places
11588         bug.
11589
11590 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11591
11592         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
11593
11594         * lily/include/object-key-undumper.hh (Module): new file.
11595
11596         * lily/object-key-undumper.cc (Module): New file. Deserialize
11597         keys. SCM bindings
11598
11599         * lily/object-key-dumper.cc (Object_key_dumper): idem.
11600         Provide SCM bindings.
11601
11602         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
11603         new file. Serialize object keys.
11604         
11605         * lily/object-key.cc (dump): new function.
11606         (as_scheme): new virtual function
11607         (undump): new function
11608         (undumpers): new table.
11609
11610         * lily/include/global-context.hh (Context): take \score key upon init.
11611
11612         * lily/object-key-dumper.cc (serialize_key): new file.
11613
11614         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
11615
11616         * lily/lily-lexer.cc: remove \quote.
11617
11618         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
11619
11620         * lily/context.cc (Context): take key argument in ctor.
11621         (create_context): new function
11622
11623         * lily/grob.cc (Grob): take key argument in ctor.  
11624
11625         * lily/lilypond-key.cc (do_compare): new file.
11626
11627         * lily/object-key.cc (Object_key): new file.
11628
11629         * lily/include/object-key.hh (class Object_key): new file.
11630
11631         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
11632
11633 2004-11-13  Graham Percival  <gperlist@shaw.ca>
11634
11635         * Documentation/user/lilypond-book.itely: add small warning about
11636         noindent default in lilypond-book.
11637
11638         * Documentation/user/converters.itely: add examples for convert-ly.
11639
11640         * Documentation/user/examples.itely: change version string in templates
11641         to 2.4.0.
11642
11643 2004-11-12  Karl Hammar  <karl@aspodata.se>
11644
11645         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
11646         cmdline, use xargs instead (backportme)
11647
11648 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
11649         
11650         * Documentation/user/: Numerous fixes in the user manual.
11651
11652 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11653
11654         * lily/parser.yy (re_rhythmed_music): search music expression for
11655         context-id, surround by \new Voice if not found. Fixes:
11656         addlyrics-second-staff.ly
11657
11658         * VERSION: 2.5.0 released.
11659         
11660 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11661
11662         * Documentation/index.html.in: Fix url to one big page.  (backportme)
11663
11664         * Documentation/user/GNUmakefile: Separate rules for split and
11665         unsplit html documents.  Remove perl massaging.  (backportme)
11666
11667 2004-11-11  Graham Percival  <gperlist@shaw.ca>
11668
11669         * Documentation/user/lilypond-book.itely: add short warning about
11670         \lilypond{} in LaTeX docs.
11671
11672 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11673
11674         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
11675         found.  (backportme)
11676
11677         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
11678         version requirement.  (backportme)
11679
11680         * configure.in: Be explicit about old versions of
11681         ec-fonts-mtraced.  (backportme)
11682
11683         * lily/context-selector.cc (set_tweaks): New function.
11684         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
11685         web with -DTWEAK.
11686
11687         * Documentation/user/introduction.itely (Automated engraving):
11688         Remove fragment option.  Fixes web.
11689
11690         * lily/context-property.cc (make_item_from_properties):
11691         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
11692         #ifdef.
11693
11694         * scm/define-context-properties.scm
11695         (all-internal-translation-properties): Add tweakRank and tweakCount.
11696
11697         * lily/grob.cc: 
11698         * scm/define-grob-properties.scm (all-internal-grob-properties):
11699         Add tweak-rank and tweak-count.
11700
11701 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11702
11703         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
11704         New function.
11705         (text): Use them.
11706
11707         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
11708         animated/opaque grob dragging tweaks.
11709
11710         * buildscripts/guile-gnome.sh: Update.
11711
11712 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11713
11714         * scm/define-grobs.scm (all-grob-descriptions): Added
11715         line-interface to the LigatureBracket object.
11716
11717 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11718
11719         * scm/framework-gnome.scm (item-event): Support non-animated mouse
11720         dragging tweaks.
11721
11722         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
11723
11724         * lily/context-selector.cc (store_context): New function.
11725
11726         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
11727         (store_grob): New function.
11728         (identify_grob): Add Moment parameter.
11729
11730         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
11731         exists.
11732
11733         * scm/framework-gnome.scm (save-tweaks): Write as alist.
11734
11735 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11736
11737         * scm/framework-gnome.scm (item-event): Print grob id.
11738         (save-tweaks): New function.
11739         (tweak): New funtion.
11740         (item-event): Use it, bound to arrow keys.
11741
11742         * lily/context-property.cc (make_item_from_properties): Register grob.
11743         * lily/context.cc (add_context): Register context.
11744
11745         * lily/include/context-selector.hh:
11746         * lily/include/grob-selector.hh:
11747         * lily/context-selector.cc:
11748         * lily/grob-selector.cc: New file.
11749
11750 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11751
11752         * lily/slur.cc: add 'positions to interface
11753
11754         * lily/main.cc: reinstate PS as standard output format. 
11755
11756         * scm/framework-tex.scm (output-preview-framework): print systems
11757         up to first non title system.
11758
11759         * lily/grace-engraver.cc (start_translation_timestep): split
11760         scm_cadddr
11761         
11762 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11763
11764         * lily/quote-iterator.cc (Module): remove old quote-iterator
11765
11766         * scm/define-music-types.scm (music-descriptions): move
11767         NewQuoteMusic over QuoteMusic
11768
11769         * Documentation/user/notation.itely (Formatting cue notes): use
11770         \cueDuring.
11771
11772         * lily/new-quote-iterator.cc (quote_ok): new function.
11773
11774         * input/regression/quote-cue-during.ly: new file.
11775
11776         * input/regression/quote-grace.ly: new file.
11777
11778         * scm/define-context-properties.scm (Module): change definition of
11779         graceSettings
11780
11781         * lily/context-property.cc (Module): rename from
11782         translator-property.cc
11783
11784         * lily/context.cc (context_name_symbol): new function
11785
11786         * lily/grace-engraver.cc: new file. Set properties for grobs based
11787         on the grace-ness of now_moment().
11788
11789         * scm/music-functions.scm (add-grace-property): use list
11790         iso. vector for graceSettings
11791         remove set-{start,stop}-grace-properties. 
11792
11793         * lily/new-quote-iterator.cc (construct_children): set
11794         quote_outlet_ if no quoted-context-{id,type} specified.
11795
11796         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
11797
11798         * lily/parser.yy (command_element): remove \quote.
11799
11800         * ly/music-functions-init.ly (location): add quoteDuring music
11801         function. 
11802
11803         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
11804         optional semicolon. (backportme)
11805
11806 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11807
11808         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
11809         need to link to GUILE et al.
11810
11811 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11812
11813         * scm/define-music-properties.scm (all-music-properties): add
11814         quoted-context-type, quoted-context-id.
11815
11816         * scm/lily.scm (type-check-list): new function.
11817         
11818         * scm/lily-library.scm: new file. Generic library routines.
11819
11820         * lily/parser.yy (Generic_prefix_music): move typechecking out of
11821         parser.
11822
11823         * ly/music-functions-init.ly: add quoteDuring function.
11824
11825         * lily/include/music-iterator.hh (class Music_iterator): rename
11826         set_translator -> set_context
11827
11828         * lily/parser.yy (Generic_prefix_music_scm): add
11829         MUSIC_FUNCTION_SCM_SCM_MUSIC
11830
11831         * scm/lily.scm (sanitize-command-option): new function. (backportme)
11832
11833         * scm/framework-tex.scm (header): sanitize TeX paper size.
11834         (backportme)
11835
11836 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11837
11838         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
11839
11840         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
11841
11842         * scm/framework-tex.scm (font-load-command): Use T1 if no
11843         font-encoding set.  (backportme)
11844
11845         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
11846         exists before converting.  (backportme)
11847
11848         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
11849         exists before converting.  (backportme)
11850         (convert-to-ps): Remove .ps file if it exists before
11851         converting.  (backportme)
11852
11853         * lily/lexer.ll: Remove extra progress newline, use present tense.
11854
11855         * scm/paper.scm (paper-alist): public.
11856         * scm/framework-tex.scm (convert-to-ps):
11857         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
11858         command line.
11859
11860 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11861
11862         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
11863
11864         * lily/recording-group-engraver.cc (derived_mark): mark
11865         now_events_. (backportme)
11866
11867 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11868
11869         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
11870
11871         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
11872         invoking latex. (backportme.)
11873
11874         * lily/stem.cc (off_callback): center stems for all rest stems.
11875
11876 2004-11-05  Werner Lemberg  <wl@gnu.org>
11877
11878         * Documentation/user/lilypond.tely: Add more guidelines for writing
11879         lilypond texinfo documents.
11880
11881 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
11882
11883         * Documentation/index.html.in: remove <hr>.
11884
11885         * THANKS: change 2.3 to 2.4.
11886
11887 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
11888
11889         * scm/output-gnome.scm: More fontconfig comment.
11890
11891 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
11892
11893         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
11894         <package> directory in $(builddir)/share according with
11895         PACKAGE_NAME defined in the VERSION file.
11896
11897 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11898
11899         * lily/beam.cc (rest_collision_callback): use local beam
11900         multiplicity.
11901
11902         * input/regression/stem-stemlet.ly: new file.
11903
11904         * lily/stem.cc (add_head): store rests as well.
11905
11906         * scm/define-grob-properties.scm (all-user-grob-properties): add
11907         stemlet-length
11908
11909         * lily/stem.cc: store rests as well.
11910         
11911         * input/regression/new-slur.ly: mention forcing.
11912
11913 2004-11-04  Werner Lemberg  <wl@gnu.org>
11914
11915         * Documentation/user/*: A new round of layout fixes and document
11916         structure cleanup.
11917
11918 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
11919
11920         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
11921
11922 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11923
11924         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
11925
11926 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11927
11928         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
11929
11930         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
11931
11932         * lily/main.cc (main): Invoke identify.
11933
11934         * scm/lily.scm (postscript->pdf): Remove progress newline.
11935         Write progress to stderr.
11936
11937         * lily/paper-book.cc (output): Remove progress newline.
11938
11939         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
11940         gettext on user messages, and remove whitespace.
11941
11942         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
11943
11944         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
11945         argv[0] (Thomas Scharkowski).
11946
11947         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
11948         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
11949         for ec-fonts-mtraced.
11950
11951         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
11952         --srcdir build (Bertalan).
11953
11954         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
11955         headers and library too (Laura Conrad).
11956
11957         * Documentation/topdocs/INSTALL.texi (Top): Mention development
11958         package for guile too (Laura Conrad).
11959
11960         * lily/main.cc (usage): Typo.
11961
11962 2004-11-02  Werner Lemberg  <wl@gnu.org>
11963
11964         * Documentation/user/notation.ly: More fixes to improve appearance.
11965
11966         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
11967         better output for multicolumn tables.
11968
11969 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11970
11971         * lily/main.cc (dir_info): Fixed typo in the printouts.
11972
11973 2004-11-01  Werner Lemberg  <wl@gnu.org>
11974
11975         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
11976         of output.
11977         Set `per_line' to 2; replace hard-coded value with it.
11978
11979         * Documentation/user/*: Many fixes to improve appearance of
11980         printed manual.
11981
11982 2004-11-01  Werner Lemberg  <wl@gnu.org>
11983
11984         * Documentation/user/changing-defaults.itely,
11985         Documentation/user/notation.ly,
11986         Documentation/user/programming-interface.itely: Use @/.
11987         Fix formatting of some lilypond snippets and tables.
11988
11989         * scripts/lilypond-book.py (compose_ly): Provide useful default
11990         for LINEWIDTH in `override'.
11991
11992 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11993
11994         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
11995
11996 2004-10-31  Werner Lemberg  <wl@gnu.org>
11997
11998         Resetting @exampleindent to `5' gives ugly results with texinfo's
11999         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
12000         (if not quoting) to change @exampleindent only locally.
12001
12002         * scripts/lilypond-book.py (NOQUOTE): New variable.
12003         (output) [LATEX]: Remove AFTER and BEFORE.
12004         [TEXINFO]: Remove AFTER and BEFORE.
12005         Fix QUOTE and VERBATIM pattern.
12006         Add NOQUOTE pattern.
12007         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
12008         and BEFORE.
12009         [output_texinfo]: Use NOQUOTE.
12010
12011 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12012
12013         * Documentation/user/changing-defaults.itely: clarify paper
12014         size commands with correct info.
12015
12016         * Documentation/user/lilypond-book.itely: add more docs for
12017         filename extensions.
12018
12019 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12020
12021         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
12022         (PATCH_LEVEL): start 2.5.0.
12023
12024 #Local variables:
12025 #coding: utf-8
12026 #End:
12027