]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/slur-configuration.cc (fit_factor): oops, skip point if
[lilypond.git] / ChangeLog
1 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2
3         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4         intersection gets smaller. This fixes slurs over extreme points.
5
6         * lily/melody-engraver.cc (stop_translation_timestep): ignore
7         stems with neutral-direction set.
8
9         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
10
11         * lily/open-type-font.cc (load_table): format error.
12
13         * lily/change-iterator.cc (process): format fix.
14
15         * flower/include/international.hh (_f): idem.
16
17         * flower/include/std-string.hh: add format printf attribute.
18
19         * scm/define-grobs.scm (all-grob-descriptions): height of all
20         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
21
22         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
23         ambitus lines.
24
25         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
26
27 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
28
29         * input/regression/: upgraded syntax for some files.
30
31         * THANKS: Add bughunters.
32
33 2006-02-22  Graham Percival  <gpermus@gmail.com>
34
35         * Documentation/user/ invoking.itely, advanced-notation.itely,
36         global.itely: long-awaited "let's make chapter 10 not suck"
37         update.  Rearrange chapter 10; now called "global issues",
38         addresses file structure, etc.  Some info from other files
39         moved into global.itely.
40
41 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
42
43         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
44         catch trill-span-event notes.
45
46         * Documentation/user/examples.itely (Ancient notation templates): typo.
47         (Jazz combo): typo.
48
49         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
50
51         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
52
53         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
54
55         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
56
57         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
58         froum Laissez_vibrer_engraver.
59
60         * ly/declarations-init.ly (repeatTie): add \repeatTie
61
62         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
63
64         * scm/define-grob-properties.scm (all-user-grob-properties): add
65         head-direction property.
66
67         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
68         from_lv_ties. Take head direction argument.
69
70         * lily/semi-tie-column.cc: rename from
71         laissez-vibrer-tie-column.cc. Rename class too.
72
73         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
74         class too.
75
76         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
77
78         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
79         0 case.
80         (find_breaks): idem.
81
82 2006-02-21  Graham Percival  <gpermus@gmail.com>
83
84         * Documentation/user/advanced-notation.itely: fixed make-moment]
85         example.
86
87         * Documentation/user/basic-notation.itely: more clarification to
88         transpose.
89
90 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
91
92         * lily/include/constrained-breaking.hh (class
93         Constrained_breaking): new file.
94
95         * lily/constrained-breaking.cc (resize): new file.
96
97         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
98
99         * Documentation/user/advanced-notation.itely (Clusters): insert
100         end ignore too.
101
102         * lily/tie-column.cc (calc_positioning_done): support for
103         tie-score debugging
104
105         * lily/tie-formatting-problem.cc
106         (generate_extremal_tie_variations): factor out.
107         (score_ties_configuration): annotate all tie 
108         (print_ties_configuration): new routine.
109         (generate_configuration): nudge extremal ties outside of the head
110         Y extents.
111         (score_ties_configuration): oops. convert to staff-space before
112         determining position symmetry.
113
114 2006-02-20  Graham Percival  <gpermus@gmail.com>
115
116         * Documentation/user/*-notation.itely: misc minor editing,
117         shifting doc sections around.
118
119         * Documentation/user/*-notation-itely, global.itely,
120         changing-defaults.itely: added new stuff from NEWS.
121
122 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
123
124         * po/fi.po: update.
125
126 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
127
128         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
129         lilypond --verbose for lp-book.
130
131         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
132         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
133
134         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
135         $(buildscript-dir) iso. absolute depth.
136
137         * buildscripts/genicon.py (dir): thinko.
138
139         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
140
141 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
142
143         * scm/output-lib.scm: swap darkcyan/darkyellow
144
145         * THANKS: Add bughunters.
146
147 2006-02-19  Graham Percival  <gpermus@gmail.com>
148
149         * Documentation/user/programming-interfaces.itely: fixed example.
150
151         * Documentation/user/instrument-notation.itely: fix @{ @}.
152
153         * scm/script.scm: add avoid-slur for \open.
154
155 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
156
157         * lily/tie-formatting-problem.cc (score_configuration): use
158         sliding score for min-length. 
159
160         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
161         spaghetti for icons.
162
163         * buildscripts/genicon.py (program_name): new file.
164
165         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
166         in outline too.  
167         (generate_configuration): for small ties, also look for collisions
168         at Y + DIR*h + DELTA_Y.
169         (get_variations): consider variation for dot positions too.
170
171         * lily/side-position-interface.cc (aligned_side): take abs for
172         quantized rounded position. Fixes tenuto below staff.
173
174         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
175         markers when necessary.
176
177         * lily/program-option.cc (internal_set_option): add
178         strict_infinity_checking option.
179
180         * scm/output-lib.scm (cyan): swap yellow and cyan.
181
182 2006-02-19  Graham Percival  <gpermus@gmail.com>
183
184         * darwin.patch: trivial linenumber update.
185
186         * Documentation/user/ {various}: `\context foo = named' changed
187         to `\new foo = "name"' in docs.
188
189 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
190
191         * scm/stencil.scm (annotate-y-interval): use it.
192
193         * scm/lily-library.scm (interval-sane?): new function.
194
195         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
196         tfm_checksum stuff.
197
198         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
199         common refpoint.
200
201         * flower/include/std-vector.hh (iterof): add iterof macro.
202
203         * lily/enclosing-bracket.cc (width): new function.
204
205         * lily/align-interface.cc (align_elements_to_extents): reinstate
206         warning.
207
208 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
209
210         * Documentation/index.html.in: fix spelling: thankyous.
211
212 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
213
214         * lily/lyric-hyphen.cc: typo.
215
216 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
217
218         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
219         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
220         builds don't work. 
221
222         * VERSION: release 2.7.35
223
224         * lily/beam.cc (get_default_dir): oops. Take abs () for
225         extremes[DOWN].
226         (get_default_dir): use extreme position criterion only in absence
227         of forced stem directions.
228
229         * VERSION (PATCH_LEVEL): bump VERSION.
230
231         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
232         dependencies. Necessary for -jX builds.  
233
234 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
235
236         * lily/relocate.cc (setup_paths): Yet another const fix.
237
238 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
239
240         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
241
242         * lily/relocate.cc (setup_paths): oops.
243
244 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
245
246         * Documentation/index.html.in: order links: html before PDF.
247
248 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
249
250         * lily/tie-column-format.cc (Module): remove.
251
252         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
253
254         * lily/text-spanner.cc (print): idem.
255
256         * lily/dynamic-text-spanner.cc (print): only print line if longer
257         than dash-period.
258
259         * lily/auto-change-iterator.cc (change_to): formatting.
260
261         * lily/beam.cc (get_default_dir): take extreme note head as input
262         for stem direction.
263
264         * lily/tie.cc (get_default_dir): only look directions for visible
265         stems. 
266
267         * lily/side-position-interface.cc (aligned_side): oops. Don't
268         mutiply with direction. This fixes quantized (staccato, tenuto)
269         scripts below notes.
270
271         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
272         direction. Fixes c-lyrics-center-align.ly
273
274 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
275
276         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
277         constructor.
278
279         * lily/std-string.cc:
280         * lily/include/std-vector.hh (split_string): Move and rename from
281         lily/include/misc.hh, lily/misc.cc.  Update callers.
282
283 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
284
285         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
286
287 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
288
289         * flower/test-file.cc: New file.
290
291         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
292         libraries.
293
294         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
295
296 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
297
298         * flower/include/file-storage.hh: remove file.
299
300         * lily/include/midi-item.hh (class Midi_track): idem.
301
302         * lily/include/source.hh (class Sources): idem.
303
304         * lily/include/performance.hh (class Performance): use vector
305         iso. Cons<>
306
307         * flower/include/cons.hh (class Cons): remove file.
308
309         * flower/include/flower-proto.hh: remove template cruft.
310
311         * lily/include/font-metric.hh: use size_t not vsize for indices.
312
313         * flower/include/flower-proto.hh (Module): remove std-vector.hh
314         from proto.
315
316         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
317
318         * lily/include/paper-book.hh (class Paper_book):
319         make get_system_specs() public.
320
321         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
322         the force=10000 case if we don't have a current-best. 
323
324         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
325         vsize 
326
327         * flower/include/flower-proto.hh: remove outdated templates.
328
329         * scm/page.scm: use annotate-spacing
330
331 2006-02-15  Graham Percival  <gpermus@gmail.com>
332
333         * scm/translation-functions.scm: circle patch from Erlend, thanks!
334
335         * THANKS: moved Erlend Aasland to contributors.
336
337 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
338
339         * config.hh.in: remove HAVE_PANGO_16
340
341         * lily/tuplet-bracket.cc (calc_positions): multiply with
342         staff-space for beam case. This fixes tuplets+beams on scaled
343         staves.
344
345         * config.hh.in: remove all Kpathsea related defines.
346
347         * lily/dot-column.cc (side_position): reach stem via dots->
348         head->stem. Inspect all stems for dot collisions. 
349
350         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
351         stem handling.
352
353         * lily/bar-number-engraver.cc (process_music): document function
354         of whichBar.
355
356         * lily/score.cc (default_rendering): add pscore, not systems
357         themselves.
358
359         * lily/paper-book.cc (get_system_specs): separate generation of
360         titles and systems.
361
362         * flower/include/std-vector.hh: don't include config.hh
363
364 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
365
366         * flower/include/std-vector.hh: Better wrapper compatibility with
367         std::vector.
368
369         * flower/include/flower-proto.hh: Remove cheap forward declaration
370         attempts.
371
372         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
373
374 2006-02-14  Graham Percival  <gpermus@gmail.com>
375
376         * Documentation/user/invoking.itely: add warning about command line.
377
378 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
379
380         * lily/include/lily-proto.hh: add Prob, rm Page.
381
382         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
383
384         * VERSION: release 2.7.34
385
386         * lily/relocate.cc (framework_relocation): show canary if
387         GHOSTSCRIPT_VERSION undefined.
388
389         * GNUmakefile.in: remove $(VERSION) symlink.
390
391         * lily/relocate.cc (setup_paths): add + 
392
393 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
394
395         * Documentation/index.html.in: specify sizes for all big HTML pages.
396
397 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
398
399         * config.hh.in: remove @FRAMEWORKDIR@
400
401         * lily/system-start-text.cc (get_stencil): new file: separate out
402         system-start-delimiter text support.
403
404         * input/**ly: replace \context with \new where appropriate.
405         
406         * THANKS: add Don.
407
408         * lily/slur-scoring.cc (get_base_attachments): use
409         robust_relative_extent. This fixes problems with empty paper-columns. 
410
411 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
412
413         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
414
415         * scm/define-music-properties.scm (all-music-properties):
416         create-new property.
417
418         * lily/context-specced-music-iterator.cc (construct_children):
419         inspect 'create-new property iso. magical $uniqueContextId context
420         id.
421
422         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
423
424         * lily/context-key-manager.cc (Module): new file. Encapsulate
425         object key generation.
426
427         * lily/include/context-key-manager.hh (Module): new file.
428
429 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
430
431         * scm/define-grobs.scm (all-grob-descriptions): center instrument
432         names vertically
433
434         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
435         options.
436         (reloc_b): excise --enable-framework-dir
437
438         * lily/relocate.cc (framework_relocation): use getenv
439         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
440
441 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
442
443         * flower/include/std-string.hh: 
444         * flower/include/std-vector.hh: Finish std:: conversion; move
445         flower extensions from std:: namespace.  Update users.
446
447         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
448         their expansion to vector<*>.  Update users.
449
450 2006-02-10  Graham Percival  <gpermus@gmail.com>
451
452         * Documentation/user/invoking.itely: add example to File structure.
453
454         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
455         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
456
457 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
458
459         * ly/paper-defaults.ly: typo.
460
461         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
462         set_parent() for parentheses. This will make it show up in bbox
463         calculations.
464
465         * scm/output-lib.scm (parentheses-item::print): rewrite, using
466         ly:grob-common* functions.
467
468         * lily/grob-scheme.cc (LY_DEFINE):
469         ly:grob-common-refpoint-of-array: new function 
470         ly:grob-common-refpoint: new function 
471         ly:grob-relative-coordinate: new function 
472
473         * lily/instrument-name-engraver.cc (process_music): use
474         Text_interface::is_markup(). This fixes \markup on instrument names.  
475
476         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
477         for ties and slurs.
478
479         * lily/slur.cc (print): idem.
480
481         * lily/tie.cc: add line-thickness for ties. 
482
483 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
484
485         * scm/output-svg.scm: Document diversion from GNU coding standards
486         as a workaround for a bug in Microsoft Internet Explorer.
487
488 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
489
490         * lily/instrument-name-engraver.cc (process_music): use
491         is_markup() iso. is_string()
492
493         * Documentation/user/changing-defaults.itely (Module): add menu entry.
494
495         * lily/percent-repeat-engraver.cc (process_music): only look at
496         main_part_ for % repeats.
497
498         * lily/stem-tremolo.cc (get_beam_translation): new function.
499         (calc_slope): new function.
500         (height): don't use real slope.
501
502 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
503
504         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
505         new connect-to-neighbor, control-points and staff-padding
506         properties to make ligature brackets showing up again.
507
508 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
509
510         * VERSION: release 2.7.33
511
512         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
513         too many.
514
515         * Documentation/user/changing-defaults.itely (Difficult tweaks):
516         remove applyOutput example.
517         (Objects connected to the input): document \tweak, \parenthesize
518
519         * lily/relocate.cc (prefix_relocation): allow "current"
520         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
521         changing VERSION in a lily tree less painful.
522
523         * input/regression/parenthesize.ly: new file. 
524
525         * scm/output-lib.scm (parenthesize-element): new function.
526
527         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
528
529         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
530
531         * lily/accidental-engraver.cc (make_standard_accidental): reroute
532         cause: accidentals are caused by note heads, not note events. 
533
534 2006-02-08  Graham Percival  <gpermus@gmail.com>
535
536         * darwin.patch: small patch from Erlend, thanks!
537
538         * Documentation/user/basic-notation.itely: add stem-neutral example.
539
540         * Documentation/user/putting.itely: clarifications.
541
542 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
543
544         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
545         note, add more guidelines to what should go into NEWS.
546
547         * input/sakura-sakura.ly: document how to override font.
548
549         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
550
551 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
552
553         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
554
555 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
556
557         * scripts/convert-ly.py (lilypond_version_re_str): Move from
558         convertrules.  Add explicit grouping, needed for python2.2.
559
560 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
561
562         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
563
564 2006-02-07  Graham Percival  <gpermus@gmail.com>
565
566         * Documentation/user/global.itely: fix line-width in (text) docs.
567
568         * Documentation/user/lilypond-book.itely: same.
569
570 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
571
572         * VERSION (PACKAGE_NAME): release 2.7.32
573
574         * Documentation/topdocs/NEWS.tely (Top): document new variable
575         naming.
576
577         * flower/include/array.icc (Message): remove file.
578
579         * flower/include/std-vector.hh: make sure vsize and VPOS are
580         defined for binary_search_bounds().
581
582         * flower/std-string.cc (std): add to_string(long unsigned).
583
584         * configure.in (gui_b): excise std_string option.
585         (gui_b): excise std_vector option.
586
587         * flower/string.cc (Module): excise flower array & string
588
589         * flower/include/std-string.hh: excise flower string.
590
591         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
592
593         * python/convertrules.py (lilypond_version_re_str): require
594         only numbers and dots in \version string.
595
596 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
597
598         * lily/system-start-delimiter.cc (print): allow style = text too.
599
600         * lily/system-start-delimiter-engraver.cc
601         (acknowledge_system_start_text): new function, also add add to
602         support of system-start-text (instrument names). This fixes
603         instrument names on piano staves.
604
605         * lily/instrument-name-engraver.cc: rewrite. Use
606         system-start-delimiter approach. This save memory and cpu.
607
608         * scm/define-grobs.scm (all-grob-descriptions): remove
609         instrument-name from break-alignment.
610
611         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
612
613 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
614
615         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
616         jobserver going.
617
618         * configure.in (std_vector): On by default.
619
620         * lily/include/font-metric.hh:
621         * lily/include/tfm-reader.hh: 
622         * lily/include/spanner.hh: Use unsigned for indices and sizes.
623         Update users.
624
625         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
626
627 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
628
629         * VERSION (PACKAGE_NAME): 2.7.31
630
631         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
632         EPS edge at 0, but take minimum with left-overshoot. This fixes
633         cut off system start delims. 
634
635         * lily/instrument-name-engraver.cc (stop_translation_timestep):
636         hack: add to axis group if not added yet. This fixes hara kiri'd
637         piano staves.
638
639         * lily/hara-kiri-group-spanner.cc
640         (force_hara_kiri_in_y_parent_callback): fix signatures.
641
642         * lily/hairpin.cc (print): check next hairpin to see whether or
643         not to be continuing.
644
645 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
646
647         * Remove trailing whitespace from makefiles.
648         
649         * flower/include/std-vector.hh: Add binary_search_bounds workaround
650         for earlier gcc.
651
652         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
653
654         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
655
656         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
657
658         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
659
660         * configure.in: Use it.
661
662 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
663
664         * scm/music-functions.scm (pitch-of-note): new function.
665
666         * ly/music-functions-init.ly: add \octave and \addquote
667
668         * lily/parser.yy (music_function_chord_body): softcode \octave.
669         (lilypond_header): softcode \addquote
670
671 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
672
673         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
674         array.hh, parray.hh at all.  Getting ready to flip the
675         configure default.
676
677         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
678
679         * lily/source-file.cc (file::get_line): Help binary_search_bounds
680         a bit.
681
682         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
683
684 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
685
686         * flower/include/array.hh: typo. 
687
688 2006-02-02  Graham Percival  <gpermus@gmail.com>
689
690         * Documentation/user/advanced-notation.itely: doc "\#" in text.
691
692 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
693
694         * flower/include/pqueue.hh: Derive from std::vector.
695
696         * flower/include/parray.hh: Conform to std::vector interface.
697         Update users.
698
699 2006-02-02  Graham Percival  <gpermus@gmail.com>
700
701         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
702
703 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
704
705         * flower/file-path.cc (is_file): remove if 0 section.
706
707         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
708         selecting afii61352.
709
710 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
711
712         * flower/include/std-vector.hh (boundary): Oops, reverse.
713
714         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
715         remove superfluous `d'.
716
717         * flower/include/std-vector.hh (boundary, top): Detach from class.
718         Remove empty vector shell.
719
720         * flower/include/array.hh (reverse, swap): Detach from class.
721         Update users.
722         
723         * flower/include/std-vector.hh
724         * flower/include/array.hh (concat): Globally change to insert ().
725
726         
727         * flower/include/std-vector.hh
728         * flower/include/parray.hh
729         * flower/include/array.hh (elem, elem_ref): Globally replace by
730         at ().
731
732 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
733
734         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
735
736         * python/convertrules.py (FatalConversionError.sub_cxx_id):
737         anticipate on identifier substitutions.
738
739 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
740
741         * flower/include/std-vector.hh (insert): Remove, replace by
742         std::vector interface.  Update callers.
743
744         * flower/include/array.icc (insert): Change signature to
745         match std::vector interface.
746         
747         * flower/include/array.icc (vector_sort): Bugfix.
748
749 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
750
751         * lily/parser.yy (output_def_head_with_mode_switch): new
752         production. Result: dashes and underscores may be used in the
753         \paper block.
754
755         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
756
757         * python/convertrules.py (conv): oops. One slash too much.
758
759 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
760
761         * flower/include/std-vector.hh (sort): Remove, replace by
762         ::vector_sort.  Update callers.
763
764         * flower/include/std-vector.hh (slice): Remove.  Update callers.
765         (sort): Bugfix.
766
767         * flower/test-std.cc (vector_sort): New test.
768
769 2006-02-01  Graham Percival  <gpermus@gmail.com>
770
771         * Documentation/user/putting.itely: fixes from Erik.
772
773 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
774
775         * flower/test-std.cc: Add simple unit test for vector migration.
776
777         * stepmake/stepmake/test*: Unit test support.
778
779         * flower/include/std-vector.hh (del): Remove.  Use erase (),
780         update callers.
781
782         * flower/include/array.hh (begin, end): Add.
783         (del, get): Remove.
784
785 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
786
787         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
788         std::string not String. 
789
790         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
791         iso UINT_MAX.
792
793         * lily/prob.cc (Prob): copy type_ too.
794
795         * lily/lily-guile.cc (mangle_cxx_identifier): new
796         function. Class_bla::foo_bar_[px] ->
797         ly:class-bla::foo-bar[?!]. Changes throughout
798
799 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
800
801         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
802
803         * lily/beam.cc (calc_direction): take dir from visible stem in
804         degenerate case.
805
806 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
807
808         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
809         Fix -1, >=0 boundary checks for unsigned vsize.
810
811         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
812         loop for unsigned vsize.
813
814         * configure.in (--enable-std-vector): New option.
815         (--enable-std-string): On by default.
816
817         * flower/include/std-vector.hh: New file.  Enable switch to
818         std::vector, update client code.
819
820 2006-01-30  Graham Percival  <gpermus@gmail.com>
821
822         * scm/document-translation.scm: clarify "this context is also
823         known as".  Thanks, Werner!
824
825         * Documentation/user/putting.itely: small fixes from Don Blaheta.
826
827         * Documentation/user/invoking.itely: small fix from Don.
828
829 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
830
831         * scm/lily.scm (define-scheme-options): rename option
832         preview-include-book-title to book-title-preview
833         (define-scheme-options): move force-eps-font-include (from paper
834         block) to eps-font-include -d option.
835
836         * VERSION (PATCH_LEVEL): release 2.7.30
837
838         * input/bach-schenker.ly (staffPiano): new file.
839
840         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
841
842         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
843         credits to Nicolas.
844
845         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
846
847         * ps/lilyponddefs.ps: remove start-system, stop-system,
848         start-page fluff. This saves putting { } code on the stack, fixing
849         stack overflows when including EPS files.
850
851 2006-01-29  Graham Percival  <gpermus@gmail.com>
852
853         * Documentation/user/putting.itely: minor fixes (comments on -devel).
854
855 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
856
857         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
858
859 2006-01-28  Graham Percival  <gpermus@gmail.com>
860
861         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
862
863 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
864
865         * input/mutopia/claop.py: Update.
866
867 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
868
869         * input/regression/completion-heads.ly (texidoc): fix.
870
871         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
872
873         * lily/tie-formatting-problem.cc
874         (set_ties_config_standard_directions): use abs iso fabs for ints.
875
876         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
877
878         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
879         little less than noteheight, to prevent overlaps in chords.
880
881         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
882         head, and fudge stem-attachment.
883
884         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
885
886         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
887
888 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
889
890         * lily/main.cc (main): Debugging aid: catch exceptions.
891
892         * flower/std-string.cc (to_string): Robustification.  Fixes midi
893         output with std::string.
894
895 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
896
897         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
898
899 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
900
901         * Fix -DSTRING_UTILS_INLINED.
902
903 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
904
905         * VERSION (PATCH_LEVEL): release 2.7.29
906
907         * lily/relocate.cc (setup_paths): mingw uses std string too.
908
909         * lily/*.cc: various fixes for substr(ARG).
910
911         * lily/sustain-pedal.cc (print): 
912
913         * flower/file-name.cc (slashify): use std strings.
914
915         * flower/string-convert.cc: remove publib.h
916
917         * scm/define-markup-commands.scm (verbatim-file): new markup
918         command \verbatim-file
919
920         * Documentation/topdocs/NEWS.tely: fixup URLs
921
922         * input/regression/alignment-vertical-manual-setting.ly (Module):
923         new file.
924
925         * lily/align-interface.cc (align_elements_to_extents): overwrite
926         translations with numbers in alignment-offsets from left bound
927
928         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
929         (page-translate-systems): new function: take into account Y-offset.
930
931         * Documentation/topdocs/NEWS.tely (Top): document new features.
932
933         * input/regression/page-layout-manual-position.ly (Module): new
934         file.
935
936 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
937
938         * flower/file-path.cc (path::parse_path): Oops.
939
940         * Finish std::string interface.  For now, use std:: marker
941         throughout for easy s/r.
942
943 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
944
945         * Documentation/user/putting.itely (Score is a single musical
946         expression): typo.
947         (Score is a single musical expression): more typos.
948
949         * scm/page.scm (annotate-space-left): thinko.
950         (annotate-page): more thinkos.
951
952 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
953
954         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
955         for different \score blocks separately.
956         (post-process-pages): put write-page-layout into paper block.
957
958         * lily/output-def.cc (get_parser): new file.
959
960         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
961         file.
962
963         * lily/include/output-def.hh (class Output_def): add parser_ member.
964
965         * input/regression/page-layout-twopass.ly (Module): new file.
966
967         * scm/lily.scm: remove cpp hack.
968
969         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
970
971 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
972
973         * GNUmakefile.in (c-clean): New target.
974
975         * flower/include/std-string.hh: String/std::string compatibility:
976         Use NPOS for `not found' (iso -1), use ssize for length () and pos
977         type.
978
979         * flower/rational.cc: 
980         * flower/include/rational.hh: 
981
982         * flower/offset.cc: 
983         * flower/include/offset.hh: 
984
985         * flower/interval.cc: 
986         * flower/include/interval.hh: 
987
988         * flower/string-convert.cc: 
989         * flower/include/string-convert.hh: Use std::string [interface].
990         Update callers.
991
992 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
993
994         * Documentation/index.html.in: clean up.
995
996 2006-01-25  Graham Percival  <gpermus@gmail.com>
997
998         * Documentation/user/putting.itely: another new untested doc section.
999
1000 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1001
1002         * scm/layout-page-layout.scm (write-page-breaks): write
1003         \spacingTweaks #ALIST. Handle grace timing.
1004
1005         * scm/: more imports.
1006
1007         * scm/page.scm (make-page): add footer/header.
1008         (annotate-space-left): revise: only take page argument.
1009         (layout->page-init): new function.
1010
1011         * scm/layout-page-layout.scm (write-page-breaks): preliminary
1012         version of the system/spacing/linebreak hack writing to the output
1013
1014         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
1015         ly:make-prob.
1016
1017         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
1018         ly:spanner-bound
1019
1020 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1021
1022         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
1023
1024         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
1025
1026         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
1027         handling to page.scm
1028
1029         * lily/prob-scheme.cc (LY_DEFINE): new file.
1030         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
1031
1032         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
1033         prob functions.
1034
1035         * lily/music.cc (derived_mark): derive Music from Prob.
1036
1037         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
1038
1039         * lily/prob.cc (Module): Implement Prob (Property Object), object
1040         with shared and r/w property alists.  
1041
1042         * lily/include/prob.hh (Module): new file. Declare Prob.
1043
1044         * flower/string.cc: remove is_empty().
1045
1046         * flower/include/string.hh (class String): remove String:: qualifier.
1047
1048         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
1049         substitute appropriate functions.
1050
1051         * flower/include/string.hh (class String): remove to_str0 and
1052         is_empty(). S&R everywhere.
1053
1054 2006-01-23  Graham Percival  <gpermus@gmail.com>
1055
1056         * Documentation/user/basic-notation.itely: add hairpin
1057         after-linebreak tweak to commonprop.
1058
1059         * Documentation/user/putting.itely: added two new sections.
1060
1061 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1062
1063         * flower/international.cc: 
1064         * flower/include/international.hh: 
1065
1066         * flower/getopt-long.cc: 
1067         * flower/include/getopt-long.hh: Use std::string [interface].
1068         Update callers.
1069
1070         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
1071
1072         * stepmake/stepmake/executable-rules.make: Add dependency on
1073         module libraries.
1074
1075 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1076
1077         * flower/file-path.cc: 
1078         * flower/include/file-path.hh: Use std::string [interface].
1079         Update callers.
1080
1081         * flower/direction.cc: 
1082         * flower/axis.cc: Unused.  Remove.
1083
1084         * configure.in (--enable-std-string): New option.
1085
1086         * flower/std-string.cc: 
1087         * flower/include/std-string.hh: New file.
1088
1089         * flower/file-name.cc[STD_STRING]:
1090         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
1091
1092 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1093
1094         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
1095
1096         * scm/define-markup-commands.scm (with-dimensions):
1097         with-dimensions markup command.
1098
1099         * input/test/font-table.ly: use it.
1100
1101         * lily/open-type-font.cc (glyph_list): new function.
1102
1103         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
1104
1105         * lily/ttf.cc: remove ly:font-glyph-list scheme function
1106
1107 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1108
1109         * ly/music-functions-init.ly (parallelMusic): new music function
1110         for parallel music entry.
1111
1112         * scm/define-music-properties.scm (all-music-properties): new
1113         'void music property
1114
1115         * scm/music-functions.scm (ly:music-message): make public, to be
1116         used in music function definitions
1117
1118         * scm/lily-library.scm (collect-music-for-book): discard music
1119         when the 'void property is set.
1120
1121 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1122
1123         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
1124
1125         * mf/GNUmakefile: idem.
1126
1127         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
1128
1129         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
1130
1131         * Documentation/user/notation-appendices.itely (The Feta font):
1132         use it.
1133
1134         * input/test/font-table.ly: new file. Generate font table within lily.
1135
1136         * Documentation/user/notation-appendices.itely (The Feta font):
1137         use new font-table.ly file. 
1138
1139         * stepmake/stepmake/install-out-targets.make
1140         (local-install-outfiles): only create directory if
1141         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
1142
1143 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1144
1145         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
1146
1147         * VERSION (PACKAGE_NAME): release 2.7.28
1148
1149         * scm/framework-ps.scm (write-preamble): use it to pick exactly
1150         the right font from a Mac dfont.
1151         (write-preamble): don't forget directory, only look at files.
1152
1153         This fixes problems with TTF files in dfonts that don't match
1154         their PostScript names.
1155          
1156         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
1157         PS name from TTF font.
1158
1159         * input/regression/tie-manual.ly: document new feature.
1160
1161         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
1162
1163         * VERSION (MY_PATCH_LEVEL): bump to .28
1164
1165         * Documentation/user/basic-notation.itely (Ties): add tie examples
1166         refs.
1167
1168         * lily/tie-formatting-problem.cc (score_ties_configuration):
1169         symmetry penalties for outer ties.
1170
1171 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1172
1173         * lily/tie-formatting-problem.cc (generate_configuration) 
1174         (set_manual_tie_configuration): skip non-pair manual
1175         tie-configuration, so you can set individual ties as
1176
1177           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
1178
1179         * input/regression/tie-chord.ly: use generateTiePattern to
1180         simplify file.
1181
1182         * lily/tie-formatting-problem.cc (peak_around): new function.
1183         (score_configuration): use sliding criterion for staff line collisions. 
1184         (score_configuration): idem for dot collisions.
1185         (generate_configuration): use separate stem_gap for gap to stem.
1186
1187         * lily/include/tie-formatting-problem.hh (struct Tie_details):
1188         separate penalty factors for x and y distance.
1189         (struct Tie_details): separate penalties for tip and center line collisions.
1190
1191 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
1192
1193         * lily/tie-formatting-problem.cc (generate_configuration): make
1194         large ties avoid stafflines in the horizontal section.
1195         (score_configuration): use softcoded penalties
1196         (score_aptitude): idem.
1197
1198         * lily/tie-helper.cc (from_grob): softcode tie details
1199
1200         * lily/staff-symbol-referencer.cc (on_staff_line): new function
1201
1202         * lily/staff-symbol-referencer.cc (on_line): rename from
1203         on_staffline 
1204
1205 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1206
1207         * ly/music-functions-init.ly: remove duplicate tag.
1208
1209         * lily/include/*.hh: GCC 4.1 fixes.
1210
1211 006-01-16  Erlend Aasland  <erlenda@gmail.com>
1212
1213         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
1214
1215         * scm/define-music-types.scm: fix bug in desc. string
1216         for OverrideProperty
1217
1218 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
1219
1220         * scripts/lilypond-book.py: bugfix
1221
1222         * scm/define-music-types.scm: fix typos.
1223
1224 2006-01-14  Graham Percival  <gpermus@gmail.com>
1225
1226         * Documentation/user/ basic-notation.itely, global.itely,
1227         advanced-notation.itely, instrument-notation.itely: small
1228         additions (bugs and commonly tweaked properties).
1229
1230 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1231
1232         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
1233         detection of mingw build.
1234         (MINGW_BUILD): opps.
1235
1236 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1237
1238         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
1239         i686-mingw32.
1240
1241 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1242
1243         * scm/music-functions.scm (skip->rest): add skip->rest
1244
1245 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1246
1247         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
1248         explicitly.
1249
1250         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
1251         config dirs. Aids debugging. 
1252         (display_config): also display config files.
1253
1254 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1255
1256         * VERSION: release 2.7.27
1257
1258         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
1259         for determining bar size.
1260
1261         * lily/staff-symbol.cc (print): place lines at distance line-positions
1262
1263         * scm/define-grob-properties.scm (all-user-grob-properties): add
1264         line-positions.
1265
1266         * lily/staff-symbol.cc (height): new function.
1267
1268         * input/regression/staff-line-positions.ly:  new file.
1269
1270 2006-01-06  Graham Percival  <gpermus@gmail.com>
1271
1272         * input/test/add-staccato.ly: remove reference to old file.
1273
1274 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1275
1276         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
1277         lilypond binary too.
1278
1279 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1280
1281         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
1282
1283 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1284
1285         * scripts/midi2ly.py: Bugfix: Declare datadir.
1286
1287         * make/ly-rules.make:
1288         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
1289         that seems to be gone). Fixes make web.
1290
1291         * The grand 2005-2006 replace.
1292
1293         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
1294
1295 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1296
1297         * make/lilypond-vars.make: set LILYPOND_BINARY variable
1298         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
1299         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
1300         like -dgs-font-load.
1301
1302         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
1303         remove absolute path to lilypond binary.
1304         
1305 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
1306
1307         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
1308
1309 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1310
1311         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
1312
1313         * mf/GNUmakefile: remove broken dvips map symlink.
1314
1315 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1316
1317         * lily/main.cc: 
1318         * configure.in: Cosmetic fixes.
1319
1320 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1321
1322         * Documentation/user/music-glossary.tely (Pitch names): Added
1323         Spanish pitch names and durations, thanks to Ernesto Gancedo
1324
1325 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1326
1327         * scm/lily.scm (define-scheme-options): use quasi-quote for option
1328         init. Fixes verbose printing of .scm files.
1329
1330         * stepmake/aclocal.m4: add spaces before - options.
1331         
1332 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1333
1334         * lily/relocate.cc (setup_paths): Bugfix: do not store result
1335         of path search in local block variable.
1336
1337 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1338
1339         * configure.in (NCSB_DIR): --enable-ncsb-dir
1340         (LINK_GXX_STATICALLY): denko.
1341
1342         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
1343
1344         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
1345         use locate to find c059033l.pfb. 
1346         
1347 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1348
1349         * lily/tie-formatting-problem.cc
1350         (problem::generate_base_chord_configuration): Use my_round (was
1351         round).
1352
1353         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
1354         do not invoke mbrtowc.
1355
1356         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
1357
1358 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1359
1360         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
1361
1362 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
1363
1364         * Documentation/user/invoking.itely (svg): revise.
1365
1366 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1367
1368         * lily/lexer.ll: use sourcefilename iso. renameinput.
1369
1370 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1371
1372         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
1373         <PostScriptName>.ttf instead of c059XXXttf.
1374
1375         * lily/program-option.cc (LY_DEFINE): special support for
1376         --verbose, so it works before option init too.
1377  
1378         * mf/GNUmakefile (local-install): oops.
1379
1380         * lily/lyric-hyphen.cc (print): oops.
1381
1382         * buildscripts/pfx2ttf.fontforge: new file.
1383         
1384         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
1385         ($(outdir)/%.ttf): new rule. 
1386
1387         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
1388         to LyricHyphen.
1389
1390         * lily/lyric-hyphen.cc (print): multiply hyphen height by
1391         font-size
1392
1393 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1394
1395         * VERSION: release 2.7.26
1396         
1397         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
1398
1399 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1400
1401         * lily/font-config.cc (init_fontconfig): verbosity.
1402
1403         * THANKS: add Muziekacademie Lede. 
1404
1405         * scripts/musicxml2ly.py (print_voice_definitions): new function 
1406         (print_score_setup): new function
1407         (convert): read part definition to output staves properly.
1408
1409         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
1410         Music_xml notes.
1411
1412         * python/musicexp.py (Output_printer.__init__): use _ in data
1413         members.
1414         (Output_printer.unformatted_output): new function: no formatting,
1415         but count braces.
1416         (Duration.get_length): remove isinstance() checks for
1417         Output_printer everywhere.
1418
1419         * input/regression/lyrics-bar.ly (texidoc): add
1420         Separating_line_group_engraver.
1421
1422 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1423
1424         * lily/relocate.cc (framework_relocation): New function,
1425         factored from set_relocation ().
1426         (prefix_relocation): Rename from set_relocation ().
1427         (setup_paths): Use it.
1428
1429 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1430
1431         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
1432         numbers. Patch by Erlend Aasland.
1433
1434 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1435
1436         * lily/font-config.cc (init_fontconfig): print warning if cache
1437         file is not existant.
1438
1439         * lily/main.cc: don't use #ifdef but #if
1440
1441 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1442
1443         * lily/grob-property.cc (internal_set_property): don't abort on
1444         calculation-in-progress.
1445
1446         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
1447
1448         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
1449         connect-to-neighbor property not connect-to-other
1450
1451         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
1452         (LY_DEFINE): oops. don't forget protection.
1453
1454         * flower/parse-afm.cc (Module): strip AFM handling completely.
1455
1456         * lily/stencil-expression.cc: idem.
1457
1458         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
1459
1460         * lily/function-documentation.cc (ly_add_function_documentation):
1461         use static member iso. Protected_scm
1462
1463         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
1464
1465         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
1466
1467 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1468
1469         * lily/relocate.cc (set_env_dir): New function.
1470         (set_relocation): Use it to fix setting PANGO_PREFIX.
1471
1472 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1473
1474         * input/regression/stem-direction-context.ly: remove rest.
1475
1476         * lily/melody-engraver.cc (process_music): restart for bar lines.
1477         (acknowledge_slur): restart for slurs.
1478
1479 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
1480
1481         * Documentation/user/invoking.itely: describe how to view SVG 
1482         output using Inkscape which replace embedded fonts with OTF fonts.
1483
1484 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1485
1486         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
1487
1488 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1489
1490         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
1491         comment.
1492
1493 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1494
1495         * VERSION (PACKAGE_NAME): release 2.7.25
1496
1497         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1498
1499         * input/regression/stem-direction-context.ly: new file.
1500
1501         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
1502
1503         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
1504         on rest.
1505
1506         * ly/engraver-init.ly: add Melody_engraver
1507
1508         * lily/beam.cc (calc_direction): use default-direction
1509         iso. get_default_direction()
1510
1511         * scm/define-grob-properties.scm (all-user-grob-properties): add
1512         default-direction property.
1513
1514         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
1515
1516         * lily/stem.cc (calc_default_direction): remove
1517         Stem::get_default_direction, use default-direction with callback
1518         instead.
1519
1520         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
1521
1522         * lily/melody-engraver.cc: new file. Acknowledge stems for
1523         interpolated stem directions. 
1524
1525         * lily/melody-spanner.cc: new file. Interpolate stem directions.
1526
1527         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
1528
1529         * lily/slur-configuration.cc (fit_factor): more robust check for
1530         point in curve X-extent.
1531
1532         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
1533         (outside_slur_callback): check for 'outside avoidance.
1534
1535         * lily/slur-configuration.cc (score_extra_encompass): don't use
1536         bound->column() == avoid->column() for checking extents, as this
1537         doesn't work for accidentals. 
1538
1539         * lily/slur-engraver.cc (acknowledge_extra_object): remove
1540         DynamicText hardcoding.
1541
1542         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
1543         crash if bound stem is NULL
1544
1545         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
1546         pedals.
1547
1548 2005-12-22  Graham Percival  <gpermus@gmail.com>
1549
1550         * scm/define-markup-commands.scm: typo.  @code{\raise}
1551         => @code{\\raise}.
1552
1553         * darwin.patch: now used again, includes a
1554         required patch from fink.
1555
1556 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
1557
1558         * po/TODO: mention gtranslator along with kbabel.
1559         * po/fi.po: update translations.
1560
1561 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1562
1563         * lily/relocate.cc (setup_paths): Bugfix.
1564
1565 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1566
1567         * lily/slur-configuration.cc (score_extra_encompass): don't use
1568         "avoid" choice for avoid-slur.
1569
1570         * stepmake/bin/install.py (dest): don't create existing dir.
1571
1572 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1573
1574         * stepmake/bin/install.py: Remove file before copying.
1575
1576         * config.make.in: 
1577         * stepmake/aclocal.m4: Do not substitute INSTALL.
1578
1579 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1580
1581         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1582         depend on link-tree.
1583
1584         * lily/relocate.cc (setup_paths): only check path for non-absolute
1585         dir without directory part.
1586
1587         * flower/file-name.cc (is_absolute):  new method.
1588         (is_absolute): check root_ too.
1589
1590 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1591
1592         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
1593         relocation code.  Oops, don't comment out too much.
1594
1595         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
1596         iso itself.
1597
1598         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
1599         compile.
1600
1601 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1602
1603         * .cvsignore: Add install-sh.
1604
1605         * autogen.sh (srcdir): Typo.
1606
1607 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1608
1609         * autogen.sh (srcdir): urg. Touch install-sh.
1610
1611         * stepmake/bin/install-sh (Module): remove.
1612
1613         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
1614
1615         * lily/include/relocate.hh: new file.
1616
1617         * lily/relocate.cc: new file. Contain relocation logic.
1618
1619         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
1620         (main): read LILYPOND_VERBOSE as the first thing.
1621
1622         * stepmake/aclocal.m4: remove INSTALL variable.
1623
1624         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1625         separate target for making font symlinks.
1626         (documentation-dir): use $(if $(findstring )) for switching off
1627         Documentation.
1628
1629         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
1630         something if DOCUMENTATION is no.
1631
1632 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1633
1634         * VERSION: release 2.7.24
1635
1636         * lily/script-column-engraver.cc (stop_translation_timestep):
1637         delay adding to script-column.
1638
1639         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
1640
1641         * python/convertrules.py (conv): rule for number-visibility
1642
1643         * lily/slur-configuration.cc (score_extra_encompass): different
1644         distance measure for avoid and inside avoidance.
1645         (score_extra_encompass): use 1/(distance+eps) as penalty.
1646
1647         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
1648         encompass objects for generating slur curves.
1649
1650         * lily/slur.cc: use details iso. slur-details property.
1651
1652         * input/regression/slur-tuplet.ly: new file.
1653
1654         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
1655
1656         * flower/include/offset.hh (class Offset): new operator /=
1657
1658         * lily/tuplet-number.cc (print): new file, new interface.
1659
1660         * scm/define-grob-properties.scm (all-user-grob-properties):
1661         remove number-visibility property.
1662
1663         * lily/tuplet-bracket.cc (calc_control_points): new function
1664         (calc_connect_to_neighbors): new function.
1665         (print): remove text handling for tuplet numberdef.
1666
1667         * lily/tuplet-engraver.cc (struct Tuplet_description): create
1668         TupletNumbers too. 
1669
1670         * lily/lily-guile.cc (robust_scm2booldrul): new function
1671
1672         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
1673
1674         * lily/tuplet-bracket.cc (calc_position_and_height): use
1675         staff-padding to control whether tuplet brackets are over staves.
1676
1677         * lily/grob.cc (suicide): clear dim_caches_.
1678
1679         * lily/dimension-cache.cc (clear): new function.
1680
1681         * lily/grob.cc (extent): swap order of min-extent and extent
1682         calculations. This fixes hara kiri staves. 
1683
1684 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1685
1686         * lily/main.cc: Nitpick: relocation is not based on path, but on
1687         directory (location).
1688
1689 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1690
1691         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
1692
1693         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
1694
1695         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
1696
1697         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
1698
1699         * stepmake/stepmake/generic-vars.make (Module): idem.
1700
1701         * stepmake/stepmake/executable-targets.make (default): use it.
1702
1703         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
1704
1705         * make/GNUmakefile: don't install make rules.
1706
1707         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
1708         slashes.
1709         (prepend_env_path): more verbosity.
1710
1711 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1712
1713         * GNUmakefile.in: add dir argument for find command.
1714
1715         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
1716         fixes weird line numbers for point & click.
1717
1718         * lily/source-file.cc (get_counts): init line/column/char counts.
1719
1720 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1721
1722         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
1723
1724 2005-12-16  Graham Percival  <gpermus@gmail.com>
1725
1726         * Documentation/user/basic-notation.itely, advanced-notation.itely:
1727         minor fixes from Fredric.  Thanks!
1728
1729 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1730
1731         * ly/music-functions-init.ly: add \bar and \clef music function 
1732
1733         * lily/lily-lexer.cc: idem.
1734
1735         * lily/parser.yy (FIXME): remove BAR and CLEF.
1736
1737 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1738
1739         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
1740
1741         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
1742         function arguments too
1743
1744         * lily/main.cc (set_relocation): new function.
1745
1746         * scripts/musicxml2ly.py (convert): add \version
1747
1748         * lily/tie.cc: remove get_default_attachments()
1749
1750         * VERSION (PACKAGE_NAME): release 2.7.23
1751         
1752         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
1753         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
1754
1755         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1756
1757         * lily/tie-formatting-problem.cc (score_ties): new function
1758         (get_variations): new function. Try flipping dirs for collisions.
1759         (generate_optimal_chord_configuration): new function. 1-opt search
1760         for better configuration.
1761
1762         * lily/tie-configuration.cc: new file.
1763
1764         * lily/tie.cc: junk Tie::get_configuration()
1765
1766         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
1767         (score_ties_configuration): new function.
1768         (generate_ties_configuration): new function.
1769         (generate_base_chord_configuration): new function.
1770         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
1771         (set_manual_tie_configuration): Move body from tie-column-format.cc 
1772
1773         * input/regression/tie-dot.ly: new file.
1774
1775         * lily/tie-formatting-problem.cc (score_configuration): score
1776         tie/dot collisions.
1777
1778         * lily/tie-helper.cc (get_transformed_bezier): new function
1779
1780         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
1781
1782         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
1783         -undefined suppress iso. -framework Python 
1784
1785         * scm/define-grobs.scm (all-grob-descriptions): set
1786         springs-and-rods (thanks Joe Neeman!)
1787
1788 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1789
1790         * input/no-notation/display-lily-tests.ly (test): 
1791         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
1792         changed from \tag #'(a b) to \tag #'a \tag #'b
1793
1794 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1795
1796         * Documentation/topdocs/NEWS.tely: strip out-www.
1797
1798         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
1799
1800         * config.make.in (AR): add AR and RANLIB
1801
1802         * flower/libc-extension.cc: include cassert
1803
1804         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
1805         darwin check.
1806
1807 2005-12-11  Graham Percival  <gpermus@gmail.com>
1808
1809         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
1810
1811         * stepmake/stepmake/python-modules-vars.make: define
1812         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
1813
1814         * THANKS: added Johannes Schindelin.
1815
1816 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1817
1818         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
1819
1820         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1821         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
1822
1823         * lily/parser.yy: reorganize file layout.
1824
1825         * ly/music-functions-init.ly: add tweak music function.
1826
1827         * lily/grob-info.cc (ultimate_music_cause): new function:
1828         recursively lookup causes. 
1829
1830         * lily/parser.yy (chord_body_element): allow music functions for
1831         post-events, allow music functions for chord elements. 
1832  
1833         * lily/font-config-scheme.cc (display_fontset): add cast.
1834
1835         * python/convertrules.py (FatalConversionError.sub_syms): \tag
1836         #'(a b) -> \tag #'a \tag #'b rule.
1837
1838         * python/musicexp.py (Output_printer.dump_version): new function
1839
1840 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1841
1842         * lily/parser.yy (FIXME): remove \tag
1843         (FIXME): remove tag_music() function.
1844
1845         * lily/lily-lexer.cc: remove \tag
1846
1847         * ly/music-functions-init.ly: define music-function "tag"
1848
1849         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
1850
1851 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1852
1853         * VERSION (PATCH_LEVEL): release 2.7.22
1854
1855         * input/regression/lyric-hyphen-retain.ly: renew.
1856
1857         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
1858         grob
1859
1860         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
1861         iso. minimum-length property for rods.
1862
1863         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
1864         LyricSpace item to keep lyrics spaced apart.
1865
1866         * ly/engraver-init.ly: remove Separating_line_group_engraver
1867
1868         * Documentation/user/music-glossary.tely: do setfilename before
1869         music-glossary.
1870
1871 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
1872
1873         * Documentation/user/lilypond-book.itely: use `,´ after xref:
1874         See xref documentation, for example.
1875
1876 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1877
1878         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
1879         pending_skip iso. ly_voice[-1]
1880         (main): add if __main__ for debugging.
1881
1882         * python/musicxml.py (Accidental.__init__): new class.
1883
1884         * scripts/musicxml2ly.py (progress): new function
1885         (musicxml_key_to_lily): don't barf on modeless keys.
1886         (create_skip_music): new function.
1887         (musicxml_spanner_to_lily_event): new function. Handle beams too.
1888         (musicxml_note_to_lily_main_event): new function.
1889
1890         * python/musicexp.py (Music.__init__): add comment field.
1891         (NestedMusic.append): new routine.
1892         (SequentialMusic.print_ly): print comment.
1893         (ArpeggioEvent.ly_expression): new class
1894         (BeamEvent.ly_expression): new class
1895         (NoteEvent.__init__): support for cautionary/forced accs.
1896
1897         * lily/lookup.cc (slur): normal order for array loop.
1898
1899         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
1900         to 0.0.
1901
1902         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
1903         collapsed.
1904
1905 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
1906
1907         * scm/music-functions.scm: Make phrasing slurs follow voice direction
1908
1909         * scripts/lilypond-book.py: Introduce option
1910         --preserve-line-breaks, for usage with srcltx
1911
1912 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1913
1914         * scm/output-lib.scm (print-circled-text-callback): draw circle
1915         around text using make-circle-markup.
1916
1917         * Documentation/user/*: strip out-www from file names.
1918
1919 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
1920
1921         * Documentation/user/lilypond.tely (direntry): remove empty lines;
1922         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
1923
1924 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1925
1926         * Documentation/user/GNUmakefile: idem.
1927
1928         * Documentation/user/macros.itexi: strip out-www
1929
1930         * python/rational.py: python 2.3 compat.
1931
1932         * VERSION (PATCH_LEVEL): release 2.7.21
1933
1934         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
1935         option formatting, lilypond style.
1936
1937         * python/musicexp.py: grab from Ikebana: a library for composing
1938         ly music expressions. 
1939         (Output_printer): class for advanced .ly printing.
1940         (eg. tupletting) 
1941
1942         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
1943         convert to pythonesque structure.
1944
1945         * python/rational.py: PD rational number class.
1946
1947         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
1948
1949 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
1950
1951         * lily/part-combine-iterator.cc: Minor bugfix
1952         
1953         * THANKS: Update bughunters
1954
1955 2005-12-02  Werner Lemberg  <wl@gnu.org>
1956
1957         * mf/README: Document process for proper mf2pt1 conversion.
1958
1959         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
1960         overlapping.
1961
1962         * mf/feta-harmonica.mf: Removed.  Unused.
1963
1964 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1965
1966         * scripts/lilypond-book.py (do_file): fix thinkos.
1967
1968 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1969
1970         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
1971         ($(outdir)/parser.cc): 
1972         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
1973
1974 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
1975
1976         * ly/titling-init.ly (tagline): it should be a space between
1977         "Music engraving by LilyPond" and the version number.
1978
1979 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1980
1981         * VERSION (PACKAGE_NAME): release 2.7.20
1982
1983 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1984
1985         * scm/define-markup-commands.scm (pad-to-box): new markup command.
1986
1987         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
1988         1.0.
1989         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
1990
1991 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1992
1993         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
1994
1995         * kpath-guile/: remove directory
1996
1997         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
1998         file. Encapsulate kpathsea using commandline tools.
1999
2000         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
2001         kpathsea) module.
2002
2003 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2004
2005         * Documentation/user/advanced-notation.itely (Setting automatic
2006         beam behavior): Correct a few typos. Thanks to David Bobroff.
2007
2008         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
2009         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
2010
2011 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2012
2013         * scripts/*.py: gmane address for bugs.
2014
2015 2005-11-28 Pal Benko <benkop@freestart.hu>
2016         
2017         * make/ly-rules.make: add -f switch to mv
2018
2019         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
2020
2021         * lily/bar-line.cc: interpret it
2022
2023 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2024
2025         * configure.in (--disable-documentation): New switch.
2026
2027         * GNUmakefile.in: Use it.
2028
2029         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
2030
2031 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2032
2033         * scripts/lilypond-book.py (do_file): search chunks for
2034         \\begin{document}
2035
2036         * GNUmakefile.in: add copy step in between so we can lose the
2037         out-www directories.
2038
2039 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2040
2041         * lily/pango-font.cc (pango_item_string_stencil): put
2042         geometry.width into glyph-string too.
2043
2044 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2045
2046         * scm/define-music-display-methods.scm (RevertProperty):
2047         (OverrideProperty): Use grob-property-path property, a list of
2048         symbols, instead of grob-property, which used to be a single
2049         symbol.
2050         (BassFigureEvent): a figure can be a plain number, not necessarily a
2051         markup.
2052
2053 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2054
2055         * VERSION: release 2.7.19
2056         
2057         * lily/figured-bass-engraver.cc (process_music): check
2058         figuredBassCenterContinuations first.
2059
2060         * scm/translation-functions.scm (format-bass-figure): make double
2061         sharp larger. 
2062
2063         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
2064         determine X-parent.
2065
2066         * lily/system-start-delimiter-engraver.cc: move from
2067         Nested_system_start_delimiter_engraver, rename
2068         Nested_system_start_delimiter_engraver ->
2069         System_start_delimiter_engraver.
2070
2071         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
2072         bracket type from hierarchy.
2073
2074 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2075
2076         * lily/rest.cc (y_offset_callback): read staff-position.
2077
2078         * scm/define-grob-properties.scm (all-user-grob-properties): don't
2079         mark after-line-breaking-callback as internal.
2080
2081         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
2082
2083 2005-11-25  Werner Lemberg  <wl@gnu.org>
2084
2085         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
2086
2087 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2088
2089         * stepmake/bin/add-html-footer.py (do_file): add google
2090
2091         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
2092         staff if first_start_ is true.
2093
2094 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2095
2096         * scripts/midi2ly.py (split_track): add __repr__ members.
2097         (track_first_item): only return Item if not None. This fixes a
2098         problem when dumping a track that starts with an empty channel.
2099
2100         * python/midi.c: doc module.
2101
2102 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2103
2104         * Documentation/user/global.itely (Creating MIDI files): Fix
2105         compilation problem.
2106
2107 2005-11-22  Graham Percival  <gpermus@gmail.com>
2108
2109         * Documentation/user/basic-notation.itely: clarify dynamic
2110         padding text.
2111
2112         * Documentation/user/advanced-notation.itely: add unicode
2113         escape control example, whatever that is.  :)
2114
2115         * Documentation/user/global.itely: added "removing dynamics
2116         from MIDI" code.
2117
2118 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2119
2120         * VERSION (PATCH_LEVEL): release 2.7.18
2121
2122         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
2123         System_start_delimiter_engraver by
2124         Nested_system_start_delimiter_engraver.
2125
2126         * lily/nested-system-start-delimiter-engraver.cc (struct
2127         Bracket_nesting_node): new class.
2128         (struct Bracket_nesting_group): new class
2129         (struct Bracket_nesting_staff): new class.
2130         (process_music): create hierarchy of grobs. This allows separate
2131         tuning of different SSDs. 
2132
2133         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
2134         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
2135
2136 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2137
2138         * lily/side-position-interface.cc (aligned_side): multiply
2139         staff_radius by 2.
2140
2141         * lily/script-engraver.cc (make_script_from_event): allow setting
2142         values to '()
2143
2144 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2145
2146         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
2147
2148         * scm/define-grobs.scm (all-grob-descriptions): new grob
2149         NestedSystemStartDelimiter.
2150
2151         * input/regression/system-start-heavy-bar.ly: new file.
2152
2153         * lily/nested-system-start-delimiter-engraver.cc: new file.
2154
2155         * lily/nested-system-start-delimiter.cc: new file.
2156
2157         * input/regression/system-start-nesting.ly: new file.
2158
2159         * scm/define-grobs.scm (all-grob-descriptions): use X side
2160         positioning for positioning braces for nested contexts.
2161
2162         * lily/system-start-delimiter.cc (print): don't divide extent by
2163         staff_space.
2164         (print): use style iso. glyph.
2165         (staff_bracket): translate glyph inside routine already.
2166
2167 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
2168
2169         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
2170         names.
2171
2172 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2173
2174         * scm/define-context-properties.scm
2175         (all-user-translation-properties): rename figuredBassFormatter
2176         from newFiguredBassFormatter.
2177
2178         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
2179
2180         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
2181
2182         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
2183
2184         * lily/beam.cc (calc_beaming): new function.
2185         (calc_shorten): new function.
2186
2187         * THANKS: add Edward Neeman.
2188
2189         * input/regression/accidental-clef-change.ly: new file.
2190
2191         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
2192
2193         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
2194
2195         * lily/clef-engraver.cc (inspect_clef_properties): reset
2196         localKeySignature for clef changes.
2197
2198 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2199
2200         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
2201         add dummy definition that works in Linux and add information in
2202         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
2203
2204         * Documentation/user/changing-defaults.itely (Modifying context
2205         plug-ins): Add index for \with.
2206
2207         * Documentation/user/music-glossary.tely (dal segno): Updated
2208         example to version >=2.6.
2209
2210 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2211
2212         * Documentation/user/instrument-notation.itely (Printing chord
2213         names): Reorder \chordmode and \repeat in one example.
2214
2215 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2216
2217         * VERSION: release 2.7.17
2218         
2219         * Documentation/topdocs/NEWS.tely (Top): add note about
2220         refactoring.
2221
2222         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
2223         new function. Search region of 3 positions for best tie.
2224         (score_configuration): new function.
2225         (score_aptitude): new function.
2226         (generate_configuration): new function.
2227         (get_configuration): new function.
2228         (Tie_formatting_problem): new function
2229
2230         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
2231
2232         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
2233
2234         * THANKS: add Eduardo Vieira & Ralph Little
2235
2236         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
2237         narrower.
2238
2239         * lily/include/tie-formatting-problem.hh (class
2240         Tie_formatting_problem): add Tie_details to
2241         Tie_formatting_problem. Update calling conventions.
2242
2243         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
2244         config.make.
2245
2246         * Documentation/user/lilypond.tely: remove musedata2ly entry.
2247
2248 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
2249
2250         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
2251         scm/define-context-properties.scm: Maintenance bugfix: make
2252         ligature brackets work again by removing obsolete ligature
2253         primitive callback push/pop.
2254
2255         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
2256         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
2257         value.
2258
2259 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2260
2261         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
2262         used and do not call it a path.
2263         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
2264
2265 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2266
2267         * lily/include/tie-formatting-problem.hh (class
2268         Tie_formatting_problem): new file.
2269
2270         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
2271
2272         * Documentation/misc/ChangeLog-2.3:  new file.
2273
2274         * lily/audio-staff.cc (output): degarianize.
2275
2276 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2277
2278         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
2279         Unset PYTHONOPTIMIZE.  Fixes install if set.
2280
2281 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2282
2283         * python/convertrules.py (conv): add warning about drums. 
2284
2285         * make/stepmake.make: include toplevel-version.make after config.make.
2286
2287         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
2288         also allow python2.4
2289
2290         * config.make.in (configure-srcdir): remove GXX GCC vars.
2291
2292         * stepmake/aclocal.m4: don't do non-srcdir build with
2293         symlinks. Use inclusion, so the src directory name can be changed.
2294
2295 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2296
2297         * make/mutopia-vars.make:
2298         * make/ly-vars.make: Use src-wildcard iso wildcard for source
2299         files.
2300
2301 2005-11-13  Werner Lemberg  <wl@gnu.org>
2302
2303         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
2304         but the affected path.  This ensures that the (overlapping) outlines
2305         have the same direction, which is a necessary prerequisite for
2306         FontForge's algorithm to remove overlaps.
2307         Formatting.
2308
2309         * mf/feta-haak.mf: Formatting.
2310         (draw_bracket): Slightly modify outline to avoid an unnecessary
2311         corner.
2312         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
2313         them from the affected paths.
2314
2315 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2316
2317         * mf/README: remove xpm / accordion notes.
2318
2319         * lily/tie-column-format.cc (set_chord_outline): add dots into
2320         skyline extents. This fixes tie formatting if the left head has dots.
2321
2322         * lily/tie.cc (get_configuration): only shift tie by a whole staff
2323         space inside the staff.
2324         (get_configuration): shift another position if necessary in case
2325         of left head tie  
2326
2327 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2328
2329         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
2330         buildscript-dir iso. $(depth)/buildscripts.
2331
2332         * tex/GNUmakefile (local-uninstall): remove
2333         music-drawing-routines.ps juggling.
2334
2335         * stepmake/stepmake/install-targets.make (local-install-files):
2336         prepend src-dir to install targets.
2337
2338         * lily/system-start-delimiter-engraver.cc
2339         (acknowledge_system_start_delimiter): use
2340         add_offset_callback(). This fixes translation of nested
2341         staffgroups.
2342
2343         * lily/grob-closure.cc (add_offset_callback): only encaps in
2344         simple_closure if it's a procedure.
2345         
2346         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
2347         from bar-line.
2348
2349         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
2350         remove-empty where pertinent.
2351
2352 2005-11-12  Graham Percival  <gpermus@gmail.com>
2353
2354         * Documentation/user/instrument-notation.itely: added
2355         Cameron Horsburgh's multiple stanzas docs.  Thanks!
2356
2357 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2358
2359         * lily/GNUmakefile
2360         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
2361         make picture in builddir, not srcdir.
2362
2363 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2364
2365         * VERSION: release 2.7.16
2366         
2367         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
2368         shell arguments. 
2369
2370 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2371
2372         * Documentation/user/examples.itely (Piano templates): Minor
2373         modification to the Piano centered lyrics example.
2374
2375 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2376
2377         * scripts/lilypond-invoke-editor.scm (run-browser): look at
2378         $BROWSER.
2379
2380         * Documentation/user/point-and-click.itely: simplify p&c
2381         instruction: don't configure firefox. Put lilypond-invoke-editor
2382         in front of the browser.
2383
2384         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
2385         (run-browser): new function.
2386
2387         * lily/parser.yy (Lily_lexer): recognize Book
2388
2389         * lily/book.cc (clone): new function
2390
2391         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
2392
2393 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
2394
2395         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
2396         Maintenance bugfix: reduce number of font related warnings by
2397         updating naming conventions for glyph-name.
2398
2399 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2400
2401         * scm/define-grobs.scm (all-grob-descriptions): add
2402         rhythmic-grob-interface to TabNoteHead.
2403
2404         * scm/layout-beam.scm (check-quant-callbacks): remove
2405         set_stem_lengths()
2406
2407 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
2408
2409         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
2410         alignment of centered divisiones.
2411
2412         * scm/scripts.scm (articulations): Maintenance bugfix:
2413         follow-into-staff -> quantize-position.
2414
2415         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
2416         plica head in porrectus deminutus.
2417
2418 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2419
2420         * make/lilypond.fedora.spec.in (Group): add %clean section.
2421
2422         * lily/tuplet-bracket.cc (print): change check: remove bracket if
2423         less then 1/5th of total length.  
2424         (print): use gap too.  Fixes tupletUp-single-bracket.ly
2425
2426         * scm/music-functions.scm (glue-mm-rest-texts): also put other
2427         events into EventChord. This fixes textspanners on mm rests. Fixes
2428         spanner-rest.ly
2429
2430         * lily/side-position-interface.cc (get_axis): read side-axis
2431         (set_axis): set side-axis.
2432
2433         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
2434         properties everywhere.
2435
2436         * lily/spacing-spanner.cc (breakable_column_spacing): add
2437         average-spacing-wishes. Take maximum if not set.
2438         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
2439
2440         * scm/define-grobs.scm (all-grob-descriptions): add
2441         average-spacing-wishes.
2442
2443         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
2444         offset callbacks. This fixes alignment for Fingering objects.
2445
2446         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
2447         space for key - timesig combination. 
2448
2449         * input/regression/script-stem-tremolo.ly (Module): new file.
2450
2451         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
2452         to key sig.
2453
2454         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
2455         Fixes: c-tremolo-script.ly.
2456         
2457         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
2458
2459         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
2460         
2461         * scm/define-grobs.scm (all-grob-descriptions): remove
2462         self-X-offset. Fixes alignment of octavate-8.
2463
2464         * scripts/lilypond-book.py (datadir): look in
2465         LILYPONDPREFIX/share/lilypond/current/
2466
2467         * GNUmakefile.in: symlink current to <VERSION>. 
2468
2469 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
2470
2471         * lily/main.cc: eps listed as a backend.
2472
2473 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2474
2475         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
2476
2477 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2478
2479         * lily/include/score.hh (class Score): remove texts_ member.
2480
2481         * lily/beam.cc (set_stem_lengths): force direction callback.
2482         (print): read quantized-positions, so we can force
2483         Beam::set_stem_lengths to occur.
2484         (rest_collision_callback): use common X parent. 
2485
2486 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2487
2488         * flower/file-path.cc (find): Bugfix: Return name of file found.
2489
2490         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
2491         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
2492         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
2493
2494 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2495
2496         * flower/offset.cc: idem.
2497
2498         * mf/*.mf: update email address.
2499
2500         * lily/font-config-scheme.cc:  new file.
2501
2502         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
2503
2504         * lily/*:  cs.uu.nl -> xs4all.nl
2505
2506         * VERSION (PATCH_LEVEL): release 2.7.15
2507
2508         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
2509         spec files.
2510
2511         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
2512
2513 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2514
2515         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
2516
2517         * lily/staff-performer.cc (process_music): add audio
2518         elements. This makes MIDI instrument changes work once again.
2519
2520         * lily/main.cc (LY_DEFINE): add gmane address.
2521
2522         * lily/beam.cc: remove calc_positions()
2523
2524         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
2525         original_ in private scope.
2526         (class Grob): drop pscore_ pointer, change to output_def pointer.
2527         (class Grob): cleanup class definition.
2528
2529         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
2530
2531 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2532
2533         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
2534         absolute.  Better diagnostics.
2535
2536         * GNUmakefile.in: Add bin/ to tree and populate with some links.
2537         This makes lilypond run from the build directory using argv0
2538         relocation (without any --prefix or LILYPONDPREFIX setting).
2539
2540 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2541
2542         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
2543
2544         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
2545         with simple-closure.
2546
2547         * lily/self-aligment-interface.cc (set_align_self): new function
2548         (set_center_parent): new function.
2549
2550         * lily/side-position-interface.cc (set_axis): new function.
2551
2552         * lily/new-fingering-engraver.cc (position_scripts): use drul for
2553         generic code. 
2554
2555         * scm/define-grob-properties.scm (all-user-grob-properties):
2556         remove [XY]-offset-callbacks add [YX]-offset
2557         
2558 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2559
2560         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
2561         entry for time signatures after breathing signs. Bug report by
2562         Scott Russell.
2563
2564 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2565
2566         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
2567         not absolute, make it absolute using PATH.
2568
2569 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2570
2571         * python/midi.c (initmidi): Fix type for mingw.
2572
2573 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2574
2575         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
2576
2577         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
2578         cross compiling.
2579
2580         * stepmake/aclocal.m4: Support python cross compiling.
2581
2582         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
2583         Add mingw section.
2584
2585 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2586
2587         * scm/output-lib.scm (chain-grob-member-functions): replace
2588         chained-callback.cc
2589
2590         * lily/chained-callback.cc (Module): remove file.
2591
2592         * lily/rest-collision.cc (force_shift_callback_rest): change to
2593         chained callback.
2594
2595         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
2596
2597         * lily/grob.cc (y_parent_positioning): remove axis argument from
2598         parent_positioning callbacks.
2599         (Grob): junk init code
2600         (get_offset): use generic property callbacks for
2601         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
2602         (axis_parent_positioning): new function
2603         (axis_offset_symbol): new function
2604         (chain_offset_callback): new function
2605         (add_offset_callback): new function
2606
2607         * lily/beam.cc (rest_collision_callback): change signature; this
2608         is now a chained callback.
2609
2610         * lily/include/dimension-cache.hh (class Dimension_cache): remove
2611         callback administration.
2612
2613         * lily/simple-closure.cc: new file. Smob type that allows "grob
2614         member functions",
2615
2616             (ly:make-simple-closure FUNC A B)
2617
2618         is evaluated as (FUNC grob A B). This allows chaining of callbacks
2619         in various ways.
2620
2621         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
2622         callbacks.
2623
2624         * lily/slur.cc (outside_slur_callback): take 2 arguments.
2625
2626         * lily/rest.cc (polyphonic_offset_callback): remove.
2627
2628         * lily/script-engraver.cc (try_music): remove bool* argument.
2629
2630         * scm/script.scm (default-script-alist): set quantize-position
2631         appropriately.
2632
2633         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
2634
2635         * lily/side-position-interface.cc (aligned_side): move staff
2636         position quantization from
2637         Side_position_interface::quantised_position().
2638         (quantised_position): remove
2639         
2640 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2641
2642         * input/regression/beam-quant-standard.ly: reindent, set
2643         debug-beam-quanting to #t.
2644
2645         * lily/beam-concave.cc (calc_concaveness): set concaveness to
2646         10000 if this is a "hard" concave beam.
2647
2648         * lily/beam.cc (calc_least_squares_positions): change from
2649         calc_least_squares_dy
2650         (set_stem_lengths): this is now a chained callback.
2651
2652         * lily/context-property.cc (execute_general_pushpop_property):
2653         bugfix override with procedure should have effect.
2654
2655         * scm/define-grob-properties.scm (all-internal-grob-properties):
2656         remove position-callbacks.
2657
2658         * scm/define-grobs.scm (all-grob-descriptions): use
2659         ly:make-callback-chain for positions property.
2660
2661         * scm/layout-beam.scm (check-quant-callbacks): return list of
2662         chained callbacks.
2663
2664         * scm/lily.scm (type-p-name-alist): add callback-chain
2665
2666         * lily/lily-guile.cc (type_check_assignment): type check failure
2667         is warning not message.
2668
2669         * lily/grob-property.cc (try_callback): walk callback chain if
2670         appropriate.
2671
2672         * lily/chained-callback.cc: new file. new smob type.
2673
2674         * lily/lily-guile.cc (procedure_arity): new function.
2675
2676 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2677
2678         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
2679
2680 2005-10-25  John Mandereau  <john.mandereau@free.fr>
2681  
2682         * Documentation/user/instrument-notation.itely (Figured bass):
2683         describe new features
2684
2685 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2686
2687         * lily/beam.cc (calc_least_squares_dy): use property callback.
2688
2689         * lily/beam-concave.cc (calc_concaveness): use property callback.
2690
2691         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
2692
2693 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2694
2695         * HACKING: Update.
2696
2697 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2698
2699         * scm/layout-page-layout.scm (page-headfoot): annotate
2700         pagetopspace too.
2701
2702         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
2703
2704         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
2705         doesn't take y-space.
2706
2707         * scm/paper.scm (paper-alist): fix A7 dimensions. 
2708
2709 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2710
2711         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
2712         src-wildcard, remove $(wildcard).
2713
2714         * po/GNUmakefile (PO_FILES): 
2715         * ps/GNUmakefile (PS_FILES): 
2716         * tex/GNUmakefile (TEX_FILES): 
2717         * cygwin/GNUmakefile (POSTINSTALLS):
2718         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
2719         some wildcard calls.
2720
2721 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2722
2723         * THANKS: add Thomas Bushnell.
2724
2725 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2726
2727         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
2728         (lilypond-main): Redirect to gui-main if 'gui is set.
2729         Backportme.
2730
2731         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
2732         for alternative installations kludging s/share/lib/g
2733         LILYPONDPREFIX. Backportme.
2734
2735         * SConstruct (libdir_package_version): Define.
2736
2737         * python/SConscript: 
2738         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
2739         module in libdir.  Backportme.
2740
2741 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2742
2743         * lily/main.cc: clarify --safe.
2744
2745 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2746
2747         * VERSION: release 2.7.14
2748         
2749         * Documentation/user/*.itely: remove minimumVerticalExtent.
2750
2751         * scm/define-grobs.scm (all-grob-descriptions): remove
2752         RemoveEmptyVerticalGroup
2753
2754         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
2755
2756         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
2757         compile on MOSX
2758
2759         * python/convertrules.py (conv): add rules.
2760
2761         * lily/grob.cc: remove is_empty()
2762
2763         * lily/grob-property.cc: remove add_to_list_property().
2764
2765         * scripts/convert-ly.py (datadir): add prefix switching hack to
2766         .py too.
2767
2768         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
2769         space-function tweak.
2770
2771         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
2772
2773         * scm/define-grob-properties.scm (all-user-grob-properties):
2774         remove callback property.
2775
2776         * lily/include/grob.hh (class Grob): remove property_callbacks_
2777         member. Properties of procedure type are assumed to be callbacks.
2778
2779         * lily/ligature-engraver.cc (override_stencil_callback):
2780         rewrite. Use noteHeadLigaturePrimitive as source.
2781
2782         * scm/define-grob-properties.scm (all-internal-grob-properties):
2783         remove ligature-primitive-callback
2784
2785         * lily/include/dimension-cache.hh (class Dimension_cache): make
2786         class, with Grob as friend.
2787
2788         * lily/grob.cc: remove set_extent_callback(), set_extent() and
2789         has_extent_callback()
2790
2791         * scm/translation-functions.scm (format-new-bass-figure): read
2792         figuredBassPlusDirection
2793
2794         * scm/define-context-properties.scm
2795         (all-user-translation-properties): add figuredBassPlusDirection.
2796
2797         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
2798
2799         * lily/align-interface.cc (set_ordered): new function.
2800
2801         * lily/grob.cc (flush_extent_cache): rewrite.
2802
2803         * lily/dimension-cache.cc (Dimension_cache): cache extent as
2804         Interval pointer directly.
2805
2806         * lily/main.cc (setup_paths): insert extra / .
2807         (setup_paths): junk cff entry.
2808
2809         * lily/font-config.cc (init_fontconfig): only add type1 / otf
2810         directories.
2811
2812         * lily/axis-group-engraver.cc (finalize): remove
2813         extraVerticalExtent, minimumVerticalExtent verticalExtent.
2814
2815         * lily/grob.cc (Grob): don't set extent from ctor.
2816         (extent): use property callbacks. 
2817
2818         * lily/axis-group-interface.cc: remove set_axes() function.
2819
2820         * lily/grob-property.cc (del_property): new function.
2821
2822 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2823
2824         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
2825         
2826 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2827
2828         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
2829
2830 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2831
2832         * mf/SConscript: Updates.
2833
2834         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
2835
2836         * stepmake/stepmake/*:
2837         * */GNUmakefile:
2838         * config.make.in:
2839         * GNUmakefile.in:
2840         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
2841         from any directory in build-dir.  Cleanups.
2842
2843         * make/srcdir.make.in: Remove.
2844
2845         * lily/main.cc (setup_paths): Fix and document build-dir hack.
2846
2847         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
2848         main).
2849
2850         * lily/SConscript: Remove ttftools.
2851
2852         * SConstruct: Resurrect.
2853
2854 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2855
2856         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
2857         Y coordinate. 
2858
2859         * lily/paper-book.cc (add_score_title): put Paper_score title into
2860         systems_ list.
2861
2862         * scm/translation-functions.scm (format-new-bass-figure): also
2863         allow plus in combination with _
2864
2865 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2866
2867         * VERSION: 2.7.13 released.
2868
2869         * lily/note-collision.cc (check_meshing_chords): don't wipe
2870         stencil, merely set transparent.
2871
2872         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
2873         (Top): document #'callbacks.
2874         (Top): document nested \override.
2875
2876         * input/regression/figured-bass.ly: update for slash and pluses.
2877
2878         * input/regression/figured-bass-continuation-forbid.ly (Module):
2879         new file.
2880
2881         * scm/translation-functions.scm (format-new-bass-figure): use
2882         slashed-digit if diminished is set.
2883         (format-new-bass-figure): add + if 'augmented is set.
2884
2885         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
2886
2887         * input/test/piano-staff-distance.ly: remove file.
2888
2889         * Documentation/user/advanced-notation.itely (Formatting cue
2890         notes): use length-fraction for making stems/beams smaller.
2891
2892         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
2893         modifications.
2894
2895         * lily/new-figured-bass-engraver.cc: new property
2896         centerFiguredBassContinuations
2897
2898         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2899         use callbacks.
2900
2901         * lily/context-property.cc (execute_general_pushpop_property):
2902         robustness checks.
2903
2904         * input/regression/override-nest.ly: new file.
2905
2906         * python/convertrules.py (FatalConversionError.subber): conversion
2907         rule for #'callbacks
2908
2909         * input/regression/override-nest.ly: new function.
2910
2911         * lily/parser.yy (music_property_def): allow \override #'a #'b =
2912         #c too. 
2913
2914         * lily/context-property.cc (lookup_nested_property): new function.
2915         (evict_from_alist): new function.
2916         (general_pushpop_property): new function.
2917         (execute_general_pushpop_property): rewrite. Support nested
2918         properties too.
2919
2920 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2921
2922         * lily/beam.cc: use length-fraction too.
2923
2924         * scm/define-grob-properties.scm (all-user-grob-properties):
2925         remove property flag-width-function
2926         (all-user-grob-properties): remove space-function.
2927
2928         * scm/layout-beam.scm: remove flag-width-function.
2929
2930         * lily/beam.cc: remove flag-width-function
2931
2932         * scm/layout-beam.scm: remove beam dir functions.
2933
2934         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
2935
2936         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
2937         for easier grace tweaks.
2938
2939         * lily/beam.cc: remove dir-function.
2940
2941         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
2942
2943         * lily/grob.cc: remove spacing-procedure.
2944
2945         * lily/note-head.cc (calc_stem_attachment): new function.
2946         (internal_print): use callback to get glyph-name.
2947
2948         * lily/grob-property.cc (get_interfaces): new function.
2949
2950         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
2951
2952         * lily/stem.cc (calc_stem_end_position): new function.
2953         (calc_length): new function.
2954         document details for stem.
2955         remove Stem::get_direction()
2956
2957         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
2958
2959         * lily/grob-property.cc (set_callback): new function.
2960
2961         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
2962
2963         * lily/item-scheme.cc: new file.
2964
2965         * lily/bar-line.cc (before_line_breaking): remove function.
2966         remove bar-size-procedure, break-glyph-function
2967
2968         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
2969
2970         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
2971
2972         * lily/system-start-delimiter.cc (print): suicide from
2973         here. Remove after_line_breaking_callback.
2974
2975         * lily/script-interface.cc (calc_direction): use callback for direction.
2976
2977         * lily/side-position-interface.cc (aligned_side): don't use
2978         Side_position_interface::get_direction directly. Use callback. 
2979
2980         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
2981         calculate stencil.
2982         (get_print_stencil): rename from get_stencil: create stencil with
2983         transparency, color and cause. 
2984
2985         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
2986
2987         * python/convertrules.py (conv): insert temporary warning rule.
2988
2989         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
2990
2991         * lily/grob-property.cc (try_callback): remove marker if applicable.
2992
2993         * lily/grob.cc: elucidate doc about after/before-line-breaking
2994
2995         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
2996
2997         * lily/stem.cc (height): idem.
2998
2999         * lily/stem-tremolo.cc: idem.
3000
3001         * lily/slur.cc (height): don't use get_uncached_stencil()
3002
3003         * lily/rest.cc (y_offset_callback): use offset callback
3004         iso. after-line-breaking callback.
3005
3006         * lily/grob.cc: change after/before-line-breaking-callback to
3007         after/before-line-breaking dummy properties.
3008
3009         * lily/include/grob.hh: remove Grob_status.
3010
3011         * scm/define-context-properties.scm
3012         (all-user-translation-properties): remove verticalAlignmentChildCallback
3013
3014         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
3015         (calc_direction): use callback
3016         (calc_positions): use callback.
3017
3018         * lily/tie.cc (calc_direction): use callback. Only call parent
3019         positioning for more than one tie.
3020
3021         * lily/tie-column.cc (calc_positioning_done): use callback
3022
3023         * lily/slur-scoring.cc (calc_control_points): use callback
3024
3025         * lily/slur.cc (calc_direction): use callback.
3026
3027         * lily/note-collision.cc (force_shift_callback): remove.
3028
3029         * lily/dot-column.cc (force_shift_callback): remove. Use
3030         other_axis_parent_positioning.
3031
3032         * lily/grob.cc (other_axis_parent_positioning): new function.
3033         (same_axis_parent_positioning): new function
3034
3035         * lily/align-interface.cc (alignment_callback): remove function.
3036
3037         * lily/note-collision.cc (calc_positioning_done): use callback.
3038
3039         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
3040         (calc_direction): idem.
3041         remove print function.
3042
3043         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
3044
3045         * lily/dot-column.cc (calc_positioning_done): use callback.
3046
3047         * lily/break-align-interface.cc (calc_positioning_done): use callback.
3048
3049         * lily/beam.cc (calc_direction): use pseudo-property for beam
3050         direction callback.
3051         (calc_positions): use callback 
3052
3053         * lily/align-interface.cc (calc_positioning_done): use
3054         callback. Fold fixed  distance and normal alignment in one function.
3055
3056         * lily/stem.cc (calc_stem_end_position): use callback.
3057         (calc_positioning_done): idem.
3058         (calc_direction): idem.
3059         (calc_stem_end_position): idem
3060         (calc_stem_info): idem.
3061
3062         * lily/grob-property.cc (get_property_data): new function: 
3063         (try_callback): new function.
3064
3065         * scm/define-grob-properties.scm (all-user-grob-properties): doc
3066         callbacks property.
3067
3068         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
3069
3070 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3071
3072         * lily/tie.cc (get_position): robustness fix. Don't crash if a
3073         tie
3074         has no heads.
3075         
3076         * lily/include/*.hh (Module): compile fixes.
3077
3078 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
3079
3080         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
3081         as an argument for char-syntax: use (char-syntax (or nil 0)) 
3082         instead of (char-syntax nil), thanks to Milan Zamazal.
3083
3084 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3085
3086         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
3087         dist.
3088
3089         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
3090         themselves.
3091
3092 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3093
3094         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
3095         add class_name() method.
3096
3097         * lily/music-scheme.cc: remove ly:music-name.
3098
3099 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3100
3101         * cygwin/postinstall-lilypond.sh: Remove cruft.
3102
3103         * cygwin/postremove-lilypond.sh: Remove.
3104
3105         * cygwin/GNUmakefile (default): Remove postremove rules.
3106
3107 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3108
3109         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
3110         even header too.
3111         
3112         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
3113         MacOS 9 users.
3114
3115         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
3116         consider break index for broken spanner.
3117
3118         * scm/define-markup-commands.scm (wordwrap-string): remove \r
3119         characters from string before splitting.
3120
3121 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3122
3123         * scm/framework-ps.scm (output-preview-framework): use
3124         is-book-title to determine whether to chop off the booktitle.
3125
3126         * lily/paper-book.cc (systems): init from book-title-properties
3127         (add_score_title): init score-title-properties.
3128
3129         * ly/paper-defaults.ly: add {score,book}-title-properties.
3130
3131         * scm/document-backend.scm (lookup-interface): error message if
3132         using unknown interface.
3133
3134         * lily/volta-bracket.cc (after_line_breaking): new function. Set
3135         edge-height.
3136
3137         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
3138         make_bracket.
3139         (make_bracket): new function.
3140
3141         * scm/lily.scm (define-scheme-options): add paper-size option.
3142
3143         * ly/declarations-init.ly (laissezVibrer): get paper size from
3144         -dpaper-size
3145
3146         * scm/translation-functions.scm: use \fontsize for changing the
3147         fontsize.
3148
3149         * scm/define-grobs.scm (all-grob-descriptions): set
3150         between-length-limit to 1.0
3151
3152         * lily/tie-helper.cc: add between_length_limit_ detail property.
3153
3154         * mf/feta-bolletjes.mf: typos.
3155
3156         * lily/note-head.cc (internal_print): don't shadow idx
3157         parameter. This fixes wrong attachment for do shape heads.
3158
3159 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3160
3161         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
3162
3163         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
3164
3165         * scm/layout-slur.scm: rename from slur.scm
3166
3167         * scm/layout-page-layout.scm: rename from page-layout.scm
3168
3169         * scm/layout-beam.scm: rename from beam.scm
3170
3171         * scm/define-grob-interfaces.scm (bass-figure-interface): add
3172         bass-figure-interface
3173
3174         * lily/new-figured-bass-engraver.cc (process_music): add
3175         implicitBassFigures property.
3176         
3177         * scm/define-markup-commands.scm (pad-x): new markup.
3178
3179         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
3180         minimumVerticalExtent on FiguredBass context.
3181
3182         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
3183         case the continuation crosses a line break.
3184
3185 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3186
3187         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
3188         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
3189         absolute file name bug.  Backportme.
3190
3191 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3192
3193         * VERSION (PACKAGE_NAME): release 2.7.12
3194
3195         * input/regression/figured-bass-continuation-center.ly: new file.
3196
3197         * input/regression/beam-outside-beamlets.ly: new file.
3198
3199         * lily/beam.cc (set_beaming): don't clip edges.
3200         (connect_beams): don't clip edges.
3201
3202         * lily/beaming-info.cc (clip_edges): new function.
3203
3204         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
3205
3206         * Documentation/user/instrument-notation.itely (Figured bass):
3207         demonstrate extenders, update seealso links.
3208
3209         * scm/titling.scm (marked-up-headfoot): change tagline
3210         handling. tagline = ##f will blank the tagline as well.
3211
3212 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3213
3214         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
3215
3216         * lily/new-figured-bass-engraver.cc (struct
3217         New_figured_bass_engraver): add new_music_found_ member.
3218
3219         * lily/lilypond-version.cc (Lilypond_version): deal with
3220         incorrectly formatted version strings. 
3221
3222         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
3223         New_figured_bass_engraver by default.
3224
3225         * lily/ttf.cc (print_trailer): only define glyph names when
3226         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
3227
3228 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3229
3230         * lily/horizontal-bracket.cc (make_bracket): new function.
3231
3232         * scm/define-grobs.scm (all-grob-descriptions): new grobs
3233         NewBassFigure, BassFigureBracket, BassFigureContinuation,
3234         BassFigureLine, BassFigureAlignment
3235
3236         * lily/new-figured-bass-engraver.cc (process_music): new file.
3237
3238         * lily/figured-bass-continuation.cc: new file.
3239
3240         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
3241         new file.
3242
3243 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3244
3245         * scripts/lilypond-book.py: Bug fix, put the quote around the
3246         actual score for LaTeX documents.
3247
3248         * scm/define-grobs.scm (all-grob-descriptions): Change
3249         collapse-height of the SystemStartBracket grob to 5.0, 
3250         so the bracket disappears for single stave score lines (similarly
3251         to SystemStartBraces). 
3252
3253         * Documentation/user/advanced-notation.itely (Polymetric
3254         notation): Clarify the use of compressMusic.
3255
3256         * Documentation/user/basic-notation.itely (Grace notes): Clarify
3257         that the grace spacer note in other staves need the same duration
3258         and document the stroke-style property.
3259
3260 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3261
3262         * Documentation/user/global.itely (Vertical spacing): document
3263         alignment-extra-space and fixed-alignment-extra-space.
3264
3265         * Documentation/topdocs/NEWS.tely (Top): add entry.
3266
3267         * input/regression/alignment-vertical-spacing.ly: new file.
3268
3269         * python/convertrules.py (conv): add rule.
3270
3271         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
3272
3273         * lily/align-interface.cc (stretch_after_break): new
3274         function. Read fixed-alignment-extra-space property.
3275         (align_elements_to_extents): read alignment-extra-space property.
3276
3277         * lily/lily-guile.cc (robust_scm2dir): new function.
3278
3279         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
3280         (annotate-space-left): new function. Annotate space left on page. 
3281         (annotate-y-interval): new function.
3282         (paper-system-annotate-last): new function. Annotate bottom-space.
3283
3284         * mf/feta-beugel.mf (y): 
3285
3286 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3287
3288         * VERSION (PACKAGE_NAME):  release 2.7.11
3289
3290         * scm/lily-library.scm (interval-translate): new function
3291         (interval-center): new function. 
3292
3293         * scm/page-layout.scm (paper-system-annotate): new function. Add
3294         arrows for dimensions.
3295  
3296         * scm/stencil.scm (dimension-arrows): new function.
3297
3298         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
3299
3300         * input/regression/page-spacing.ly: add annotatespacing
3301
3302         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
3303         (LY_DEFINE): new function ly:paper-system-set-property!
3304
3305         * Documentation/user/global.itely (Paper size): explain how to add
3306         sizes.
3307
3308         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
3309         correspond to GS's definition.
3310
3311         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
3312         tuplet bracket.
3313         (print): only connect to next bracket if the next one is alive.
3314         (print): set padding to 0.0 if the bound is a breakable
3315         column. This makes tupletFullLength brackets reach up to the staff
3316         line if it doesn't connect to the next line.
3317
3318 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3319
3320         * lily/bar-number-engraver.cc: correct docs.
3321
3322         * scm/output-lib.scm (first-bar-number-invisible): rename from
3323         default-bar-number-visibility
3324
3325 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3326
3327         * scm/define-music-properties.scm (all-music-properties): remove
3328         predicate property.
3329
3330 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
3331
3332         * po/fi.po: refresh.
3333
3334 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3335
3336         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
3337         superfluous s1.
3338         (disappear): bugfix.
3339
3340         * lily/stem-tremolo.cc (raw_stencil): read slope property.
3341
3342         * lily/include/paper-system.hh (class Paper_system): remove
3343         staff_extents_ member.
3344
3345         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
3346
3347         * lily/include/paper-system.hh (class Paper_system): remove
3348         number_ variable. Remove is_title_. Remove break_before_penalty_
3349
3350         * lily/paper-book.cc (systems): use 'number property iso. number_
3351         member.
3352
3353         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
3354         remove ly:paper-system-number.
3355
3356         * scm/lily-library.scm (paper-system-title?): new function.
3357
3358         * lily/book.cc (process): bugfix: flip ?: cases. 
3359
3360         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3361         add outputProperty.
3362
3363         * ly/music-functions-init.ly: add outputProperty music function.
3364
3365         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
3366
3367         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
3368         and next-padding.
3369         (optimal-page-breaks): rename from ly:optimal-page-breaks.
3370
3371         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
3372
3373         * lily/paper-system.cc (internal_get_property): new function.
3374
3375         * Documentation/user/global.itely (Vertical spacing): refer to
3376         page-spacing.ly
3377
3378         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
3379         pagetopspace
3380
3381         * input/regression/page-spacing.ly: new file.
3382
3383         * input/regression/page-top-space.ly: new file.
3384
3385         * lily/spacing-spanner.cc: cmath -> math.h
3386
3387         * lily/paper-system.cc (read_left_bound): new function. Read
3388         line-break-system-details from left bound to determine extents.
3389  
3390         * Documentation/user/programming-interface.itely (Using LilyPond
3391         syntax inside Scheme): change applyxxx -> applyXxx.
3392
3393         * ly/music-functions-init.ly: add outputProperty music function.
3394
3395         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
3396
3397         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
3398
3399         * python/convertrules.py (conv): rule
3400
3401         * ly/music-functions-init.ly: applyxxx -> applyXxx
3402
3403         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
3404         TabVoice to Voice.
3405
3406 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3407
3408         * flower/include/real.hh: include <math.h> iso. <cmath>
3409
3410         * flower/include/offset.hh: include real.hh
3411
3412 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3413
3414         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3415         fix example, now that 'interfaces is no longer directly available.
3416
3417         * lily/book.cc (process): don't crash if paper == NULL.
3418
3419         * po/fr.po: update.
3420
3421 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3422
3423         * scm/define-music-types.scm (music-descriptions): set length and
3424         start-callback for QuoteMusic
3425
3426 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3427
3428         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
3429         arguments. Fixes compilation error with gcc 3.3.
3430
3431 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3432
3433         * VERSION: release 2.7.10
3434
3435         * stepmake/stepmake/python-module-rules.make
3436         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
3437
3438         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
3439         real.hh
3440
3441 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3442
3443         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
3444         -Werror. Otherwise GCC barfs over various optimizations.
3445
3446         * scm/define-grob-properties.scm (all-internal-grob-properties):
3447         add note-head property
3448
3449         * Documentation/user/instrument-notation.itely (Laissez vibrer
3450         ties): new node.
3451
3452         * input/regression/laissez-vibrer-ties.ly: new file.
3453
3454         * lily/laissez-vibrer-engraver.cc: new file.    
3455
3456         * lily/include/tie-column-format.hh: new file.
3457
3458         * lily/tie-column-format.cc: new file. 
3459
3460         * lily/tie-column.cc (set_manual_tie_configuration): new function.
3461
3462         * lily/laissez-vibrer-tie.cc: new file.
3463
3464         * lily/include/laissez-vibrer-tie.hh: new file.
3465
3466         * ly/engraver-init.ly: add Laissez_vibrer_engraver
3467
3468         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
3469
3470         * scm/define-grobs.scm (all-grob-descriptions): add
3471         LaissezVibrerTie, LaissezVibrerTieColumn
3472
3473         * lily/tie-column.cc (set_tie_config_directions): new function
3474         (final_shape_adjustment): new function.
3475         (shift_small_ties): new function.
3476
3477         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
3478
3479         * lily/include/tie.hh (struct Tie_details): add x_gap_
3480         (struct Tie_configuration): add head_position_
3481
3482         * lily/tie-column.cc (set_chord_outline): new function.
3483
3484         * mf/cmr.enc.in:  remove file.
3485
3486 2005-09-11  Graham Percival  <gpermus@gmail.com>
3487
3488         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
3489
3490 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3491
3492         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
3493         reduce aliasing effects.
3494
3495         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
3496         box in skyline.
3497
3498 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3499
3500         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
3501
3502         * flower/include/real.hh: std::fabs too.
3503
3504 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3505
3506         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
3507
3508         * lily, flower: Include C++ iso C headers.  Import namespace std
3509         throughout.
3510
3511         * lily/side-position-interface.cc: 
3512         * lily/scm-hash.cc: 
3513         * lily/note-head.cc: 
3514         * lily/include/includable-lexer.hh: 
3515         * flower/include/string-data.icc: Remove using std::*.
3516
3517         * lily, flower: Include C++ iso C headers.  Import namespace std
3518         throughout.
3519
3520         * lily/side-position-interface.cc: 
3521         * lily/scm-hash.cc: 
3522         * lily/note-head.cc: 
3523         * lily/include/includable-lexer.hh: 
3524         * flower/include/string-data.icc: Remove using std::*.
3525
3526         * Documentation/user/instrument-notation.itely (Entering lyrics):
3527         Multiple latin-1->utf-8 conversion fix.
3528
3529         * Documentation/user/*tely: Update Emacs cookie to utf-8.
3530
3531 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3532
3533         * lily/tie.cc (get_configuration): also avoid dots for non-space
3534         situations.
3535
3536 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3537
3538         * Documentation/user/instrument-notation.itely: Bugfix.
3539
3540 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3541
3542         * tex/GNUmakefile: don't install texinfo.tex
3543
3544         * tex/ : cleanup: remove unused files.
3545
3546         * lily/general-scheme.cc: remove my_{isinf,isnan}.
3547
3548         * flower/include/real.hh: using std::{isnan,isinf}
3549         
3550         * VERSION (PATCH_LEVEL): release 2.7.9
3551
3552 2005-09-05  Graham Percival  <gpermus@gmail.com>
3553
3554         * Documentation/user/ instrument-notation.itely,
3555         advanced-notation.itely: minor tweaks.
3556
3557         * input/test/script-chart.ly: add item padding.
3558
3559 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3560
3561         * flower/offset.cc: use math.h iso. <cmath>
3562
3563         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
3564         of IE users.
3565
3566         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
3567         (widen-left-stencil-edges): new function. Fix alignment problems
3568         with LaTeX includegraphics.
3569
3570         * lily/text-interface.cc (interpret_markup): use abort().
3571
3572 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3573
3574         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
3575
3576         * lily/tie.cc (get_configuration): update bezier shape as we
3577         change Y positions.
3578         (get_configuration): don't move large ties if we're outside of the
3579         staff.
3580
3581 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3582
3583         * scm/define-markup-commands.scm (strut): swap X and Y dims.
3584         
3585 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3586
3587         * .cvsignore: Add auto-generated configure files and then some.
3588
3589 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3590
3591         * scm/define-grobs.scm (DynamicLineSpanner): Add
3592         X-extent-callback.  Fixes hairpin-slur collision.
3593
3594 2005-08-31  Graham Percival  <gpermus@gmail.com>
3595
3596         * Documentation/user/advanced-notation.itely,
3597         basic-notation.itely: minor changes.
3598
3599 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3600
3601         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
3602         \linebreak between each .eps file if \betweenLilyPondSystem is
3603         undefined. 
3604
3605         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
3606         music): Document the \linebreak
3607
3608         * Documentation/user/lilypond-book.itely,
3609         input/tutorial/lbook-latex-test.tex,
3610         Documentation/user/examples.itely: Remove \usepackage{graphics}
3611
3612 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3613
3614         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
3615
3616         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
3617         compat bugfix.
3618
3619         * scripts/lilypond-book.py (PREAMBLE_LY): define
3620         inside-lilypond-book
3621         (modify_preamble): new function. Insert \RequirePackage{graphics}
3622         when no {graphics found in preamble.  
3623
3624 2005-08030  Graham Percival  <gpermus@gmail.com>
3625
3626         * Documentation/user/basic-notation.itely, global.itely,
3627         tutorial.itely: misc small changes.
3628
3629 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3630
3631         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
3632         VERSION.
3633
3634 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3635
3636         * lily/tie-column.cc (new_directions): put Tie down on center
3637         staff line. 
3638
3639         * lily/script-interface.cc (before_line_breaking): use
3640         Grob::programming_error
3641
3642         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
3643
3644         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
3645         of splitext.
3646
3647 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3648
3649         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
3650
3651 2005-08-29  Werner Lemberg  <wl@gnu.org>
3652
3653         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
3654         the `*.scale.pfa' files to avoid warnings.
3655
3656 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3657
3658         * lily/tempo-performer.cc (process_music): idem.
3659
3660         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
3661
3662 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3663
3664         * Documentation/user/advanced-notation.itely (Text markup): not a
3665         fragment.
3666
3667         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
3668
3669         * lily/staff-performer.cc (initialize): add tempo/name to
3670         audio_staff_
3671
3672
3673 2005-08-26  Graham Percival  <gpermus@gmail.com>
3674
3675         * Documentation/user/advanced.itely: add text-only example.
3676
3677         * Documentation/user/invoking.itely: add index entries for
3678         convert-ly.
3679
3680         * Documentation/user/ tutorial.itely, basic-notation.itely:
3681         small fixes suggested by Steve D.  Thanks!
3682
3683 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3684
3685         * input/regression/markup-bidi-pango.ly: new file.
3686
3687         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
3688         standard. Remove #ifdef. Remove memleak.
3689         (text_stencil): use text_dir to decide how to composite items.
3690         (text_stencil): determine uniform text direction for the entire
3691         string.
3692
3693         * scripts/lilypond-book.py (output_name): remove
3694         latex_filter_cmd. Non-portable to non-Unix systems. 
3695         (get_latex_textwidth): use File.write and os.unlink() instead.
3696
3697         * THANKS: add Vicente & Trevor.
3698
3699         * lily/grob.cc (discretionary_processing): look up origin for
3700         programming_error too. 
3701
3702         * input/regression/tie-broken.ly: new file.
3703
3704         * lily/tie-column.cc (set_chord_outlines): set outline for line
3705         break case too.
3706         
3707 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3708
3709         * lily/pango-font.cc (text_stencil): don't translate glyphs in
3710         unscaled transform, just translate stencils.
3711
3712         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
3713         MIDI.
3714
3715         * scm/define-markup-commands.scm (wordwrap-string): use
3716         text-direction
3717         (wordwrap-stencils): idem.
3718         (line): idem.
3719         (fill-line): idem.
3720         (wordwrap-stencils): translate last line to right for
3721         text-direction = LEFT.
3722
3723         * scm/define-grob-properties.scm (all-user-grob-properties): add
3724         text-direction.
3725
3726 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3727
3728         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
3729         when copying a Lily_parser object.
3730
3731 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3732
3733         * scm/define-markup-commands.scm (null): add null markup.
3734
3735 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3736
3737         * lily/item.cc: Add documentation of center-invisible
3738
3739 2005-08-24  Graham Percival  <gpermus@gmail.com>
3740
3741         * Documentation/user/advanced-notation.itely: add info about
3742         raising text.
3743
3744         * Documentation/user/programming-interface.itely: fix example
3745         involving raised text.
3746
3747 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3748
3749         * lily/beam.cc (print): fix X start/end points of isolated
3750         beamlets.
3751
3752         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
3753
3754         * lily/multi-measure-rest.cc (set_text_rods): new function.
3755
3756         * lily/vertical-align-engraver.cc (process_music): call
3757         Align_interface::set_axis(). This forces #'elements to be ordered,
3758         preventing random vertical reordering of staves.
3759
3760         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
3761         add avoid-slur property. 
3762
3763         * Documentation/user/basic-notation.itely (Measure repeats): add
3764         countPercentRepeats example.
3765
3766         * Documentation/user/advanced-notation.itely (Other text markup
3767         issues): remove remark about normal-font.  We have \normal-text
3768
3769         * input/regression/tie-chord.ly: add note about remaining bugs.
3770
3771         * lily/tie.cc (print): try Tie_column::set_directions () if
3772         control-points not yet defined.
3773
3774 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3775
3776         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
3777         extent. This fixes braces falling out of the EPS bbox.
3778
3779         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
3780         exactly to bbox.
3781
3782 2005-08-23  Graham Percival  <gpermus@gmail.com>
3783
3784         * {various} : change #up->#UP and #down->#DOWN.
3785
3786         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
3787
3788         * Documentation/user/advanced-notation.itely: clarify
3789         what objects handles text on a multimeasure rest.
3790
3791 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3792
3793         * VERSION (PATCH_LEVEL): release 2.7.7
3794
3795 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3796
3797         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
3798
3799         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
3800
3801         * input/regression/*.ly: formatting clean-up. Default layout
3802         before music expression.
3803
3804         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
3805         romanze28-2 example.
3806
3807         * scm/ps-to-png.scm: remove dir-re function.
3808         (make-ps-images): generate page names, instead of globbing them.
3809         This brings down LilyPond memory usage for make web by a factor
3810         10. (backportme?) 
3811
3812         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
3813         don't use glob. With 3000 files, globbing
3814         Documentation/user/out-www/ can take too much time. (backportme?)
3815         
3816         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
3817
3818         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
3819
3820         * input/regression/tie-manual.ly: new file
3821
3822         * input/regression/tie-chord.ly: update.
3823
3824         * flower/include/interval.hh (struct Interval_t): 
3825
3826         * lily/tie.cc (distance): new function 
3827         (height): new function.
3828         (init): new function
3829         (Tie_details): new struct.
3830
3831         * lily/skyline.cc (skyline_height): new function.
3832
3833         * lily/tie-column.cc (set_chord_outlines): new function.
3834         (new_directions): read tie-configuration
3835
3836         * lily/skyline.cc: fix ASCII art.
3837         
3838 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3839
3840         * python/convertrules.py (string_or_scheme): Fix spelling error
3841
3842 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3843         
3844         * lily/tie-column.cc (set_directions): set directions only once.
3845         (add_configuration): new function.
3846
3847         * lily/tie.cc (set_control_points): new function
3848
3849         * lily/tie-column.cc (new_directions): new function.
3850
3851         * ly/music-functions-init.ly: set 'pitch property
3852         iso. trill-pitch. This makes \relative work with \pitchedTrill
3853
3854         * lily/tie.cc (get_configuration): new function. Don't generate
3855         control points, rather, generate configuration.
3856         remove head-pair property.
3857
3858         * lily/include/tie.hh (struct Tie_configuration): new struct.
3859
3860 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
3861
3862         * Documentation/topdocs/NEWS.tely: clarify.
3863
3864 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3865
3866         * lily/tie.cc: remove minimum-length
3867
3868         * scm/define-grob-properties.scm (all-user-grob-properties):
3869         remove staffline-clearance, y-offset 
3870
3871         * input/regression/tie-dots.ly (Module): remove.
3872
3873         * lily/tie.cc (get_control_points): rewrite. Put short ties in
3874         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
3875
3876         * input/regression/tie-single.ly: new file.
3877
3878 2005-08-21  Graham Percival  <gpermus@gmail.com>
3879
3880         * ly/bagpipe.ly: fix compile problem.
3881
3882 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3883
3884         * lily/midi-item.cc (name): new method.
3885
3886         * lily/staff-performer.cc (acknowledge_audio_element): use
3887         signature of baseclass.
3888
3889         * lily/engraver-group.cc (do_announces): move recursion call out
3890         of while loop. 
3891
3892         * lily/drum-note-performer.cc (class Drum_note_performer): use
3893         process_music everywhere.
3894
3895         * ly/performer-init.ly: add default children everywhere.
3896
3897         * lily/paper-book.cc (output): call paper-book-write-midis
3898         directly: always write MIDI, even if no \layout {} block. 
3899
3900 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3901
3902         * VERSION (PACKAGE_NAME): release 2.7.6
3903
3904         * lily/percent-repeat-engraver.cc (try_music): don't print warning
3905         about not being able to handle repeat.
3906
3907 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3908
3909         * Documentation/user/examples.itely (Piano templates):
3910         * lily/include/performer-group.hh: Remove last traces of
3911         Performer_group_performer.  Fixes make web.
3912
3913 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3914
3915         * Documentation/user/examples.itely (Piano templates): change
3916         Engraver_group_engraver -> Engraver_group
3917
3918         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
3919         scm_stand_in_procs is not weak_any.
3920
3921         * lily/volta-bracket.cc (print): don't use strcmp().
3922
3923         * lily/volta-engraver.cc (process_music): use
3924         Text_interface::is_markup() for setting the 'text property of the
3925         volta bracket.
3926
3927         * input/mutopia/claop.py (accents): update syntax to 2.6
3928
3929         * scm/define-context-properties.scm
3930         (all-user-translation-properties): add countPercentRepeats.
3931
3932         * Documentation/user/basic-notation.itely (Measure repeats): add
3933         isolated percent example.
3934
3935 2005-08-18  Graham Percival  <gpermus@gmail.com>
3936
3937         * input/ {various}: change direction #1, #-1 to
3938         #up/#down or \fooUp, \fooDown.
3939
3940         * Documentation/user/music-glossary.tely: #-1 to #down.
3941
3942         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
3943         to #up, #-1 to #down.
3944
3945 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3946
3947         * lily/include/engraver-group.hh: rename.
3948
3949         * lily/include/performer-group.hh: rename.
3950
3951 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3952
3953         * input/test/script-abbreviations.ly: Removed some old LaTeX
3954         left overs.
3955
3956 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3957
3958         * python/convertrules.py (conv): inside-slur -> avoid-slur.
3959         Remove functions.  Remove if 1: constructs, reindent.
3960
3961         * scripts/convert-ly.py (add_version): Add functions from
3962         convertrules.py
3963
3964         * scm/script.scm (default-script-alist):
3965         s/priority/script-priority.  Fixes script stacking.  Backportme.
3966         (Fermata): Very low priority.
3967
3968 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3969
3970         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
3971
3972         * input/regression/slur-script.ly: remove padding tweaks. Add
3973         comment strings.
3974
3975         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
3976         time sigs and related stuff.
3977
3978         * scm/define-grob-properties.scm (all-user-grob-properties): add
3979         @code{} tags to property description.
3980
3981         * lily/include/line-group-group-engraver.hh (Module): remove file.
3982
3983         * python/convertrules.py (conv): add rule for
3984         Engraver_group_engraver -> Engraver_group.
3985
3986         * lily/include/performer-group-performer.hh: analogous.
3987
3988         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
3989
3990         * lily/context-def.cc (instantiate): check for
3991         Engraver_group_engraver and Performer_group_performer not
3992         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
3993  
3994 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3995
3996         * input/les-nereides.ly: Remove three fingering tweaks, update
3997         remaining one.
3998
3999         * input/regression/slur-script-inside.ly: Update, fix doc.
4000
4001         * scm/script.scm: Update to avoid-slur.
4002
4003         * scm/define-grob-properties.scm (avoid-slur): New property.
4004
4005         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4006         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
4007         outside_slur_callback if avoid-slur != #'inside.
4008
4009         * scm/define-grobs.scm (Fingering, Textscript): No
4010         inside-slur/outside-slur preference.
4011         (DynamicLineSpanner): Always outside slur.
4012
4013         * input/regression/slur-script.ly: More tests.
4014
4015 2005-08-17  Graham Percival  <gpermus@gmail.com>
4016
4017         * Documentation/user/lilypond-book: fix notime entry.
4018
4019         * Documentation/user/advanced-notation.itely: add info on
4020         getting an I rehearsal mark.
4021
4022         * Documentation/user/putting.itely: reinstate "I", re-enforce
4023         the fact that \override numbers are the result of
4024         experimentation and personal taste.
4025
4026         * Documentation/user/invoking.itely: update convert-ly bugs.
4027
4028 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4029
4030         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
4031         to #t.
4032
4033         * lily/timing-translator.cc (initialize): don't initialize timing.
4034
4035         * input/regression/stem-spacing.ly (Module): remove file.
4036
4037         * input/regression/spacing-stick-out.ly: specify Score context for
4038         \override
4039
4040         * input/regression/clefs.ly: remove spurious {}s 
4041
4042 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
4043
4044         * Documentation/topdocs/NEWS.tely,
4045         input/regression/repeat-percent-count.ly: clarify a bit.
4046
4047 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4048
4049         * input/no-notation/display-lily-tests.ly: delete
4050         display-lily-init call.
4051
4052         * ly/music-functions-init.ly (displayLilyMusic): move
4053         display-lily-init call at top level, so that the user should not
4054         have to call it.
4055
4056         * scm/define-music-display-methods.scm (note-name->lily-string):
4057         retrieve note names directly from pitchnames using new function `rassoc'.
4058         (display-lily-init): note names list construction removed.
4059
4060 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4061
4062         * THANKS: spello.
4063
4064         * lily/lily-parser.cc (get_header): copy module, instead of
4065         returning it.
4066
4067         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
4068         counters.
4069
4070         * Documentation/user/basic-notation.itely (Measure repeats): add
4071         links to Counter grobs.
4072
4073         * scm/define-grobs.scm (all-grob-descriptions): add
4074         DoublePercentRepeatCounter
4075         (all-grob-descriptions): add PercentRepeatCounter
4076
4077         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
4078         also create counter grobs.
4079
4080         * lily/separation-item.cc (extremal_break_aligned_grob): don't
4081         return grob without space-alist.
4082
4083         * input/proportional.ly: tune staff-padding.
4084
4085         * input/regression/repeat-percent-count.ly: new file. 
4086
4087 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4088
4089         * input/no-notation/display-lily-tests.ly: moved from
4090         input/regression/ to input/no-notation. Be sure to call
4091         `display-lily-init' before trying to use the display function.
4092
4093 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4094
4095         * scripts/lilypond-book.py (option_definitions): Don't localize
4096         the empty string. Fixes bug when --psfonts was used with
4097         non-English locale.
4098
4099 2005-08-15  Graham Percival  <gpermus@gmail.com>
4100
4101         * lily/tuplet-bracket.cc: simple build fix.
4102
4103         * Documentation/user/putting.itely: use "we" instead of "I".
4104
4105         * Documentation/user/basic-notation.itely: cautionary accidentals
4106         work with naturals, too.
4107
4108 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4109
4110         * lily/tuplet-bracket.cc (calc_position_and_height): add
4111         staff-padding support.
4112
4113         * input/proportional.ly: set staff-padding.
4114         
4115         * VERSION (PATCH_LEVEL): release 2.7.5
4116
4117         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
4118         fixes. Remove tweaks.
4119
4120         * input/regression/tuplet-slope.ly: add a test case.
4121
4122         * lily/tuplet-bracket.cc (calc_position_and_height): revert
4123         erroneous fix. Add spanner bounds to offset array with relative X
4124         positions.
4125
4126         * ly/engraver-init.ly: add Rest_engraver only once.
4127
4128         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
4129         (*parser*) lookup if (*parser*) != #f.
4130
4131 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4132
4133         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4134         Cut-and paste update.
4135
4136         * input/regression/slur-script.ly: Add example of reverting
4137         inside-slur for fingering.
4138
4139         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
4140         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
4141
4142         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
4143         outside_slur_callback if inside-slur == #f (as opposed to unset).
4144
4145 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4146
4147         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
4148         encoding files are already removed.
4149
4150 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4151
4152         * Documentation/user/advanced-notation.itely (Instrument names):
4153         Document a workaround for instrument names that collide with
4154         system start braces/brackets.
4155
4156 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4157
4158         * lily/rest-collision.cc (do_shift): spello.
4159
4160         * input/proportional.ly: use #'used property. Set break-overshoot
4161         property.
4162
4163         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
4164
4165         * lily/paper-column.cc: add #'used property
4166
4167         * lily/mark-engraver.cc (stop_translation_timestep): set grob
4168         array for staves found.
4169
4170         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
4171         array for stavesFound.
4172
4173         * lily/staff-spacing.cc (next_note_correction): add fixed and
4174         space to calling convention. This fixes spacing of accidentals
4175         after barlines.
4176
4177         * input/regression/spacing-accidental-stretch.ly: add barline -
4178         accidental case.
4179
4180         * scm/framework-ps.scm (page-header): add version number to
4181         creator
4182         (eps-header): idem.
4183
4184         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
4185         
4186 2005-08-13  Graham Percival  <gpermus@gmail.com>
4187
4188         * Documentation/user/global.itely: add "fit as much as
4189         possible onto this page" example (Vertical spacing).
4190
4191 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4192
4193         * *: Nitpick run.
4194
4195         * buildscripts/fixcc.py: Fixes.
4196
4197 2005-08-12  Graham Percival  <gpermus@gmail.com>
4198
4199         * Documentation/user/advanced-notation.itely: add markup
4200         example to Text spanners.
4201
4202 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4203
4204         * Documentation/user/basic-notation.itely (Ties): Add example of
4205         tying a tremolo to a chord. Thanks to Steve Doonan. 
4206
4207         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
4208         properties and move tieMelismaBusy to the list of written
4209         properties. 
4210
4211 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
4212
4213         * po/TODO: suggest to use a dedicated tool like kbabel.
4214
4215         * po/fi.po: update using kbabel.
4216
4217 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4218
4219         * *: Remove obsolete files.  Nitpick run.
4220
4221         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
4222
4223 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4224
4225         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
4226         too.
4227
4228         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
4229
4230         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
4231         whitespace as symbol separator.
4232
4233         * lily/side-position-interface.cc: Add slur-padding.
4234
4235         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
4236         quite a large fix, and it never worked in a stable release; so not
4237         really a regression.
4238
4239         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
4240         Update cut and paste code from Slur_engraver.
4241
4242         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
4243         Add.
4244
4245         * scm/define-grobs.scm (DynamicLineSpanner): Add
4246         dynamic-line-spanner-interface.
4247         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
4248
4249 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4250
4251         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
4252         to_boolean () so that non-set 'inside-slur means false.
4253
4254         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
4255         slur has control-points.  Skip script without direction.  Always
4256         do_shift if script inside slur, even if slur not contained in
4257         script y-extent.  Increment k in loop.
4258
4259 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4260
4261         * scm/define-markup-commands.scm: Improved regexp to search for
4262         EPS bounding boxes and corrected call to ly:warning.
4263
4264 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4265
4266         * Documentation/user/programming-interface.itely (Displaying music
4267         expressions): doc for \displayLilyMusic. Also some precisions in
4268         "Markup construction in Scheme"
4269
4270 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4271
4272         * scm/define-markup-commands.scm (normal-text): Added 2 new
4273         markup commands, \normal-text and \medium (the latter thanks to
4274         Bruce Fairchild). 
4275
4276 2005-08-08  Graham Percival  <gpermus@gmail.com>
4277
4278         * Documentation/user/programming-interface.itely: fix @{ @}.
4279
4280         * scm/define-markup-commands.scm: add linewidth info to
4281         \justify and \wordwrap, add "upright is the opposite of italic".
4282
4283         * Documentation/user/advanced-notation.itely: shaped->shape,
4284         add (cons (markup "foo")) type of example to text markup,
4285         reword multi-measure rests section.
4286
4287         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
4288         comment.  No actual code was touched.
4289
4290         * Documentation/user/invoking.itely: add more info about
4291         \include.  Thanks, Bruce!
4292
4293         * THANKS: add Bruce Fairchild, alphabetise.
4294
4295         * Documentation/user/global.itely: document \score{\header{}}
4296         behavior.
4297
4298         * Documentation/user/basic-notation.itely: reword multi-measure
4299         rest discussion in Rests.
4300
4301 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4302
4303         * Documentation/user/programming-interface.itely (Markup
4304         construction in Scheme): Corrected example and tried to clarify
4305         the implicit \line in the table.
4306
4307 2005-08-07  Graham Percival  <gpermus@gmail.com>
4308
4309         * Documentation/user/instrument-notation.itely: moved
4310         some bagpipe info back into the bagpipe section.  Somehow
4311         it ended up in the "other vocal issues" section?!  :o_O
4312
4313 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4314
4315         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
4316         directories, not paths).
4317
4318 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4319
4320         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
4321         plain emmentaler/aybabtu.  Backportme.
4322
4323         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
4324         missing dir correction.
4325
4326 2005-08-05  Graham Percival  <gperlist@shaw.ca>
4327
4328         * scm/define-markup-commands: fix reversed justify/wordwrap
4329         doc strings.
4330
4331 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
4332
4333         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
4334         lily/gregorian-ligature-engaver.cc,
4335         lily/include/ligature-engraver.hh,
4336         lily/include/coherent-ligature-engraver.hh,
4337         lily/include/gregorian-ligature-engraver.hh: make these classes
4338         truely abstract.  This should fix some internal oddities such as
4339         duplicate as well as dead translator/property declarations, and
4340         also some dead code.
4341
4342         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
4343         bugfix: avoid message "junking empty ligature" on ligature
4344         brackets by collecting dummy grobs.
4345
4346 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4347
4348         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
4349
4350         * input/proportional.ly (staffKind): bugfix.
4351         (staffKind): updates by Trevor Baca.
4352
4353         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
4354         default layout. 
4355
4356         * lily/tuplet-bracket.cc (print): check whether edge-text is a
4357         pair.
4358
4359         * lily/beam.cc (rest_collision_callback): call position_beam() if
4360         necessary.
4361
4362         * VERSION: release 2.7.4
4363
4364         * input/regression/spacing-uniform-stretching.ly: new file.
4365
4366         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
4367
4368         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
4369         contributor.
4370
4371         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
4372
4373         * input/proportional.ly: new file.
4374
4375         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
4376         columns is empty
4377
4378         * lily/tuplet-engraver.cc (finalize): new function. Reset right
4379         bounds to currentCommandColumn for the last step.
4380         (start_translation_timestep): if tupletFullLength is set, set
4381         bound to Paper Column
4382
4383         * input/regression/tuplet-full-length.ly (indent): new file.
4384
4385         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
4386         clique of loose columns, eg. a set of grace notes in strict
4387         notespacing.
4388
4389         * input/regression/spacing-strict-spacing-grace.ly: new file.
4390
4391         * lily/key-signature-interface.cc: change property name to
4392         alteration-alist
4393
4394         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
4395         keyAccidentalOrder
4396
4397         * python/convertrules.py (conv): keyAccidentalOrder ->
4398         keyAlterationOrder
4399
4400         * lily/key-engraver.cc (create_key): always print a cancellation
4401         for going to C-major/A-minor, regardless of printKeyCancellation.
4402         (create_key): remove typecheck for visibility. This fixes key
4403         signature not being printed.
4404
4405         * lily/spacing-determine-loose-columns.cc: new file.
4406
4407         * input/regression/spacing-strict-notespacing.ly: new file.
4408
4409         * lily/spacing-spanner.cc (generate_springs): rename from
4410         do_measure. 
4411         (generate_pair_spacing): new function.
4412         (init, generate_pair_spacing): set between-cols for floating
4413         nonmusical columns.
4414
4415         * lily/spaceable-grob.cc (get_spring): new function. 
4416
4417         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
4418         relative to the right edge of the prefatory matter.
4419
4420         * lily/beam.cc (print): read break-overshoot to determine where to
4421         stop/start broken beams.
4422
4423         * input/regression/spanner-break-overshoot.ly: new file.
4424
4425 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4426
4427         * ly/bagpipe.ly: updated.
4428
4429         * Documentat/user/instrument.itely: un-comment out bagpipe example.
4430
4431 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4432
4433         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
4434         support: now (de)crescs avoid slurs as well.
4435
4436         * Documentation/user/instrument-notation.itely (Bagpipe example):
4437         comment out non-functioning bagpipe example.
4438         (Bagpipe definitions): idem.
4439
4440         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
4441         (Top): add proportionalNotationDuration example.
4442
4443         * input/regression/spacing-proportional.ly: new file.
4444
4445         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
4446         synched to a beam.
4447
4448         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
4449         fixes beams with a single stem (eg. beams across linebreaks.)
4450
4451         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
4452
4453         * flower/rational.cc (operator +): prevent overflow. This fixes
4454         heavily nested tuplets.
4455
4456         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
4457         have to protect even those unlikely to be corrupted data members.  
4458
4459 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4460
4461         * ly/bagpipe.ly: new file.
4462
4463         * THANKS: added Sven Axelsson.
4464
4465 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4466
4467         * lily/spacing-engraver.cc (stop_translation_timestep): directly
4468         copy proportionalNotationDuration into currentMusicalColumn if
4469         set.
4470
4471         * lily/spacing-spanner.cc (musical_column_spacing): if
4472         uniform-stretching set, fixed space is 0.0
4473
4474         * input/regression/spacing-multi-tuplet.ly: show
4475         uniform-stretching property.
4476
4477         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
4478
4479         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
4480         (struct Spacing_options): new struct.
4481
4482         * lily/spacing-basic.cc: new file.
4483
4484         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
4485         delta_t doesn't have to be smaller than shortest_playing_len
4486
4487 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4488
4489         * input/regression/markup-arrows.ly:  new file.
4490
4491         * lily/tuplet-bracket.cc: document new behavior.
4492
4493         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
4494         with line breaks.
4495
4496         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
4497
4498         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
4499         default 
4500
4501         * lily/tuplet-bracket.cc: add edge-text property.
4502         add break-overshoot.
4503         (print): read break-overshoot.
4504         (print): read edge-text, add stencils.
4505
4506         * mf/feta-arrow.mf: new file.
4507
4508         * mf/feta-generic.mf: add feta-arrow.
4509
4510 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4511
4512         * Documentation/user/lilypond-book.itely (An example of a
4513         musicological document): Added flag -o to dvips for people who use
4514         the default setting in teTeX where output is sent to the printer. 
4515
4516         * Documentation/user/global.itely (Vertical spacing): Added
4517         reference to the Axis_group_engraver which documents the *Extent
4518         properties.
4519
4520 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4521
4522         * Documentation/user/basic-notation.itely (Tuplets): add note
4523         about nested tuplets. Remove BUG. 
4524
4525         * input/regression/tuplet-nest.ly: update: remove manual hack. 
4526
4527         * lily/tuplet-bracket.cc (print): use robust_scm2drul
4528         (print): manually call print() for subtuplets.
4529         (calc_position_and_height): add subtuplets to the
4530         support. Vertically shift outer tuplet 
4531
4532         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
4533         remove-first for Lyrics, ChordNames and FiguredBass
4534
4535         * scm/define-grob-properties.scm (all-internal-grob-properties):
4536         use ly:grob-array? iso. grob-list?
4537         (all-internal-grob-properties): add tuplets grob-array.
4538
4539         * lily/tuplet-bracket.cc (add_tuplet_bracket):
4540         new function
4541
4542 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4543
4544         * input/test/time-signature-staff.ly: new file.
4545
4546         * ly/declarations-init.ly (center): escape to Scheme. Fixes
4547         spurious #<Music FingerEvent> errors. Backportme.
4548
4549 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4550
4551         * Documentation/user/programming-interface.itely (Markup
4552         construction in Scheme): Corrected markup syntax in the
4553         translation table.
4554
4555 2005-08-03  Graham Percival  <gperlist@shaw.ca>
4556
4557         * Documentation/user/instrument-notation.itely: small update
4558         to bagpipe notation docs; thanks Sven!
4559
4560         * Documentation/user/basic-notation.itely: add link about trills.
4561
4562 2005-08-02  Graham Percival  <gperlist@shaw.ca>
4563
4564         * Documentation/user/music-glossary: remove accidentally committed
4565         fink patch.
4566
4567 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
4568
4569         * lily/lily-parser.cc (get_header): new function. Enable multiple
4570         \header definitions.
4571
4572         * lily/parser.yy (lilypond_header_body): use get_header.
4573
4574         * ly/init.ly:
4575         * scm/lily-library.scm (print-score-with-defaults): renamed
4576         $globalheader to $defaultheader
4577         
4578         * Documentation/user/global.itely (Creating titles): added short
4579         explanation that multiple headers are useable.
4580
4581
4582 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4583
4584         * lily/module-scheme.cc (LY_DEFINE): new file. 
4585
4586         * Documentation/user/advanced-notation.itely (Font selection): add
4587         doco for make-pango-font-tree.
4588
4589 2005-07-31  Graham Percival  <gperlist@shaw.ca>
4590
4591         * Documentation/user/music-glossary: more languages
4592         for tenuto.
4593
4594         * Docuemntation/user/instrument-notation.itely: minor
4595         update for bagpipe example.
4596
4597 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4598
4599         * input/regression/+.ly (TODO): add some text.
4600
4601 2005-07-28  Graham Percival  <gperlist@shaw.ca>
4602
4603         * Documentation/user/invoking.itely: \score begins with music.
4604
4605         * Documentation/user/ basic-notation.itely,
4606         instrument-notation.itely: minor changes.
4607
4608         * Documentation/user/music-glossary.itely: began tenuto entry.
4609
4610 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4611
4612         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
4613
4614         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
4615
4616 2005-07-27  Graham Percival  <gperlist@shaw.ca>
4617
4618         * Documentation/user/examples.itely: remove bagpipe template.
4619
4620         * Documentation/user/instrument-notation.itely: add bagpipe
4621         section, maybe fix quotes in lyrics.  I hate text encoding.
4622         Clarify chord durations, more bagpipe stuff.
4623
4624 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4625  
4626         * lily/accidental-engraver.cc: formatting fixes.
4627
4628         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
4629         grob-array.
4630
4631         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
4632
4633         * lily/note-column.cc (arpeggio): new function.
4634
4635         * lily/note-spacing.cc (get_spacing): also take arpeggio into
4636         account for spacing.
4637
4638 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4639
4640         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
4641         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
4642         mingw build.
4643         
4644 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4645
4646         * scm/lily.scm (lilypond-all): clear anonymous modules after
4647         processing files.
4648
4649 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4650
4651         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
4652         SCM_I_CONSP
4653
4654         * VERSION: 2.7.3 released
4655
4656         * Documentation/user/invoking.itely (Invoking lilypond): add
4657         LILYPOND_GC_YIELD documentation.
4658
4659         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
4660         scm_from_real / scm_make_real.
4661
4662         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
4663         higher. This increases memory footprint, but provides overall
4664         speedup of 15 to 20%. 
4665
4666         * lily/include/translator.hh (class Translator): remove
4667         PRECOMPUTED_VIRTUAL everywhere.
4668
4669         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
4670
4671         * lily/context.cc (now_mom): non-recursive now_mom() 
4672
4673         * lily/include/profile.hh: new file.
4674
4675         * lily/profile.cc: new file.
4676
4677         * lily/grob.cc (Grob::Grob): look properties up directly.
4678
4679         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
4680         lookups.
4681
4682         * lily/include/box.hh (class Box): smob Box type.
4683
4684         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
4685
4686         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
4687         protect() and unprotect(). Use throughout.
4688
4689 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4690
4691         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
4692
4693         * scm/define-music-display-methods.scm (markup->lily-string):
4694         markup elements can also be strings (without simple-markup
4695         appended)
4696
4697 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4698
4699         * lily/context.cc (where_defined): also assign value in
4700         where_defined().
4701
4702         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
4703         (curve_coordinate): new function
4704
4705         * lily/simple-spacer.cc (add_columns): only add rods between
4706         column i and begin/end if keep-inside-line is set (this repleces
4707         allow-outside-line as default)
4708
4709 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4710
4711         * lily/tuplet-engraver.cc (start_translation_timestep): only read
4712         tupletSpannerDuration if applicable.
4713
4714         * lily/font-size-engraver.cc (process_music): read fontSize only
4715         once per timestep.
4716
4717         * lily/engraver*cc: use throughout.
4718         
4719         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
4720
4721         * lily/translator.cc (add_acknowledger): new file. Directly jump
4722         into an Engraver::acknowledge_xxx () method based on a grobs
4723         interface-list.
4724
4725         * lily/include/translator-dispatch-list.hh (class
4726         Engraver_dispatch_list): new struct, new file.
4727
4728         * scm/define-context-properties.scm
4729         (all-internal-translation-properties): remove acceptHashTable,
4730         acknowledgeHashTable
4731
4732         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
4733
4734         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
4735         change acknowledgeHashTable to C++ member. 
4736
4737         * lily/rest-collision.cc (do_shift): use extract_grob_set().
4738
4739 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4740
4741         * scm/display-lily.scm: new file. Define a `display-lily-music'
4742         function, that displays the music expression given as an argument,
4743         using LilyPond notation.
4744
4745         * scm/define-music-display-methods.scm: new file. Implementation
4746         of display methods for each music type.
4747
4748         * ly/music-functions-init.ly (displayLilyMusic): new function for
4749         displaying music with LilyPond notation.
4750
4751         * input/regression/display-lily-tests.ly: new regression test file
4752         for `display-lily-music'.
4753
4754         * scm/markup.scm: remove obsolete debugging code (for printing
4755         markups with LilyPond notation).
4756
4757         * scm/define-music-types.scm (music-name-to-property-table):
4758         * scm/clef.scm (supported-clefs): export, in order to be accessible
4759         from the (scm display-lily) module.
4760
4761 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4762
4763         * Documentation/topdocs/NEWS.tely (Top): Typo.
4764
4765 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
4766
4767         * Documentation/index.html.in, Documentation/texinfo.css,
4768           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4769           Documentation/bibliography/index.html.in,
4770           Documentation/bibliography/html-long.bst: revert css-width patch,
4771           it does not work with IE6.
4772
4773 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4774
4775         * Documentation/texinfo.css: revert 760px hack. 
4776
4777         * VERSION: release 2.7.2
4778
4779         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
4780
4781         * Documentation/user/basic-notation.itely (Barnumber check): add
4782         section.
4783
4784         * scm/music-functions.scm (skip-to-last): new function. Show only
4785         last showLastLength part of the \score.
4786
4787         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
4788
4789         * python/convertrules.py (conv): add ly:x-moment rule
4790
4791         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
4792
4793         * Documentation/topdocs/NEWS.tely (Top): add new feature.
4794
4795         * Documentation/user/instrument-notation.itely (Flexibility in
4796         alignment): options in subsections.
4797
4798         * lily/lyric-engraver.cc (process_music): don't typeset text for _
4799         syllable text. Instead, assume that the previous lyric text is a
4800         melismated text.
4801
4802         * Documentation/index.html.in: revert 800x600 change.
4803
4804 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4805
4806         * lily/main.cc (main): Remove invalid handle kludge.
4807
4808         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
4809         (lambda): add gui define.
4810
4811 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4812
4813         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
4814
4815         * Documentation/user/instrument-notation.itely (Musica ficta
4816         accidentals): add section Musica ficta accidentals
4817
4818         * lily/accidental-engraver.cc (make_suggested_accidental): new
4819         function.
4820         (make_standard_accidental): move into new function.
4821         (create_accidental): new function.
4822
4823         * scm/define-grobs.scm (all-grob-descriptions): new Grob
4824         AccidentalSuggestion
4825
4826         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
4827
4828         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
4829         undefined.
4830
4831         * Documentation/user/global.itely (Page formatting): document
4832         horizontalshift.
4833
4834         * scm/page-layout.scm (default-page-music-height):
4835         horizontalshift: new variable, shift all systems by
4836         horizontalshift to the right, to make space for instrument names.
4837
4838         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
4839
4840         * lily/input-scheme.cc (LY_DEFINE): take format commands.
4841
4842 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4843
4844         * lily/note-column.cc (dir): idem.
4845
4846         * lily/spacing-spanner.cc (Module): idem.
4847
4848         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
4849
4850         * lily/include/paper-column.hh (class Paper_column): add
4851         non-static get_rank() member.
4852
4853         * VERSION: release 2.7.1
4854         
4855         * scm/framework-null.scm: new file, used for benchmarking.
4856
4857 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
4858
4859         * Documentation/topdocs/INSTALL.texi, configure.in: fix
4860         version dependencies for fontforge and gs.
4861
4862         * Documentation/index.html.in, Documentation/texinfo.css,
4863         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4864         Documentation/bibliography/index.html.in, 
4865         Documentation/bibliography/html-long.bst: optimize width of
4866         html for a 800x600 screen (width:760), increases printability
4867         when 'fit to page' is not set and readability in wide screens.
4868
4869         * stepmake/bin/add-html-footer.py: add missing </p>.
4870
4871 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4872
4873         * scm/define-markup-commands.scm (beam): use polygon in beam
4874         command.
4875
4876         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
4877         all acknowledged grobs, and do potentially expensive merge and
4878         write in one go.
4879
4880         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
4881
4882         * configure.in (reloc_b): add --enable-static-gxx to statically
4883         link to libstdc++
4884
4885         * lily/GNUmakefile (static-gxx-libs): new target
4886         static-gxx-libs. Create symlink to libstdc++.a
4887
4888         * lily/new-lyric-combine-music-iterator.cc: rename to
4889         Lyric_combine_music_iterator
4890
4891         * lily/lyric-combine-music-iterator.cc
4892         (Old_lyric_combine_music_iterator): rename to
4893         Old_lyric_combine_music_iterator
4894
4895         * lily/*-engraver.cc (various): remove double use of
4896         PRECOMPUTED_VIRTUAL function: only use
4897         start_translation_timestep() and stop_translation_timestep(), not
4898         both.
4899
4900         * lily/break-substitution.cc (fast_substitute_grob_array): do
4901         fast_substitute_grob_array for all unordered grob_arrays.
4902         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
4903         (substitute_grob_array): optimize.
4904
4905         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
4906
4907         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
4908
4909         * lily/parser.yy: revert $globalheader patch.
4910         
4911         * lily/include/translator.icc
4912         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
4913         Translator methods, without _static helper.
4914  
4915         * lily/grob-smob.cc (derived_mark): rename from
4916         do_derived_mark(). Return void.
4917
4918         * scm/define-context-properties.scm
4919         (all-internal-translation-properties): remove tweakCount/tweakRank.
4920
4921         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
4922         predefined break-visibilities.
4923
4924         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
4925         booleans for break-visibility.
4926
4927         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
4928
4929         * python/convertrules.py (conv): rule for Timing_translator. 
4930
4931         * lily/include/translator.icc: new file. 
4932
4933         * lily/paper-column-engraver.cc (process_music): new
4934         file. Separate Paper_column factory from Score_engraver.
4935
4936         * lily/vertically-spaced-context-engraver.cc: administer
4937         spaceable-staves property of System.
4938
4939         * lily/translator-group-ctors.cc: new file.
4940
4941         * lily/context-property.cc (make_grob_from_properties): construct
4942         the right Grob class programmatically, looking at the class entry
4943         for the meta property.
4944
4945         * lily/break-align-engraver.cc (stop_translation_timestep): call
4946         Break_align_interface::add_element() directly.
4947
4948         * lily/context.cc (measure_position): measure_position() is now a
4949         normal function.
4950
4951         * lily/include/translator.hh (class Translator): rename
4952         process_acknowledged_grobs() to process_acknowledged() and move to
4953         Translator.
4954
4955         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
4956         field for each grob description.
4957
4958         * lily/include/translator-group.hh (class Translator_group):
4959         change to base class. Separate class from Translator. This gets
4960         rid of virtual inheritance for Engravers/Performers.
4961
4962         * lily/staff-performer.cc (class Staff_performer): derive
4963         Staff_performer from Performer, not Performer_group_performer 
4964
4965         * Lily/translator-group.cc (precomputed_recurse_over_translators):
4966         new function.
4967         (precompute_method_bindings): new function. Precompute lists of
4968         Translators, so we only call methods (process_music,
4969         start_translation_timestep, etc.) for Translators needing
4970         it. Also: dispose of pointer-to-member-function calls.
4971
4972         * lily/engraver-group-engraver.cc: remove engraver_each,
4973         recurse_down_engravers ()
4974
4975         * lily/note-head.cc (internal_print): only call
4976         glyph-name-procedure if style != default. 
4977
4978 2005-07-16  Graham Percival  <gperlist@shaw.ca>
4979
4980         * ly/titling-init.ly: add printallheaders option.
4981
4982         * Documentation/user/global.itely: document printallheaders.
4983
4984 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4985
4986         * lily/system.cc (do_derived_mark): don't mark from object_alist_
4987         anymore, but do it centrally.  
4988
4989         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4990         hammer hack.
4991
4992         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
4993
4994         * scm/output-lib.scm: remove hammer-print-function.
4995
4996         * lily/include/pointer-group-interface.hh (extract_grob_set): new
4997         macro. Declare a Link_array<Grob> and fill it from a grob.
4998         (extract_item_set): idem for item.
4999
5000         * lily/break-substitution.cc: add header.
5001         (fast_substitute_grob_array): rewrite for Grob_arrays.
5002         (substitute_grob_array): idem.
5003
5004         * lily/group-interface.cc (add_thing): remove file.
5005
5006         * flower/include/parray.hh (class Link_array): slice() is const.
5007
5008         * lily/include/grob-array.hh: new file.
5009
5010         * lily/grob-array.cc (spanner): new file.
5011
5012         * lily/beam-quanting.cc (fill): read details property from beam.
5013
5014         * lily/beam.cc: support details property.
5015
5016         * total speedups below: approx 10%.
5017
5018         * lily/include/beam.hh: new struct, softcode beam quanting parameters
5019
5020         * lily/include/grob.hh (class Grob): add interfaces_ member.
5021
5022         * lily/bezier.cc (init_polynomial_cache): new function: cache
5023         binom(3,j) t^j (1-t)^{3-j}
5024         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
5025
5026         * lily/*.cc: substitution throughout.
5027
5028         * lily/grob-property.cc (internal_get_object): new routine.
5029         (internal_set_object): idem. Store grob refrences in separate
5030         alist. This saves processing time, since properties aren't
5031         break-substituted, and the per grob namespace is smaller, both for
5032         grobs and non-grob properties.
5033
5034         * scm/define-grob-properties.scm (all-internal-grob-properties):
5035         remove center-element.
5036
5037         * lily/grob.cc: remove tweak-count, tweak-rank.
5038
5039 2005-07-15  Graham Percival  <gperlist@shaw.ca>
5040
5041         * Documentation/user/lilypond-book.itely: fixes example.
5042
5043 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5044
5045         * Documentation/user/global.itely (Creating titles):    
5046         * Documentation/user/examples.itely (All headers): change the
5047         place of \header in \score blocks (after music block) to make
5048         examples compile (cf. changes on parser.yy on 2005-07-10)
5049
5050 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5051
5052         * python/convertrules.py: add exc -> ecc rule.
5053
5054         * scripts/convert-ly.py: add location of convertrules.py
5055         in a comment.
5056
5057         * Documentation/user/changing-defaults.itely: fix language.
5058
5059 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5060
5061         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
5062
5063 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5064
5065         * scm/output-socket.scm (grob-bbox): don't use inf? 
5066
5067         * flower/include/rational.hh: add operator bool() 
5068
5069         * scm/define-music-types.scm (music-descriptions): remove
5070         internal-class-name properties.
5071
5072         * lily/include/event.hh: remove file.
5073
5074         * lily/include/music-constructor.hh: remove file.
5075
5076         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
5077         in 'types property.
5078
5079         * lily/music.cc (duration_length_callback): new function.
5080
5081         * lily/event.cc: remove file.
5082
5083         * lily/music-constructor.cc: remove file.
5084
5085         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
5086
5087         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
5088         (get_context_key): idem.
5089
5090         * scm/lily.scm (lambda): new option object-keys (default to #f)
5091
5092         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
5093
5094         * scm/output-gnome.scm: remove beam routine.
5095
5096         * scm/output-ps.scm (scm): idem.
5097
5098         * scm/output-svg.scm: remove beam.
5099
5100         * ps/music-drawing-routines.ps: remove draw_beam.
5101
5102         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
5103
5104         * flower/include/guile-compatibility.hh (scm_from_locale_string):
5105         add scm_from_locale_string compatibility glue. 
5106
5107 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
5108
5109         * scripts/lilypond-book.py: Prevent occuring error when
5110         'lilypond-book --output=foo/ somefile.ly' is executed multiple
5111         times and target file shoud be overwritten.  (Error message said
5112         'input file and output file is same'.)
5113
5114 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5115
5116         * input/regression/slur-extreme.ly,
5117         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
5118         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
5119         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
5120         "excentricity" to "eccentricity".
5121
5122         * Documentation/user/converters.itely: fix URL for Noteedit and
5123         Rosegarden.
5124
5125         * THANKS: added Yoshinobu Ishizaki.
5126
5127 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5128
5129         * scm/define-markup-commands.scm (justify-field): add. 
5130
5131         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
5132
5133 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5134
5135         * lily/lookup.cc (filled_box): express filled_box with
5136         round_filled_box
5137
5138         * scm/midi.scm (paper-book-write-midis): new function. Write all
5139         performances in numbered MIDI files.
5140
5141         * lily/performance-scheme.cc (LY_DEFINE): new file.
5142         (LY_DEFINE): new function ly:performance-write.
5143
5144         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
5145         new function.
5146         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
5147
5148         * scm/framework-*.scm: use port arguments throughout.
5149
5150         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
5151
5152         * lily/paper-outputter.cc (Paper_outputter): take port argument.
5153
5154         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
5155
5156         * scm/framework-texstr.scm (output-framework): 
5157
5158         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
5159
5160         * scm/output-lib.scm (tablature-stem-attachment-function):
5161         tablature stem attachment fix. 
5162
5163 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5164
5165         * lily/bezier.cc: hardcode binomial coefficients of order 3.
5166
5167         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
5168
5169         * scm/define-music-types.scm (music-descriptions): don't use
5170         Music_wrapper type.
5171
5172         * lily/paper-column.cc (print): print moment too.
5173
5174         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
5175         remove compatibility cruft.
5176
5177         * lily/parser.yy (score_body): \score can only begin with Music. 
5178
5179         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
5180         make-score. Take music argument only. Move parser interaction to
5181         Scheme.
5182
5183         * scm/lily-library.scm (scorify-music): new function.
5184
5185         * python/lilylib.py (datadir): remove 2.1 compat kludge.
5186         (datadir): remove resource import.
5187         (print_environment): remove get_bbox()
5188         (cp_to_dir): remove pre 1.5.2 compat glue.
5189
5190 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5191
5192         * lily/include/simple-spacer.hh (Module): idem.
5193
5194         * lily/include/spring.hh (struct Spring): store inverse
5195         strength. This prevents division by zero.
5196
5197         * VERSION: release 2.7.0
5198         
5199         * lily/include/music.hh (class Music): remove Music::duration_log()
5200
5201         * lily/stem-engraver.cc (make_stem): take duration log from event.
5202
5203         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
5204
5205 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5206
5207         * scm/lily.scm (ly:load): load autochange.scm
5208
5209         * Documentation/user/tutorial.itely (Running LilyPond for the
5210         first time): remove reference to DVI/TeX
5211
5212         * scm/define-markup-commands.scm (text): add \text markup command.
5213
5214         * configure.in (reloc_b): bump requirement to Python 2.2.
5215
5216         * lily/include/dots.hh (class Dots): make has_interface() static.
5217
5218         * python/convertrules.py (conv): add rule for ly:grob-default-font
5219
5220         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
5221         alphabetical order.
5222
5223         * input/regression/trill-spanner-pitched.ly: new file.
5224
5225         * lily/font-interface-scheme.cc (LY_DEFINE): function
5226         ly:grob-default-font (changed from get-default-font).
5227
5228         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
5229
5230         * lily/note-head.cc (internal_print): if style is not a symbol,
5231         set style to 'default. 
5232         (internal_print): no style suffix if glyph-name-procedure not
5233         set. Default to quarter head.
5234
5235         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
5236
5237         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
5238
5239         * ly/music-functions-init.ly: \pitchedTrill
5240
5241         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
5242
5243         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
5244
5245         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
5246
5247         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
5248
5249         * po/fr.po: update
5250
5251         * po/de.po: update.
5252
5253 2005-07-06  Graham Percival  <gperlist@shaw.ca>
5254
5255         * Documentation/user/changing-defaults.itely: add link
5256         to grob-iterface.
5257
5258         * Documentation/user/advanced-notation.itely: add material
5259         to Setting automatic beam behaviour.  Thanks, Joe!
5260
5261         * Documentation/user/lilypond.itely: change encoding to utf-8.
5262
5263 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5264
5265         * Documentation/user/advanced-notation.itely (Setting automatic
5266         beam behavior): Correct the documentation of
5267         revert-auto-beam-setting (backportme)
5268
5269 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5270
5271         * lily/ly-module.cc (ly_make_anonymous_module): define
5272         %module-public-interface of module. 
5273
5274         * lily/lily-parser.cc (print_smob): allow printing of parser smob
5275         without lexer.
5276
5277 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5278
5279         * input/regression/fret-diagrams.ly: stretch example.
5280
5281 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5282
5283         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
5284         Fodor).
5285
5286 2005-06-30  Graham Percival  <gperlist@shaw.ca>
5287
5288         * Documentation/topdocs/AUTHORS.texi: update personal web address.
5289
5290         * Documentation/user/examples.itely, lilypond-book.itely:
5291         change \RequirePackage to \usepackage.
5292
5293         * Documentation/user/global.itely: document copyright and tagline.
5294
5295 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5296
5297         * Documentation/user/basic-notation.itely (Transpose): remove link
5298         to nonexistent UntransposableMusic.
5299
5300         * scm/output-svg.scm: remove old definitions.
5301
5302         * scripts/lilypond-book.py (do_file): search for kpsewhich before
5303         invoking.
5304
5305         * python/lilylib.py (search_exe_path): new function.
5306
5307 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5308
5309         * python/lilylib.py (mkdir_p): remove setup_environment()
5310         (backportme)
5311
5312         * buildscripts/mutopia-index.py (headertext): trim text.
5313
5314         * Documentation/topdocs/NEWS.tely (Top): refresh.
5315
5316         * scm/define-markup-commands.scm (wordwrap-string): new function:
5317         split string in paras and words.
5318         (wordwrap-markups): new function.
5319         (wordwrap-stencils): new function. 
5320         (justify): use it.
5321         (wordwrap): use it.
5322         (wordwrap-string): use it
5323         (justify-string): use it.
5324
5325         * scm/lily-library.scm (regexp-split): new function.
5326
5327         * scm/define-markup-commands.scm: remove encoded-simple. 
5328         remove font-markup.
5329         (fontsize): remove old version  of fontsize.
5330         (wordwrap): new markup function. Wrap into paragraphs.
5331
5332         * VERSION: Branch lilypond_2_6
5333         (MINOR_VERSION): go to 2.7.0
5334
5335 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5336
5337         * po/zh_TW.po: update from translation project.
5338
5339 2005-06-28  Graham Percival  <gperlist@shaw.ca>
5340
5341         * scm/midi.scm: compile fix.
5342
5343 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5344
5345         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
5346         patch. Now, the tempfile module is loaded too, not only used.
5347
5348 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
5349
5350         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
5351         0.05 - 1.00 to 0.25 - 1.00
5352
5353         * scm/midi.scm: moved the default-instrument-equalizer procedure
5354         to just under the insturment-equalizer-alist it takes as an
5355         argument.
5356
5357 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5358
5359         * Documentation/user/advanced-notation.itely (Font selection):
5360         remove CMR note.
5361
5362         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
5363
5364 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5365
5366         * THANKS: Add UTF-8 marker.
5367
5368         * Documentation/user/point-and-click.itely (http): Update: use
5369         lilypond-invoke-editor.  Fix: instruct to use user.js.
5370
5371 2005-06-27  Graham Percival  <gperlist@shaw.ca>
5372
5373         * ly/titling-init.ly: implements printpagenumber, increases
5374         space between dedication and title (to avoid collisions with
5375         "g" and "q" in dedication), and nicer logic about copyright
5376         and instrument fields being printed on the first page.
5377         Thanks Vincent!
5378
5379         * Documentation/user/global.itely: document printpagenumber.
5380
5381 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5382
5383         * Documentation/topdocs/NEWS.tely: Update to 2.6.
5384
5385 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5386
5387         * THANKS: update to 2.6
5388
5389         * VERSION: 2.6.0 released.
5390
5391 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5392
5393         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
5394         rule, errorneously removed probably because of misleading comment.
5395
5396 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5397
5398         * python/lilylib.py (datadir): py2exe comments.
5399
5400         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
5401
5402         * configure.in (reloc_b): make fontconfig REQUIRED.
5403
5404 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
5405
5406         * po/fi.po: add latest translations.
5407
5408 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5409
5410         * ChangeLog: recode utf-8
5411
5412         * Documentation/pictures/lilypond.xpm (Module): edited photo as
5413         logo.
5414
5415         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
5416
5417         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
5418
5419         * python/convertrules.py (do_conversion): don't print program_name
5420         from within a module
5421
5422         * configure.in (reloc_b): bump fontforge requirement to 20050624.
5423
5424         * python/convertrules.py (conv): add 2.6.0 dummy rule.
5425
5426 2005-06-23  Graham Percival  <gperlist@shaw.ca>
5427
5428         * Documentation/user/lilypond-book.itely,
5429         Documentation/user/examples.itely: add \RequirePackage{graphics}.
5430
5431         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
5432         fixes baseline-skip.  Thanks Vincent!
5433
5434         * Documentation/user/advanced-notation.itely, global.itely:
5435         moved "Selecting font sizes" to global, since it deals with
5436         notation font size, not text fonts.
5437
5438 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5439
5440         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
5441         to fonts.
5442
5443 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5444
5445         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
5446         workaround since /dev/stdin doesn't work on Cygwin. Using a
5447         temporary file in the current directory since latex doesn't
5448         understand the path name to the default TMP in Cygwin (at least on
5449         win XP).
5450         
5451         * Documentation/user/global.itely (Creating titles): Correct
5452         misprint in example. Thanks to Rob Vlasaty.
5453
5454 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5455
5456         * VERSION (PATCH_LEVEL): release 2.5.32
5457
5458         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
5459         variable in lily module
5460
5461         * scm/framework-ps.scm (output-classic-framework): error message
5462         regarding the classic framework.
5463
5464         * Documentation/user/henle-flat-gray.png (Module): new file.
5465
5466         * Documentation/user/baer-flat-gray.png (Module): new file.
5467
5468         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
5469         whiteout for markups.
5470
5471         * buildscripts/substitute-encoding.py (note_glyph): include _ in
5472         regex too. This fixes change clef appearance in PDF. 
5473
5474         * ttftool/include/*: remove.
5475
5476         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
5477
5478         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
5479
5480         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
5481
5482         * ttftool/*: remove ttftool subdirectory.
5483
5484         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
5485
5486         * lily/ttf.cc (print_header): new file. Convert to type42, using
5487         FreeType to parse the TTF. 
5488
5489         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
5490         and post table may differ. Pass around post_nglyphs as well.
5491
5492 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5493
5494         * ly/music-functions-init.ly (musicMap): new music function
5495         musicMap. 
5496         
5497 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5498
5499         * make/mutopia-rules.make: anti-alias-factor = 2
5500
5501         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
5502         page switch.
5503
5504         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
5505         anti-alias-factor for lilypond-book runs.
5506
5507         * scm/ps-to-png.scm (scale-down-image): new function.
5508         (my-system): new function.
5509         (make-ps-images): blow up GS resolution by anti-alias-factor,
5510         scale down image by anti-alias-factor.  This improves appearance
5511         of bitmaps
5512         (make-ps-images): remove showpage. Fixes spurious empty png at
5513         end.
5514
5515         * scm/framework-ps.scm (write-preamble): downcase filename before
5516         string-matching. Should fix .TTF files (as opposed to ttf files)  
5517
5518         * Documentation/user/tutorial.itely (Running LilyPond for the
5519         first time): separate subsections for windows, macos and unix.  
5520
5521         * Documentation/user/invoking.itely (Updating files with
5522         convert-ly): add MacOS X note.
5523
5524 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5525
5526         * Documentation/user/introduction.itely (Engraving): don't include
5527         file optical-spacing, add directly.
5528
5529         * lily/paper-outputter.cc (file): open file in binary mode. This
5530         fixes OTF embedding on windows.
5531
5532 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5533
5534         * scm/framework-ps.scm (write-preamble): remove debugging output.
5535
5536         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
5537
5538         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
5539         outdir.
5540         (install-fc-cache): install font cache in installation directories.
5541
5542 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5543
5544         * scm/editor.scm (editor-command-template-alist): Use char iso
5545         column, except for Emacs.
5546         (get-editor-command): Substitute char too (Bertalan Fodor).
5547
5548 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5549
5550         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
5551         quoted ~s.  This should fix PNG output on Windows; single quotes
5552         are regular characters on Windows.
5553
5554 2005-06-16  Graham Percival  <gperlist@shaw.ca>
5555
5556         * Documentation/user/basic-notation.itely: include ChoirStaff
5557         in System start delimiters.
5558
5559         * Documentation/user/putting.itely: new doc section on
5560         fixing overlapping notation.
5561
5562 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5563
5564         * Documentation/user/global.itely (Paper size): \paper is in
5565         \book, not \score.
5566
5567         * make/mutopia-rules.make: -ddelete-intermediate-files
5568
5569         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
5570
5571 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5572
5573         * ChangeLog: Recode utf-8.
5574
5575         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
5576         datadir with .py modules.
5577
5578 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
5579
5580         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
5581
5582 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5583
5584         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
5585         
5586         * scm/framework-ps.scm (write-preamble): remove status check.
5587
5588         * Documentation/user/invoking.itely (Updating files with
5589         convert-ly): remove -o option.
5590
5591         * VERSION (PACKAGE_NAME): release 2.5.31
5592
5593         * scm/framework-ps.scm (write-preamble): use ly:system.
5594         (write-preamble): verbosity.
5595
5596         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
5597
5598         * python/convertrules.py: new file. Store conversion rules
5599         separately.
5600
5601 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5602
5603         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
5604
5605 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5606
5607         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
5608         \musicDisplay 
5609
5610         * Documentation/user/instrument-notation.itely (More stanzas): Add
5611         reference to StanzaNumber.
5612
5613 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5614
5615         * THANKS: separate section for website translators.
5616
5617 2005-06-14  Graham Percival  <gperlist@shaw.ca>
5618
5619         * Documentation/topdocs/INSTALL.texi: update vim info;
5620         thanks Simon Bailey!
5621
5622         * Documentation/user/advanced-notation.itely: included
5623         color names.
5624
5625         * Documentation/user/advanced-notation.itely,
5626         Documentation/usr/notation-appendices.itely: moved
5627         color names into an appendix.
5628
5629 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5630         
5631         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
5632
5633         * scm/lily.scm (lambda): initialize program options from here.
5634
5635         * scm/framework-*.scm: add header info.
5636
5637         * lily/main.cc (parse_argv): only set output format to pdf if no
5638         other format specified.
5639
5640         * scm/backend-library.scm (postprocess-output): process
5641         'delete-intermediate-files after running convert-to-*. This fixes
5642         PNG generation when 'delete-intermediate-files is set.
5643         
5644 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5645
5646         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
5647         links on website. 
5648
5649 2005-06-13  Graham Percival  <gperlist@shaw.ca>
5650
5651         * Documentation/topdocs/INSTALL.texi,
5652         Documentation/user/lilypond-book.itely: typos.
5653
5654 2005-06-12  Pal Benko  <benkop@freestart.hu>
5655
5656         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
5657         added between program name and switch; -b changed to -f not
5658         to generate pdf
5659
5660 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5661
5662         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
5663         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
5664
5665         * input/sakura-sakura.ly: add \midi.
5666
5667         * buildscripts/mutopia-index.py (find): use /usr/bin/find
5668         iso. python find. 
5669
5670         * ttftool/test.c (main): cosmetics.
5671
5672         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
5673
5674         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
5675         create a ttf2ps binary.
5676
5677         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
5678
5679         * scm/backend-library.scm (postscript->png): set rename-page-1 to
5680         true.
5681
5682 2005-06-11  Graham Percival <gperlist@shaw.ca>
5683
5684         * Documentation/user/lilypond-book.itely: add warning about
5685         the font warnings in dvips.
5686
5687 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5688
5689         * THANKS: typo
5690
5691         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
5692
5693         * GNUmakefile.in: remove links for .map, .enc
5694         don't fail if out/ doesn't exist yet.
5695
5696 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5697
5698         * ttftool/util.c (surely_read): return nbytes
5699
5700         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
5701
5702         * VERSION (PACKAGE_NAME): release 2.5.30
5703
5704         * flower/string-convert.cc (precision_string): >? fix.
5705
5706         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
5707         (make-ps-images): add verbose -q too.
5708
5709         * lily/default-actions.cc (Module): new file. default
5710         {book,score}-print functions.
5711
5712         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
5713         pass results via parseStringResult, lookup via ly:parser-lookup.  
5714
5715         * lily/lily-parser.cc (Lily_parser): only clone lexer in
5716         constructors.
5717         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
5718         (parse_string): idem.
5719
5720         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
5721
5722         * lily/main.cc (main_with_guile): copy be_verbose_global into
5723         ly_set_option()
5724
5725 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5726
5727         * scm/backend-library.scm (postscript->pdf):
5728         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
5729         verbose mode.  Search for several names of gs executable.
5730
5731 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5732
5733         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
5734         directly. This fixes a massive memory leak, provided you use CVS
5735         GUILE.
5736
5737 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
5738
5739         * ly/property-init.ly: Added tieDashed.
5740
5741         * THANKS: Added some bughunters for 2.5.
5742
5743 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5744
5745         * lily/program-option.cc: add debug-gc option.
5746
5747         * lily/include/lily-guile-macros.hh: don't protect exported module
5748         objects.
5749
5750         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
5751
5752         * scm/backend-library.scm (postscript->pdf): use
5753         delete-intermediate-files iso. running-from-gui? 
5754
5755         * ttftool/util.c (surely_read): robustness. Allow read() to return
5756         less bytes than requested, as per posix standards.
5757
5758         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
5759         program option.
5760
5761         * ttftool/include/ttftool.h ("C"): rename verbosity to
5762         ttf_verbosity. Add to public interface.
5763
5764         * scm/music-functions.scm (unfold-repeats): remove debugging display.
5765
5766         * lily/program-option.cc: rename from scm-option.cc
5767
5768         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
5769         (get_help_string): Print pretty help string.
5770
5771         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
5772         to snippet preamble.
5773
5774         * lily/scm-option.cc: remove command-line-settings option. Fold
5775         all command-line options plus default settings in a generic
5776         interface. 
5777
5778         * flower/getopt-long.cc (table_string): indent 2nd lines of help
5779         texts too.
5780
5781 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5782
5783         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
5784         or EXT_ components non-empty.
5785
5786 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5787
5788         * scm/lily.scm (running-from-gui?): Export.
5789
5790         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
5791         output in .ly source directory.
5792
5793 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5794
5795         * ttftool/util.c (surely_lseek): more verbosity.
5796
5797         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
5798         compile.
5799
5800         * lily/parser.yy (Repeated_music): remove >? 
5801
5802         * scm/backend-library.scm (postscript->pdf): Support for
5803         -dgs-font-load=1
5804
5805         * scm/framework-ps.scm (write-preamble): make font loading
5806         switchable to GS via --define-default gs-font-load=1
5807
5808 2005-06-09  Graham Percival  <gperlist@shaw.ca>
5809
5810         * Documentation/user/global.itely: added \layout docs.
5811
5812 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5813
5814         * lily/lily-parser-scheme.cc: add unistd.h
5815
5816 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5817
5818         * scm/editor.scm: add char argument.
5819
5820         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
5821
5822         * ttftool/util.c (syserror): use errno for better error reporting.
5823
5824         * lily/source-file.cc (get_counts): new function. Calc column,
5825         line and char count in one go.
5826
5827         * lily/binary-source-file.cc (quote_input): rename to quote_input
5828
5829         * lily/input.cc (set): new function.
5830
5831 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5832
5833         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
5834         directory part of file name to search directory.
5835
5836         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
5837         search path and chdir to DIR if --outname=DIR used.
5838
5839         * lily/main.cc (prepend_env_path): Bugfix: Check directory
5840         existence before appending original path.
5841
5842 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5843
5844         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
5845         file" massage.
5846
5847         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
5848         texinfo.tex is always used.
5849         
5850 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5851
5852         * flower/include/axis.hh: rename from axes.hh
5853
5854         * lily/include/text-interface.hh (Module): rename from text-item.hh
5855
5856         * VERSION (PATCH_LEVEL): release 2.5.29
5857
5858         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
5859
5860         * scm/framework-ps.scm (font-file-as-ps-string): new function.
5861         (handle-macfont): new function. Call fondu for Native mac fonts.
5862
5863         * scm/define-markup-commands.scm (fill-line): handle text-widths =
5864         '() case.
5865
5866 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5867
5868         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
5869         multi-page.  Fix .eps regular expression.
5870
5871 2005-06-07  Graham Percival  <gperlist@shaw.ca>
5872
5873         * Documentation/user/putting.itely: add info on modifying templates.
5874
5875         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
5876         misc small changes.
5877
5878 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5879
5880         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
5881
5882         * scripts/lilypond-ps2png.scm
5883
5884         * VERSION (PACKAGE_NAME): release 2.5.28
5885
5886 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5887
5888         * lily/main.cc (prepend_env_path): Do not append /, that does not
5889         work.  Localedir lives in datadir, not in prefix.
5890
5891         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
5892         hack for windows.
5893
5894         * flower/include/file-cookie.hh: Compile fix.
5895
5896 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5897
5898         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
5899
5900         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
5901         system primitives.
5902         (gulp-port): using read-string!/partial. We don't want to read an
5903         entire PS file  (GUILE 1.6 limits strings to 16M) 
5904
5905         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
5906         properties. Add font-interface. 
5907
5908         * scm/define-grob-properties.scm (all-user-grob-properties):
5909         remove old bracket properties.
5910
5911         * scm/x11-color.scm: reformat. 
5912
5913         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
5914         LedgerLineSpanner if new StaffSymbol is found. 
5915
5916         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
5917         staff-symbol for finishing staff. 
5918
5919         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
5920
5921         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
5922         change black to currentColor everywhere. This fixes color support
5923         in SVG.
5924
5925 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
5926
5927         * input/regression/fret-diagrams.ly: new file to test fret diagram
5928         capability
5929
5930         * scm/output-tex.scm: remove white-dot and white-text
5931
5932         * scm/output-ps.scm: remove white-dot and white-text
5933
5934         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
5935         using ly:stencil-in-color instead
5936         (draw-dots) : remove call to white-dot
5937
5938 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5939
5940         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
5941         support.
5942
5943         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
5944
5945         * flower/include/file-cookie.hh: new file. lily_cookie extension 
5946
5947         * flower/file-cookie.cc: new file. lily_cookie extension.
5948         
5949 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5950
5951         * scm/editor.scm (editor-command-template-alist): Add syn
5952         editor (Jaap [de Vos]).
5953
5954 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5955
5956         * scripts/lilypond-ps2png.scm:
5957         * scm/ps-to-png.scm: New file.
5958
5959         * scm/backend-library.scm (postscript->png): Use it.
5960
5961         * scripts/lilypond-ps-to-png.py: Remove file.
5962
5963         * python/lilylib.py (get_bbox, make_ps_images): Remove.
5964
5965 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5966
5967         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
5968
5969         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
5970         start on grace moment. Fixes autobeam-grace.ly.
5971
5972         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
5973         process anything unless we're at the end of a pending beam. Fixes
5974         syncopated 8ths beamed across a beat.
5975
5976 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5977
5978         * scm/editor.scm (editor-command-template-alist): Start emacs if
5979         emacslient fails.
5980
5981         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
5982
5983         * flower/file-path.cc (is_file, is_dir): Export.
5984
5985         * lily/main.cc (prepend_env_path, set_env_file): Use them.
5986
5987 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5988
5989         * lily/easy-notation.cc: Added include cctype to correct
5990         compilation error.
5991
5992 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5993
5994         * scm/backend-library.scm (postscript->pdf): set resolution to
5995         1200, so bitmap fonts aren't that ugly. 
5996
5997         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
5998
5999         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
6000         parent if we have a notehead. Fixes incorrect offsets when
6001         Paper_column is very wide in the X direction.
6002
6003         * input/regression/font-family-override.ly (Module): new file.
6004
6005         * scm/font.scm (make-pango-font-tree): new function.
6006
6007         * lily/beam.cc (before_line_breaking): remove warning about less
6008         than 2 visible stems. We still get a warning when there is only
6009         one stem.
6010
6011 2005-06-01  Werner Lemberg  <wl@gnu.org>
6012
6013         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
6014         correctly.
6015
6016 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6017
6018         * lily/slur-scoring.cc (generate_avoid_offsets): new
6019         function. Generate avoid offsets once per slur.
6020
6021         * lily/slur.cc (add_extra_encompass): add dependency to
6022         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
6023
6024         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
6025         too. Fixes inf error with added bass notes.
6026
6027         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
6028         argument anymore.
6029
6030         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
6031
6032         * input/tutorial/lbook-latex-test.tex: add line length test.
6033
6034         * scripts/lilypond-book.py (set_default_options): new
6035         function. Call this before dissecting snippets, so linewidth
6036         settings reach the snippets.
6037
6038 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6039
6040         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
6041
6042 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6043
6044         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
6045
6046 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6047
6048         * stepmake/aclocal.m4: More autopackage friendliness.
6049
6050 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6051
6052         * Documentation/index.html.in: remove link to LSR.
6053
6054         * Documentation/user/global.itely: remove duplicate
6055         "dedication" \header{} section.
6056
6057 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6058
6059         * VERSION (PACKAGE_NAME): release 2.5.27.
6060
6061         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
6062         too. Plugs memory leak.
6063
6064         * make/lilypond.fedora.spec.in (Group): remove
6065         lilypond-pdfpc-helper.
6066
6067         * scripts/GNUmakefile (SEXECUTABLES): remove
6068         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
6069
6070         * scm/font.scm (make-century-schoolbook-tree): add Mono as
6071         'typewriter family.
6072
6073         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
6074         memory leak.
6075
6076         * lily/parser.yy (score_body): don't clone Score, that's done in
6077         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
6078
6079         * lily/score-engraver.cc (derived_mark): new function.
6080         (initialize): unprotect Paper_score. This fixes a memory leak.
6081
6082         * lily/score-performer.cc (derived_mark): new function.
6083
6084         * lily/score-translator.cc (get_output): use SCM for get_output() call.
6085
6086         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
6087         spurious warning.
6088
6089         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
6090         serif.
6091
6092 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6093
6094         * configure.in (reloc_b): Add --enable-relocation.
6095
6096 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6097
6098         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
6099
6100         * input/regression/alignment-order.ly: add Staff example.
6101
6102 2005-05-31  John Mandereau   <john.mandereau@free.fr>
6103
6104         * po/fr.po: update.
6105
6106 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6107
6108         * Documentation/index.html.in: add link to LSR.
6109
6110 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6111
6112         * scm/define-stencil-commands.scm (Module): new file. Register all
6113         allowed stencil expression heads in a central place.
6114
6115         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
6116         ly:make-stencil
6117
6118         * lily/stencil-expression.cc (all_stencil_heads): registering
6119         stencil expressions.
6120
6121         * lily/stencil-interpret.cc: new file. Stencil expression
6122         interpreting.
6123
6124         * input/xiao-haizi-guai-guai.ly: move file back.
6125
6126 2005-05-30  Graham Percival  <gperlist@shaw.ca>
6127
6128         * Documentation/user/advanced.itely, converters.itely,
6129         instrument-notation.itely, lilypond-book.itely: misc small
6130         changes.
6131
6132 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6133
6134         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
6135
6136         * make/lilypond.fedora.spec.in: Fix source url.
6137
6138         * cygwin: Update from mingw patches.
6139
6140         * scm/editor.scm (editor-command-template-alist): Use jedit
6141         -reuseview (Bertalan), add uedit (Patrick Huberts).
6142
6143         * input/xiao-hai-zi-guai-guai.ly: Rename from
6144         xiao-haizi-guai-guai.ly.
6145
6146         * input/*: Reindent, do not use TAB.
6147
6148         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
6149         white background.
6150
6151 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6152
6153         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
6154         numerical overflow error.
6155
6156 2005-05-29 Laura Conrad <lconrad@laymusic.org>
6157         
6158         * abc2ly.py: fix to syntax error in multi-part output.
6159
6160 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6161
6162         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
6163         with disappearing span bars when alignAboveContext is active
6164
6165         * lily/property-iterator.cc (check_grob): use is-grob?
6166         object-property. Fixes crash-key-sig-font-size.ly. 
6167
6168 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6169
6170         * lily/bar-line.cc (print): don't round barlines; this produces
6171         odd aliasing effects in Acroread.
6172
6173         * lily/timing-engraver.cc (process_music): robustness fix.
6174
6175         * lily/context-def.cc (filter_engravers): bugfix.
6176
6177 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6178
6179         * lily/lilypond.rc.in: Add ly-icon.
6180
6181         * lily/GNUmakefile: 
6182         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
6183         rules.
6184
6185 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6186
6187         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
6188
6189         * ps/music-drawing-routines.ps: 
6190
6191         * scm/output-ps.scm: remove draw ez_ball.
6192
6193         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6194         EasyNotation context definition.
6195
6196         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
6197         Text_interface and color for making easy note heads.
6198
6199         * lily/stencil.cc (with_color): new function.
6200
6201         * ps/music-drawing-routines.ps: remove draw_zigzag_line
6202
6203         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
6204         output routine. Zigzag now works in SVG too.
6205
6206         * scm/output-tex.scm (filledbox): idem.
6207
6208         * scm/output-svg.scm (filledbox): idem.
6209
6210         * scm/output-ps.scm (lily-def): remove horizontal-line. 
6211
6212         * lily/lookup.cc (horizontal_line): use draw-line. 
6213
6214         * lily/system-start-delimiter.cc: remove old staff bracket code.
6215
6216         * mf/feta-haak.mf: further tweaks.
6217
6218         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
6219
6220         * mf/feta-generic.mf: include feta-haak.
6221
6222         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
6223
6224         * scm/framework-ps.scm (write-preamble): only load fonts if their
6225         filename is a string. 
6226
6227 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6228
6229         * scm/output-svg.scm (circle): support circle.
6230         (bracket): stub for bracket.
6231
6232         * scripts/lilypond-book.py (main): make sure --psfonts warning is
6233         correct.
6234
6235 2005-05-26  Graham Percival  <gperlist@shaw.ca>
6236
6237         * Documentation/user/lilypond.tely, advanced-notation.itely,
6238         basic-notation.itely, instrument-notation.itely, global.itely,
6239         introduction.itely, tutorial.itely: rearranging, editing,
6240         clean-up.
6241
6242         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
6243         for compiling on FreeBSD.
6244
6245 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6246
6247         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
6248         otf files.
6249
6250         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
6251         bugfixes.
6252
6253         * VERSION: 2.5.26 released.
6254
6255         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
6256
6257 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
6258
6259         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
6260         if printpagenumber is false.
6261
6262 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6263
6264         * lily/font-config.cc (init_fontconfig): comment out FontConfig
6265         cache warning.
6266
6267         * lily/tie.cc (print): support dotted ties.
6268         
6269 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6270
6271         * scm/define-grobs.scm (all-grob-descriptions): switch off
6272         debugging
6273         (all-grob-descriptions): Arpeggio has Y-extent.
6274
6275         * scm/define-music-properties.scm (all-music-properties): document
6276         length-callback and start-callback as "read-only".
6277
6278         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
6279         length-callback after creation. 
6280
6281         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
6282         compressmusic -> compressMusic.
6283
6284         * ly/music-functions-init.ly (oldaddlyrics): idem.
6285
6286         * lily/parser.yy: NewLyricCombineMusic ->
6287         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
6288
6289 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
6290
6291         * ly/Welcome_to_LilyPond.ly: typo.
6292
6293 2005-05-24  Graham Percival  <gperlist@shaw.ca>
6294
6295         * Documentation/user/lilypond.tely: move changing-defaults to be
6296         before global issues.
6297
6298         * Documentation/user/basic-notation.itely: move Transpose section
6299         here from advanced/Other.
6300
6301         * Documentation/user/changing-defaults.itely,
6302         advanced-notation.itely: move Fonts to advanced, edit.
6303
6304 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6305
6306         * lily/parser.yy (bare_int): remove rule.  From now on, we require
6307         # before negative integers.
6308
6309 2005-05-23  Graham Percival  <gperlist@shaw.ca>
6310
6311         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
6312
6313         * Documentation/user/lilypond.tely: change Unified index to
6314         LilyPond index.
6315
6316         * Documentation/user/advanced-notation.itely,
6317         instrument-notation.itely: editing.
6318
6319 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6320
6321         * scm/lily.scm (lilypond-all): Bugfix: return failed.
6322
6323         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
6324
6325 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6326
6327         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
6328         ly:port-move.  Needs to be stderr-specific on mingw.
6329         Run fixcc.
6330
6331 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6332
6333         * lily/general-scheme.cc (ly:port-move): Remove.
6334
6335         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
6336         windows.
6337
6338         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
6339         variables.  This eliminates the need for a gs.bat wrapper, which
6340         opens a console.
6341
6342         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
6343         * scm/lily.scm (running-from-gui?): 
6344         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
6345         artifact of not compiling with -mwindows.
6346
6347         * scm/editor.scm: Define PLATFORM.
6348
6349 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6350
6351         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
6352         can start to cut & paste lilypond-book fragments.  
6353
6354         * scm/define-music-types.scm (music-descriptions): remove
6355         UntransposableMusic
6356
6357 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6358
6359         * scm/output-ps.scm (glyph-string): remove / before CIDs.
6360
6361 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6362
6363         * Documentation/user/instrument-notation.itely: remove *Engraver.
6364
6365         * Documentation/user/advanced-notation.itely: edit, rearrange.
6366
6367 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6368
6369         * scm/output-ps.scm (glyph-string): take cid? argument. Use
6370         findresource iso. findfont for CID CFF fonts.
6371
6372         * VERSION (PACKAGE_NAME): release 2.5.25
6373
6374         * ly/Welcome_to_LilyPond.ly: add  \version
6375
6376 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6377
6378         * Documentation/user/programming-interface.itely: move
6379         \displayMusic into its own section.
6380
6381         * Documentation/user/basic-notation.itely: finish editing.
6382
6383 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6384
6385         * flower/file-path.cc (find): don't throw away file_name.dir, but
6386         append to it. Fixes \include with directories.
6387
6388         * flower/include/file-path.hh (class File_path): don't derive from
6389         Array<String>.
6390
6391         * flower/include/file-name.hh (class File_name): remove to_str0()
6392
6393         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
6394         Hara_kiri_engraver in separate file.
6395
6396         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
6397         translation went wrong. Fixes vertically translated slurs.
6398
6399 2005-05-19  Graham Percival  <gperlist@shaw.ca>
6400
6401         * Documentation/user/basic-notaton.itely: editing.
6402
6403 2005-05-18  Graham Percival  <gperlist@shaw.ca>
6404
6405         * Documentation/user/macros.itexi, basic-notation.itely:
6406         add @commonprop (commonly used properties) macro.
6407
6408 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6409
6410         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
6411
6412         * scripts/lilypond-book.py (invokes_lilypond): new function
6413         (main): only run fontextract if invokes_lilypond() is true.
6414
6415         * lily/function-documentation.cc (ly_add_function_documentation):
6416         duh, use !=
6417
6418         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
6419
6420         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
6421
6422         * scm/lily.scm (running-from-gui?): lowercase Darwin.
6423
6424         * lily/function-documentation.cc (ly_add_function_documentation):
6425         use scm_hash_table_p() for checking.
6426
6427 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6428
6429         * Documentation/user/advanced-notation.itely (Text scripts):
6430         Change nonexisting @internalsref{Text markup} to @ref{Text
6431         markup}.  Change @internalsref{Text script} to
6432         @internalsref{TextScript}.
6433
6434         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
6435
6436 2005-05-17  Graham Percival  <gperlist@shaw.ca>
6437
6438         * Documentation/user/tutorial.itely, basic-notation.itely,
6439         changing-defaults.itely: remove duplicate cindex entries
6440         that appear on the same page.
6441
6442         * scm/define-grobs.scm: change default padding for TextSpanner.
6443
6444         * Documentation/topdocs/AUTHORS.texi: update email address.
6445
6446         * Documentation/user/global.itely: add info about \include.
6447
6448 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6449
6450         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
6451         when running-from-gui.
6452
6453         * scm/editor.scm (get-editor): Add platform defaults.
6454
6455         * scm/backend-library.scm (postscript->pdf): Typo.
6456
6457 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6458
6459         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
6460
6461         * lily/font-config.cc (init_fontconfig): add warning about cache.
6462
6463 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6464
6465         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
6466
6467 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6468
6469         * lily/horizontal-bracket.cc (print): Take care of the direction
6470         property so brackets above the stave point downwards. 
6471
6472         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
6473         for HorizontalBracket so it doesn't end up within the stave.
6474
6475 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6476
6477         * lily/GNUmakefile (default): Typo.
6478
6479         * scm/lily.scm (PLATFORM): Export.
6480
6481         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
6482         load-font-via-GS, ttftool or fopencookie is broken on windows.
6483         
6484         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
6485         -dSAFER, that is broken on windows.
6486
6487 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6488
6489         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
6490         for FlexLexer.h
6491
6492         * scripts/lilypond-invoke-editor.scm: remove stray -
6493
6494 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6495
6496         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
6497         Fixes deprecation warning.
6498
6499         * flower/include/string.icc (to_string): Only inline if
6500         -DSTRING_UTILS_INLINED.
6501
6502         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
6503         name.  Remove windows comment.
6504
6505         * scm/editor.scm (slashify): New function.
6506         (get-editor-command): Use it.
6507         (get-command-template): Do not alter editor command if
6508         environment value includes `%(file)s' magic.
6509
6510         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
6511         (dissect-uri): Use it.
6512         (unquote-uri): Bugfix.
6513
6514 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6515
6516         * scm/framework-ps.scm (write-preamble): add TTF rule.
6517
6518         * Documentation/topdocs/README.texi (Top): remove note about
6519         xdelta.
6520
6521         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
6522         requirement.
6523
6524         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
6525         function. Figure out where FlexLexer.h lives
6526
6527         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
6528         
6529 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6530
6531         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
6532         with Windows root in file name.
6533
6534         * scm/backend-library.scm (ly:system): Only redirect output (using
6535         system and shell, ugh) if /dev/null is writable.
6536
6537         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
6538         windows icon.
6539
6540         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
6541         on Mingw.
6542
6543         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
6544         click.
6545
6546         * flower/file-path.cc (is_dir, is_file): New function.  Actually
6547         use result of stat when available.
6548
6549         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
6550         absolute file name and root.
6551
6552         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
6553
6554         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
6555
6556         * flower/file-name.cc (slashify): Bugfix, do substitute if no
6557         slashes in file name.
6558
6559 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6560
6561         * Documentation/user/preface.itely (Preface): Run
6562         texinfo-all-menus-update.
6563
6564         * scm/editor.scm (get-editor-command): Bugfix: allow full
6565         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
6566
6567         * Documentation/pictures/lilypond-48.xpm: New file.
6568
6569         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
6570
6571         * ly/Welcome_to_LilyPond.ly: New file.
6572
6573         * lily/main.cc (main): Only identify if we have a terminal.
6574
6575         * scm/backend-library.scm (postscript->png)
6576         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
6577         non-/bin/sh).
6578
6579 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
6580
6581         * Documentation/topdocs/AUTHORS.texi: polish, update.
6582
6583 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6584
6585         * Documentation/user/preface.itely (Notes for version 2.6): new
6586         notes for 2.6
6587
6588         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
6589         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
6590         is not fully contained" warnings.
6591
6592         * lily/slur-scoring.cc (get_bound_info): remove warning.
6593
6594         * lily/staff-symbol-engraver.cc (process_music): start initial
6595         spanner in process_music(). This fixes overrides of StaffSymbol
6596         properties.
6597
6598         * scm/framework-pdf.scm (Module): remove.
6599
6600         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
6601
6602         * lily/ambitus-engraver.cc: formatting cleanups.
6603
6604         * mf/feta-solfa.mf (Module): remove.
6605
6606         * ChangeLog: more details about contributions.
6607
6608 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6609
6610         * lily/align-interface.cc (align_elements_to_extents): warn if
6611         called too early. Fixes: disappearing-staff-lines.ly
6612
6613         * VERSION (PACKAGE_NAME): release 2.5.24
6614
6615 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6616
6617         * stepmake/aclocal.m4: Typo.
6618
6619         * flower/string.cc (substitute): Take two strings or two
6620         characters.  Update callers.
6621
6622 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6623
6624         * flower/file-name.cc (File_name): Slashify.
6625
6626         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
6627
6628         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
6629
6630         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
6631
6632         * configure.in (gui_b): Use it.
6633
6634         * lily/lilypond.rc.in: New file.
6635
6636         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
6637
6638 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6639
6640         * Documentation/user/advanced-notation.itely: edit of Text
6641         section; clarify text scripts vs. text markup.
6642
6643 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6644
6645         * lily/multi-measure-rest-engraver.cc
6646         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
6647         separation items on start. Fixes mm rests in start of score.
6648
6649         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
6650         don't access StaffSymbol if not there.
6651         Fixes: crash-staff-symbol-engraver.ly.
6652
6653         * lily/instrument-name-engraver.cc (class
6654         Instrument_name_engraver): data member first_. Create
6655         InstrumentName on start. 
6656
6657 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6658
6659         * Documentation/user/instrument-notation.itely: add guitar
6660         position.
6661
6662         * Documentation/user/introduction.itely,
6663         Documentation/user/lilypond.tely,
6664         Documentation/user/tutorial.itely: begin pruning
6665         unused (duplicated) cindex entries and misc cleanup.
6666
6667 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6668
6669         * input/test/volta-chord-names.ly: Bring the explanation up to
6670         date.
6671
6672 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6673
6674         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
6675         Specify `@documentencoding utf-8' for html, ignore warnings.
6676
6677 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
6678
6679         * THANKS: Added bughunters.
6680
6681 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6682
6683         * lily/main.cc: update help string for `lilypond -H'.
6684
6685         * po/fi.po: update.
6686         
6687 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6688
6689         * Documentation/user/advanced-notation.itely: minor fixes.
6690
6691 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6692
6693         * scm/editor.scm: New module.
6694
6695         * scm/lily.scm (gui-main): Use it.
6696
6697         * scm/framework-gnome.scm (spawn-editor): Use it.
6698
6699         * scripts/lilypond-invoke-editor.scm: Use it in new script.
6700
6701 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6702
6703         * scm/framework-ps.scm (load-font-via-GS):  new function.
6704
6705         * lily/pango-font.cc (pango_item_string_stencil): add support for
6706         CID keyed font.
6707
6708         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
6709
6710 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6711
6712         * Documentation/user/basic-notation.itely: add @ref.
6713
6714         * Documentation/user/advanced-notation.itely: add example
6715         of 5/8 beaming.
6716
6717 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6718
6719         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
6720
6721         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
6722         going through ps2pdf wrappers.
6723
6724 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
6725
6726         * Documentation/user/instrument-notation.itely: petrucci note
6727         heads: updated docu
6728
6729         * input/regression/note-head-style.ly: updated regression test;
6730         indentation fixes
6731
6732         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
6733         heads as default
6734
6735         * mf/parmesan-heads.mf: minor editing; use musicological names
6736         (rather than optical description) as note head names
6737
6738         * scm/output-lib.scm: complete petrucci heads
6739
6740 2005-05-09  Pal Benko  <benkop@freestart.hu>
6741
6742         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
6743         heads, but bigger)
6744
6745 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6746
6747         * lily/main.cc (main_with_guile): Remove no files check.
6748
6749         * lily/main.cc (ly:usage): Export to Scheme.
6750
6751         * scm/lily.scm (no-files-handler): New function.
6752
6753         * scm/lily.scm (lilypond-main): Use it.
6754
6755         * configure.in (gui_b): Add mbrtowc checking.
6756         Resurrect [utf8/]wchar.h checking.
6757
6758 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6759
6760         * Documentation/user/advanced-notation.itely (Metronome marks):
6761         Add link to the program reference for MetronomeMark
6762
6763         * Documentation/user/lilypond-book.itely (An example of a
6764         musicological document): Correct the example using psfonts 
6765
6766 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
6767
6768         * po/fi.po: update after a lesson how to update entries against
6769         source.
6770         
6771         * po/TODO: document the lesson.
6772
6773 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6774
6775         * configure.in (gui_b): remove wcrtomb checking.
6776
6777         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
6778         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
6779
6780 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6781
6782         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
6783         keep Scheme expressions and strings unmodified when doing the
6784         conversion to postfix notation for slurs and beams. Should
6785         hopefully solve most related conversion problems. 
6786
6787         * Documentation/user/lilypond-book.itely : Clarify and correct how
6788         to call dvips with -h psfonts.
6789
6790 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6791
6792         * Documentation/user/instrument-notation.itely (Entering lyrics):
6793         Typo.  Fixes build.
6794
6795 2005-05-09  Graham Percival  <gperlist@shaw.ca>
6796
6797         * Documentation/user/lilypond-book.itely: document PSFONTS file.
6798
6799         * Documentation/user/lilypond.tely, lilypond-book.itely,
6800         tutorial.itely: change references to 2.5.x to 2.6.x.
6801
6802         * Documentation/user/instrument-notation.itely: clarified \addlyrics
6803         vs \lyricmode.
6804
6805         * Documentation/user/invoking.itely: remove old info about
6806         lilypond-profile.
6807
6808         * Documentation/topdocs/INSTALL.texi: remove old info about
6809         lilypond-profile, add warning about needing international fonts
6810         to build docs.
6811
6812 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6813
6814         * lily/include/grob-info.hh (class Grob_info): make data member
6815         private. Changes throughout.
6816
6817         * input/regression/alignment-order.ly: new file. 
6818
6819         * lily/vertical-align-engraver.cc (acknowledge_grob): read
6820         alignAboveContext and alignBelowContext
6821
6822 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6823
6824         * lily/pfb.cc (LY_DEFINE): add cast.
6825
6826         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
6827         matches .otf
6828         (write-preamble): warn about unknown fonts.
6829
6830         * lily/pfb.cc (Module): new function ly:otf->cff
6831
6832         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
6833         (get_otf_table): new function.
6834
6835 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6836
6837         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
6838         iso. ps2png.
6839
6840 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
6841
6842         * po/fi.po: apply second round of update.
6843
6844 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6845
6846         * scm/x11-color.scm (make-x11-color-handler): don't use
6847         #\sp. Apparently doesn't work on all platforms. 
6848
6849 2005-05-06  Graham Percival  <gperlist@shaw.ca>
6850
6851         * Documentation/user/advanced-notation.itely, putting.itely,
6852         tutorial.itely, global.itely, introduction.itely: really minor fixes.
6853
6854 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6855
6856         * VERSION (PACKAGE_NAME): release 2.5.23
6857
6858 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6859
6860         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
6861         convert to utf-8.
6862
6863         * THANKS: Add translators for this release, convert to utf-8.
6864
6865         * mf/GNUmakefile (MFTRACE_FLAGS):
6866         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
6867         outdir as option (WAS: hardcoded).
6868
6869 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6870
6871         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
6872         finished_span_
6873
6874         * THANKS: add Hans Forbrich.
6875
6876         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6877
6878         * Documentation/user/basic-notation.itely (Staff symbol): document
6879         start/stop staff. Reference to ossia.ly
6880
6881         * input/test/ossia.ly: new example using stop and startStaff.
6882
6883         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
6884         in other words, don't create "|" barline at start of the score.
6885         (start_translation_timestep): don't set whichBar for start of score.
6886
6887         * input/regression/staff-halfway.ly: use new functionality.
6888
6889         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
6890         start and stop staff based on events.
6891
6892         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
6893
6894         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
6895
6896 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6897
6898         * Documentation/user/programming-interface.itely (How markups work
6899         internally ): remove \encoding reference.
6900
6901 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6902
6903         * scripts/convert-ly.py: Attempt to do a smarter update of 
6904         text markups from versions < 1.9.0 with arbitrary nesting.
6905
6906 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6907
6908         * po/fi.po: convert to utf-8, and update.
6909
6910 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6911
6912         * make/lilypond.suse.spec.in: update from suse 2.4 package.
6913
6914         * lily/*.cc: more <? >? to min/max changes
6915
6916         * lily/include/interpretation-context-handle.hh: rename
6917         Interpretation_context_handle to Context_handle.
6918
6919 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6920
6921         * input/regression/GNUmakefile (local_delete): use `find` together 
6922         with `xargs` to avoid too long argument-lists in cmd line.
6923
6924 2005-05-04  Graham Percival  <gperlist@shaw.ca>
6925
6926         * Documentation/user/introduction.itely: updates "About this manual".
6927
6928         * Documentation/user/advanced-notation.itely,
6929         invoking.itely: minor fixes.
6930
6931 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6932
6933         * COPYING: add font exception. Update FSF address. 
6934
6935         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
6936         should be taken without child context.
6937
6938         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
6939
6940         * scm/define-markup-commands.scm (triangle): new command, as
6941         robust replacement for unicode Delta/Triangle.
6942
6943 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6944
6945         * ps/music-drawing-routines.ps: add fillp argument.
6946
6947         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
6948
6949         * lily/font-config.cc (init_fontconfig): don't add cff/
6950
6951         * VERSION (PACKAGE_NAME): release 2.5.22
6952
6953         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
6954
6955         * lily/grace-engraver.cc (consider_change_grace_settings): use
6956         is_alias(). Fixes problem with CueVoice grace notes. 
6957
6958         * lily/simultaneous-music-iterator.cc (construct_children): call
6959         Music_iterator::quit() for iterators that start out invalid. This
6960         fixes indefinitely continuing contexts.
6961
6962         * buildscripts/substitute-encoding.py: new file
6963
6964         * Documentation/user/basic-notation.itely (Basic polyphony): fix
6965         missing @end 
6966
6967         * scripts/lilypond-book.py (write_if_updated): print file name.
6968
6969         * Documentation/user/basic-notation.itely (Explicitly
6970         instantiating voices): idem.
6971
6972         * Documentation/user/advanced-notation.itely (Text spanners):
6973         remove stray { } 
6974
6975         * lily/context.cc (default_child_context_name): the default child
6976         is now first in accepts_list_.
6977
6978         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6979         \defaultchild to all relevant contexts.  This fixes:
6980         drums-pitch.ly.
6981
6982         (Probably also fixes similar problems with ancient
6983         transcriptions getting CueVoices instead of the desired voices.)
6984  
6985         * lily/context-def.cc (get_default_child): new function.
6986         (get_accepted): place default child in front of list.
6987
6988         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
6989
6990         * lily/include/context-def.hh (struct Context_def): add
6991         default_accept_
6992
6993 2005-05-03  Graham Percival  <gperlist@shaw.ca>
6994
6995         * scm/define-grobs.scm: remove "remove-first" line, since
6996         the absent property is set to #f anyway.
6997
6998         * Documentation/user/basic-notation.itely,
6999         advanced-notation.itely, instrument-notation.itely: minor
7000         fixes.
7001
7002         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
7003
7004         * Documentation/user/advanced-notation.itely,
7005         changing-defaults.itely: consolidate Text stuff in
7006         advanced notation.
7007
7008         * Documentation/user/global.itely: better docs for \header.
7009
7010         * Documentation/user/putting.itely: new chapter; placeholder
7011         for future expansion.
7012
7013         * Documentation/user/examples.itely: moved "suggestions for
7014         writing LP files" section into putting.itely.
7015
7016         * Documentation/user/lilypond.itely: added new chapter,
7017         fixed the short table of contents.
7018
7019 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7020
7021         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
7022         infinity for unfeasible beams.
7023
7024         * make/lilypond.fedora.spec.in (Group): idem.
7025
7026         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
7027
7028         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
7029
7030         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
7031         fonts directly.
7032
7033         * buildscripts/gen-emmentaler-scripts.py (i): idem.
7034
7035         * mf/GNUmakefile: remove all CFF rules.
7036
7037         * scm/framework-ps.scm (ps-embed-cff): reinstate.
7038
7039         * lily/open-type-font-scheme.cc (LY_DEFINE):
7040         new function ly:otf-font-table-data.
7041         (LY_DEFINE): new function otf-font?
7042
7043 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7044
7045         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
7046         ($(outdir)/Fontmap.lily): idem.
7047
7048         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
7049         for PFAEmmentaler-XXX.pfa. 
7050
7051         * Documentation/user/music-glossary.tely (accidental): NL
7052         translation of accidental.
7053
7054 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7055
7056         * flower/include/international.hh: Bugfix: include "string.hh".
7057
7058         * lily/include/mingw-compatibility.hh: New file.
7059
7060         * flower/include/libc-extension.hh (memrev): Rename from strrev.
7061
7062         * configure.in: Search for mingw wcrtomb library.
7063
7064 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7065
7066         * scripts/convert-ly.py: Bug fix
7067
7068         * Documentation/user/changing-defaults.itely (Common tweaks):
7069         Added example where the context has to be specified explicitly
7070         (MetronomeMark). 
7071
7072 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7073
7074         * scripts/lilypond-book.py (ly_options): set timing to #f for
7075         notime option.
7076
7077         * scripts/convert-ly.py (conv): typo.
7078
7079         * flower/*.cc: remove <? and >?
7080         
7081         * lily/*.cc: remove <? and >?
7082
7083         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
7084         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
7085         editor.
7086
7087 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7088
7089         * lily/part-combine-engraver.cc: add space to variable list.
7090
7091 2005-04-30  Graham Percival  <gperlist@shaw.ca>
7092
7093         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
7094         remove-first to false (matches docs)
7095
7096         * Documentation/user/advanced-notation.itely: corrected docs
7097         concerning remove-first.
7098
7099 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7100
7101         * lily/part-combine-engraver.cc: make sure that the relevant
7102         properties are included in the documentation.
7103
7104 2005-04-28  Graham Percival  <gperlist@shaw.ca>
7105
7106         * Documentation/user/lilypond-book.itely: Bernard's docs
7107         for \betweenLilyPondSystem.
7108
7109 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7110
7111         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
7112         remarks.
7113
7114 2005-04-28  Pal Benko  <benkop@freestart.hu>
7115
7116         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
7117         only on vertical lines of flexa shape, and use a constant
7118         thickness value for horizontal lines (patch slightly modified by
7119         Jürgen Reuter)
7120
7121         * lily/include/mensural-ligature.hh: make 2 comments clearer
7122
7123 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
7124
7125         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
7126         to need_extra_horizontal_space; bugfix: use class scope to avoid
7127         global namespace pollution
7128
7129         * Documentation/user/instrument-notation.itely (ligatures): added
7130         comment on possible future syntax change and how to work around
7131
7132         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
7133         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
7134         intervals (fixes agnus dei example)
7135
7136         * Documentation/user/instrument-notation.itely (white mensural
7137         ligatures): selected a more illustrative example
7138
7139 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
7140
7141         * Documentation/index.html.in: specify utf-8 charset in meta content.
7142
7143 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7144
7145         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
7146         empty 2nd page for single page.
7147
7148         * scm/lily.scm: remove p&c definitions.
7149
7150         * po/zh_TW.po (Module): new translation.
7151
7152         * lily/lily-guile.cc (ly_chain_assoc): remove.
7153
7154         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
7155         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
7156
7157 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7158
7159         * lily/beaming-info.cc: remove infinity_i
7160
7161         * scripts/abc2ly.py (out_filename): fix thinko with \version.
7162
7163 2005-04-26  Graham Percival  <gperlist@shaw.ca>
7164
7165         * Documentation/user/basic-notation.itely,
7166         instrument-notation.itely, advanced-notation.itely,
7167         changing-defaults.itely: minor fixes.  Added docs
7168         for colors to advanced-notation.itely.
7169
7170         * Documentation/user/advanced-notation.itely: fixed compile
7171         problem and added Bernard's x11-color doc patch.
7172
7173 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7174
7175         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
7176         alright this time round.
7177
7178 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7179
7180         * Documentation/topdocs/INSTALL.texi (Top): idem.
7181
7182         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
7183
7184         * VERSION (MAJOR_VERSION): release 2.5.21
7185
7186         * scm/output-ps.scm (grob-cause): bugfix.
7187
7188 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7189
7190         * cygwin/*: Update.
7191
7192         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
7193         stuff.
7194
7195         * scm/output-ps.scm (grob-cause): Bugfix.
7196
7197         * scm/lily.scm (ly:load): Remove x11-color.
7198
7199         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
7200         quote executable, fixes getting version from program --with
7201         --options.
7202         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
7203         $ac_exeect.
7204
7205         * Documentation/user/GNUmakefile: Only build music-glossary with
7206         rendered lilypond snippets during web.
7207
7208 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7209
7210         * po/de.po: update.
7211
7212         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
7213
7214 2005-04-22  Laura Conrad <lconrad@laymusic.org>
7215  
7216         * scripts/abc2ly:
7217         second title line append with punctuation dash character;
7218         encode abc2ly python strings in utf-8
7219        
7220 2005-04-21  Laura Conrad <lconrad@laymusic.org>
7221
7222         * scripts/abc2ly fix chords (again)
7223  
7224 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
7225
7226         * scm/x11-color.scm: new file
7227         All x11 color names can be accessed with:
7228         #(x11-color 'ColorName),
7229         #(x11-color "ColorName") or:
7230         #(x11-color "color name")
7231         If the x11 color name is not recognised then it defaults
7232         to black
7233
7234         * scm/lily.scm: amended to call scm/x11-color.scm
7235
7236 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7237
7238         * Documentation/user/invoking.itely (Reporting bugs): comment out
7239         reference to online PNG bug repository.
7240
7241 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7242
7243         * lily/translator-scheme.cc (ly:translator-property): Remove.
7244         Update callers.
7245
7246         * lily/context-scheme.cc (ly:context-now): Move from translator.
7247         Update callers.
7248
7249 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7250
7251         * input/regression/grid-lines.ly (skips): refine example.
7252
7253         * scm/define-context-properties.scm
7254         (all-user-translation-properties): doc autoBeamCheck
7255
7256         * input/regression/grid-lines.ly (Module): new file.
7257
7258         * lily/grid-point-engraver.cc (Module): new file.
7259
7260         * lily/grid-line.cc (Module): new file.
7261
7262         * lily/grid-line-span-engraver.cc (Module): new file.
7263
7264         * lily/grid-line-interface.cc (Module): new file.
7265
7266 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7267
7268         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
7269         missing parameter, actualy cdr through list.  Actually return a
7270         list with ENTRY removed (was '()).
7271
7272         * scripts/convert-ly.py: Update.  Print warning if file cannot be
7273         opened.
7274         (do_conversion): Fix printing of continuation comma.
7275
7276         * Documentation/user/advanced-notation.itely (Beam formatting):
7277         Remove refbugs about compound time and mixed duration.
7278
7279         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
7280         modulo moments explicitely.
7281
7282         * lily/moment.cc (operator %): New function.
7283
7284         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
7285
7286         * lily/translator-scheme.cc (ly:translator-now,
7287         ly:translator-property): New function.
7288
7289         * scm/auto-beam.scm (default-auto-beam-check): New function.
7290
7291         * lily/auto-beam-engraver.cc (test_moment): Use it.
7292
7293         * flower/rational.cc (operator %): Bugfix.
7294
7295 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
7296
7297         * scripts/abc2ly: Bugfix
7298
7299 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7300
7301         * python/fontextract.py (write_extracted_fonts): bugfix, too many
7302         %'s on EndFont comment.
7303
7304         * lily/ledger-line-spanner.cc: some more words of explanation.
7305
7306 2005-04-20  John Williams <williams@tni.com>  
7307         
7308         * scripts/lilypond-book.py: htmlquote bugfix.
7309         Allow snippets to be given distinct filenames.
7310         Allow the default alt text to be overridden.
7311
7312 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
7313
7314         * ly/performer-init.ly: Bugfix
7315
7316         * THANKS: Added bughunters.
7317
7318 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7319
7320         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
7321
7322         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
7323         position (was: use modulo measure length).
7324
7325         * configure.in (no gui_b): Remove optional gtk+ requirement.
7326
7327 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7328
7329         * Documentation/user/basic-notation.itely (Pitches): add
7330         LedgerLineSpanner.
7331
7332         * lily/dynamic-engraver.cc (process_music): set right bound to
7333         script if present. Else, do not set.
7334         (acknowledge_grob): only set right bound of finished spanner to
7335         note column if no other bound is set.
7336
7337         * python/lilylib.py (make_ps_images): switch back to png16m.
7338         
7339 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7340
7341         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
7342         writing up to date file.  Add dvips usage suggestion.
7343
7344         * scripts/convert-ly.py: Fix error message.
7345         Print usage if no files on command line.
7346         (usage): Add example usage.
7347
7348         * input/test/compound-time.ly: New file.
7349
7350         * input/test/circle.ly: New file.
7351
7352         * Documentation/topdocs/NEWS.tely: Use them.
7353
7354         * input/test/boxed-stencil.ly: Remove \score.
7355
7356         * buildscripts/mf-to-table.py (base): Add .log dependency.
7357
7358         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
7359         pfa's.  Add .log dependency
7360
7361         * scm/define-markup-commands.scm (lower): New command.
7362
7363         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
7364         make it default.
7365
7366 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7367
7368         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
7369         also to finished cresc as right bound. This fixes:
7370         skip-string-decresc.ly
7371
7372         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
7373         relative_coordinate if extent is empty.
7374
7375         * lily/stem.cc (width_callback): determine correct extent if flag
7376         is not there. This fixes slur-no-flag.ly
7377
7378         * lily/grace-engraver.cc (consider_change_grace_settings): new
7379         function.
7380         (initialize): also consider_change_grace_settings() on
7381         initialization. Fixes large grace notes at start of score.
7382
7383         * lily/break-align-interface.cc (do_alignment): don't translate if
7384         total_extent is empty.
7385
7386         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
7387
7388 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7389
7390         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
7391         with slash.
7392
7393 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7394
7395         * stepmake/aclocal.m4: Remove tfm_path.
7396
7397 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7398
7399         * scm/music-functions.scm (markup-expression->make-markup): fix
7400         bug with cons arguments of markup commands.
7401         (music->make-music): fix music expression property list building
7402
7403 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7404
7405         * aclocal.m4: Massage package names.
7406
7407         * SCons updates.
7408
7409 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7410
7411         * VERSION (PACKAGE_NAME): release 2.5.20
7412
7413         * lily/stem.cc (calc_stem_info): add minimum Y extent of
7414         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
7415
7416         * lily/percent-repeat-engraver.cc (try_music): add measure before
7417         next_moment to future processing moment. Fixes:
7418         percent-repeat-mm-rest.ly
7419         (process_music): don't add moment for 2nd time.
7420
7421         * input/regression/repeat-percent.ly: add mmrests as extra test.
7422
7423         * lily/axis-group-engraver.cc (acknowledge_grob): read
7424         keepAliveInterfaces to decide what to kill.
7425
7426         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
7427         percent-repeat-interface to keepAliveInterfaces. This fixes
7428         percent-repeat-harakiri.
7429
7430 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7431
7432         * SCons updates.
7433
7434 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7435
7436         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
7437
7438         * aclocal.m4: remove --enable-tfm-path configure option
7439
7440         * input/test/ancient-font.ly (lowerStaff): clef name errors.
7441
7442         * scm/backend-library.scm (postscript->png): newline after
7443         finishing command.
7444
7445         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
7446         (LY_DEFINE): ly:paper-score-paper-systems: new function 
7447
7448         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
7449
7450         * lily/score.cc (default_rendering): use Music_output too.
7451
7452         * input/test/chord-names-languages.ly (Module): rename file.
7453
7454         * lily/text-spanner.cc: add bound-padding.
7455
7456         * lily/paper-book.cc (systems): accept Paper_score
7457         iso. Paper_system vector. 
7458
7459         * input/regression/line-arrows.ly: new file.
7460
7461         * lily/paper-score.cc (process): run get_paper_systems() only once.
7462
7463         * lily/line-spanner.cc (line_stencil): add arrows.
7464
7465 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
7466
7467         * lily/line-interface.cc (make_arrow): new function. 
7468         (arrows): idem.
7469
7470 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
7471
7472         * input/test/chord-names-german.ly: update for italian/french
7473         chords.
7474         
7475         * Documentation/user/instrument-notation.itely (Printing chord
7476         names): update.
7477
7478 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7479
7480         * lily/include/paper-score.hh (class Paper_score): remove unused
7481         prototypes.
7482
7483         * lily/book.cc (process): add -COUNT to midi output.
7484
7485         * lily/score.cc (book_rendering): remove outname argument
7486         (book_rendering): return list of Music_outputs. 
7487
7488         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
7489
7490         * lily/book.cc (process): loop over Music_outputs returned from
7491         Score::book_rendering().
7492
7493         * lily/*.cc (width_callback): remove spurious "unused" warnings
7494         for assert (axis==[XY]_AXIS); 
7495
7496         * lily/include/music-output.hh (class Music_output): smobify class.
7497
7498         * lily/include/paper-score.hh (class Paper_score): make members
7499         private.
7500
7501         * lily/performance.cc (process): return #f iso. #<undefined>. This
7502         prevents #<undefined> leaking into GUILE-userspace.
7503
7504 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7505
7506         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
7507
7508 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
7509
7510         * scm/chord-name.scm : support for italian and french
7511         chords names.
7512
7513         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
7514         a space defined by chordPrefixSpacer when the root name is
7515         direclty followed by a prefix.
7516
7517         * ly/engraver-init.ly : chordPrefixSpacer       
7518         * scm/define-context-properties.scm : chordPrefixSpacer
7519         * ly/property-init.ly : italianChords, frenchChords 
7520
7521 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7522
7523         * mf/feta-din.mf: Remove.
7524
7525         * mf/GNUmakefile (fontdir): Bugfix.
7526
7527         * mf/SConstruct: Some updates.
7528
7529         * SConstruct: Require pkg-config.
7530         (test_program): Bugfix for double digit version compares, use
7531         integer (not string-) compare.
7532         Optionally require gs 8.14.
7533
7534         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
7535
7536         * lily/*: s/ifdef HAVE_*/if have/.
7537
7538         * SConstruct (test_lib): New function.  Update pkg-config and some
7539         other requirements.
7540
7541         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
7542         freetype, pangof2t.
7543
7544 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7545
7546         * po/lilypond.pot, ...: Update using bison-CVS.
7547
7548         * python/lilylib.py (make_ps_images): Fixo.
7549
7550 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7551
7552         * python/lilylib.py (make_ps_images): typo.
7553
7554         * configure.in (gui_b): make bison optional.
7555
7556         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
7557
7558 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
7559
7560         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
7561         with one parameter can be defined in a LaTeX file when processed
7562         by lilypond-book this will be evaluated between the systems of
7563         a multi-system score. The parameter is the number of systems processed.
7564
7565 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7566
7567         * python/lilylib.py (make_ps_images): Escape newline.
7568
7569         * Documentation/user/music-glossary.tely: Run
7570         texinfo-all-menus-update.
7571
7572 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7573
7574         * scm/lily-library.scm (old-relative-not-used-message)
7575         (version-not-seen-message): Add input-file-name-location to message.
7576
7577         * lily/parser.yy (lilypond): Add token aliases.
7578
7579         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
7580         not confuse with alteration.
7581         (alteration): Add.
7582
7583 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7584
7585         * python/lilylib.py (make_ps_images): use -dEPSCrop
7586
7587         * VERSION (PACKAGE_NAME): release 2.5.19 
7588
7589         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
7590         only put xrefs in info documentation.
7591
7592         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
7593         .pdf rule to tex-rules.make.
7594
7595         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
7596         from -systems.* output.
7597
7598         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
7599         directly, remove -$(PAGESIZE) target.
7600
7601         * input/test/embedded-postscript.ly: update.
7602
7603 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7604
7605         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
7606
7607         * Documentation/user/changing-defaults.itely (Font selection):
7608         document font-name.
7609
7610         * input/regression/font-name.ly: show Pango fonts for
7611         font-name. Update example. 
7612
7613         * lily/pango-select.cc (properties_to_pango_description): don't
7614         convert symbol font-size to number, but use to lookup.
7615
7616         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
7617
7618         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
7619         (NAME . FILE-NAME) tuples for font descriptions. 
7620         (write-preamble): display BeginFont DSC comments.
7621
7622         * python/fontextract.py (write_extracted_fonts): new file. Extract
7623         font resources from a PS file.
7624
7625         * scripts/lilypond-book.py (option_definitions): --psfonts option.
7626         (Compile_error.process_include): do_file returns chunks.
7627
7628         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
7629
7630         * make/lysdoc-targets.make: .texi is .PRECIOUS
7631
7632         * scripts/lilypond-book.py (write_if_updated): new function.
7633
7634 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7635
7636         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
7637
7638 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7639
7640         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
7641
7642         * input/regression/markup-syntax.ly: remove \score.
7643
7644         * scm/define-markup-commands.scm (draw-circle): add fill argument
7645
7646         * scm/stencil.scm (make-circle-stencil): add fill argument
7647
7648         * ps/music-drawing-routines.ps: add fill argument.
7649
7650         * ly/performer-init.ly: add CueVoice to MIDI too.
7651
7652         * ps/music-drawing-routines.ps: new routine BeginEPSF /
7653         EndEPSF.
7654
7655         * input/regression/markup-eps.ly: new file.
7656
7657         * scm/framework-ps.scm (write-preamble): change order: vars should
7658         be inited before procedures.
7659
7660         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
7661         for EPS files.
7662
7663         * scm/define-markup-commands.scm (epsfile): add epsfile command.
7664
7665 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7666
7667         * configure.in (gui_b): add check for ghostscript 8.15
7668
7669 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7670
7671         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
7672         start of line. Fixes cresc-after-newline.ly
7673
7674         * lily/source-file.cc (file_line_column_string): use get_column().
7675
7676 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7677
7678         * lily/source-file.cc (get_column): utf-8 support for column numbers.
7679
7680 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7681
7682         * lily/*: use message () iso progress_indication () for messages.
7683         Revise/uniformise user messages.
7684
7685         * flower/warn.cc (progress_indication): New function.
7686         (message): Use it.  Fixes newline problems.
7687
7688         * config.make.in (webdir): Sort out install dirs.
7689
7690         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
7691
7692         * python/lilylib.py (command_name): Bugfix.
7693         (make_ps_images):
7694
7695 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
7696
7697         * lily/main.cc: --help says what types of backends are availabe
7698
7699 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7700
7701         Fix ./VERSION dependency, and without need to reconfigure.
7702
7703         * lily/main.cc (setup_paths): Update.
7704
7705         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
7706
7707         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
7708
7709         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
7710         Add \line for some simplistic cases.
7711
7712         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
7713
7714 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7715
7716         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
7717         to compile LY files (useful for adding eg. "-I" args)
7718         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
7719         2Gnome command for gnome backend.
7720         (LilyPond-command-formatgnome): call the 2Gnome command. key
7721         binding: C-c C-g
7722
7723 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7724
7725         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
7726         depend on all PNG images.
7727
7728 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7729
7730         * GNUmakefile.in: Bugfix: also link .map files.
7731
7732 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7733
7734         * scm/music-functions.scm (music->make-music): generate 
7735         a (make-music ...) sexpr from a music expression.
7736         (display-scheme-music): use guile pretty printer to display the
7737         make-music sexpr.
7738
7739 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7740
7741         * ly/engraver-init.ly: reindent.
7742         Add CueVoice.
7743
7744         * scm/music-functions.scm (music-pretty-string): handle moments
7745         too.
7746         (music-pretty-string): only print non-empty lists.
7747         (cue-substitute): create CueVoice context, which has smaller type.
7748
7749         * lily/moment-scheme.cc (LY_DEFINE): new methods
7750         ly:moment-grace-{numerator,denominator}
7751
7752         * lily/context-handle.cc: remove quit() method. 
7753
7754         * lily/font-config.cc (init_fontconfig): be verbose about font path.
7755         (init_fontconfig): success is 0, not !0
7756
7757 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7758
7759         * mf/feta-nummer-code.mf (code): add plus glyph.
7760
7761         * lily/tie.cc (print): idem.
7762
7763         * lily/slur.cc (print): don't use thickness property for
7764         slur shape-thickness.
7765
7766         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
7767         while adding stencils.
7768
7769         * scm/define-markup-commands.scm (with-color): with-color markup
7770         command.
7771         (whiteout): new markup command 
7772         (filled-box): new markup command
7773
7774 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7775
7776         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
7777         test for PDF docs.
7778
7779         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
7780         PFAAybabtu-Regular.  Fixes feta font in PDFs.
7781         
7782         Notes for tetex-3.0 make web:
7783            psclean.map: s/uhv8a/uhvr8a/
7784            config.ps add:
7785                 p +psfonts_t1.map
7786                 p +psclean.map
7787                 p +typeface.map
7788
7789 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7790
7791         * scm/music-functions.scm (music-pretty-string): fix bug with
7792         string argument.
7793
7794 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7795
7796         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
7797
7798 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7799
7800         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
7801         only process options if they're there.
7802         (write_file_map): add version-seen? to snippet-map.ly
7803
7804 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7805
7806         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
7807         formatting cleanups.
7808
7809         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
7810         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
7811
7812 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7813
7814         * scm/framework-ps.scm (ps-font-command): don't hash, just use
7815         name directly.
7816
7817         * lily/main.cc (setup_paths): either add mf/out to search path or 
7818         fonts/{otf,type1,etc}
7819         
7820         * lily/font-config.cc (init_fontconfig): either add mf/out to
7821         FontConfig or fonts/{otf,type1,etc}
7822
7823         * GNUmakefile.in: don't put mf/ link in share/ dir.
7824
7825         * lily/staff-spacing.cc: move same-direction-correction to
7826         note-spacing-interface
7827
7828         * scm/lily.scm (lilypond-main): use variable argument count for
7829         exception handler.
7830
7831         * lily/font-config.cc (init_fontconfig): add operator pacification
7832         message.
7833
7834         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
7835
7836         * buildscripts/gen-emmentaler-scripts.py (i): generate
7837         PFAEmmentaler as well.
7838
7839         * scm/framework-ps.scm (munge-lily-font-name): new function
7840         (write-preamble): hack: insert PFA equivalent of CFF into
7841         .PS. This makes LilyPond output printable on normal PS printers
7842         again.
7843
7844         * buildscripts/gen-emmentaler-scripts.py (i): generate
7845         PFAEmmentaler.pfa aswell.
7846
7847 2005-04-06  John Williams <williams@tni.com>  
7848         
7849         * scripts/lilypond-book.py: refactor the compose_ly procedure.
7850         
7851 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7852
7853         * scm/page-layout.scm (default-page-make-stencil): always combine
7854         the header stencil, even if empty. This prevents the body text to
7855         reach up to the margins.
7856
7857         * po/rw.po (Module): new file, for Kinyarwanda.
7858
7859         * input/test/spacing-optical.ly (Module): new file.
7860
7861         * lily/staff-spacing.cc: add same-direction-correction
7862
7863 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7864
7865         * Documentation/user/introduction.itely (Engraving): Comment-out
7866         non-existent file.
7867
7868 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7869
7870         * scm/define-grob-properties.scm (all-user-grob-properties): add
7871         same-direction-correction
7872
7873         * VERSION: release 2.5.18
7874
7875 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
7876
7877         * lily/grob.cc (mark_smob): Check pscore->layout_ before
7878         dereferencing.  Fixes make web.
7879
7880         * lily/midi-stream.cc: Handle unwritable midi file.  Include
7881         errno.h.
7882
7883         * Documentation/user/: Fix links.
7884
7885 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * lily/text-interface.cc (Module): rename from text-item.cc
7888
7889         * input/regression/apply-output.ly (texidoc): function naming fix.
7890
7891         * lily/time-signature-performer.cc (derived_mark): new function.
7892
7893         * lily/lily-parser-scheme.cc:  print mapped file name for progress
7894
7895         * scripts/lilypond-book.py (find_linestarts): new function.
7896         (find_toplevel_snippets): keep track of line numbers.
7897
7898         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
7899         all key changes.
7900
7901         * ly/declarations-init.ly (partCombineListener): use
7902         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
7903
7904         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
7905
7906 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
7907
7908         * lily/text-item.cc: Fix link.
7909
7910         * Documentation/user/changing-defaults.itely (Changing defaults):
7911         Fix programs reference links.
7912
7913         * Documentation/user/music-glossary.tely: Convert to utf-8.
7914
7915 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7916
7917         * make/lilypond-vars.make: remove TEXMF from variables.
7918         remove DEB_BUILD pk font variables.
7919         remove GUILE_LOAD_PATH
7920         remove TeX memory vars.
7921
7922 2005-04-04  Werner Lemberg  <wl@gnu.org>
7923
7924         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
7925
7926 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7927
7928         * ps/lilyponddefs.ps: remove reencode-font
7929
7930         * lily/simple-spacer.cc (add_columns): also compare
7931         directly. Column rank doesn't distinguish between broken and
7932         unbroken columns. This fixes large spaces before time sig changes.
7933
7934         * Documentation/user/point-and-click.itely: document ly:set-option.
7935
7936         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
7937         point_and_click_global is set.
7938
7939         * lily/scm-option.cc (LY_DEFINE): add point-and-click
7940         ly:set-option argument.
7941
7942 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7943
7944         * GNUmakefile.in: Include symlinks in webball.
7945
7946         * Documentation/user/GNUmakefile (source-links): Add symlinks to
7947         source dir for split and non-split manuals.
7948
7949         * Documentation/user/*y: Fix @uref/@inputfile links for
7950         split/non-split HTML documents.
7951
7952         * Documentation/user/GNUmakefile (local-WWW): Do not generate
7953         .ps.gz.
7954         
7955 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7956
7957         * GNUmakefile.in: Add newline.
7958
7959 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
7960
7961         * tex/lilyponddefs.tex: use color instead of xcolor
7962         * scm/output-tex.scm: minor editing
7963
7964 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7965
7966         * scm/music-functions.scm (display-scheme-music): pretty printer
7967         for music expressions.
7968
7969 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7970
7971         * buildscripts/install-info-html.sh (index_file): Fix link.
7972
7973 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7974
7975         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
7976
7977         * Documentation/index.html.in: Add size estimates with some big pages.
7978
7979         * Documentation/user/tutorial.itely (Running LilyPond for the
7980         first time): Add/replace some @rglos links.  TODO: add more
7981         @rglos links in tutorial, test non-intrusiveness (.css).
7982
7983         * stepmake/bin/add-html-footer.py (do_file): Remove info's
7984         annoying's indication of referencing external document.
7985
7986         * Documentation/user/GNUmakefile: Split version of glossary too.
7987         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
7988         links, not only for html.
7989
7990         * Documentation/user/introduction.itely: Fix some links for other
7991         than html, do not use `here' as link name.
7992
7993 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7994
7995         * scm/documentation-generate.scm (string-append): Fix @usermanref,
7996         @glossaryref.
7997
7998 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7999
8000         * scm/page-layout.scm (default-page-make-stencil): only add header
8001         if existing and not empty. Fixes spurious programming error.
8002
8003         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
8004
8005 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
8006
8007         * scm/output-tex.scm: implement {re,}setcolor
8008         * tex/lilyponddefs.tex: use color package
8009
8010 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8011
8012         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
8013         additions to website.
8014
8015         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
8016
8017         * Documentation/user/macros.itexi: Fix @usermanref html links in
8018         split documents: use @inforef.
8019
8020 2005-03-30  Graham Percival  <gperlist@shaw.ca>
8021
8022         * Documentation/user/programming-interface.itely: minor fix.
8023
8024         * Documentation/user/advanced-notation.itely: added info to
8025         Metronome markings.
8026
8027 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8028
8029         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
8030         use box-stencil.  Remove y-padding argument.
8031         (make-stencil-circler): New function.
8032
8033         * buildscripts/lilypond-words.py (F): 
8034         * elisp/SConscript (a): 
8035         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
8036         * vim/SConscript (a): 
8037         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
8038
8039         * lily/general-scheme.cc: Build fix.
8040
8041         * scm/markup.scm:
8042         * input/regression/markup-scheme.ly: 
8043         * input/regression/markup-syntax.ly: Drop 'new-' from name.
8044
8045         * scm/stencil.scm (make-circle-stencil): New function.
8046
8047         * scm/define-markup-commands.scm (draw-circle): Use it.  New
8048         name (was cicle).  Update callers.
8049         (circle): New markup command, similar to box.
8050
8051         * scm/stencil.scm (circle-stencil): New function.
8052
8053 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
8054
8055         * configure.in: Detect libutf8/wchar.h variant.
8056
8057         * stepmake/aclocal.m4: Modify shared size test.
8058
8059 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8060
8061         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
8062
8063 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8064
8065         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
8066         
8067         * VERSION (PACKAGE_NAME):  release 2.5.17
8068
8069 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
8070
8071         * scm/backend-library.scm (postscript->png): Fix comment and png
8072         message.
8073
8074         * GNUmakefile.in (link-tree): Fix locales.
8075
8076 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8077
8078         * lily/stencil-scheme.cc (LY_DEFINE): change to
8079         ly:stencil-aligned-to, non mutating.
8080
8081         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
8082
8083         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
8084
8085         * lily/quote-iterator.cc (derived_mark): call
8086         Music_wrapper_iterator::derived_mark() too.
8087
8088         * lily/grace-engraver.cc (derived_mark): change signature, add
8089         const.
8090
8091 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8092
8093         * SConstruct (symlink): 
8094         * GNUmakefile.in (link-tree): Add scripts to prefix.
8095
8096         * lily/general-scheme.cc (ly:effective-prefix): New function.
8097
8098         * scm/backend-library.scm (postscript->png): Use it.
8099
8100 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8101
8102         * lily/paper-score.cc (process): don't delete grobs after
8103         producing stencils. 
8104
8105         * scm/part-combiner.scm (determine-split-list): switch off
8106         debugging info.
8107
8108         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
8109         if available.
8110
8111         * scm/define-context-properties.scm
8112         (all-user-translation-properties): add stringNumberOrientations.
8113
8114         * lily/new-fingering-engraver.cc (position_scripts): make generic,
8115         so fingering and string-numbers are separately controlled.
8116
8117 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8118
8119         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
8120         not use debugging.
8121
8122 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8123
8124         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
8125
8126         * config.hh.in: add HAVE_FONTCONFIG.
8127
8128         * Documentation/user/instrument-notation.itely (String number
8129         indications): new node.
8130
8131         * input/regression/new-markup-syntax.ly (texidoc): add circle.
8132
8133         * lily/new-fingering-engraver.cc (add_string): new function. 
8134         (acknowledge_grob): accept string-number-event as well.
8135
8136         * scm/define-markup-commands.scm (circle): new markup command.
8137
8138         * scm/output-lib.scm (print-circled-text-callback): new function.
8139
8140         * lily/GNUmakefile: move ifeq after include stepmake.make.
8141
8142 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8143
8144         * config.make.in (HAVE_LIBKPATHSEA_SO):
8145         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
8146
8147         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
8148         add KPATHSEA_LIBS.
8149
8150         * debian/watch: 
8151         * debian/control: Update.
8152
8153 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8154
8155         * input/test/title-markup.ly (spaceTest): remove.
8156
8157         * input/test/embedded-tex.ly (Module): remove.
8158
8159         * input/test/music-box.ly: use 'name property, not ly:music-name.
8160
8161         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
8162
8163         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
8164
8165 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8166
8167         * Documentation/topdocs/INSTALL.texi (Top): Remove information
8168         about xdeltas.  Add information about CVS.
8169
8170         * scm/lily.scm (lilypond-main): Fix invocation of handler,
8171         gracefully handle failed files.
8172
8173         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
8174
8175         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
8176         small fixes.
8177
8178         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
8179         No unnecessarily specific i18n messages.  Remove stray `1'.
8180
8181 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8182
8183         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
8184         documentencoding
8185
8186         * scm/documentation-lib.scm (texi-file-head): set utf-8
8187         documentencoding.
8188
8189         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
8190         Delta, not the Symbol one. 
8191
8192         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
8193         for the .map file.
8194
8195         * Documentation/topdocs/INSTALL.texi (Top): add running
8196         requirement as compilation requirement.
8197
8198 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8199
8200         * buildscripts/mutopia-index.py (headertext): add h1 header and
8201         utf-8 charset meta field.
8202
8203         * input/GNUmakefile: prune example list.
8204
8205         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
8206         options.
8207
8208         * lily/slur-scoring.cc (get_base_attachments): only look at stem
8209         extent for visible stems.
8210
8211         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
8212
8213 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8214
8215         * Documentation/topdocs/INSTALL.texi (Top): Updates.
8216
8217         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
8218
8219 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8220
8221         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
8222         pass inf/nan into slur scoring.
8223
8224         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
8225         page.
8226
8227         * scripts/abc2ly.py (dump_voices): use alphabet().
8228
8229 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
8230         
8231         * mf/GNUmakefile (depth): use $(FONTFORGE). 
8232
8233 2005-03-27 Matthias Neeracher <neeracher@mac.com>
8234         
8235         * flower/include/virtual-methods.hh: simplify. Patch by
8236
8237 2005-03-25  John Williams <williams@tni.com>  
8238
8239         * scripts/lilypond-book.py (main): add png for HTML too, guess
8240         only if necessary. 
8241
8242 2005-03-25  Graham Percival  <gperlist@shaw.ca>
8243
8244         * Documentation/topdocs/INSTALL.texi: now recommends
8245         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
8246
8247         * Documentation/user/basic-notation.itely,
8248         Documentation/user/tutoria.itely: warn about
8249         only one (phrasing) slur at once.
8250
8251 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
8252
8253         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
8254
8255 2005-03-23  Graham Percival  <gperlist@shaw.ca>
8256
8257         * Documentation/user/basic-notation.itely: fixed info about
8258         ending a (de)cresc.
8259
8260         * Documentation/user/lilypond-book.itely: fixed
8261         lilypond-book filter example and warned about not doing
8262         --filter and --process at the same time.
8263
8264 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8265
8266         * lily/parser.yy (bass_number),
8267         Documentation/user/instrument-notation.itely (Figured bass): 
8268         Add the possibility to use text markup in figured bass. 
8269
8270 2005-03-19  Graham Percival  <gperlist@shaw.ca>
8271
8272         * Documentation/user/global.itely: added info about naming
8273         identifiers and breakbefore.
8274
8275         * Documentation/user/invoking.itely: added info about batch
8276         processing files with convert-ly, removed references to TeX
8277         in the jail section.
8278
8279         * Documentation/user/examples.itely: possibly fixed piano
8280         dynamics.
8281
8282         * Documentation/user/advanced-notation.itely: added info
8283         about removing other types of Staff.
8284
8285         * Documentation/user/instrument-notation.itely: possibly
8286         fixed piano staff line switch.
8287
8288         * Documentation/user/changing-defaults.itely: added info
8289         about using normal font in titles.
8290
8291 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8292
8293         * VERSION (PATCH_LEVEL): release 2.5.16
8294
8295         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
8296         explicitly.
8297
8298 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8299
8300         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
8301         whitespace.
8302
8303         * python/lilylib.py (make_ps_images):
8304         * scm/backend-library.scm (postscript->pdf, postscript->png):
8305         Quote file name.  Use format rather than string-append juggling.
8306
8307 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8308
8309         * python/lilylib.py (make_ps_images): add x to -g argument. 
8310
8311         * lily/key-performer.cc (create_audio_elements): don't use
8312         scm_eval_string. Check for minor 3rd directly.
8313   
8314         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
8315         (sarabandeCelloGlobal): key is D minor, not F major.
8316
8317 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8318
8319         Fix truncated --png output (Peter Danenberg).
8320         
8321         * python/lilylib.py (make_ps_images):
8322         * scripts/ps2png.py (copyright): Grok --papersize option.
8323
8324         * scm/backend-library.scm (postscript->png): Add parameter
8325         PAPERSIZE.  Update callers.
8326
8327         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
8328         Fixes symbol placement.
8329
8330         * lily/spanner.cc: 
8331         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
8332         <libc-extension.hh>).
8333
8334 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8335
8336         * Nitpick run.
8337
8338         * buildscripts/fixcc.py: Update.
8339
8340         Builddir run fixes.
8341
8342         * HACKING (datadir): Add VERSION.
8343
8344         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
8345         higher up.
8346
8347 2005-03-15  Werner Lemberg  <wl@gnu.org>
8348
8349         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
8350         diagonal stem doesn't become thinner.
8351
8352 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8353
8354         * buildscripts/fixcc.py: Fixes (Werner).
8355
8356 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8357
8358         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
8359         Emmentaler/Aybabtu.
8360
8361         * GNUmakefile.in: fix lilypond-words path.
8362
8363         * po/tr.po: update to 2.3.21
8364
8365         * lily/new-fingering-engraver.cc (position_scripts): take priority
8366         from head position.
8367
8368         * input/regression/finger-chords-order.ly (texidoc): new file.
8369
8370 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8371
8372         * make/ly-rules.make: 
8373         * stepmake/aclocal.m4: 
8374         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
8375
8376         * buildscripts/fixcc.py (rules): Leave space after operator.
8377
8378 2005-03-14  Werner Lemberg  <wl@gnu.org>
8379
8380         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
8381         top of the glyph with smooth curve.
8382
8383 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8384
8385         * Documentation/user/global.itely (Page layout): remove
8386         printpagenumber.
8387
8388 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
8389
8390         * input/regression/mensural-ligatures.ly: new file (with examples
8391         compiled by Pal Benko).
8392
8393         * Documentation/user/instrument-notation.itely: Bugfix: yet some
8394         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
8395         musicglyph access.  Many small beautifications in ancient
8396         examples.
8397
8398         * input/test/divisiones.ly: fixed indentation; small
8399         beautifications
8400
8401         * ly/engraver-init.ly: added FIXME comment
8402
8403         * scripts/lilypond-book.py,
8404         Documentation/user/lilypond-book.itely: added music fragment
8405         option "packed" to lilypond-book
8406
8407         * Documentation/user/instrument-notation.itely: Bugfix: added
8408         missing LedgerLineSpanner color setting in several places.  Added
8409         music fragment option "packed" to VaticanaContext example.
8410
8411 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8412
8413         * scm/define-grobs.scm (all-grob-descriptions): switch off
8414         Hyphen_spanner::set_spacing_rods 
8415
8416         * lily/lyric-hyphen.cc (print): add padding between syllable and
8417         hyphen.
8418         (print): shorten hyphen in tight situations (determine using
8419         minimum-length)
8420
8421         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
8422         0.4pt.
8423
8424 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8425
8426         * ly/titling-init.ly (bookTitleMarkup): Refinements.
8427
8428         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
8429         header/footer markings for regression-test.
8430
8431         * scm/backend-library.scm (output-scopes, header-to-file): Move
8432         from framework-tex.scm.
8433
8434         * scm/framework-ps.scm (output-framework)
8435         (output-preview-framework):
8436         * scm/framework-eps.scm (output-classic-framework)
8437         (output-framework): Use it.  Fixes collated files.
8438
8439 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8440
8441         * input/sakura-sakura.ly: 
8442         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
8443
8444         * buildscripts/guile-gnome.sh: Update.
8445
8446         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
8447
8448         * mf/aybabtu.pe.in: Capitalize Aybabtu.
8449
8450 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8451
8452         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
8453         culprit: always exit the loop if we find a rod, even if it has
8454         distance < 0. 
8455
8456         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
8457         algorithm.
8458
8459         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
8460         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
8461
8462         * scm/output-svg.scm (dashed-line): new  function body.
8463         
8464         * GNUmakefile.in: create .htaccess.
8465
8466 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8467
8468         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
8469
8470 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8471
8472         * VERSION (PACKAGE_NAME): release 2.5.15
8473
8474         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
8475
8476         * scm/framework-svg.scm (output-framework): put scaling in
8477         document header. Apply scaling only once.
8478         (output-framework): dump page size in px, not mm. 
8479
8480         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
8481         from font-size.
8482
8483         * lily/paper-outputter-scheme.cc (LY_DEFINE):
8484         ly:outputter-output-scheme, new function.
8485
8486         * scm/output-svg.scm (pango-description-to-svg-font): new function
8487
8488 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8489
8490         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
8491         target.
8492
8493         * input/typography-demo.ly: new file.
8494
8495 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8496
8497         * Documentation/user/global.itely (File structure): Add markup blocks
8498         to toplevel expressions.
8499         (Multiple movements, Creating titles): Add markup blocks.
8500
8501         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
8502         <libc-extension.hh>).
8503
8504         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
8505
8506         * flower
8507         * lily
8508         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
8509
8510 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8511
8512         * lily/accidental.cc: special bboxes for natural. 
8513
8514         * mf/feta-toevallig.mf: make stems heavier.
8515
8516         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
8517         texts as well.
8518
8519         * mf/feta-klef.mf: revise. 
8520
8521         * mf/feta-schrift.mf: make thinning of accent less pronounced.
8522
8523         * mf/feta-klef.mf: add rounded curve at top. 
8524         make thinnib a little heavier.
8525
8526 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8527
8528         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
8529
8530         * buildscripts/fixcc.py: New file.
8531
8532         * input/regression/utf8.ly: Update Debian font description.
8533
8534 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8535
8536         * stepmake/aclocal.m4: Fix test.
8537
8538 2005-03-09  Graham Percival  <gperlist@shaw.ca>
8539
8540         * Documentation/user/invoking.itely: added Sebastino Vigna's
8541         docs for the --jail option.
8542
8543 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8544
8545         * lily/stem.cc (print): only produce stemlets if there are no
8546         noteheads on this stem.
8547
8548         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
8549         don't crash on stemlet (visible stem without heads).
8550
8551         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
8552         unbroken situations. 
8553
8554         * scm/output-lib.scm (center-invisible): new function.
8555
8556         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
8557         wishes to determine loose column space.
8558
8559         * lily/font-config.cc (init_fontconfig): add
8560         fonts/{otf,type1,cff}  to path.
8561
8562         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
8563
8564         * mf/GNUmakefile (Module): install all fonts under otf/
8565
8566         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
8567         replace /fonts/otf/ by /ps/ 
8568
8569         
8570 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8571
8572         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
8573
8574         * lily/book.cc (process): Oops, add score_.header_.
8575
8576         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
8577
8578         * lily/parser.yy: Handle toplevel and book texts as score.
8579
8580         * scm/page-layout.scm (default-page-make-stencil):
8581         Bugfix: (page-properties rename.
8582
8583         * scm/backend-library.scm (ly:system): Typo.
8584
8585 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8586
8587         * stepmake/stepmake/executable-targets.make (installexe): don't
8588         strip installed executables
8589
8590         * lily/font-select.cc (get_font_by_design_size): revert
8591         pango_description_string as well.
8592
8593         * lily/system.cc (set_loose_columns): put loose column just left
8594         of next column.
8595
8596         * lily/include/group-interface.hh (extract_grob_array): rename
8597         from Pointer_group_interface__extract_grobs
8598
8599         * input/regression/ledger-line-minimum.ly (texidoc): new file.
8600
8601         * lily/ledger-line-spanner.cc (set_spacing_rods): new
8602         function. Keep ledgered note heads at a minimum distance.
8603         Introduce minimum-length-fraction
8604         (print): introduce length-fraction property.
8605
8606 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8607
8608         * tex/GNUmakefile: remove latin1.enc rules.
8609
8610 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8611
8612         * scm/titling.scm: Typo.
8613
8614         * input/regression/score-text.ly: Really add.
8615
8616         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
8617
8618 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8619
8620         * lily/open-type-font-scheme.cc:  new file.
8621
8622 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8623
8624         * scm/titling.scm (layout-extract-page-properties): Rename from
8625         page-properties.  Update callers.
8626
8627         * lily/lexer.ll (Lily_lexer):
8628         * lily/parser.yy: Junk lyric_markup state.
8629
8630         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
8631
8632         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
8633         Add texts parameter.
8634
8635 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8636
8637         * lily/lexer.ll (lyric_markup): New mode.
8638         (Lily_lexer::push_lyric_markup_state): New method.
8639         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
8640
8641         * lily/parser.yy (book_body):
8642         (toplevel_expression): Grok \markup texts.
8643
8644         * lily/score-scheme.cc (ly:music-scorify): 
8645         * scm/lily-library.scm (collect-music-for-book): Take texts
8646         parameter.
8647
8648         * lily/score.cc (texts_): New member.
8649
8650         * lily/paper-book.cc (systems): Format score texts.
8651
8652         * score-text.ly: New file.
8653
8654         * ttftool/SConscript:
8655         * kpath-guile/SConscript: New file.
8656
8657         * lily/SConscript:
8658         * SConstruct: Update.
8659
8660 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8661
8662         * VERSION (PACKAGE_NAME): release 2.5.14
8663
8664 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8665
8666         * lily/main.cc: Add dummy xgettext markers.
8667
8668 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8669
8670         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
8671         requirements
8672
8673         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
8674         executable is < 40k
8675
8676         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
8677         hack.
8678
8679 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8680
8681         * flower/libc-extension.cc:
8682         * flower/include/libc-extension.hh: [Open]BSD simply cast
8683         cookie/funopen declarations.
8684
8685         * stepmake/aclocal.m4: Check for libkpathsea.so.
8686
8687         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
8688         dl_kpse_find_file.
8689
8690 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8691
8692         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
8693         (open_library): alternative for static library.
8694
8695 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8696
8697         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
8698
8699         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
8700
8701         Drop run-time dependency on teTeX.
8702
8703         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
8704
8705         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
8706         KPATHSEA_LIBS in LIBS.
8707         (STEPMAKE_DLOPEN): New function.
8708
8709         * lily/font-config.cc (init_fontconfig): Use dir for directory,
8710         not path.
8711
8712         * flower/file-path.cc (directories): Rename from paths, as this
8713         return an array of directories (a single path).
8714
8715 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8716
8717         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
8718
8719         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
8720         new ly:kpathsea-find-file
8721
8722         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
8723
8724         * kpath-guile/GNUmakefile: new file
8725
8726         * buildscripts/gen-emmentaler-scripts.py (i): generate
8727         emmentaler-X.fontname as well.
8728
8729         * buildscripts/ps-embed-cff.py: new script
8730
8731         * scm/lily-library.scm: remove ps-embed-cff.
8732
8733         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
8734         font loading. 
8735
8736         * scm/font.scm (add-music-fonts): load dynamics/numbers through
8737         fontconfig as well.
8738
8739         * lily/font-config.cc (init_fontconfig): add cff/ too.
8740
8741         * ly/generate-embedded-cff.ly: capitalize.
8742
8743         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
8744         so as to register the pango font.
8745
8746         * lily/font-config.cc (init_fontconfig): add
8747         prefix/{otf,type1,mf/out} to fontconfig path.
8748
8749         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
8750         overrides all. 
8751
8752         * configure.in (gui_b): remove ec mftrace check
8753
8754         * config.hh.in: use lilypond-Major.Minor as data directory.
8755
8756         * scm/framework-ps.scm (dump-page): use output-units for landscape.
8757
8758         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
8759         name.
8760
8761 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8762
8763         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
8764         error messages.
8765
8766         * flower/libc-extension.cc:
8767         * flower/include/libc-extension.hh: [Open]BSD fixes for
8768         cookie/funopen declarations.
8769
8770 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8771
8772         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
8773         emmentaler.
8774
8775         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
8776         lcrm10.
8777
8778         * scm/define-markup-commands.scm (fontsize): new markup
8779         command. Also set baseline-skip
8780
8781 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
8782         
8783         * lily/main.cc (do_chroot_jail): paranoia security for webserver
8784         use.
8785
8786 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8787
8788         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
8789
8790         * lily/pdf.cc: remove PDF related files
8791
8792 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8793
8794         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
8795         <hamamatsu@gmx.de>
8796
8797 2005-03-05  Graham Percival  <gperlist@shaw.ca>
8798
8799         * Documentation/user/advanced-notation.itely: first draft
8800         of reorg done.
8801
8802         * Documentation/user/global.itely: fixed (sub)section
8803         bits of MIDI.
8804
8805 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8806
8807         * cygwin/mknetrel (extras): Bufix (Bertalan).
8808
8809         * Documentation/user/basic-notation.itely (Chords): @ref fix.
8810         * Documentation/user/instrument-notation.itely (Introducing chord
8811         names): Compile fix: must have unique name.
8812
8813 2005-03-02  Graham Percival  <gperlist@shaw.ca>
8814
8815         * Documentation/user/instrument-notation.itely: reorg.
8816
8817 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8818
8819         * scm/output-gnome.scm:
8820         * scm/output-svg.scm: Fix font scaling.
8821
8822 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8823
8824         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
8825         what link to use best.
8826
8827         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
8828         * Documentation/user/tutorial.itely (Automatic and manual beams):
8829         Fix @ref.
8830
8831         * lily/tweak-registration.cc (replace_grob_tweak): New function.
8832         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
8833         * scm/framework-gnome.scm (tweak): Use it.
8834
8835 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8836
8837         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
8838
8839         * scm/output-ps.scm (white-text): reinstate white-text
8840
8841 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8842
8843         * scm/output-ps.scm (offset-add): Remove.
8844
8845         * scm/lily-library.scm (offset-flip-y): New function.
8846         * scm/framework-gnome.scm (tweak): Use it.
8847
8848         * scm/output-gnome.scm (grob-cause): Add parameter.
8849
8850         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
8851         * scm/output-ps.scm (url-link): Move.
8852         (white-text): Warn user about brokenness.
8853
8854         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
8855         wrt ghostscript.
8856
8857 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8858
8859         * lily/slash-repeat-engraver.cc (try_music): always make slashes
8860         if body length smaller than measure length.
8861
8862         * scm/define-markup-commands.scm (with-url): oops. use Y extent
8863         for Y.
8864
8865         * ly/titling-init.ly (tagline): put default tagline in \paper
8866
8867 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8868
8869         * lily/kpath.cc: 
8870         * lily/pdf.cc (Pdf_file): Use more generic error messages.
8871
8872         * scm/lily-library.scm (version-not-seen-message): New function.
8873         * ly/init.ly: Use it.
8874
8875         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
8876         breaks as progess.
8877
8878         * scripts/lilypond-book.py (do_process_cmd): Do not lump
8879         whitespace with l10n message.
8880
8881         * scm/framework-tex.scm (convert-to-ps):
8882         (convert-to-dvi): Do not use overly specific l10n messages.
8883
8884         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
8885
8886         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
8887         merge stderr with stdout.  
8888
8889 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8890
8891         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
8892         Neeracher).
8893
8894 2005-02-29  Graham Percival  <gperlist@shaw.ca>
8895
8896         * Documentation/user/instrument-notation.teily: moved
8897         \arpeggio to Basic.
8898
8899         * Documentation/user/advanced-notation.itely: Articulation to
8900         Basic, a bunch of stuff from Basic moved to Advanced.
8901
8902         * Documentation/user/basic.itely: swapped various sections,
8903         reorganized Basic.
8904
8905 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8906
8907         * flower/memory-stream.cc: 
8908         * flower/libc-extension.cc: Remove obsolete #undefs.
8909
8910         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
8911         more carefully.
8912
8913 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8914
8915         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
8916         dependency.
8917
8918         * VERSION (PACKAGE_NAME): release 2.5.13
8919
8920         * GNUmakefile.in (web-ext): don't ship ps.gz
8921
8922         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
8923         stdout
8924
8925 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8926
8927         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
8928         without libintl.  Now it compiles too.
8929
8930 2005-02-28  Graham Percival  <gperlist@shaw.ca>
8931
8932         * Documentation/user/basic-notation.itely,
8933         instument-notation.itely, advanced-notation.itely:
8934         split up contents of notation.itely.
8935
8936         * Documentation/user/notation.itely: file removed.
8937
8938         * Documentation/user/invoking.itely, converters.itely:
8939         moved convert-ly info to invoking.itely.
8940
8941         * Documentation/user/global.itely, changing-defaults.itely,
8942         sound-output.itexi: moved global settings, file layout, and
8943         sound into global.itely.
8944
8945         * Documentation/user/sound-output.itexi: file removed.
8946
8947         * Documentation/user/lilypond.tely: removed links to
8948         notation.itely and sound.itely.
8949
8950 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8951
8952         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
8953
8954         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
8955  
8956         * THANKS: add sponsor.
8957
8958         * scm/define-markup-commands.scm (with-url): new markup command.
8959
8960         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
8961         tagline.
8962         
8963         * scm/output-tex.scm (url-link): stub.
8964
8965         * scm/output-ps.scm (url-link): new function.
8966
8967         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
8968         ly:set-point-and-click
8969
8970 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8971
8972         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
8973         based on pdf-viewer setting.
8974
8975         * scm/framework-ps.scm (write-preamble): Find and set preferred
8976         pdf-viewer.
8977
8978 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8979
8980         * Documentation/user/point-and-click.itely: update for PDF point &
8981         click.
8982
8983         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
8984         editors based on EDITOR setting.
8985
8986 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8987
8988         * scm/*: Oops, more grand 2005 replace bits.
8989
8990 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8991
8992         * ps/music-drawing-routines.ps: new routine: insert PDF mark
8993
8994         * scm/output-ps.scm (grob-cause): point & click support for
8995         PostScript
8996
8997 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8998
8999         * lily/input-scheme.cc (LY_DEFINE): rename to
9000         ly:input-file-line-column
9001
9002 2005-02-26  Graham Percival  <gperlist@shaw.ca>
9003
9004         * Documentation/user/examples.itely: small fix from Steve Doonan.
9005
9006         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
9007
9008         * THANKS: added Yuval Harel.
9009
9010         * Documentation/user/{various}: inserted two spaces after a period.
9011
9012         * Documentation/user/lilypond.tely: added framework for reorg.
9013
9014         * Documentation/user/basic-notation.itely, instrument-notation.itely,
9015         advanced-notation.itely, global.itely: new files, placeholder for
9016         future reorg.
9017
9018 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
9019
9020         * Documentation/user/notation.itely: revamped Polyphony section
9021         
9022 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9023
9024         * Documentation/user/lilypond-book.itely (Music fragment options):
9025         doc fontload.
9026
9027         * Documentation/user/changing-defaults.itely (Text encoding): add
9028         fontload option to utf8 include
9029
9030         * scripts/lilypond-book.py (compose_ly): add fontload option
9031
9032         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
9033         force-eps-font-include option.
9034
9035         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
9036         black triangle
9037
9038         * Documentation/user/invoking.itely (Editor support): remove
9039         lilypond-latex section.
9040
9041         * scripts/lilypond-latex.py (Module): remove script.
9042
9043         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
9044         overwrite .log. 
9045
9046         * lily/main.cc: remove -m, --no-layout
9047
9048         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
9049         to define. We don't want to override fprintf everywhere.
9050
9051 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9052
9053         * cygwin/lilypond.hint: 
9054         * cygwin/README.in: Update dependencies.
9055
9056         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
9057         Bugfix: do not pollute CPPFLAGS, LIBS.
9058
9059         * cygwin/mknetrel (extras): Cross compile fixes.
9060
9061         * ttftool/util.c: 
9062         * ttftool/ttfps.c: 
9063         * ttftool/ps.c: #include libc-extension.hh
9064
9065         * flower/include/libc-extension.hh:
9066         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
9067         wrapper using funopen.
9068         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
9069         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
9070
9071         * config.hh.in:
9072         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
9073         (AC_CHECK_HEADERS): Add libio.h
9074
9075         * scripts/convert-ly.py: Uniformize, internationalize.
9076         (2.5.2): Remove fatal encoding rule.
9077         (2.5.13): Handle latin1 encoding gracefully.
9078
9079 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9080
9081         * HACKING: Fix line breaks.
9082
9083 2005-02-23  Werner Lemberg  <wl@gnu.org>
9084
9085         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
9086         contains those two files.
9087
9088 2005-02-21  Werner Lemberg  <wl@gnu.org>
9089
9090         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
9091         to improve overlap removal process.
9092
9093         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
9094         left and right ending.  This ensures better overlapping.
9095         Update all callers.
9096         ("lineprall"): Don't use draw_gridline to get better overlapping.
9097
9098 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9099
9100         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
9101
9102         * Documentation/topdocs/NEWS.tely (Top): oops.
9103
9104 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
9105
9106         * HACKING: new file.
9107
9108         * input/regression/utf8.ly (portuguese): added a portuguese example
9109         to show latin1 accents.
9110
9111 2005-02-21  Pal Benko  <benkop@freestart.hu>
9112
9113         * lily/mensural-ligature-engraver.cc:
9114         * lily/mensural-ligature.cc:
9115         * lily/include/mensural-ligature.hh: new algorithm implemented
9116
9117         * scm/define-grob-properties.scm: join-left killed (add-join may
9118         be used); join-left-amount changed to join-right-amount
9119
9120 2005-02-21  Graham Percival  <gperlist@shaw.ca>
9121
9122         * Documentation/user/notation.itely: small but urgent fix.
9123
9124 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
9125
9126         * lily/duration-scheme.cc: bugfix: correct parameters to
9127         SCM_ASSERT_TYPE.
9128
9129         * THANKS: added Pal.
9130
9131         * Documentation/user/notation.itely: bugfix: unTeXified
9132         $\\backslash$.  Bugfix: yet another glyph renaming victim:
9133         "timesig.*x/y" -> "timesig.*xy".
9134
9135 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9136         
9137         * VERSION (PACKAGE_NAME): release 2.5.12
9138
9139 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9140
9141         * ly/engraver-init.ly: set tieWaitForNote to #t by default
9142
9143         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
9144
9145         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
9146
9147         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
9148
9149 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9150
9151         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
9152         latin1..utf-8.
9153
9154         * input/regression/stanza-number.ly:
9155         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
9156
9157         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
9158
9159 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9160
9161         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
9162         NEWS. Refer to website for older news.  
9163
9164         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
9165         .HTML. This should be done for specific servers only.
9166
9167         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
9168         .ly image examples.
9169
9170         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
9171         in layer 0 too.
9172
9173         * scm/define-context-properties.scm
9174         (all-user-translation-properties): add tieWaitForNote
9175
9176         * scm/define-grobs.scm (all-grob-descriptions): add
9177         Tie_column::before_line_breaking
9178
9179         * lily/tie.cc (get_column_rank): new function
9180
9181         * lily/tie-column.cc (before_line_breaking): new function.
9182         (werner_directions): take into account ties that start on
9183         different columns.  
9184
9185         * lily/score-engraver.cc (set_columns): move add_column() so we
9186         have column rank available.
9187
9188         * lily/tie.cc (get_column_rank): new function.
9189
9190         * input/regression/utf8.ly (japanese): add japanese lyrics.
9191
9192         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
9193
9194         * THANKS: add Steve D
9195
9196         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
9197         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
9198
9199 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
9200
9201         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
9202         to show harmonic notes
9203         * scm/define-markup-commands.scm: in \markup-by-number
9204         "dots-dot" -> "dots.dot" to show dotted notes
9205
9206 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9207
9208         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
9209
9210         * flower/memory-stream.cc (writer): new file.
9211
9212         * configure.in: add endian test.
9213
9214 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
9215
9216         * Documentation/user/examples.itely: small
9217         simplification/beautification
9218
9219         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
9220         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
9221         notation manual.
9222
9223         * lily/mensural-ligature.cc: bugfix: another few victims of the
9224         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9225
9226         * ly/gregorian-init.ly: commit some experimental code for hi-level
9227         ligature input language lying around here for several months.
9228
9229         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
9230         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9231
9232         * lily/vaticana-ligature-engraver.cc: bugfix: another few
9233         "x-y-z"->"x.y.s-z" fixes.
9234
9235 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9236
9237         * scm/framework-pdf.scm (scm): new file
9238
9239         * lily/include/pdf.hh (class Pdf_file): new file.
9240
9241         * lily/pdf.cc (write_trailer): new file.
9242
9243 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
9244
9245         * input/regression/color.ly: new file
9246
9247         * lily/stencil.cc (interpret_stencil_expression):
9248         when a color expression is encountered: save current color,
9249         process the rest of the expression, and restore previous color.
9250
9251         * lily/system.cc (get_line): check all grobs for color property and
9252         prepare the stencil scheme expressions for further processing.
9253         Fix layer-loop.
9254
9255         * scm/define-grob-properties.scm: introduce the color property.
9256
9257         * scm/output-lib.scm: color helper functions.
9258
9259         * scm/output-ps.scm: introduce setcolor/resetcolor.
9260
9261 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9262
9263         * ly/*.ly, input/regression/*.ly: Added missing \version
9264         statements in some files.
9265
9266 2005-02-15  Graham Percival  <gperlist@shaw.ca>
9267
9268         * Documentation/user/notation.itely: minor editing.
9269
9270         * Documentation/user/converters.itely: updated convert-ly bugs.
9271
9272         * Documentation/user/lilypond-book.itely: add info about using
9273         feta characters in latex.
9274
9275 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9276
9277         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
9278
9279 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9280
9281         * scm/define-grob-properties.scm (all-user-grob-properties):
9282         removed 'dashed property.
9283
9284 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9285
9286         * scm/lily.scm (define-safe-public): new macro for defining
9287         variables that can be used in --safe mode. Use it in *.scm
9288         instead of manually setting safe-objects in safe-lily.scm.
9289
9290 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9291         
9292         * lily/slur.cc: Slur-dash patch by Bertalan.
9293
9294         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
9295
9296         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
9297
9298 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9299
9300         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
9301
9302 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9303
9304         * mf/GNUmakefile: teTeX-3.0 install fix.
9305
9306         * Cygwin patch from Bertalan.
9307
9308         * stepmake/stepmake/metafont-rules.make: Remove bashism.
9309
9310 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9311
9312         * GNUmakefile.in: 
9313         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
9314
9315         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
9316         2.0.x compatibility.
9317
9318 2005-02-08  Werner Lemberg  <wl@gnu.org>
9319
9320         * mf/feta-din-code.mf: Format; clean up code.
9321         Replace `---' with `--' plus explicit path directions.
9322         (linethickness#, stafflinethickness#): Remove.
9323         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
9324         ("dynamic s"): Improve shape.
9325         ("dynamic p"): Improve shape.
9326         Replace `draw' with better outline approximation.
9327         ("dynamic r"): Improve shape.
9328         Don't call `fill' and `draw' at the same time.
9329
9330 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9331
9332         * SConstruct (symlink):
9333         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
9334         build fix: add enc symlink.
9335
9336         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
9337
9338         Support for DESTDIR besides prefix=/foo
9339
9340         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
9341
9342         * stepmake/stepmake/*.make:
9343         * */GNUmakefile:
9344         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
9345
9346         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
9347
9348         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
9349         mawk in fontforge (date) test.
9350
9351 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9352
9353         * scm/font.scm (make-century-schoolbook-tree): add NCS as
9354         font-family=roman. Add Luxi Sans as sans
9355
9356 2005-02-07  Graham Percival  <gperlist@shaw.ca>
9357
9358         * Documentation/user/notation.itely: add warning about
9359         percent repeats and Voice contexts.
9360
9361         * Documentation/user/lilypond-book.itely: clarified the
9362         necessity of dvips -u arguments.
9363
9364 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9365
9366         * THANKS: Added a bunch of bug hunters.
9367
9368 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9369
9370         * scm/framework-ps.scm (output-preview-framework): bugfix.
9371
9372         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
9373         o/ for chord modifier..
9374
9375         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
9376
9377         * lily/drum-note-performer.cc:  remove unused (thanks Michael
9378         Welsh Duggan). 
9379
9380 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9381
9382         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
9383
9384         * ly/titling-init.ly: Do not also print intstrument in header on
9385         first page.  Do not print page number on first and only page.
9386
9387 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9388
9389         * input/regression/*.ly: remove old-relative everywhere
9390
9391         * lily/music-sequence.cc (simultaneous_relative_callback): do
9392         what-if analysis on copy, not on original. Fixes old-relative
9393         compatibility.
9394
9395         * scm/backend-library.scm (postscript->png): space before
9396         --verbose.
9397         
9398 2005-02-05  Werner Lemberg  <wl@gnu.org>
9399
9400         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
9401         is defined.
9402
9403         * mf/feta-alphabet.mf: Define `staffsize#'.
9404         Include `feta-params.mf'.
9405         s/staffheight/design_size/.
9406
9407         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
9408
9409         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
9410
9411         * mf/feta-nummer-code.mf: Reformatted.
9412         (draw_six): Use outline intersection to avoid a self-intersecting
9413         path.
9414         ("Numeral comma"): Fix serious outline glitches.  This slightly
9415         changes the glyph shape.
9416         ("Numeral dash"): Use `draw_rounded_block'.
9417         ("Numeral dot"): Use `drawdot'.
9418         ("Numeral 1"): Assure identical tangent directions for the
9419         intersection points of paths.  The glyph shape improvement is only
9420         visible at very high magnifications.
9421         ("Numeral 2"): Use `solve' macro to make the lower right part of
9422         the glyph outline touch the x axis exactly.  This changes the
9423         glyph shape.
9424         Minor fixes for better overlap removal support.
9425         ("Numeral 4"): Make lefter corner `rounder'.
9426         ("Numeral 5"): Assure identical tangent directions for the
9427         intersection points of paths.  This improves the glyph shape at
9428         high magnifications.
9429         ("Numeral 7"): Use `solve' macro to make the upper right part of
9430         the glyph outline touch the metrics box exactly.  This changes the
9431         glyph shape.
9432         Avoid corner in the upper left part of the glyph (causing a minor
9433         shape change).
9434
9435         * mf/feta-ital-*.mf: Removed.  Unused.
9436
9437 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9438
9439         * VERSION (PATCH_LEVEL): release 2.5.11
9440
9441         * input/regression/fill-line-test.ly: new file.
9442
9443         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
9444         emmentaler name, eg. emmentaler-23. 
9445
9446 2005-02-04  Christian Hitz  <chhitz@gmx.net>
9447
9448         * scm/scm/define-markup-commands.scm (fill-line): rework for better
9449         alignment with centered texts
9450
9451         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
9452         list of paddings
9453
9454 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9455
9456         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
9457
9458         * lily/note-column.cc (translate_rests): call flush_extent_cache()
9459         of parents when translating rests. Fixes: c-chord-rest.ly 
9460
9461         * lily/include/dimension-cache.hh (struct Dimension_cache): add
9462         dimension_callback_ member.
9463
9464         * lily/grob.cc (flush_extent_cache): new function. Force recompute
9465         of extents.
9466
9467 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9468
9469         * all but lily/*: The grand 2004/2005 replace.
9470
9471 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9472
9473         * lily/*: add space after ,  
9474
9475         * scm/music-functions.scm (has-request-chord): don't use
9476         ly:music-name anywhere. Fixes <<\\>> notation. 
9477
9478         * scm/define-markup-commands.scm (box): use font-size for
9479         padding. Fixes boxed-rehearsal-marks.ly
9480
9481         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
9482         identifier definition too, so foo = \lyrics { ...   } bar = #1
9483         doesn't complain about "bar" being LYRICS_STRING.
9484
9485         * lily/paper-def.cc (find_pango_font): new routine; Store
9486         pango_fonts in hash tab too. This is necessary for retrieving
9487         Pango_fonts::physical_font_tab() later on.
9488  
9489         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
9490         crash if psname is null.
9491
9492         * lily/lily-guile.cc (ly_hash2alist): new function
9493
9494         * Documentation/user/changing-defaults.itely (Text encoding):
9495         rewrite. 
9496
9497         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
9498         -> font_filename mapping.
9499
9500         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
9501         ly_pango_font_physical_fonts
9502
9503         * scm/framework-ps.scm (supplies-or-needs): extract names from
9504         physical Pango_fonts.
9505
9506         * utf8.ly: new file.
9507
9508 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9509
9510         * Documentation/user/changing-defaults.itely (Page layout): add
9511         doco about systemSeparatorMarkup.
9512
9513         * scm/page-layout.scm (default-page-make-stencil): add-to-page
9514         function.
9515         (default-page-make-stencil): insert system separators.
9516
9517         * scm/define-markup-commands.scm (hcenter): add
9518         (beam): add.
9519
9520 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9521
9522         * scm/output-ps.scm (ez-ball): reinstate ez notation.
9523
9524 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9525
9526         * lily/main.cc: Spell backend consistently.  Sort options.
9527
9528 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9529
9530         * scripts/lilypond-book.py (Module): revert @include.
9531         
9532 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9533
9534         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
9535         Bugfix: @include .tex (not .texi).  Small cleanups.
9536
9537         * stepmake/bin/add-html-footer.py (i18n): New function.
9538
9539 2005-01-31  Werner Lemberg  <wl@gnu.org>
9540
9541         * mf/feta-nummer.mf: Removed.  Unused.
9542
9543 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9544
9545         * lily/ : 2004 -> 2005 s&r
9546
9547         * scm/file-cache.scm (cached-file-contents): add file. Read each
9548         file only once.
9549
9550         * scm/font.scm (add-pango-fonts): change order. Medium weight is
9551         now default.
9552
9553         * VERSION: release 2.5.10
9554         
9555         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
9556
9557         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
9558
9559         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
9560         that both X and Y extents of bbox are non-nil.
9561
9562 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9563
9564         * scm/chord-name.scm (alteration->text-accidental-markup): change
9565         - to . 
9566
9567         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
9568
9569         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
9570
9571         * Documentation/user/invoking.itely (Invoking lilypond): add note
9572         about EPS backend.
9573
9574         * scm/framework-eps.scm: new file: create per-system/per-page EPS
9575         files for inclusion in lilypond-book document.
9576
9577         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
9578
9579         * input/tutorial/lbook-texi-test.texi: new file.
9580
9581         * scm/safe-lily.scm (safe-objects): add
9582         {begin,end}-of-line-(in)?visible as safe.
9583  
9584 2005-01-30  Graham Percival  <gperlist@shaw.ca>
9585
9586         * Documentation/user/changing-defaults.itely: fixed example
9587         of (dynamics).
9588
9589 2005-01-29  Graham Percival  <gperlist@shaw.ca>
9590
9591         * lily/main.cc: fix info about -o=FILE.
9592
9593 2005-01-29  Werner Lemberg  <wl@gnu.org>
9594
9595         * mf/feta-toevallig.mf ("Natural"): Completely changed the
9596         construction to assure smooth transition from straight to curved
9597         lines.
9598
9599 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9600
9601         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
9602         stencils.
9603
9604         * ps/lilyponddefs.ps: add start-page, start-system doesn't
9605         translate to top of page. Fixes alignment problems of
9606         lilypond-generated EPS files.
9607
9608 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9609
9610         * scm/part-combiner.scm (analyse-spanner-states): trigger on
9611         crescendo-end as well, since Decrescendo maybe ended with Stop
9612         Crescendo.). Fixes: partcombine-diminuendo.ly
9613
9614         * scm/script.scm (default-script-alist): swap portato symbols.
9615
9616         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
9617
9618         * lily/paper-outputter-scheme.cc (LY_DEFINE):
9619         ly:outputter-port. New function.
9620
9621         * scm/framework-ps.scm (output-classic-framework): dump a
9622         -systems.texi too
9623         (output-classic-framework): dump multiple systems on an "infinite"
9624         page EPS including fonts. 
9625
9626         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
9627         .eps files for both texi and tex formats. Use PNG coming from
9628         lilypond.
9629         
9630 2005-01-28  Graham Percival  <gperlist@shaw.ca>
9631
9632         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
9633
9634         * scripts/lilypond-latex.py: fix info about -o=FILE.
9635
9636 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9637
9638         * ly/generate-embedded-cff.ly: write .cff.ps files.
9639
9640         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
9641
9642         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
9643         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
9644
9645 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9646
9647         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
9648
9649 2005-01-28  Werner Lemberg  <wl@gnu.org>
9650
9651         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
9652         macros.
9653         (draw_bulb): Improved.
9654
9655         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
9656         metapost bug.
9657         (draw_pedal_P): Use soft_end_penstroke.
9658         (draw_pedal_d): Use soft_start_penstroke.
9659
9660         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
9661         path.
9662         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
9663         doesn't change the glyph shape.
9664
9665         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
9666         changing the shape) to avoid fontforge warnings.
9667
9668         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
9669         soft_end_penstroke and fix glyph shape.
9670
9671 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9672
9673         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
9674
9675 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9676
9677         * scm/define-markup-commands.scm (line): filter out empty stencils
9678         from line command.
9679
9680         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
9681         amount.
9682
9683 2005-01-27  Graham Percival  <gperlist@shaw.ca>
9684
9685         * Documentation/user/notation.itely: added info about what
9686         \voiceFoo does.  Also rewrote warning about marks at
9687         a line break.
9688
9689         * Documentation/user/changing-defaults.itely: added info
9690         about putting dynamics in parenthesis and brackets.
9691
9692 2005-01-27  Werner Lemberg  <wl@gnu.org>
9693
9694         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
9695
9696 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9697
9698         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
9699         portato-direction.ly
9700
9701         * lily/beam.cc (consider_auto_knees): add beam height to
9702         threshold. Fixes: knee-multiple-beam.ly
9703
9704         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
9705         pedal line spanners. Fixes: instrument-center-pedal.ly
9706
9707         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
9708         if encountering barline. Fixes: auto-beam-repeat.ly
9709
9710 2005-01-26  Werner Lemberg  <wl@gnu.org>
9711
9712         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
9713         overlapping.
9714
9715         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
9716         with inflections for the 1/2 sharp glyph.
9717
9718         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
9719         connection between `t' and `r'.
9720         Unify bulb with the rest of `r' to avoid grazing outlines which
9721         confuses the overlap removal algorithm of fontforge.
9722
9723         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
9724         inflections.
9725         (draw_cross): Fix shape to have uniform thickness in corners.
9726
9727         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
9728         to avoid an uneven number of self-intersections; this confuses
9729         fontforge.
9730         Fix a slight bug in the shape at left bottom (which is visible only
9731         at high magnifications).
9732         `Center' the stem horizontally to avoid overlapping.
9733
9734 2005-01-24  Werner Lemberg  <wl@gnu.org>
9735
9736         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
9737         to `asis'.
9738         (fet_begingroup): Save group name in string `feta_group'.
9739         (fet_endgroup): Updated.
9740         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
9741
9742         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
9743
9744         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
9745         in metapost.
9746
9747 2005-01-24  Graham Percival  <gperlist@shaw.ca>
9748
9749         * Documentation/user/notation.itely: really minor editing.
9750
9751 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9752
9753         * Documentation/user/examples.itely: minor editing.
9754
9755         * Documentation/user/changing-defaults.itely: minor editing.
9756
9757         * Documentation/user/notation.itely: clarified info on polyphony
9758         and \addlyrics.
9759
9760 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9761
9762         * scm/output-gnome.scm: 
9763         * scm/output-svg.scm:
9764         * scm/lily-library.scm (font-name-style): Update font name
9765         kludging for fontconfig use.
9766
9767 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
9768
9769         * scm/define-markup-commands.scm: Document right-align and
9770         larger markup commands. Remove "TODO" from the topmost comment
9771         "each markup function should have a doc string." More consistent
9772         use of new-lines.
9773
9774 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9775
9776         * Documentation/user/changing-defaults: removed info about
9777         copyright symbol, since it's likely to change soon.
9778         Added info about betweensystemspace.
9779
9780         * Documentation/user/notation.itely: minor fixes.
9781
9782         * Documentation/user/lilypond.tely,
9783         Documentation/user/music-glossary.tely: changed copyright
9784         date to 2005 instead of 2004.
9785
9786         * input/test/volta-chord-names.ly: added old example back.
9787
9788 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9789
9790         * mf/feta-beugel.mf: use design size 20 (not 15).
9791
9792         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
9793         change name to aybabtu completely
9794
9795 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9796
9797         * buildscripts/gen-emmentaler-scripts.py (outdir): add
9798         design_size to fontname
9799
9800 2005-01-19  Werner Lemberg  <wl@gnu.org>
9801
9802         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
9803         mf/feta-schrift.mf: s/p/pat/ if a path variable.
9804
9805         * mf/feta-autometric.mf (set_char_box): Add code which emits
9806         specials for mf2pt1 if run with metapost.
9807         (to_bp): New macro for mf2pt1.
9808
9809 2005-01-18  Graham Percival  <gperlist@shaw.ca>
9810
9811         * Documentation/user/changing-defaults: added info on
9812         creating a copyright symbol.
9813
9814 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9815
9816         * VERSION: release 2.5.9
9817         
9818 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
9819
9820         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
9821
9822         * Documentation/user/notation.itely: Document
9823         score-override-auto-beam-setting Fix documentation for
9824         revert-auto-beam-setting.
9825
9826 2005-01-18  Werner Lemberg  <wl@gnu.org>
9827
9828         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
9829         (procset): New function to define a procset resource.
9830         (ps-embed-pfa): New function to define a font resource.
9831         (setup): New function to define a `Setup' environment.
9832         (preamble): Use new functions.
9833
9834         * ps/lilypond.defs (init-lilypond-parameters): New function to
9835         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
9836
9837 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9838
9839         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
9840
9841 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
9842
9843         * scm/define-markup-commands.scm: Change number->markletter-string
9844         to take two arguments (vector number). Add number->mark-alphabet-vector
9845         and markalphabet markup command.
9846
9847         * scm/translation-functions.scm: Add format-mark-box-alphabet,
9848         format-mark-alphabet, format-mark-box-barnumbers and
9849         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
9850
9851 2005-01-17  Graham Percival  <gperlist@shaw.ca>
9852
9853         * Documentation/user/examples.itely: add SATB automatic piano
9854         reduction template.
9855
9856         * Documentation/user/notation.itely: added info about changing
9857         partcombine texts.  Also adds examples of alternate lyrics.
9858
9859         * Documentation/user/changing-defaults.itely: added warning
9860         about \RemoveEmptyStaffContext overriding previous changes.
9861
9862 2005-01-17  Werner Lemberg  <wl@gnu.org>
9863
9864         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
9865         feta-alphabet*.
9866
9867 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9868
9869         * python/lilylib.py (make_ps_images): don't do final showpage for
9870         multi-page documents.
9871         
9872         * VERSION (MY_PATCH_LEVEL): release 2.5.8
9873
9874 2005-01-16  Graham Percival  <gperlist@shaw.ca>
9875
9876         * Documentation/user/lilypond.tely: changed order of appendices;
9877         unified index should be last.
9878
9879         * Documentation/user/notation.itely: add example of key signatures
9880         and info about Staff.printKeyCancellation.
9881
9882 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9883
9884         * lily/include/repeated-music.hh (class Repeated_music): change
9885         into "namespace" class.
9886
9887         * lily/event.cc: remove Key_change_event.
9888
9889         * lily/include/transposed-music.hh (class Transposed_music): remove.
9890
9891         * lily/transposed-music.cc: remove
9892
9893         * lily/include/relative-music.hh: remove.
9894
9895         * lily/include/music-sequence.hh (struct Music_sequence): change
9896         into "namespace" class.
9897
9898         * lily/untransposable-music.cc (Module): remove
9899
9900         * lily/include/un-relativable-music.hh (Module): remove
9901
9902         * lily/include/untransposable-music.hh (Module): remove
9903
9904         * lily/include/music-list.hh (Module): remove file
9905
9906         * lily/un-relativable-music.cc: remove file.
9907
9908 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9909
9910         * lily/parser.yy: Compile fix.
9911
9912 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9913
9914         * lily/include/music.hh (class Music): unvirtualize transpose().
9915
9916         * lily/sequential-music.cc: remove file.
9917
9918         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
9919
9920         * lily/slur-scoring.cc (get_best_curve): only switch on
9921         DEBUG_SLUR_SCORING for non NDEBUG builds.
9922
9923         * lily/include/music.hh (class Music): replace Music::start_mom()
9924         by start-callback property
9925
9926         * lily/include/grace-music.hh: remove file. 
9927
9928         * lily/stem.cc (height): robustness fix.
9929
9930         * lily/time-scaled-music.cc: remove file.
9931
9932         * lily/include/music.hh (class Music): include SCM init argument.
9933         (class Music): replace Music::get_length() virtual by
9934         length-callback property everywhere.
9935
9936         * scripts/convert-ly.py (conv): add  # to \property scalar value.
9937
9938         * mf/GNUmakefile: don't install *list.ly
9939
9940 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9941
9942         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
9943
9944 2005-01-12  Werner Lemberg  <wl@gnu.org>
9945
9946         This patch addresses the following problems in the feta sources
9947         files which contribute to the fetaXX fonts.
9948
9949         . Many fixes for rasterization at low resolutions (consistent use of
9950           `vround' and `hround', integer shift values for paths, applying
9951           `eps' for mirrored paths, use of `define_whole_pixels' and
9952           friends, etc.) -- while this probably looks like a waste of time
9953           it has revealed deficiencies in some glyph shapes.  See comment at
9954           the end of feta-params.mf how vertical symmetry is achieved.
9955
9956         . The `---' operator has been replaced everywhere with `--'; this
9957           both improves and considerably reduces the font size after
9958           conversion with mf2pt1.
9959
9960         These change aren't explicitly mentioned below since virtually all
9961         glyphs are affected.
9962
9963         Other notable differences:
9964
9965         . Glyphs from feta-accordion.mf now have charboxes around the
9966           outline.
9967
9968         . Fixed incorrect charbox for `accDot'.
9969
9970         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
9971
9972         . Fixed position of the bow in the `upprall' glyph and its siblings.
9973
9974         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
9975           dependent on the staff line thickness to avoid touching the middle
9976           staff line at smaller sizes.
9977
9978         . Largely extended output for feta-testXX: Where useful, glyphs
9979         are shown both between and on staff lines.
9980
9981
9982         * mf/feta-params.mf (staff_space_rounded,
9983         stafflinethickness_rounded, linethickness_rounded,
9984         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
9985         Update all code which uses them where appropriate.
9986         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
9987         New variables used to control rasterization at low resolutions.  Set
9988         to zero if feta code is processed with metapost.
9989
9990         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
9991         (draw_rounded_block, draw_square_block): Updated to use `--' only.
9992         (flare_path): Updated.
9993         Make it work with `filldraw' (but only circular pens).
9994         (hfloor, vfloor, hceiling, vceiling): New macros.
9995
9996         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
9997         Use `draw' again in mf mode to have good pixel dropout control.
9998         Fix intersection points of horizontal lines with circle.
9999         ("accDot"): Fix parameters for set_char_box.
10000         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
10001         control.
10002
10003         * mf/feta-banier.mf: Updated.
10004
10005         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
10006         testing.
10007         (undraw_inside_ellipse): Remove `center' argument.  Update all
10008         callers.
10009         (draw_brevis): New macro, called by "Brevis notehead".
10010         (draw_whole_triangle_head): New macro, called by "Whole
10011         trianglehead".
10012         (draw_small_triangle_head): Use `filldraw'.
10013
10014         * mf/feta-eindelijk.mf: Remove useless global group.
10015         Updated.
10016
10017         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
10018         `filldraw'.
10019
10020         * mf/feta-pendaal.mf: Updated.
10021
10022         * mf/feta-puntje.mf: Updated.
10023
10024         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
10025         less points.
10026         ("Flageolet"): Use `draw' again in mf mode to have good pixel
10027         dropout control.
10028         ("Varied Coda"): Use `draw_block'.
10029         (draw_comma): Fix typo.
10030         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
10031         pixel dropout control.
10032
10033         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
10034         position of bow.
10035
10036         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
10037         sizes.
10038
10039         * mf/feta-toevallig.mf (remember_pic): New variable, used for
10040         testing.
10041         (draw_meta_sharp): Much simplified.
10042         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
10043
10044         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
10045
10046 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10047
10048         * Documentation/user/notation.itely (Ancient rests): Fix typo
10049         (thanks Anthony)
10050
10051 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10052
10053         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
10054
10055         * lily/main.cc (setup_paths): Add cff.
10056
10057         * mf/GNUmakefile (foe): Include actual target %.cff.
10058         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
10059
10060 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10061
10062         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
10063         suffix for main_input_b_.
10064
10065         * scm/music-functions.scm (toplevel-music-functions):
10066         precompute music lengths for music expressions.  
10067
10068 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10069
10070         * lily/include/input.hh (class Input): new `end_' slot for end of
10071         input. Renamed defined_str0_ to start_.
10072
10073         * lily/input.cc (Input): Add Input::Input (Input const &) and
10074         remove Input::Input (Source_file*, char const *). Use the new
10075         slots.
10076         (set_location): method used by bison to propagate input
10077         locations (YYLLOC_DEFAULT).
10078         (end_line_number, end_column_number, step_forward): new methods
10079         
10080         * lily/input-scheme.cc (ly:input-both-locations): new function,
10081         similar to ly:input-location, but also return the end line and
10082         column.
10083
10084         * lily/include/includable-lexer.hh: 
10085         * lily/includable-lexer.cc: 
10086         * lily/include/lily-lexer.hh (class Lily_lexer): 
10087         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
10088         Includable_lexer to Lily_lexer, in order to update lexloc (the
10089         yylloc), a new slot of Lily_lexer.
10090         (here_input, LexerError): simplify by using the lexloc slot (aka
10091         yylloc)
10092
10093         * lily/lexer.ll: #define yylloc to use input locations (it may
10094         be useless here?). Fixed the #embedded_scm rule (step the location
10095         forward in order to skip the sharp sign before parsing the scheme
10096         expression)
10097
10098         * lily/include/lily-parser.hh (class Lily_parser): 
10099         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
10100         here_input()
10101         (parser_error): overload for more precise locations of errors.
10102
10103         * lily/parser.yy (YYLTYPE): set location type to Input
10104         (YYLLOC_DEFAULT): use Input::set_location()
10105         (yylex): add the YYLTYPE* location parameter.
10106         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
10107         Give an Input parameter to THIS->parser-error() for more accurate
10108         messages.
10109
10110 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10111
10112         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
10113
10114         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
10115         on BEAMQUANTING for non-NDEBUG builds.
10116
10117         * lily/stem.cc (head_count): performance: avoid String::String()
10118         inside oft called function.
10119
10120 2005-01-09  Graham Percival  <gperlist@shaw.ca>
10121
10122         * Documentation/user/examles.itely: attempted fix for broken
10123         string quartet template.
10124
10125         * Documentation/user/notation.itely: remove unnecessary broken
10126         link.
10127
10128 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10129
10130         * VERSION (PACKAGE_NAME): release 2.5.7
10131
10132 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10133
10134         * config.make.in (METAFONT): Append -progname=mf, fixes use with
10135         mf-nowin for teTeX-3.0.  Backportme.
10136
10137         * scm/output-svg.scm (utf8-string): New function.
10138
10139         * scm/output-gnome.scm (utf8-string): New function.
10140         (otf-name-mangling): Remove.
10141
10142         * lily/pango-font.cc (Pango_font): Use font string iso font
10143         filename for utf8-text.
10144
10145         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
10146         name.
10147
10148 2005-01-08  Graham Percival  <gperlist@shaw.ca>
10149
10150         * Documentation/user/notation.itely: add info about
10151         Staff.extraNatural = ##f in Pitches section.  Also
10152         fixed some minor issues in the Vocal music section.
10153
10154 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10155
10156         * scm/output-ps.scm (white-text): comment out Helvetica font,
10157         which is broken for my GS install.
10158
10159         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
10160         which provides a tighter bbox.
10161
10162         * scm/define-grobs.scm (all-grob-descriptions): remove all
10163         extra-offsets from definitions.
10164
10165 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
10166
10167         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
10168         add tuning for 4-string bass and some common 4/5-string banjo
10169         tunings.  New function (four-string-banjo) turns a 5-string tuning
10170         into a 4-string tuning.  New function
10171         (fret-number-tablature-format-banjo) computes correct fret numbers
10172         on 5-string banjos.
10173
10174         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
10175         Add beam correction to TabVoice.
10176
10177         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
10178         using bold font; makes tabs more readable.
10179
10180 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10181
10182         * lily/font-select.cc (get_font_by_design_size): don't make
10183         Modified_font_metric; this causes trouble, since we don't know the
10184         font magnification from inside Pango_font::text_stencil()
10185
10186         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
10187
10188         * Documentation/user/notation.itely (The Lyrics context): comment out
10189         broken {Small ensembles} link.
10190
10191         * scm/framework-svg.scm (output-framework): change calling convention.
10192
10193         * lily/object-key-dumper-scheme.cc: new file.
10194
10195         * lily/object-key-undumper-scheme.cc: new file.
10196
10197         * lily/tweak-registration-scheme.cc: new file.
10198
10199         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
10200
10201         * Documentation/user/examples.itely (String quartet): uncomment
10202         broken example.
10203
10204         * lily/font-config.cc: new file.
10205
10206 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10207
10208         * scm/output-svg.scm: 
10209         * scm/output-gnome.scm: s/bigcheese/emmentaler.
10210
10211         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
10212
10213 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10214
10215         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
10216         Add headers.
10217
10218         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
10219
10220 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10221
10222         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
10223
10224         * lily/include/main.hh: lose _b hungarian suffixes for global
10225         variables.
10226
10227         * lily/include/lily-guile-macros.hh: new file.
10228
10229         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
10230
10231         * lily/general-scheme.cc: new file. 
10232
10233         * lily/font-select.cc (get_font_by_design_size): retrieve
10234         PangoFont for (designsize . "pango-descr") entries.
10235
10236         * lily/lily-parser-scheme.cc: new file.
10237
10238         * lily/output-def-scheme.cc: new file.
10239
10240         * lily/paper-book-scheme.cc: new file.
10241
10242         * lily/duration-scheme.cc (LY_DEFINE): new file.
10243
10244         * lily/pitch-scheme.cc:  new file.
10245
10246         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
10247
10248 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10249
10250         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
10251
10252 2005-01-06  Graham Percival  <gperlist@shaw.ca>
10253
10254         * Documentation/user/notation.itely: minor editing.
10255
10256         * Documentation/user/changing-defaults: minor editing.
10257
10258         * Documentation/user/examples.itely: add template for
10259         string quartet part extraction; demonstrates tag.
10260
10261 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
10262
10263         * Documentation/user/notation.itely: documents
10264         format-mark-box-letters and format-mark-box-numbers
10265
10266         * scm/define-context-properties.scm: change comment.
10267
10268 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10269
10270         * scm/framework-ps.scm (output-classic-framework): new function:
10271         dump systems as separate .eps files (without fonts) and write a
10272         single collecting .tex file.
10273
10274 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10275
10276         * Documentation/user/notation.itely (Setting simple songs):
10277         Correct several errors in the equivalent formulation of
10278         \addlyrics. 
10279         (The Lyrics context): Corrected link to the SATB example.
10280
10281 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10282
10283         * scm/lily.scm (completize-formats): new function
10284         (postprocess-output): new function
10285
10286         * lily/paper-book.cc (classic_output): change calling
10287         convention. Give basename as first argument. 
10288         remove Paper_book::post_processing().
10289
10290         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
10291
10292 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10293
10294         * lily/paper-outputter.cc (LY_DEFINE): new function
10295         ly:outputter-close.
10296
10297         * lily/main.cc: change --format,-f to --backend,-b
10298
10299         * lily/include/main.hh: rename format to backend.
10300
10301         * scm/translation-functions.scm (format-mark-box-numbers): add.
10302         patch by Erlend Aasland
10303
10304 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10305
10306         * lily/pango-font.cc (text_stencil): dump string as
10307         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
10308
10309 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10310
10311         * configure.in (gui_b): Remove handy developer-only
10312         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
10313         CVS source installations (but break other non-default but correct
10314         PKG_CONFIG_PATH setups), as this is no longer developer-only.
10315
10316         * SConstruct: 
10317         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
10318         compatibility (backportme).
10319
10320         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
10321
10322 2005-01-03  Werner Lemberg  <wl@gnu.org>
10323
10324         Prepare glyph shapes for mf2pt1 conversion.
10325
10326         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
10327         (accDiscant, accFreebase, accStdbase): Replace `draw' with
10328         `penstroke'.
10329         (accDot): Use `drawdot'.
10330         (accBayanbase): Replace `draw' with `draw_gridline'.
10331         (print_penpos): Moved to feta-macros.mf.
10332         (accOldEE): Replace `filldraw' with `penstroke'.
10333         Replace `draw' with `penstroke' and `drawdot'.
10334
10335         * mf/feta-banier.mf: Code clean-up.
10336         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
10337         `fill'.
10338
10339         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
10340
10341         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
10342         paremeter to control drawing of labels.  Update all callers.
10343
10344         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
10345         (new_bulb): Return a bulb as a single path.  To do that, it now
10346         takes some more parameters.  Updated all callers.
10347         (draw_gclef): Major clean-up.  `draw' has been replaced with
10348         `penstroke', unnecessary outlines have been removed.
10349         Remove (unused) gnome-canvas code.
10350
10351         * mf/feta-macros.mf (print_penpos): New macro (from
10352         feta-accordion.mf).
10353         Other minor fixes.
10354
10355         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
10356         ("Pedal dot"): Use `drawdot'.
10357         (draw_pedal_P): Add parameter to control drawing of labels.  Update
10358         all callers.
10359         Fix shape at top.
10360         (draw_pedal_e): Add parameter to control drawing of labels.  Update
10361         all callers.
10362         (draw_pedal_d): Add parameter to control drawing of labels.  Update
10363         all callers.
10364         Revert drawing direction.
10365
10366         * mf/feta-schrift.mf (draw_fermata): Use single path.
10367         (draw_short_fermata): Replace `filldraw' with `fill'.
10368         (draw_long_fermata, draw_very_long_fermata): Replace calls to
10369         `draw_rounded_block' with a single path.
10370         ("Thumb"): Draw full circle instead of mirroring segments.
10371         (draw_accent): New macro.
10372         ("> accent", "espr"): Use it.
10373         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
10374         ("open (unstopped)"): Draw full circle instead of mirroring
10375         segments.
10376         (draw_vee): Removed.
10377         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
10378         ("Downbow"): Replace calls to `draw_rounded_block' with a single
10379         path.
10380         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
10381         partial pieces drawn with `fill' -- these do still overlap with the
10382         stem of the `t' but just once, not multiple times so that fontforge
10383         can handle it gracefully.
10384         Change other parts of the glyph so that fontforge's overlapping
10385         algorithm reliably works.
10386         (draw_heel): Replace `draw' with `fill'.
10387         (draw_toe): Use `draw_accent' instead of `draw_vee'.
10388         ("Flageolet"): Replace `draw' with `penstroke'.
10389         ("Segno"): Replace `filldraw' with `penstroke'.
10390         Replace `draw' with `drawdot'.
10391         ("Coda"): Replace `fill' with `penstroke', using a single path.
10392         ("Varied Coda"): Use less overlapping paths.
10393         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
10394         single path.
10395
10396         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
10397         group to better control the `labels' command.
10398         Rename argument to `offset' and use it actually.  Update all
10399         callers.
10400         Replace `filldraw' with `fill'.
10401         ("mordent", "prallmordent", "upmordent", "downmordent",
10402         "lineprall"): Replace `draw' with `draw_gridline'.
10403         ("upprall", "downprall"): Replace `draw' with `fill'.
10404
10405         * mf/feta-timesig.mf: Formatting.
10406
10407         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
10408         to...
10409         ("Flat"): Here.
10410         (draw_paren): Move code to draw labels to...
10411         ("Right Parenthesis"): Here.
10412
10413 2005-01-02  Graham Percival <gperlist@shaw.ca>
10414
10415         * Documentation/user/notation.itely: add example of \setTextDecresc
10416         and \setTextDim.
10417
10418 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
10419
10420         * scm/define-markup-commands.scm :  fix glyph-strings of
10421         accidentals and \note-by-number
10422
10423 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10424
10425         * VERSION: 2.5.6 released.
10426         
10427         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
10428
10429         * input/regression/new-markup-scheme.ly: oops. font-family=music
10430         -> font-encoding fetaMusic.  
10431
10432         * lily/main.cc: put default to PS.
10433
10434         * lily/tfm.cc: idem.
10435
10436         * lily/afm.cc: idem.
10437
10438         * lily/include/modified-font-metric.hh (struct
10439         Modified_font_metric): remove coding_scheme() method.
10440
10441         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
10442
10443         * scripts/convert-ly.py (conv): crash on encountering \encoding.
10444
10445         * input/les-nereides.ly: convert to utf8
10446
10447         * lily/modified-font-metric.cc (text_dimension): idem.
10448
10449         * lily/parser.yy (TODO): idem.
10450
10451         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
10452
10453         * lily/lexer.ll: remove encoding
10454
10455         * scm/framework-ps.scm (output-variables): separately scale the
10456         page to mm 
10457
10458         * lily/pango-font.cc (Pango_font): fix scaling.
10459
10460         * lily/font-metric.cc (design_size): design_size returns a
10461         dimension now as well.
10462
10463 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10464
10465         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
10466         brace generation. 
10467
10468         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
10469
10470 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10471
10472         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
10473         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
10474
10475 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10476
10477         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
10478         in first run as well.
10479
10480         * scm/paper.scm (layout-set-staff-size): use text-font-size in
10481         dimension less points (ie. 12 = 12 point)
10482
10483         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
10484
10485         * lily/all-font-metrics.cc (find_pango_font): set description_
10486
10487         * lily/pango-font.cc (text_stencil): export size as well.
10488         (text_stencil): fix scaling and extents box.
10489
10490 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10491
10492         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
10493
10494         * Documentation/user/invoking.itely (Invoking lilypond): document
10495         texstr
10496
10497         * scripts/convert-ly.py (conv): add ancient rules.
10498
10499         * scm/clef.scm (c0-pitch-alist): replace - with .
10500
10501         * scripts/lilypond-book.py (process_snippets): add texstr support.
10502
10503         * scm/framework-texstr.scm (header): change extension to .textmetrics
10504
10505         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
10506         -f tex.
10507
10508         * lily/text-metrics.cc: new file.
10509         (try_load_text_metrics): new function
10510
10511         * lily/include/text-metrics.hh: new file.
10512
10513 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10514
10515         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
10516         ly_scheme_function to ly_lily_module_constant.
10517
10518         * lily/modified-font-metric.cc (text_dimension): try
10519         lookup_tex_text_dimension() first.
10520
10521         * lily/tfm.cc: new function ly:load-text-dimensions
10522
10523 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10524
10525         * scm/output-texstr.scm (text): use \lilygetmetrics
10526
10527         * scm/framework-texstr.scm (header): dump in new format.
10528
10529         * tex/lilypond-tex-metrics: new file.
10530         
10531 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10532
10533         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
10534         mapping.
10535         (index_to_charcode): New method.
10536
10537         * scm/output-ps.scm (glyph-string): 
10538         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
10539
10540 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
10541
10542         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
10543         implement fully, need FONT to get to charcode.
10544
10545         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
10546
10547         * scm: Cleanups.
10548
10549         * Documentation/user/changing-defaults.itely: Fix internalsrefs
10550         {Tunable context properties},
10551         {All layout objects},
10552         {Music definitions}.
10553
10554 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10555
10556         * VERSION: release 2.5.5
10557         
10558         * lily/main.cc: use TeX as default output format.
10559
10560         * flower/file-path.cc (find): try to open directly as well, so we
10561         find absolute path files. 
10562
10563         * lily/pango-select.cc: new file.
10564
10565         * scm/framework-ps.scm: remove all encoding code. 
10566         load pfb/pfa for PangoFont too.
10567         
10568         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
10569
10570 2004-12-22  Werner Lemberg  <wl@gnu.org>
10571
10572         Prepare glyph shapes for mf2pt1 conversion.
10573
10574         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
10575
10576         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
10577         (define_triangle_shape): Use it to replace `draw' with `fill' and
10578         `unfill'.  Update all callers.
10579         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
10580         (draw_cross): Ditto.
10581         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
10582         Use penrazor for better conversion with mf2pt1.
10583         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
10584         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
10585         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
10586         draw_la_head, draw_ti_head): Replace `filldraw' with
10587         `fill'.  Update all callers.
10588
10589 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10590
10591         * lily/paper-book.cc (output): revert: only allow a single output
10592         format.
10593
10594         * lily/include/pango-font.hh: new file.
10595
10596         * lily/pango-font.cc: new file.
10597
10598         * lily/font-metric.cc (text_stencil): new routine
10599
10600         * lily/all-font-metrics.cc (find_pango_font): new routine.
10601
10602         * lily/include/font-metric.hh (struct Font_metric): add
10603         text_stencil()
10604
10605         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
10606
10607 2004-12-22  Werner Lemberg  <wl@gnu.org>
10608
10609         Prepare glyph shapes for mf2pt1 conversion.
10610
10611         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
10612
10613         * mf/feta-toevallig.mf: Formatting.
10614         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
10615         ("Natural"): Fix paths to allow better postprocessing.
10616         (draw_meta_flat): Use `z3l' as additional point in path to get
10617         better conversion with mf2pt1.
10618         Other minor cleanups.
10619         ("3/4 Flat"): Add auxiliary points and modify path to replace
10620         `draw' with `fill'.
10621         ("Double Sharp"): Mirror path segments instead of picture elements
10622         to get a single outline.
10623         Modify path to replace `filldraw' with `fill'.
10624
10625 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10626
10627         * input/test/unfold-all-repeats.ly: added file back.
10628
10629         * Documentation/user/notation.itely,
10630         Documentation/user/programming-interface.itely
10631         Documentation/user/changing-defaults.itely: fixed misc broken
10632         links to input/test/ files.
10633
10634 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10635
10636         * tex/texinfo.tex: Update.  We should not be distributing this,
10637         but since we do, use latest version.
10638
10639         * Documentation/user/macros.itexi: Comment-out \fetaflat,
10640         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
10641         macros for feta glyphs.
10642
10643 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10644
10645         * Documentation/user/changing-defaults.itely: fix index for set.
10646
10647         * Documentation/user/converters.itely: added convert-ly bugs list
10648         from CVS.
10649
10650 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10651
10652         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
10653         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
10654         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
10655         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
10656
10657         * mf/GNUmakefile (pfa_warning): Use less broken check.
10658
10659         * python/lilylib.py (setup_environment): Remove cruft from
10660         GS_FONTPATH.
10661
10662         * configure.in: Bump mftrace requirement to 1.1.1.
10663
10664 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10665
10666         * scm/output-svg.scm (beam): Use polygon.
10667
10668         * scm/lily-library.scm: Bugfix.
10669
10670         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
10671
10672         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
10673
10674 2004-12-19  Werner Lemberg  <wl@gnu.org>
10675
10676         Prepare glyph shapes for mf2pt1 conversion.
10677
10678         * mf/feta-eindelijk: Some formatting.
10679         (multi_rest_x, multi_beam_height): Removed.  Unused.
10680         ("Quarter rest"): Use `intersectiontimes' to create a single
10681         outline.
10682         (rest_crook): Removed.  Unused.
10683         (draw_rest_bulb): Return path (without filling).  Update callers.
10684         Simplified.
10685         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
10686         "128th rest"): Simplify `pat'.
10687         Create single outline.
10688
10689 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10690
10691         * mf/GNUmakefile (ALL_GEN_FILES):
10692         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
10693
10694         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
10695         function.
10696
10697 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10698
10699         * scm/output-texstr.scm (placebox): add routine
10700
10701         * VERSION (PACKAGE_NAME): release 2.5.4
10702
10703         * scm/framework-texstr.scm (output-framework): new file.  
10704
10705         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
10706         processing.
10707
10708         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
10709
10710         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
10711         rule.
10712
10713         * configure.in (gui_b): bump mftrace requirement to 1.1.0
10714
10715         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
10716
10717         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
10718
10719 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10720
10721         * scm/framework-svg.scm (dump-page): Implement landscape.
10722
10723 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10724
10725         * lily/main.cc (setup_paths): Add svg to search path.
10726
10727         * scm/output-svg.scm:
10728         * scm/framework-svg.scm: Add pageSet.  Update.
10729         (dump-fonts): New function.
10730         (output-framework): Use it.
10731
10732         * mf/GNUmakefile: 
10733         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
10734
10735 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10736
10737         * tex/lilyponddefs.tex: comment out new ifpdf code.
10738
10739 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10740
10741         * GNUmakefile.in: 
10742         * SConstruct (symlink): Replace afm by otf.
10743
10744         * scm/framework-gnome.scm (gnome-main): Remove invocation of
10745         ly:pango-add-afm-decoder.
10746
10747         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
10748
10749 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10750
10751         * scm/output-ps.scm (new-text): don't access t glyph for getting
10752         space dimension.
10753
10754         * ly/init.ly: warn about \version
10755
10756         * lily/lexer.ll: set version-seen?
10757
10758 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10759
10760         * scm/output-svg.scm (string->entities): Update.
10761
10762 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10763
10764         * lily/main.cc (setup_paths): replace afm by otf for path. 
10765
10766         * lily/pangofc-afm-decoder.cc: remove.
10767
10768         * lily/include/pangofc-afm-decoder.hh: remove.
10769
10770         * scm/framework-scm.scm (output-framework): new file.
10771
10772         * mf/GNUmakefile: remove SAUTER_FONTS.
10773         remove SVG/sodipodi hacks.
10774
10775         * scm/lily-library.scm (stderr): move stderr.
10776
10777         * mf/GNUmakefile: remove AFM support.
10778
10779         * buildscripts/mf-to-table.py (base): remove AFM support.
10780
10781         * lily/open-type-font.cc (design_size): use design_size
10782
10783 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
10784
10785         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
10786
10787 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10788
10789         * mf/GNUmakefile: Generate combined aybabtu info.
10790         * mf/aybabtu.pe.in (i): Load it.
10791
10792         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
10793         are not symbols.
10794
10795         * lily/include/open-type-font.hh (count): New method.
10796
10797         * mf/aybabtu.pe.in: Typo.
10798
10799         * Documentation/user/out/lilypond-internals.nexi (Scheme
10800         functions): Typo.
10801
10802         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
10803
10804 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10805
10806         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
10807         subfonts.
10808
10809         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
10810
10811         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
10812         (tex-font-command-raw): new function.
10813
10814         * lily/include/virtual-font-metric.hh (Module): remove file
10815
10816         * lily/virtual-font-metric.cc (Module): remove file.
10817         
10818
10819         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
10820         (get_indexed_char): read bbox from lily table if present.
10821
10822 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10823
10824         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
10825         aybabtu.subfonts
10826
10827         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
10828         global glyphname. Enables more than 64 glyphs in the OTF.
10829
10830 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10831
10832         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
10833         braces.
10834
10835         * lily/open-type-font.cc (design_size): Use 12 as default for
10836         design size.
10837
10838         * mf/aybabtu.pe.in: New file.  Merge all our braces.
10839
10840         * mf/GNUmakefile: Generate aybabtu.
10841
10842         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
10843
10844 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10845
10846         * scm/lily-library.scm (char->unicode-index): Remove.
10847
10848         * scm/output-gnome.scm (text): Bugfix for plain string input.
10849         Updates.
10850
10851         * scm/output-svg.scm (svg-font): Add weight to font selection.
10852
10853 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10854
10855         * Documentation/topdocs/INSTALL.texi (Top): Point to
10856         buildscripts/out/clean-fonts instead of
10857         buildscripts/clean-fonts.sh. 
10858
10859 2004-12-13  Graham Percival  <gperlist@shaw.ca>
10860
10861         * input/regression/figured-bass.ly: attempt to clarify text.
10862
10863         * Documentation/user/notation.tely: add cindex for tag, attempt to
10864         add figured bass example.
10865
10866         * Documentation/user/changing-defaults: basic editing.
10867
10868 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10869
10870         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
10871
10872         * lily/open-type-font.cc (LY_DEFINE): new function
10873         ly:font-sub-fonts
10874
10875         * lily/include/font-metric.hh (struct Font_metric): new method
10876         sub_fonts()
10877
10878         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
10879         . with - in add.stem.
10880         
10881 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10882
10883         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
10884         and fetaDynamic.
10885
10886         * lily/rest.cc (glyph_name): Change - to . .
10887
10888         * scm/output-gnome.scm (text): Hello world, again.
10889
10890         * scm/output-svg.scm (named-glyph): New function.  Hello world!
10891
10892         * lily/modified-font-metric.cc (index_to_charcode): New method.
10893
10894         * lily/include/font-metric.hh (index_to_charcode): New function.
10895
10896         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
10897         new function.
10898         (ly:font-glyph-to-index): Remove.
10899
10900 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10901
10902         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
10903
10904         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
10905
10906         * lily/open-type-font.cc (load_scheme_table): new function
10907
10908         * lily/dots.cc (print): replace - 
10909
10910         * lily/open-type-font.cc (attachment_point): new function.
10911         (load_table): read LILC table
10912
10913         * buildscripts/gen-bigcheese-scripts.py (Module): new
10914         file. Generate FF scripts.
10915
10916         * mf/feta-din10.mf: idem.
10917
10918         * mf/feta-nummer10.mf: remove mf files.
10919
10920         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
10921
10922 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10923
10924         * lily/lily-guile.cc: Use scm_from_locale_stringn.
10925
10926         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
10927         compatibility.
10928
10929 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10930
10931         * lily/open-type-font.cc (get_indexed_char): scale metrics by
10932         design-size and units_per_EM.
10933
10934         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
10935
10936 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10937
10938         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
10939         does not crash fontforge.
10940
10941         * scm/lily-library.scm (char->unicode-index): Hack to map onto
10942         PUA.
10943
10944 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10945
10946         * scm/framework-ps.scm (ps-embed-cff): new function.
10947
10948         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
10949
10950 2004-12-12  Werner Lemberg  <wl@gnu.org>
10951
10952         * mf/bigcheese.pe.in: Add PUA mapping.
10953         Don't create Type 42 but bare CFF font.
10954
10955 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10956
10957         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
10958         within canvas boundaries.
10959
10960         * mf/merge.pe.in: Set font names, version, license GPL.
10961
10962         * make/substitute.make: Add FONTFORGE.
10963
10964         * config.make.in (FONTFORGE): Add.
10965
10966         * configure.in (gui_b): Use PATH_PROG for fontforge.
10967
10968 2004-12-11  Graham Percival  <gperlist@shaw.ca>
10969
10970         * scm/define-markup-commands.scm: add baseline-skip to info
10971         about \column.
10972
10973 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10974
10975         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
10976
10977         * scm/output-gnome.scm (named-glyph): Use it.
10978
10979         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
10980
10981         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
10982         (upper_string, lower_string, reverse_string): Remove.
10983
10984         * configure.in (fontforge): Reinstate version check.
10985
10986         * ly/engraver-init.ly: Fix clef glyph names.
10987
10988         * lily/time-signature.cc (special_time_signature): Fix fraction
10989         glyph names.
10990
10991 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10992
10993         * mf/merge.pe: new file.
10994
10995         * lily/freetype.cc: new file.
10996
10997         * lily/include/open-type-font.hh (class Open_type_font): new file.
10998
10999         * lily/include/freetype.hh: new file.
11000
11001         * lily/open-type-font.cc: new file.
11002
11003         * lily/all-font-metrics.cc (find_otf): new function.
11004
11005 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11006
11007         * lily/time-signature.cc (special_time_signature): Fix.
11008
11009         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
11010         GTK2 before checking for pango.  Fixes -fgnome.
11011
11012         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
11013         Scheme name.
11014
11015         * scm/define-markup-commands.scm:
11016         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
11017
11018         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
11019
11020         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
11021         date versions.  Fixes configure.
11022         (STEPMAKE_CHECK_VERSION): Support optional actual program version
11023         argument.
11024
11025 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11026
11027         * buildscripts/mf-to-table.py (write_ps_encoding): write real
11028         names in .enc
11029
11030         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
11031
11032 2004-12-09  Graham Percival  <gperlist@shaw.ca>
11033
11034         * Documentation/user/changing-defaults.itely: add info about
11035         make-dynamic-script
11036
11037         * Documentation/user/notation.itely: add link in dynamics to
11038         section about make-dynamic-script.
11039
11040 2004-12-09  Christian hitz  <chhitz@gmx.net>
11041
11042         * lily/lily-guile.cc: change MACOS_X to __APPLE__
11043
11044 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11045
11046         * buildscripts/mf-to-table.py (parse_logfile): use . for
11047         concatting name and group.
11048         (parse_logfile): use M for Minus (negative.)
11049
11050         * lily/include/type-swallow-translator.hh
11051         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
11052
11053         * lily/*.cc: cosmetics around = sign.
11054
11055         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
11056         lyric spacing on the penultimate column.
11057
11058 2004-12-05  Christian Hitz  <chhitz@gmx.net>
11059
11060         * configure.in:
11061         * lily/accidental-placement.cc:
11062         * lily/bar-line.cc:
11063         * lily/beam-concave.cc:
11064         * lily/beam-quanting.cc:
11065         * lily/beam.cc:
11066         * lily/bezier-bow.cc:
11067         * lily/bezier.cc:
11068         * lily/break-align-interface.cc:
11069         * lily/custos.cc:
11070         * lily/dimension-cache.cc:
11071         * lily/dot-column.cc:
11072         * lily/font-metric.cc:
11073         * lily/font-select.cc:
11074         * lily/gourlay-breaking.cc:
11075         * lily/grob-property.cc:
11076         * lily/grob.cc:
11077         * lily/lily-guile.cc:
11078         * lily/line-spanner.cc:
11079         * lily/lookup.cc:
11080         * lily/lyric-extender.cc:
11081         * lily/lyric-hyphen.cc:
11082         * lily/mensural-ligature.cc:
11083         * lily/midi-def.cc:
11084         * lily/misc.cc:
11085         * lily/note-collision.cc:
11086         * lily/note-column.cc:
11087         * lily/note-head.cc:
11088         * lily/paper-outputter.cc:
11089         * lily/percent-repeat-item.cc:
11090         * lily/rest-collision.cc:
11091         * lily/side-position-interface.cc:
11092         * lily/simple-spacer.cc:
11093         * lily/slur-configuration.cc:
11094         * lily/slur-scoring.cc:
11095         * lily/slur.cc:
11096         * lily/spaceable-grob.cc:
11097         * lily/spacing-spanner.cc:
11098         * lily/spanner.cc:
11099         * lily/staff-symbol-referencer.cc:
11100         * lily/stem.cc:
11101         * lily/stencil.cc:
11102         * lily/system-start-delimiter.cc:
11103         * lily/system.cc:
11104         * lily/text-item.cc:
11105         * lily/tie.cc:
11106         * lily/tuplet-bracket.cc:
11107         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
11108         <cmath> beacause isinf/isnan is undefined in <cmath>
11109
11110 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11111
11112         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
11113
11114 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11115
11116         * VERSION: release 2.5.3
11117         
11118 2004-11-29  Arno Waschk <arno@arnowaschk.de>
11119
11120         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
11121
11122 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11123
11124         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
11125
11126         * lily/note-head.cc (internal_print): always try the "s" head if
11127         u/d not found.
11128
11129         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
11130
11131 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11132
11133         * mf/parmesan-heads.mf (overdone_heads): typos.
11134
11135 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11136
11137         * lily/parser.yy (markup): in markups, { .. } without command
11138         before are also flattened, ie \line must be explicitely used.
11139
11140         * Documentation/user/changing-defaults.itely:
11141         * Documentation/user/notation.itely: 
11142         * input/wilhelmus.ly: 
11143         * input/regression/instrument-name-markup.ly: 
11144         * input/regression/markup-score.ly: 
11145         * input/regression/new-markup-scheme.ly: 
11146         * input/regression/new-markup-syntax.ly: 
11147         * input/test/coriolan-margin.ly: use \line in markups where
11148         appropriate
11149         
11150 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11151
11152         * scm/new-markup.scm (map-markup-command-list): helper function
11153         used in parser.yy to map markup commands on a markup list.
11154
11155         * lily/parser.yy: get rid off < > in markups by treating { } as
11156         real lists.
11157
11158         * lily/lexer.ll: remove < > from markup lexer mode.
11159
11160         * scripts/convert-ly.py (conv): add rule for converting 
11161         \markup < > to \markup { }
11162
11163         * ly/titling-init.ly: 
11164         * input/test/coriolan-margin.ly: 
11165         * input/regression/new-markup-syntax.ly: 
11166         * input/regression/new-markup-scheme.ly: 
11167         * input/regression/multi-measure-rest-text.ly: 
11168         * input/regression/markup-stack.ly: 
11169         * input/regression/markup-score.ly: 
11170         * input/regression/instrument-name-markup.ly: 
11171         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
11172         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
11173         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
11174         * input/wilhelmus.ly: 
11175         * Documentation/user/notation.itely: 
11176         * Documentation/user/music-glossary.tely: 
11177         * Documentation/user/changing-defaults.itely: change < > to { } in
11178         markups
11179
11180 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11181
11182         * lily/accidental-placement.cc (position_accidentals): shortcut if
11183         no accidentals to place.
11184
11185 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11186
11187         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
11188         typo s/ly:dimension ?/ly:dimension?/
11189
11190         * input/regression/lily-in-scheme.ly: 
11191         * input/regression/music-function.ly: 
11192         * ly/spanners-init.ly (assertBeamSlope): 
11193         * scm/music-functions.scm (def-grace-function): add the paper
11194         argument to music function definitions.
11195
11196 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11197
11198         * lily/moment.cc (LY_DEFINE):
11199         ly:moment-main-{denominator,numberator}, new function.
11200
11201         * lily/score-engraver.cc (typeset_all): assign to column on basis
11202         of axis-group-parent-X setting.
11203
11204         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
11205         add_element() on basis of axis-group-parent-Y setting.
11206
11207         * lily/grob.cc: add axis-group-parent-{XY} properties.
11208
11209         * input/regression/spacing-stick-out.ly: new file.
11210
11211         * lily/simple-spacer.cc (add_columns): use binary search for
11212         setting column rods. Changes O(n^2) to O(n log(n)) for
11213         constructing spacing problem from columns.
11214         (add_columns): read allow-outside-line to make sure no texts stick
11215         out.
11216         (solve): Simple_spacer::is_active() only determines
11217         satisfies_constraints_ for non-ragged typesetting.
11218
11219         * lily/simultaneous-music.cc (to_relative_octave): only set
11220         old_relative_used if return pitch actually changed.
11221
11222         * scm/define-context-properties.scm
11223         (all-user-translation-properties): change to match implementation.
11224
11225         * python/lilylib.py: Replace re.match by re.search and adds "-c
11226         showpage" to the gs command line (Johannes Schindelin)
11227
11228         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
11229         before processing. Prevents crash when inf is in the extent.
11230
11231         * scm/define-markup-commands.scm (note-by-number): add "s" to
11232         "noteheads-" glyphname.
11233  
11234         * lily/parser.yy (Generic_prefix_music): supply parser argument to
11235         music function as well.
11236         
11237 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11238
11239         * VERSION: release 2.5.2
11240
11241         * Documentation/user/changing-defaults.itely (Creating titles):
11242         add breakbefore variable.
11243
11244         * lily/paper-book.cc (set_system_penalty): new function. Set
11245         penalty_ based on breakBefore setting
11246
11247         * lily/context-specced-music-iterator.cc (construct_children):
11248         interpret special context id $uniqueContextId 
11249
11250         * lily/context.cc (create_unique_context): new method. Move
11251         creation of unique (\new) contexts into interpreting phase. This
11252         makes
11253
11254           foo= \new Staff ..
11255           << \foo \foo >>
11256
11257         produce 2 staves.
11258         
11259
11260         * scm/define-music-properties.scm (all-music-properties): add
11261         quoted-voice-direction
11262
11263         * ly/music-functions-init.ly: killCues function.
11264
11265         * scm/music-functions.scm (cue-substitute): move creation of voice
11266         contexts further to the back. 
11267
11268 2004-11-25  Werner Lemberg  <wl@gnu.org>
11269
11270         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
11271         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
11272
11273 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
11274
11275         * buildscripts/guile-gnome.sh: Fixed typo.
11276
11277 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11278
11279         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
11280
11281         * scripts/abc2ly.py (dump_slyrics): add ord(). 
11282
11283         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
11284         to regular engraver. 
11285
11286 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11287
11288         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
11289
11290 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11291
11292         * scm/define-markup-commands.scm (fill-line): Typo.
11293
11294         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
11295         and newer.
11296
11297 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
11298
11299         * ly/dynamic-scripts-init.ly: Fixed typo.
11300
11301 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11302
11303         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
11304         note-head, to have different attachment points for up and down.
11305
11306         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
11307
11308         * mf/feta-generic.mf (else): remove solfa.
11309
11310         * mf/feta-bolletjes.mf (tishape): remove unicode test.
11311
11312         * scm/define-context-properties.scm
11313         (all-user-translation-properties): add shapeNoteStyles property.
11314
11315         * lily/shape-note-heads-engraver.cc (process_music): new file.
11316
11317         * lily/event.cc (transpose): call Event::transpose() for
11318         transposing the tonic.
11319
11320 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11321
11322         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
11323         Unicode/OpenType and AFM.
11324
11325         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
11326
11327 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11328
11329         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
11330
11331         * lily/context.cc (Context): unprotect key from ctor.
11332
11333         * scm/stencil.scm (stack-lines): return empty-stencil if argument
11334         is '()
11335         (stack-stencils): idem.
11336
11337         * Documentation/user/changing-defaults.itely (Creating titles):
11338         document new title layout options.
11339
11340         * lily/parser.yy (lilypond_header_body): copy previous
11341         $globalheader if present.
11342
11343         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
11344         ly:module-copy
11345         
11346         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
11347
11348         * scm/titling.scm: remove old titling functions
11349
11350         * lily/stencil.cc (translate): remove absolute dimension.
11351
11352         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
11353         via markup.
11354
11355         * scm/page-layout.scm (marked-up-headfoot): create header/footer
11356         field from user-supplied markup
11357
11358         * scm/define-markup-commands.scm (on-the-fly): new markup
11359         command. Enter SCM markup procedure directly in Scheme.
11360         (fromproperty): new markup command. Read markup from props argument.
11361
11362         * scm/titling.scm (marked-up-title): create title via
11363         user-specified markup. 
11364
11365         * scm/define-markup-commands.scm (column): remove empty stencils
11366         from column.
11367
11368         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
11369         not have side-effect of creating variable stub.
11370
11371         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
11372
11373 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11374
11375         * scm/encoding.scm (coding-alist): 
11376         * scm/font.scm (add-ec-fonts):
11377         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
11378         Extended-TeX-Font-Encoding---Latin.
11379
11380         * lily/side-position-interface.cc (general_side_position): Add
11381         actual offset to error message (avoid constant error messages).
11382
11383         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
11384         block.
11385
11386         * lily/font-select.cc (select_encoded_font)
11387         (get_font_by_mag_step, get_font_by_design_size): 
11388         * lily/modified-font-metric.cc (Modified_font_metric): 
11389         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
11390
11391         * scm/encoding.scm (coding-alist): Add fetaDynamic.
11392         (read-encoding-file): Bugfix: do not require space after bracket.
11393
11394         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
11395         these do not exist.
11396
11397 2004-11-20  Graham Percival  <gperlist@shaw.ca>
11398
11399         * Documentation/user/notation.itely: added info about typesetting
11400         boxed bar numbers.
11401
11402 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11403
11404         * flower/interval.cc (T_to_string): gcc4 fixes.
11405
11406         * scm/define-markup-commands.scm (fill-line): use
11407         stack-stencils. This fixes problems with putting already centered
11408         stencils in a line.
11409
11410         * VERSION: release 2.5.1
11411
11412         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
11413
11414 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11415
11416         * input/example-[1-3].ly: simplify.
11417
11418         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
11419
11420         * scm/output-ps.scm (new-text): new function. Use glyphshow to
11421         show glyphs.
11422
11423         * scm/encoding.scm (decode-byte-string): new function.
11424
11425         * scripts/convert-ly.py (conv): add warning about
11426         set-global-staff-size.
11427
11428         * Doxyfile: add. 
11429
11430         * scripts/convert-ly.py (conv): add raggedlastbottom rule
11431         (conv): warn for TextSpanner split.
11432         (conv): warn for textheight.
11433
11434 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11435
11436         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
11437         building the documentation, info with images are installed.
11438         (final-install): Fix description.  Mention sourcing of login
11439         scripts (instead of running).
11440
11441 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11442
11443         * Debian lmodern support.  Note that LilyPond will issue warnings
11444         
11445             no such encoding: "FontSpecific"
11446
11447           The font selection mechanism wants to get the encoding from the
11448           font itself, but the idea of lmodern is that it is usable with
11449           different encodings, ie, Lily should get the encoding from the
11450           font tree, rather than the font itself.  This would require some
11451           more work.
11452         
11453         * configure.in: Test for and accept lmodern if EC fonts not found.
11454
11455         * scm/framework-tex.scm (font-load-command): TeX font name
11456         mangling for latin1 encoded cork-lm fonts.
11457         (convert-to-ps): Load lm.map if available.
11458
11459         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
11460         available.
11461
11462         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
11463
11464         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
11465         available.
11466
11467         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
11468         path for absolute file name, that is silly.
11469
11470         * lily/score-engraver.cc (initialize): 
11471
11472         * Documentation/user/GNUmakefile (local-install-info): Invoke
11473         install-info --remove first.
11474
11475         * #include cleanup (Andreas Scherer).
11476
11477 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
11478
11479         * input/test/script-abbreviations.ly: fix typos.
11480
11481 2004-11-17  Werner Lemberg  <wl@gnu.org>
11482
11483         * python/lilylib.py (options_help_str): Support pretty-printing of
11484         newlines in fourth element of option description.
11485
11486         * scripts/lilypond-book.py (option_definitions): Use new lilylib
11487         feature.
11488         Sort options.
11489
11490         * Documentation/user/lilypond-book.itely: Finish update.
11491
11492 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11493
11494         * Documentation/user/macros.itexi: Add comment about \command.
11495
11496         * Documentation/user/lilypond.tely:
11497         * Documentation/user/lilypond-book.itely: Fix names of lilypond
11498         and lilypond-book nodes, so that `info lilypond' visits the manual
11499         at top level, and `info lilypond-book' visits the lilypond-book
11500         section.
11501
11502         * Documentation/user/GNUmakefile (local-install-info): Fix rules
11503         and packager messages.
11504
11505         * lily/pangofc-afm-decoder.cc: Update test.
11506
11507 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11508
11509         * scm/lily-library.scm (char->unicode-index): New function.
11510
11511         * scm/output-gnome.scm: 
11512         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
11513
11514         * Proper naming of file name throughout; s/filename/file[-_]name/.
11515
11516         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
11517
11518         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
11519
11520 2004-11-16  Werner Lemberg  <wl@gnu.org>
11521
11522         * scripts/lilypond-book.py: The Lord has commanded me to use only
11523         tabs for indentation.  Your humble servant obeys.
11524
11525 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11526
11527         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
11528         including font, if LilyPond-feta font is only feta font in path.
11529
11530         * scm/output-gnome.scm (text): Revert to file name of font if font
11531         has no name.  Fixes ec font selection.
11532         (char): Bugfix: do not utf8 twice.  Fixes clefs.
11533
11534         * scm/framework-svg.scm:
11535         * scm/output-svg.scm: New file.  TODO: figure out how to
11536         do character by index in font.
11537
11538         * scm/output-sodipodi.scm: Remove.
11539
11540         * scm/output-ps.scm (stem): Remove.
11541
11542 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11543
11544         * scm/output-gnome.scm (beam): New function.
11545         (slur): Round corners.
11546         (round-filled-box): Round corners.
11547
11548 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11549
11550         * scm/output-gnome.scm (beam): add function.
11551         (draw-line): new routine.
11552         (dashed-line): stub; call draw-line
11553         (polygon): new routine.
11554
11555 2004-11-15  Werner Lemberg  <wl@gnu.org>
11556
11557         * Documentation/user/lilypond-book.itely: Revise section on
11558         lilypond-book options.
11559         Other minor fixes.
11560
11561         * scripts/lilypond-book.py: Change indentation to 4.
11562         Minor formatting.
11563
11564 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11565
11566         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
11567         grobs that have tweaks specced.
11568         
11569 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
11570
11571         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
11572
11573 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11574
11575         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
11576         actual char #, not 0 based index.
11577
11578         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
11579
11580         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
11581         Warning: do make -C mf clean.
11582
11583         * lily/context-property.cc: Compile fix.
11584
11585         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
11586         Grok ec-fonts, braces and dynamics.
11587
11588         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
11589
11590 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11591
11592         * lily/include/tweak-registration.hh: new file.
11593
11594         * lily/tweak-registration.cc: new file.
11595
11596         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
11597         saving tweaks.
11598
11599         * scm/output-gnome.scm (text): comment dribble.
11600
11601 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11602
11603         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
11604
11605         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
11606         path-def before using.  Fixes muchtomany slurs in wrong places
11607         bug.
11608
11609 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11610
11611         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
11612
11613         * lily/include/object-key-undumper.hh (Module): new file.
11614
11615         * lily/object-key-undumper.cc (Module): New file. Deserialize
11616         keys. SCM bindings
11617
11618         * lily/object-key-dumper.cc (Object_key_dumper): idem.
11619         Provide SCM bindings.
11620
11621         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
11622         new file. Serialize object keys.
11623         
11624         * lily/object-key.cc (dump): new function.
11625         (as_scheme): new virtual function
11626         (undump): new function
11627         (undumpers): new table.
11628
11629         * lily/include/global-context.hh (Context): take \score key upon init.
11630
11631         * lily/object-key-dumper.cc (serialize_key): new file.
11632
11633         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
11634
11635         * lily/lily-lexer.cc: remove \quote.
11636
11637         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
11638
11639         * lily/context.cc (Context): take key argument in ctor.
11640         (create_context): new function
11641
11642         * lily/grob.cc (Grob): take key argument in ctor.  
11643
11644         * lily/lilypond-key.cc (do_compare): new file.
11645
11646         * lily/object-key.cc (Object_key): new file.
11647
11648         * lily/include/object-key.hh (class Object_key): new file.
11649
11650         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
11651
11652 2004-11-13  Graham Percival  <gperlist@shaw.ca>
11653
11654         * Documentation/user/lilypond-book.itely: add small warning about
11655         noindent default in lilypond-book.
11656
11657         * Documentation/user/converters.itely: add examples for convert-ly.
11658
11659         * Documentation/user/examples.itely: change version string in templates
11660         to 2.4.0.
11661
11662 2004-11-12  Karl Hammar  <karl@aspodata.se>
11663
11664         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
11665         cmdline, use xargs instead (backportme)
11666
11667 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
11668         
11669         * Documentation/user/: Numerous fixes in the user manual.
11670
11671 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11672
11673         * lily/parser.yy (re_rhythmed_music): search music expression for
11674         context-id, surround by \new Voice if not found. Fixes:
11675         addlyrics-second-staff.ly
11676
11677         * VERSION: 2.5.0 released.
11678         
11679 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11680
11681         * Documentation/index.html.in: Fix url to one big page.  (backportme)
11682
11683         * Documentation/user/GNUmakefile: Separate rules for split and
11684         unsplit html documents.  Remove perl massaging.  (backportme)
11685
11686 2004-11-11  Graham Percival  <gperlist@shaw.ca>
11687
11688         * Documentation/user/lilypond-book.itely: add short warning about
11689         \lilypond{} in LaTeX docs.
11690
11691 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11692
11693         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
11694         found.  (backportme)
11695
11696         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
11697         version requirement.  (backportme)
11698
11699         * configure.in: Be explicit about old versions of
11700         ec-fonts-mtraced.  (backportme)
11701
11702         * lily/context-selector.cc (set_tweaks): New function.
11703         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
11704         web with -DTWEAK.
11705
11706         * Documentation/user/introduction.itely (Automated engraving):
11707         Remove fragment option.  Fixes web.
11708
11709         * lily/context-property.cc (make_item_from_properties):
11710         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
11711         #ifdef.
11712
11713         * scm/define-context-properties.scm
11714         (all-internal-translation-properties): Add tweakRank and tweakCount.
11715
11716         * lily/grob.cc: 
11717         * scm/define-grob-properties.scm (all-internal-grob-properties):
11718         Add tweak-rank and tweak-count.
11719
11720 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11721
11722         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
11723         New function.
11724         (text): Use them.
11725
11726         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
11727         animated/opaque grob dragging tweaks.
11728
11729         * buildscripts/guile-gnome.sh: Update.
11730
11731 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11732
11733         * scm/define-grobs.scm (all-grob-descriptions): Added
11734         line-interface to the LigatureBracket object.
11735
11736 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11737
11738         * scm/framework-gnome.scm (item-event): Support non-animated mouse
11739         dragging tweaks.
11740
11741         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
11742
11743         * lily/context-selector.cc (store_context): New function.
11744
11745         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
11746         (store_grob): New function.
11747         (identify_grob): Add Moment parameter.
11748
11749         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
11750         exists.
11751
11752         * scm/framework-gnome.scm (save-tweaks): Write as alist.
11753
11754 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11755
11756         * scm/framework-gnome.scm (item-event): Print grob id.
11757         (save-tweaks): New function.
11758         (tweak): New funtion.
11759         (item-event): Use it, bound to arrow keys.
11760
11761         * lily/context-property.cc (make_item_from_properties): Register grob.
11762         * lily/context.cc (add_context): Register context.
11763
11764         * lily/include/context-selector.hh:
11765         * lily/include/grob-selector.hh:
11766         * lily/context-selector.cc:
11767         * lily/grob-selector.cc: New file.
11768
11769 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11770
11771         * lily/slur.cc: add 'positions to interface
11772
11773         * lily/main.cc: reinstate PS as standard output format. 
11774
11775         * scm/framework-tex.scm (output-preview-framework): print systems
11776         up to first non title system.
11777
11778         * lily/grace-engraver.cc (start_translation_timestep): split
11779         scm_cadddr
11780         
11781 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11782
11783         * lily/quote-iterator.cc (Module): remove old quote-iterator
11784
11785         * scm/define-music-types.scm (music-descriptions): move
11786         NewQuoteMusic over QuoteMusic
11787
11788         * Documentation/user/notation.itely (Formatting cue notes): use
11789         \cueDuring.
11790
11791         * lily/new-quote-iterator.cc (quote_ok): new function.
11792
11793         * input/regression/quote-cue-during.ly: new file.
11794
11795         * input/regression/quote-grace.ly: new file.
11796
11797         * scm/define-context-properties.scm (Module): change definition of
11798         graceSettings
11799
11800         * lily/context-property.cc (Module): rename from
11801         translator-property.cc
11802
11803         * lily/context.cc (context_name_symbol): new function
11804
11805         * lily/grace-engraver.cc: new file. Set properties for grobs based
11806         on the grace-ness of now_moment().
11807
11808         * scm/music-functions.scm (add-grace-property): use list
11809         iso. vector for graceSettings
11810         remove set-{start,stop}-grace-properties. 
11811
11812         * lily/new-quote-iterator.cc (construct_children): set
11813         quote_outlet_ if no quoted-context-{id,type} specified.
11814
11815         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
11816
11817         * lily/parser.yy (command_element): remove \quote.
11818
11819         * ly/music-functions-init.ly (location): add quoteDuring music
11820         function. 
11821
11822         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
11823         optional semicolon. (backportme)
11824
11825 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11826
11827         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
11828         need to link to GUILE et al.
11829
11830 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11831
11832         * scm/define-music-properties.scm (all-music-properties): add
11833         quoted-context-type, quoted-context-id.
11834
11835         * scm/lily.scm (type-check-list): new function.
11836         
11837         * scm/lily-library.scm: new file. Generic library routines.
11838
11839         * lily/parser.yy (Generic_prefix_music): move typechecking out of
11840         parser.
11841
11842         * ly/music-functions-init.ly: add quoteDuring function.
11843
11844         * lily/include/music-iterator.hh (class Music_iterator): rename
11845         set_translator -> set_context
11846
11847         * lily/parser.yy (Generic_prefix_music_scm): add
11848         MUSIC_FUNCTION_SCM_SCM_MUSIC
11849
11850         * scm/lily.scm (sanitize-command-option): new function. (backportme)
11851
11852         * scm/framework-tex.scm (header): sanitize TeX paper size.
11853         (backportme)
11854
11855 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11856
11857         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
11858
11859         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
11860
11861         * scm/framework-tex.scm (font-load-command): Use T1 if no
11862         font-encoding set.  (backportme)
11863
11864         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
11865         exists before converting.  (backportme)
11866
11867         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
11868         exists before converting.  (backportme)
11869         (convert-to-ps): Remove .ps file if it exists before
11870         converting.  (backportme)
11871
11872         * lily/lexer.ll: Remove extra progress newline, use present tense.
11873
11874         * scm/paper.scm (paper-alist): public.
11875         * scm/framework-tex.scm (convert-to-ps):
11876         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
11877         command line.
11878
11879 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11880
11881         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
11882
11883         * lily/recording-group-engraver.cc (derived_mark): mark
11884         now_events_. (backportme)
11885
11886 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11887
11888         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
11889
11890         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
11891         invoking latex. (backportme.)
11892
11893         * lily/stem.cc (off_callback): center stems for all rest stems.
11894
11895 2004-11-05  Werner Lemberg  <wl@gnu.org>
11896
11897         * Documentation/user/lilypond.tely: Add more guidelines for writing
11898         lilypond texinfo documents.
11899
11900 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
11901
11902         * Documentation/index.html.in: remove <hr>.
11903
11904         * THANKS: change 2.3 to 2.4.
11905
11906 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
11907
11908         * scm/output-gnome.scm: More fontconfig comment.
11909
11910 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
11911
11912         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
11913         <package> directory in $(builddir)/share according with
11914         PACKAGE_NAME defined in the VERSION file.
11915
11916 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11917
11918         * lily/beam.cc (rest_collision_callback): use local beam
11919         multiplicity.
11920
11921         * input/regression/stem-stemlet.ly: new file.
11922
11923         * lily/stem.cc (add_head): store rests as well.
11924
11925         * scm/define-grob-properties.scm (all-user-grob-properties): add
11926         stemlet-length
11927
11928         * lily/stem.cc: store rests as well.
11929         
11930         * input/regression/new-slur.ly: mention forcing.
11931
11932 2004-11-04  Werner Lemberg  <wl@gnu.org>
11933
11934         * Documentation/user/*: A new round of layout fixes and document
11935         structure cleanup.
11936
11937 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
11938
11939         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
11940
11941 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11942
11943         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
11944
11945 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11946
11947         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
11948
11949         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
11950
11951         * lily/main.cc (main): Invoke identify.
11952
11953         * scm/lily.scm (postscript->pdf): Remove progress newline.
11954         Write progress to stderr.
11955
11956         * lily/paper-book.cc (output): Remove progress newline.
11957
11958         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
11959         gettext on user messages, and remove whitespace.
11960
11961         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
11962
11963         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
11964         argv[0] (Thomas Scharkowski).
11965
11966         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
11967         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
11968         for ec-fonts-mtraced.
11969
11970         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
11971         --srcdir build (Bertalan).
11972
11973         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
11974         headers and library too (Laura Conrad).
11975
11976         * Documentation/topdocs/INSTALL.texi (Top): Mention development
11977         package for guile too (Laura Conrad).
11978
11979         * lily/main.cc (usage): Typo.
11980
11981 2004-11-02  Werner Lemberg  <wl@gnu.org>
11982
11983         * Documentation/user/notation.ly: More fixes to improve appearance.
11984
11985         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
11986         better output for multicolumn tables.
11987
11988 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11989
11990         * lily/main.cc (dir_info): Fixed typo in the printouts.
11991
11992 2004-11-01  Werner Lemberg  <wl@gnu.org>
11993
11994         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
11995         of output.
11996         Set `per_line' to 2; replace hard-coded value with it.
11997
11998         * Documentation/user/*: Many fixes to improve appearance of
11999         printed manual.
12000
12001 2004-11-01  Werner Lemberg  <wl@gnu.org>
12002
12003         * Documentation/user/changing-defaults.itely,
12004         Documentation/user/notation.ly,
12005         Documentation/user/programming-interface.itely: Use @/.
12006         Fix formatting of some lilypond snippets and tables.
12007
12008         * scripts/lilypond-book.py (compose_ly): Provide useful default
12009         for LINEWIDTH in `override'.
12010
12011 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12012
12013         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
12014
12015 2004-10-31  Werner Lemberg  <wl@gnu.org>
12016
12017         Resetting @exampleindent to `5' gives ugly results with texinfo's
12018         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
12019         (if not quoting) to change @exampleindent only locally.
12020
12021         * scripts/lilypond-book.py (NOQUOTE): New variable.
12022         (output) [LATEX]: Remove AFTER and BEFORE.
12023         [TEXINFO]: Remove AFTER and BEFORE.
12024         Fix QUOTE and VERBATIM pattern.
12025         Add NOQUOTE pattern.
12026         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
12027         and BEFORE.
12028         [output_texinfo]: Use NOQUOTE.
12029
12030 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12031
12032         * Documentation/user/changing-defaults.itely: clarify paper
12033         size commands with correct info.
12034
12035         * Documentation/user/lilypond-book.itely: add more docs for
12036         filename extensions.
12037
12038 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12039
12040         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
12041         (PATCH_LEVEL): start 2.5.0.
12042
12043 #Local variables:
12044 #coding: utf-8
12045 #End:
12046