]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
Info from NEWS to docs.
[lilypond.git] / ChangeLog
1 2006-02-20  Graham Percival  <gpermus@gmail.com>
2
3         * Documentation/user/ *-notation.itely: misc minor editing,
4         shifting doc sections around.
5
6         * Documentation/user/ *-notation-itely, global.itely,
7         changing-defaults.itely: added new stuff from NEWS.
8
9 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
10
11         * po/fi.po: update.
12
13 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14
15         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
16         lilypond --verbose for lp-book.
17
18         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
19         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
20
21         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
22         $(buildscript-dir) iso. absolute depth.
23
24         * buildscripts/genicon.py (dir): thinko.
25
26         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
27
28 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
29
30         * scm/output-lib.scm: swap darkcyan/darkyellow
31
32         * THANKS: Add bughunters.
33
34 2006-02-19  Graham Percival  <gpermus@gmail.com>
35
36         * Documentation/user/programming-interfaces.itely: fixed example.
37
38         * Documentation/user/instrument-notation.itely: fix @{ @}.
39
40         * scm/script.scm: add avoid-slur for \open.
41
42 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
43
44         * lily/tie-formatting-problem.cc (score_configuration): use
45         sliding score for min-length. 
46
47         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
48         spaghetti for icons.
49
50         * buildscripts/genicon.py (program_name): new file.
51
52         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
53         in outline too.  
54         (generate_configuration): for small ties, also look for collisions
55         at Y + DIR*h + DELTA_Y.
56         (get_variations): consider variation for dot positions too.
57
58         * lily/side-position-interface.cc (aligned_side): take abs for
59         quantized rounded position. Fixes tenuto below staff.
60
61         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
62         markers when necessary.
63
64         * lily/program-option.cc (internal_set_option): add
65         strict_infinity_checking option.
66
67         * scm/output-lib.scm (cyan): swap yellow and cyan.
68
69 2006-02-19  Graham Percival  <gpermus@gmail.com>
70
71         * darwin.patch: trivial linenumber update.
72
73         * Documentation/user/ {various}: `\context foo = named' changed
74         to `\new foo = "name"' in docs.
75
76 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
77
78         * scm/stencil.scm (annotate-y-interval): use it.
79
80         * scm/lily-library.scm (interval-sane?): new function.
81
82         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
83         tfm_checksum stuff.
84
85         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
86         common refpoint.
87
88         * flower/include/std-vector.hh (iterof): add iterof macro.
89
90         * lily/enclosing-bracket.cc (width): new function.
91
92         * lily/align-interface.cc (align_elements_to_extents): reinstate
93         warning.
94
95 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
96
97         * Documentation/index.html.in: fix spelling: thankyous.
98
99 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
100
101         * lily/lyric-hyphen.cc: typo.
102
103 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
104
105         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
106         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
107         builds don't work. 
108
109         * VERSION: release 2.7.35
110
111         * lily/beam.cc (get_default_dir): oops. Take abs () for
112         extremes[DOWN].
113         (get_default_dir): use extreme position criterion only in absence
114         of forced stem directions.
115
116         * VERSION (PATCH_LEVEL): bump VERSION.
117
118         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
119         dependencies. Necessary for -jX builds.  
120
121 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
122
123         * lily/relocate.cc (setup_paths): Yet another const fix.
124
125 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
126
127         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
128
129         * lily/relocate.cc (setup_paths): oops.
130
131 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
132
133         * Documentation/index.html.in: order links: html before PDF.
134
135 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
136
137         * lily/tie-column-format.cc (Module): remove.
138
139         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
140
141         * lily/text-spanner.cc (print): idem.
142
143         * lily/dynamic-text-spanner.cc (print): only print line if longer
144         than dash-period.
145
146         * lily/auto-change-iterator.cc (change_to): formatting.
147
148         * lily/beam.cc (get_default_dir): take extreme note head as input
149         for stem direction.
150
151         * lily/tie.cc (get_default_dir): only look directions for visible
152         stems. 
153
154         * lily/side-position-interface.cc (aligned_side): oops. Don't
155         mutiply with direction. This fixes quantized (staccato, tenuto)
156         scripts below notes.
157
158         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
159         direction. Fixes c-lyrics-center-align.ly
160
161 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
162
163         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
164         constructor.
165
166         * lily/std-string.cc:
167         * lily/include/std-vector.hh (split_string): Move and rename from
168         lily/include/misc.hh, lily/misc.cc.  Update callers.
169
170 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
171
172         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
173
174 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
175
176         * flower/test-file.cc: New file.
177
178         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
179         libraries.
180
181         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
182
183 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
184
185         * flower/include/file-storage.hh: remove file.
186
187         * lily/include/midi-item.hh (class Midi_track): idem.
188
189         * lily/include/source.hh (class Sources): idem.
190
191         * lily/include/performance.hh (class Performance): use vector
192         iso. Cons<>
193
194         * flower/include/cons.hh (class Cons): remove file.
195
196         * flower/include/flower-proto.hh: remove template cruft.
197
198         * lily/include/font-metric.hh: use size_t not vsize for indices.
199
200         * flower/include/flower-proto.hh (Module): remove std-vector.hh
201         from proto.
202
203         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
204
205         * lily/include/paper-book.hh (class Paper_book):
206         make get_system_specs() public.
207
208         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
209         the force=10000 case if we don't have a current-best. 
210
211         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
212         vsize 
213
214         * flower/include/flower-proto.hh: remove outdated templates.
215
216         * scm/page.scm: use annotate-spacing
217
218 2006-02-15  Graham Percival  <gpermus@gmail.com>
219
220         * scm/translation-functions.scm: circle patch from Erlend, thanks!
221
222         * THANKS: moved Erlend Aasland to contributors.
223
224 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
225
226         * config.hh.in: remove HAVE_PANGO_16
227
228         * lily/tuplet-bracket.cc (calc_positions): multiply with
229         staff-space for beam case. This fixes tuplets+beams on scaled
230         staves.
231
232         * config.hh.in: remove all Kpathsea related defines.
233
234         * lily/dot-column.cc (side_position): reach stem via dots->
235         head->stem. Inspect all stems for dot collisions. 
236
237         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
238         stem handling.
239
240         * lily/bar-number-engraver.cc (process_music): document function
241         of whichBar.
242
243         * lily/score.cc (default_rendering): add pscore, not systems
244         themselves.
245
246         * lily/paper-book.cc (get_system_specs): separate generation of
247         titles and systems.
248
249         * flower/include/std-vector.hh: don't include config.hh
250
251 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
252
253         * flower/include/std-vector.hh: Better wrapper compatibility with
254         std::vector.
255
256         * flower/include/flower-proto.hh: Remove cheap forward declaration
257         attempts.
258
259         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
260
261 2006-02-14  Graham Percival  <gpermus@gmail.com>
262
263         * Documentation/user/invoking.itely: add warning about command line.
264
265 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
266
267         * lily/include/lily-proto.hh: add Prob, rm Page.
268
269         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
270
271         * VERSION: release 2.7.34
272
273         * lily/relocate.cc (framework_relocation): show canary if
274         GHOSTSCRIPT_VERSION undefined.
275
276         * GNUmakefile.in: remove $(VERSION) symlink.
277
278         * lily/relocate.cc (setup_paths): add + 
279
280 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
281
282         * Documentation/index.html.in: specify sizes for all big HTML pages.
283
284 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
285
286         * config.hh.in: remove @FRAMEWORKDIR@
287
288         * lily/system-start-text.cc (get_stencil): new file: separate out
289         system-start-delimiter text support.
290
291         * input/**ly: replace \context with \new where appropriate.
292         
293         * THANKS: add Don.
294
295         * lily/slur-scoring.cc (get_base_attachments): use
296         robust_relative_extent. This fixes problems with empty paper-columns. 
297
298 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
299
300         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
301
302         * scm/define-music-properties.scm (all-music-properties):
303         create-new property.
304
305         * lily/context-specced-music-iterator.cc (construct_children):
306         inspect 'create-new property iso. magical $uniqueContextId context
307         id.
308
309         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
310
311         * lily/context-key-manager.cc (Module): new file. Encapsulate
312         object key generation.
313
314         * lily/include/context-key-manager.hh (Module): new file.
315
316 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
317
318         * scm/define-grobs.scm (all-grob-descriptions): center instrument
319         names vertically
320
321         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
322         options.
323         (reloc_b): excise --enable-framework-dir
324
325         * lily/relocate.cc (framework_relocation): use getenv
326         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
327
328 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
329
330         * flower/include/std-string.hh: 
331         * flower/include/std-vector.hh: Finish std:: conversion; move
332         flower extensions from std:: namespace.  Update users.
333
334         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
335         their expansion to vector<*>.  Update users.
336
337 2006-02-10  Graham Percival  <gpermus@gmail.com>
338
339         * Documentation/user/invoking.itely: add example to File structure.
340
341         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
342         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
343
344 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
345
346         * ly/paper-defaults.ly: typo.
347
348         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
349         set_parent() for parentheses. This will make it show up in bbox
350         calculations.
351
352         * scm/output-lib.scm (parentheses-item::print): rewrite, using
353         ly:grob-common* functions.
354
355         * lily/grob-scheme.cc (LY_DEFINE):
356         ly:grob-common-refpoint-of-array: new function 
357         ly:grob-common-refpoint: new function 
358         ly:grob-relative-coordinate: new function 
359
360         * lily/instrument-name-engraver.cc (process_music): use
361         Text_interface::is_markup(). This fixes \markup on instrument names.  
362
363         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
364         for ties and slurs.
365
366         * lily/slur.cc (print): idem.
367
368         * lily/tie.cc: add line-thickness for ties. 
369
370 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
371
372         * scm/output-svg.scm: Document diversion from GNU coding standards
373         as a workaround for a bug in Microsoft Internet Explorer.
374
375 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
376
377         * lily/instrument-name-engraver.cc (process_music): use
378         is_markup() iso. is_string()
379
380         * Documentation/user/changing-defaults.itely (Module): add menu entry.
381
382         * lily/percent-repeat-engraver.cc (process_music): only look at
383         main_part_ for % repeats.
384
385         * lily/stem-tremolo.cc (get_beam_translation): new function.
386         (calc_slope): new function.
387         (height): don't use real slope.
388
389 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
390
391         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
392         new connect-to-neighbor, control-points and staff-padding
393         properties to make ligature brackets showing up again.
394
395 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
396
397         * VERSION: release 2.7.33
398
399         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
400         too many.
401
402         * Documentation/user/changing-defaults.itely (Difficult tweaks):
403         remove applyOutput example.
404         (Objects connected to the input): document \tweak, \parenthesize
405
406         * lily/relocate.cc (prefix_relocation): allow "current"
407         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
408         changing VERSION in a lily tree less painful.
409
410         * input/regression/parenthesize.ly: new file. 
411
412         * scm/output-lib.scm (parenthesize-element): new function.
413
414         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
415
416         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
417
418         * lily/accidental-engraver.cc (make_standard_accidental): reroute
419         cause: accidentals are caused by note heads, not note events. 
420
421 2006-02-08  Graham Percival  <gpermus@gmail.com>
422
423         * darwin.patch: small patch from Erlend, thanks!
424
425         * Documentation/user/basic-notation.itely: add stem-neutral example.
426
427         * Documentation/user/putting.itely: clarifications.
428
429 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
430
431         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
432         note, add more guidelines to what should go into NEWS.
433
434         * input/sakura-sakura.ly: document how to override font.
435
436         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
437
438 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
439
440         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
441
442 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
443
444         * scripts/convert-ly.py (lilypond_version_re_str): Move from
445         convertrules.  Add explicit grouping, needed for python2.2.
446
447 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
448
449         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
450
451 2006-02-07  Graham Percival  <gpermus@gmail.com>
452
453         * Documentation/user/global.itely: fix line-width in (text) docs.
454
455         * Documentation/user/lilypond-book.itely: same.
456
457 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
458
459         * VERSION (PACKAGE_NAME): release 2.7.32
460
461         * Documentation/topdocs/NEWS.tely (Top): document new variable
462         naming.
463
464         * flower/include/array.icc (Message): remove file.
465
466         * flower/include/std-vector.hh: make sure vsize and VPOS are
467         defined for binary_search_bounds().
468
469         * flower/std-string.cc (std): add to_string(long unsigned).
470
471         * configure.in (gui_b): excise std_string option.
472         (gui_b): excise std_vector option.
473
474         * flower/string.cc (Module): excise flower array & string
475
476         * flower/include/std-string.hh: excise flower string.
477
478         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
479
480         * python/convertrules.py (lilypond_version_re_str): require
481         only numbers and dots in \version string.
482
483 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
484
485         * lily/system-start-delimiter.cc (print): allow style = text too.
486
487         * lily/system-start-delimiter-engraver.cc
488         (acknowledge_system_start_text): new function, also add add to
489         support of system-start-text (instrument names). This fixes
490         instrument names on piano staves.
491
492         * lily/instrument-name-engraver.cc: rewrite. Use
493         system-start-delimiter approach. This save memory and cpu.
494
495         * scm/define-grobs.scm (all-grob-descriptions): remove
496         instrument-name from break-alignment.
497
498         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
499
500 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
501
502         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
503         jobserver going.
504
505         * configure.in (std_vector): On by default.
506
507         * lily/include/font-metric.hh:
508         * lily/include/tfm-reader.hh: 
509         * lily/include/spanner.hh: Use unsigned for indices and sizes.
510         Update users.
511
512         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
513
514 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
515
516         * VERSION (PACKAGE_NAME): 2.7.31
517
518         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
519         EPS edge at 0, but take minimum with left-overshoot. This fixes
520         cut off system start delims. 
521
522         * lily/instrument-name-engraver.cc (stop_translation_timestep):
523         hack: add to axis group if not added yet. This fixes hara kiri'd
524         piano staves.
525
526         * lily/hara-kiri-group-spanner.cc
527         (force_hara_kiri_in_y_parent_callback): fix signatures.
528
529         * lily/hairpin.cc (print): check next hairpin to see whether or
530         not to be continuing.
531
532 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
533
534         * Remove trailing whitespace from makefiles.
535         
536         * flower/include/std-vector.hh: Add binary_search_bounds workaround
537         for earlier gcc.
538
539         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
540
541         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
542
543         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
544
545         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
546
547         * configure.in: Use it.
548
549 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
550
551         * scm/music-functions.scm (pitch-of-note): new function.
552
553         * ly/music-functions-init.ly: add \octave and \addquote
554
555         * lily/parser.yy (music_function_chord_body): softcode \octave.
556         (lilypond_header): softcode \addquote
557
558 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
559
560         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
561         array.hh, parray.hh at all.  Getting ready to flip the
562         configure default.
563
564         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
565
566         * lily/source-file.cc (file::get_line): Help binary_search_bounds
567         a bit.
568
569         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
570
571 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
572
573         * flower/include/array.hh: typo. 
574
575 2006-02-02  Graham Percival  <gpermus@gmail.com>
576
577         * Documentation/user/advanced-notation.itely: doc "\#" in text.
578
579 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
580
581         * flower/include/pqueue.hh: Derive from std::vector.
582
583         * flower/include/parray.hh: Conform to std::vector interface.
584         Update users.
585
586 2006-02-02  Graham Percival  <gpermus@gmail.com>
587
588         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
589
590 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
591
592         * flower/file-path.cc (is_file): remove if 0 section.
593
594         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
595         selecting afii61352.
596
597 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
598
599         * flower/include/std-vector.hh (boundary): Oops, reverse.
600
601         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
602         remove superfluous `d'.
603
604         * flower/include/std-vector.hh (boundary, top): Detach from class.
605         Remove empty vector shell.
606
607         * flower/include/array.hh (reverse, swap): Detach from class.
608         Update users.
609         
610         * flower/include/std-vector.hh
611         * flower/include/array.hh (concat): Globally change to insert ().
612
613         
614         * flower/include/std-vector.hh
615         * flower/include/parray.hh
616         * flower/include/array.hh (elem, elem_ref): Globally replace by
617         at ().
618
619 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
620
621         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
622
623         * python/convertrules.py (FatalConversionError.sub_cxx_id):
624         anticipate on identifier substitutions.
625
626 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
627
628         * flower/include/std-vector.hh (insert): Remove, replace by
629         std::vector interface.  Update callers.
630
631         * flower/include/array.icc (insert): Change signature to
632         match std::vector interface.
633         
634         * flower/include/array.icc (vector_sort): Bugfix.
635
636 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
637
638         * lily/parser.yy (output_def_head_with_mode_switch): new
639         production. Result: dashes and underscores may be used in the
640         \paper block.
641
642         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
643
644         * python/convertrules.py (conv): oops. One slash too much.
645
646 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
647
648         * flower/include/std-vector.hh (sort): Remove, replace by
649         ::vector_sort.  Update callers.
650
651         * flower/include/std-vector.hh (slice): Remove.  Update callers.
652         (sort): Bugfix.
653
654         * flower/test-std.cc (vector_sort): New test.
655
656 2006-02-01  Graham Percival  <gpermus@gmail.com>
657
658         * Documentation/user/putting.itely: fixes from Erik.
659
660 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
661
662         * flower/test-std.cc: Add simple unit test for vector migration.
663
664         * stepmake/stepmake/test*: Unit test support.
665
666         * flower/include/std-vector.hh (del): Remove.  Use erase (),
667         update callers.
668
669         * flower/include/array.hh (begin, end): Add.
670         (del, get): Remove.
671
672 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
673
674         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
675         std::string not String. 
676
677         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
678         iso UINT_MAX.
679
680         * lily/prob.cc (Prob): copy type_ too.
681
682         * lily/lily-guile.cc (mangle_cxx_identifier): new
683         function. Class_bla::foo_bar_[px] ->
684         ly:class-bla::foo-bar[?!]. Changes throughout
685
686 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
687
688         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
689
690         * lily/beam.cc (calc_direction): take dir from visible stem in
691         degenerate case.
692
693 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
694
695         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
696         Fix -1, >=0 boundary checks for unsigned vsize.
697
698         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
699         loop for unsigned vsize.
700
701         * configure.in (--enable-std-vector): New option.
702         (--enable-std-string): On by default.
703
704         * flower/include/std-vector.hh: New file.  Enable switch to
705         std::vector, update client code.
706
707 2006-01-30  Graham Percival  <gpermus@gmail.com>
708
709         * scm/document-translation.scm: clarify "this context is also
710         known as".  Thanks, Werner!
711
712         * Documentation/user/putting.itely: small fixes from Don Blaheta.
713
714         * Documentation/user/invoking.itely: small fix from Don.
715
716 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
717
718         * scm/lily.scm (define-scheme-options): rename option
719         preview-include-book-title to book-title-preview
720         (define-scheme-options): move force-eps-font-include (from paper
721         block) to eps-font-include -d option.
722
723         * VERSION (PATCH_LEVEL): release 2.7.30
724
725         * input/bach-schenker.ly (staffPiano): new file.
726
727         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
728
729         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
730         credits to Nicolas.
731
732         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
733
734         * ps/lilyponddefs.ps: remove start-system, stop-system,
735         start-page fluff. This saves putting { } code on the stack, fixing
736         stack overflows when including EPS files.
737
738 2006-01-29  Graham Percival  <gpermus@gmail.com>
739
740         * Documentation/user/putting.itely: minor fixes (comments on -devel).
741
742 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
743
744         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
745
746 2006-01-28  Graham Percival  <gpermus@gmail.com>
747
748         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
749
750 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
751
752         * input/mutopia/claop.py: Update.
753
754 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
755
756         * input/regression/completion-heads.ly (texidoc): fix.
757
758         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
759
760         * lily/tie-formatting-problem.cc
761         (set_ties_config_standard_directions): use abs iso fabs for ints.
762
763         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
764
765         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
766         little less than noteheight, to prevent overlaps in chords.
767
768         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
769         head, and fudge stem-attachment.
770
771         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
772
773         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
774
775 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
776
777         * lily/main.cc (main): Debugging aid: catch exceptions.
778
779         * flower/std-string.cc (to_string): Robustification.  Fixes midi
780         output with std::string.
781
782 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
783
784         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
785
786 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
787
788         * Fix -DSTRING_UTILS_INLINED.
789
790 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
791
792         * VERSION (PATCH_LEVEL): release 2.7.29
793
794         * lily/relocate.cc (setup_paths): mingw uses std string too.
795
796         * lily/*.cc: various fixes for substr(ARG).
797
798         * lily/sustain-pedal.cc (print): 
799
800         * flower/file-name.cc (slashify): use std strings.
801
802         * flower/string-convert.cc: remove publib.h
803
804         * scm/define-markup-commands.scm (verbatim-file): new markup
805         command \verbatim-file
806
807         * Documentation/topdocs/NEWS.tely: fixup URLs
808
809         * input/regression/alignment-vertical-manual-setting.ly (Module):
810         new file.
811
812         * lily/align-interface.cc (align_elements_to_extents): overwrite
813         translations with numbers in alignment-offsets from left bound
814
815         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
816         (page-translate-systems): new function: take into account Y-offset.
817
818         * Documentation/topdocs/NEWS.tely (Top): document new features.
819
820         * input/regression/page-layout-manual-position.ly (Module): new
821         file.
822
823 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
824
825         * flower/file-path.cc (path::parse_path): Oops.
826
827         * Finish std::string interface.  For now, use std:: marker
828         throughout for easy s/r.
829
830 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
831
832         * Documentation/user/putting.itely (Score is a single musical
833         expression): typo.
834         (Score is a single musical expression): more typos.
835
836         * scm/page.scm (annotate-space-left): thinko.
837         (annotate-page): more thinkos.
838
839 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
840
841         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
842         for different \score blocks separately.
843         (post-process-pages): put write-page-layout into paper block.
844
845         * lily/output-def.cc (get_parser): new file.
846
847         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
848         file.
849
850         * lily/include/output-def.hh (class Output_def): add parser_ member.
851
852         * input/regression/page-layout-twopass.ly (Module): new file.
853
854         * scm/lily.scm: remove cpp hack.
855
856         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
857
858 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
859
860         * GNUmakefile.in (c-clean): New target.
861
862         * flower/include/std-string.hh: String/std::string compatibility:
863         Use NPOS for `not found' (iso -1), use ssize for length () and pos
864         type.
865
866         * flower/rational.cc: 
867         * flower/include/rational.hh: 
868
869         * flower/offset.cc: 
870         * flower/include/offset.hh: 
871
872         * flower/interval.cc: 
873         * flower/include/interval.hh: 
874
875         * flower/string-convert.cc: 
876         * flower/include/string-convert.hh: Use std::string [interface].
877         Update callers.
878
879 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
880
881         * Documentation/index.html.in: clean up.
882
883 2006-01-25  Graham Percival  <gpermus@gmail.com>
884
885         * Documentation/user/putting.itely: another new untested doc section.
886
887 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
888
889         * scm/layout-page-layout.scm (write-page-breaks): write
890         \spacingTweaks #ALIST. Handle grace timing.
891
892         * scm/: more imports.
893
894         * scm/page.scm (make-page): add footer/header.
895         (annotate-space-left): revise: only take page argument.
896         (layout->page-init): new function.
897
898         * scm/layout-page-layout.scm (write-page-breaks): preliminary
899         version of the system/spacing/linebreak hack writing to the output
900
901         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
902         ly:make-prob.
903
904         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
905         ly:spanner-bound
906
907 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
908
909         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
910
911         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
912
913         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
914         handling to page.scm
915
916         * lily/prob-scheme.cc (LY_DEFINE): new file.
917         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
918
919         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
920         prob functions.
921
922         * lily/music.cc (derived_mark): derive Music from Prob.
923
924         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
925
926         * lily/prob.cc (Module): Implement Prob (Property Object), object
927         with shared and r/w property alists.  
928
929         * lily/include/prob.hh (Module): new file. Declare Prob.
930
931         * flower/string.cc: remove is_empty().
932
933         * flower/include/string.hh (class String): remove String:: qualifier.
934
935         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
936         substitute appropriate functions.
937
938         * flower/include/string.hh (class String): remove to_str0 and
939         is_empty(). S&R everywhere.
940
941 2006-01-23  Graham Percival  <gpermus@gmail.com>
942
943         * Documentation/user/basic-notation.itely: add hairpin
944         after-linebreak tweak to commonprop.
945
946         * Documentation/user/putting.itely: added two new sections.
947
948 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
949
950         * flower/international.cc: 
951         * flower/include/international.hh: 
952
953         * flower/getopt-long.cc: 
954         * flower/include/getopt-long.hh: Use std::string [interface].
955         Update callers.
956
957         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
958
959         * stepmake/stepmake/executable-rules.make: Add dependency on
960         module libraries.
961
962 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
963
964         * flower/file-path.cc: 
965         * flower/include/file-path.hh: Use std::string [interface].
966         Update callers.
967
968         * flower/direction.cc: 
969         * flower/axis.cc: Unused.  Remove.
970
971         * configure.in (--enable-std-string): New option.
972
973         * flower/std-string.cc: 
974         * flower/include/std-string.hh: New file.
975
976         * flower/file-name.cc[STD_STRING]:
977         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
978
979 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
980
981         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
982
983         * scm/define-markup-commands.scm (with-dimensions):
984         with-dimensions markup command.
985
986         * input/test/font-table.ly: use it.
987
988         * lily/open-type-font.cc (glyph_list): new function.
989
990         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
991
992         * lily/ttf.cc: remove ly:font-glyph-list scheme function
993
994 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
995
996         * ly/music-functions-init.ly (parallelMusic): new music function
997         for parallel music entry.
998
999         * scm/define-music-properties.scm (all-music-properties): new
1000         'void music property
1001
1002         * scm/music-functions.scm (ly:music-message): make public, to be
1003         used in music function definitions
1004
1005         * scm/lily-library.scm (collect-music-for-book): discard music
1006         when the 'void property is set.
1007
1008 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1009
1010         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
1011
1012         * mf/GNUmakefile: idem.
1013
1014         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
1015
1016         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
1017
1018         * Documentation/user/notation-appendices.itely (The Feta font):
1019         use it.
1020
1021         * input/test/font-table.ly: new file. Generate font table within lily.
1022
1023         * Documentation/user/notation-appendices.itely (The Feta font):
1024         use new font-table.ly file. 
1025
1026         * stepmake/stepmake/install-out-targets.make
1027         (local-install-outfiles): only create directory if
1028         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
1029
1030 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1031
1032         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
1033
1034         * VERSION (PACKAGE_NAME): release 2.7.28
1035
1036         * scm/framework-ps.scm (write-preamble): use it to pick exactly
1037         the right font from a Mac dfont.
1038         (write-preamble): don't forget directory, only look at files.
1039
1040         This fixes problems with TTF files in dfonts that don't match
1041         their PostScript names.
1042          
1043         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
1044         PS name from TTF font.
1045
1046         * input/regression/tie-manual.ly: document new feature.
1047
1048         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
1049
1050         * VERSION (MY_PATCH_LEVEL): bump to .28
1051
1052         * Documentation/user/basic-notation.itely (Ties): add tie examples
1053         refs.
1054
1055         * lily/tie-formatting-problem.cc (score_ties_configuration):
1056         symmetry penalties for outer ties.
1057
1058 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1059
1060         * lily/tie-formatting-problem.cc (generate_configuration) 
1061         (set_manual_tie_configuration): skip non-pair manual
1062         tie-configuration, so you can set individual ties as
1063
1064           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
1065
1066         * input/regression/tie-chord.ly: use generateTiePattern to
1067         simplify file.
1068
1069         * lily/tie-formatting-problem.cc (peak_around): new function.
1070         (score_configuration): use sliding criterion for staff line collisions. 
1071         (score_configuration): idem for dot collisions.
1072         (generate_configuration): use separate stem_gap for gap to stem.
1073
1074         * lily/include/tie-formatting-problem.hh (struct Tie_details):
1075         separate penalty factors for x and y distance.
1076         (struct Tie_details): separate penalties for tip and center line collisions.
1077
1078 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
1079
1080         * lily/tie-formatting-problem.cc (generate_configuration): make
1081         large ties avoid stafflines in the horizontal section.
1082         (score_configuration): use softcoded penalties
1083         (score_aptitude): idem.
1084
1085         * lily/tie-helper.cc (from_grob): softcode tie details
1086
1087         * lily/staff-symbol-referencer.cc (on_staff_line): new function
1088
1089         * lily/staff-symbol-referencer.cc (on_line): rename from
1090         on_staffline 
1091
1092 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1093
1094         * ly/music-functions-init.ly: remove duplicate tag.
1095
1096         * lily/include/*.hh: GCC 4.1 fixes.
1097
1098 006-01-16  Erlend Aasland  <erlenda@gmail.com>
1099
1100         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
1101
1102         * scm/define-music-types.scm: fix bug in desc. string
1103         for OverrideProperty
1104
1105 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
1106
1107         * scripts/lilypond-book.py: bugfix
1108
1109         * scm/define-music-types.scm: fix typos.
1110
1111 2006-01-14  Graham Percival  <gpermus@gmail.com>
1112
1113         * Documentation/user/ basic-notation.itely, global.itely,
1114         advanced-notation.itely, instrument-notation.itely: small
1115         additions (bugs and commonly tweaked properties).
1116
1117 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1118
1119         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
1120         detection of mingw build.
1121         (MINGW_BUILD): opps.
1122
1123 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1124
1125         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
1126         i686-mingw32.
1127
1128 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1129
1130         * scm/music-functions.scm (skip->rest): add skip->rest
1131
1132 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1133
1134         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
1135         explicitly.
1136
1137         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
1138         config dirs. Aids debugging. 
1139         (display_config): also display config files.
1140
1141 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1142
1143         * VERSION: release 2.7.27
1144
1145         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
1146         for determining bar size.
1147
1148         * lily/staff-symbol.cc (print): place lines at distance line-positions
1149
1150         * scm/define-grob-properties.scm (all-user-grob-properties): add
1151         line-positions.
1152
1153         * lily/staff-symbol.cc (height): new function.
1154
1155         * input/regression/staff-line-positions.ly:  new file.
1156
1157 2006-01-06  Graham Percival  <gpermus@gmail.com>
1158
1159         * input/test/add-staccato.ly: remove reference to old file.
1160
1161 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1162
1163         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
1164         lilypond binary too.
1165
1166 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1167
1168         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
1169
1170 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1171
1172         * scripts/midi2ly.py: Bugfix: Declare datadir.
1173
1174         * make/ly-rules.make:
1175         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
1176         that seems to be gone). Fixes make web.
1177
1178         * The grand 2005-2006 replace.
1179
1180         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
1181
1182 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1183
1184         * make/lilypond-vars.make: set LILYPOND_BINARY variable
1185         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
1186         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
1187         like -dgs-font-load.
1188
1189         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
1190         remove absolute path to lilypond binary.
1191         
1192 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
1193
1194         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
1195
1196 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1197
1198         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
1199
1200         * mf/GNUmakefile: remove broken dvips map symlink.
1201
1202 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1203
1204         * lily/main.cc: 
1205         * configure.in: Cosmetic fixes.
1206
1207 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1208
1209         * Documentation/user/music-glossary.tely (Pitch names): Added
1210         Spanish pitch names and durations, thanks to Ernesto Gancedo
1211
1212 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1213
1214         * scm/lily.scm (define-scheme-options): use quasi-quote for option
1215         init. Fixes verbose printing of .scm files.
1216
1217         * stepmake/aclocal.m4: add spaces before - options.
1218         
1219 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1220
1221         * lily/relocate.cc (setup_paths): Bugfix: do not store result
1222         of path search in local block variable.
1223
1224 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1225
1226         * configure.in (NCSB_DIR): --enable-ncsb-dir
1227         (LINK_GXX_STATICALLY): denko.
1228
1229         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
1230
1231         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
1232         use locate to find c059033l.pfb. 
1233         
1234 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1235
1236         * lily/tie-formatting-problem.cc
1237         (problem::generate_base_chord_configuration): Use my_round (was
1238         round).
1239
1240         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
1241         do not invoke mbrtowc.
1242
1243         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
1244
1245 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1246
1247         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
1248
1249 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
1250
1251         * Documentation/user/invoking.itely (svg): revise.
1252
1253 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1254
1255         * lily/lexer.ll: use sourcefilename iso. renameinput.
1256
1257 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1258
1259         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
1260         <PostScriptName>.ttf instead of c059XXXttf.
1261
1262         * lily/program-option.cc (LY_DEFINE): special support for
1263         --verbose, so it works before option init too.
1264  
1265         * mf/GNUmakefile (local-install): oops.
1266
1267         * lily/lyric-hyphen.cc (print): oops.
1268
1269         * buildscripts/pfx2ttf.fontforge: new file.
1270         
1271         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
1272         ($(outdir)/%.ttf): new rule. 
1273
1274         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
1275         to LyricHyphen.
1276
1277         * lily/lyric-hyphen.cc (print): multiply hyphen height by
1278         font-size
1279
1280 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1281
1282         * VERSION: release 2.7.26
1283         
1284         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
1285
1286 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1287
1288         * lily/font-config.cc (init_fontconfig): verbosity.
1289
1290         * THANKS: add Muziekacademie Lede. 
1291
1292         * scripts/musicxml2ly.py (print_voice_definitions): new function 
1293         (print_score_setup): new function
1294         (convert): read part definition to output staves properly.
1295
1296         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
1297         Music_xml notes.
1298
1299         * python/musicexp.py (Output_printer.__init__): use _ in data
1300         members.
1301         (Output_printer.unformatted_output): new function: no formatting,
1302         but count braces.
1303         (Duration.get_length): remove isinstance() checks for
1304         Output_printer everywhere.
1305
1306         * input/regression/lyrics-bar.ly (texidoc): add
1307         Separating_line_group_engraver.
1308
1309 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1310
1311         * lily/relocate.cc (framework_relocation): New function,
1312         factored from set_relocation ().
1313         (prefix_relocation): Rename from set_relocation ().
1314         (setup_paths): Use it.
1315
1316 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1317
1318         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
1319         numbers. Patch by Erlend Aasland.
1320
1321 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1322
1323         * lily/font-config.cc (init_fontconfig): print warning if cache
1324         file is not existant.
1325
1326         * lily/main.cc: don't use #ifdef but #if
1327
1328 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1329
1330         * lily/grob-property.cc (internal_set_property): don't abort on
1331         calculation-in-progress.
1332
1333         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
1334
1335         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
1336         connect-to-neighbor property not connect-to-other
1337
1338         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
1339         (LY_DEFINE): oops. don't forget protection.
1340
1341         * flower/parse-afm.cc (Module): strip AFM handling completely.
1342
1343         * lily/stencil-expression.cc: idem.
1344
1345         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
1346
1347         * lily/function-documentation.cc (ly_add_function_documentation):
1348         use static member iso. Protected_scm
1349
1350         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
1351
1352         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
1353
1354 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1355
1356         * lily/relocate.cc (set_env_dir): New function.
1357         (set_relocation): Use it to fix setting PANGO_PREFIX.
1358
1359 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1360
1361         * input/regression/stem-direction-context.ly: remove rest.
1362
1363         * lily/melody-engraver.cc (process_music): restart for bar lines.
1364         (acknowledge_slur): restart for slurs.
1365
1366 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
1367
1368         * Documentation/user/invoking.itely: describe how to view SVG 
1369         output using Inkscape which replace embedded fonts with OTF fonts.
1370
1371 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1372
1373         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
1374
1375 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1376
1377         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
1378         comment.
1379
1380 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1381
1382         * VERSION (PACKAGE_NAME): release 2.7.25
1383
1384         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1385
1386         * input/regression/stem-direction-context.ly: new file.
1387
1388         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
1389
1390         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
1391         on rest.
1392
1393         * ly/engraver-init.ly: add Melody_engraver
1394
1395         * lily/beam.cc (calc_direction): use default-direction
1396         iso. get_default_direction()
1397
1398         * scm/define-grob-properties.scm (all-user-grob-properties): add
1399         default-direction property.
1400
1401         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
1402
1403         * lily/stem.cc (calc_default_direction): remove
1404         Stem::get_default_direction, use default-direction with callback
1405         instead.
1406
1407         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
1408
1409         * lily/melody-engraver.cc: new file. Acknowledge stems for
1410         interpolated stem directions. 
1411
1412         * lily/melody-spanner.cc: new file. Interpolate stem directions.
1413
1414         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
1415
1416         * lily/slur-configuration.cc (fit_factor): more robust check for
1417         point in curve X-extent.
1418
1419         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
1420         (outside_slur_callback): check for 'outside avoidance.
1421
1422         * lily/slur-configuration.cc (score_extra_encompass): don't use
1423         bound->column() == avoid->column() for checking extents, as this
1424         doesn't work for accidentals. 
1425
1426         * lily/slur-engraver.cc (acknowledge_extra_object): remove
1427         DynamicText hardcoding.
1428
1429         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
1430         crash if bound stem is NULL
1431
1432         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
1433         pedals.
1434
1435 2005-12-22  Graham Percival  <gpermus@gmail.com>
1436
1437         * scm/define-markup-commands.scm: typo.  @code{\raise}
1438         => @code{\\raise}.
1439
1440         * darwin.patch: now used again, includes a
1441         required patch from fink.
1442
1443 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
1444
1445         * po/TODO: mention gtranslator along with kbabel.
1446         * po/fi.po: update translations.
1447
1448 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1449
1450         * lily/relocate.cc (setup_paths): Bugfix.
1451
1452 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1453
1454         * lily/slur-configuration.cc (score_extra_encompass): don't use
1455         "avoid" choice for avoid-slur.
1456
1457         * stepmake/bin/install.py (dest): don't create existing dir.
1458
1459 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1460
1461         * stepmake/bin/install.py: Remove file before copying.
1462
1463         * config.make.in: 
1464         * stepmake/aclocal.m4: Do not substitute INSTALL.
1465
1466 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1467
1468         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1469         depend on link-tree.
1470
1471         * lily/relocate.cc (setup_paths): only check path for non-absolute
1472         dir without directory part.
1473
1474         * flower/file-name.cc (is_absolute):  new method.
1475         (is_absolute): check root_ too.
1476
1477 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1478
1479         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
1480         relocation code.  Oops, don't comment out too much.
1481
1482         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
1483         iso itself.
1484
1485         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
1486         compile.
1487
1488 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1489
1490         * .cvsignore: Add install-sh.
1491
1492         * autogen.sh (srcdir): Typo.
1493
1494 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1495
1496         * autogen.sh (srcdir): urg. Touch install-sh.
1497
1498         * stepmake/bin/install-sh (Module): remove.
1499
1500         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
1501
1502         * lily/include/relocate.hh: new file.
1503
1504         * lily/relocate.cc: new file. Contain relocation logic.
1505
1506         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
1507         (main): read LILYPOND_VERBOSE as the first thing.
1508
1509         * stepmake/aclocal.m4: remove INSTALL variable.
1510
1511         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1512         separate target for making font symlinks.
1513         (documentation-dir): use $(if $(findstring )) for switching off
1514         Documentation.
1515
1516         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
1517         something if DOCUMENTATION is no.
1518
1519 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1520
1521         * VERSION: release 2.7.24
1522
1523         * lily/script-column-engraver.cc (stop_translation_timestep):
1524         delay adding to script-column.
1525
1526         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
1527
1528         * python/convertrules.py (conv): rule for number-visibility
1529
1530         * lily/slur-configuration.cc (score_extra_encompass): different
1531         distance measure for avoid and inside avoidance.
1532         (score_extra_encompass): use 1/(distance+eps) as penalty.
1533
1534         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
1535         encompass objects for generating slur curves.
1536
1537         * lily/slur.cc: use details iso. slur-details property.
1538
1539         * input/regression/slur-tuplet.ly: new file.
1540
1541         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
1542
1543         * flower/include/offset.hh (class Offset): new operator /=
1544
1545         * lily/tuplet-number.cc (print): new file, new interface.
1546
1547         * scm/define-grob-properties.scm (all-user-grob-properties):
1548         remove number-visibility property.
1549
1550         * lily/tuplet-bracket.cc (calc_control_points): new function
1551         (calc_connect_to_neighbors): new function.
1552         (print): remove text handling for tuplet numberdef.
1553
1554         * lily/tuplet-engraver.cc (struct Tuplet_description): create
1555         TupletNumbers too. 
1556
1557         * lily/lily-guile.cc (robust_scm2booldrul): new function
1558
1559         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
1560
1561         * lily/tuplet-bracket.cc (calc_position_and_height): use
1562         staff-padding to control whether tuplet brackets are over staves.
1563
1564         * lily/grob.cc (suicide): clear dim_caches_.
1565
1566         * lily/dimension-cache.cc (clear): new function.
1567
1568         * lily/grob.cc (extent): swap order of min-extent and extent
1569         calculations. This fixes hara kiri staves. 
1570
1571 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1572
1573         * lily/main.cc: Nitpick: relocation is not based on path, but on
1574         directory (location).
1575
1576 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1577
1578         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
1579
1580         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
1581
1582         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
1583
1584         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
1585
1586         * stepmake/stepmake/generic-vars.make (Module): idem.
1587
1588         * stepmake/stepmake/executable-targets.make (default): use it.
1589
1590         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
1591
1592         * make/GNUmakefile: don't install make rules.
1593
1594         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
1595         slashes.
1596         (prepend_env_path): more verbosity.
1597
1598 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1599
1600         * GNUmakefile.in: add dir argument for find command.
1601
1602         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
1603         fixes weird line numbers for point & click.
1604
1605         * lily/source-file.cc (get_counts): init line/column/char counts.
1606
1607 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1608
1609         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
1610
1611 2005-12-16  Graham Percival  <gpermus@gmail.com>
1612
1613         * Documentation/user/basic-notation.itely, advanced-notation.itely:
1614         minor fixes from Fredric.  Thanks!
1615
1616 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1617
1618         * ly/music-functions-init.ly: add \bar and \clef music function 
1619
1620         * lily/lily-lexer.cc: idem.
1621
1622         * lily/parser.yy (FIXME): remove BAR and CLEF.
1623
1624 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1625
1626         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
1627
1628         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
1629         function arguments too
1630
1631         * lily/main.cc (set_relocation): new function.
1632
1633         * scripts/musicxml2ly.py (convert): add \version
1634
1635         * lily/tie.cc: remove get_default_attachments()
1636
1637         * VERSION (PACKAGE_NAME): release 2.7.23
1638         
1639         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
1640         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
1641
1642         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1643
1644         * lily/tie-formatting-problem.cc (score_ties): new function
1645         (get_variations): new function. Try flipping dirs for collisions.
1646         (generate_optimal_chord_configuration): new function. 1-opt search
1647         for better configuration.
1648
1649         * lily/tie-configuration.cc: new file.
1650
1651         * lily/tie.cc: junk Tie::get_configuration()
1652
1653         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
1654         (score_ties_configuration): new function.
1655         (generate_ties_configuration): new function.
1656         (generate_base_chord_configuration): new function.
1657         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
1658         (set_manual_tie_configuration): Move body from tie-column-format.cc 
1659
1660         * input/regression/tie-dot.ly: new file.
1661
1662         * lily/tie-formatting-problem.cc (score_configuration): score
1663         tie/dot collisions.
1664
1665         * lily/tie-helper.cc (get_transformed_bezier): new function
1666
1667         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
1668
1669         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
1670         -undefined suppress iso. -framework Python 
1671
1672         * scm/define-grobs.scm (all-grob-descriptions): set
1673         springs-and-rods (thanks Joe Neeman!)
1674
1675 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1676
1677         * input/no-notation/display-lily-tests.ly (test): 
1678         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
1679         changed from \tag #'(a b) to \tag #'a \tag #'b
1680
1681 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1682
1683         * Documentation/topdocs/NEWS.tely: strip out-www.
1684
1685         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
1686
1687         * config.make.in (AR): add AR and RANLIB
1688
1689         * flower/libc-extension.cc: include cassert
1690
1691         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
1692         darwin check.
1693
1694 2005-12-11  Graham Percival  <gpermus@gmail.com>
1695
1696         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
1697
1698         * stepmake/stepmake/python-modules-vars.make: define
1699         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
1700
1701         * THANKS: added Johannes Schindelin.
1702
1703 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1704
1705         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
1706
1707         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1708         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
1709
1710         * lily/parser.yy: reorganize file layout.
1711
1712         * ly/music-functions-init.ly: add tweak music function.
1713
1714         * lily/grob-info.cc (ultimate_music_cause): new function:
1715         recursively lookup causes. 
1716
1717         * lily/parser.yy (chord_body_element): allow music functions for
1718         post-events, allow music functions for chord elements. 
1719  
1720         * lily/font-config-scheme.cc (display_fontset): add cast.
1721
1722         * python/convertrules.py (FatalConversionError.sub_syms): \tag
1723         #'(a b) -> \tag #'a \tag #'b rule.
1724
1725         * python/musicexp.py (Output_printer.dump_version): new function
1726
1727 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1728
1729         * lily/parser.yy (FIXME): remove \tag
1730         (FIXME): remove tag_music() function.
1731
1732         * lily/lily-lexer.cc: remove \tag
1733
1734         * ly/music-functions-init.ly: define music-function "tag"
1735
1736         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
1737
1738 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1739
1740         * VERSION (PATCH_LEVEL): release 2.7.22
1741
1742         * input/regression/lyric-hyphen-retain.ly: renew.
1743
1744         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
1745         grob
1746
1747         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
1748         iso. minimum-length property for rods.
1749
1750         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
1751         LyricSpace item to keep lyrics spaced apart.
1752
1753         * ly/engraver-init.ly: remove Separating_line_group_engraver
1754
1755         * Documentation/user/music-glossary.tely: do setfilename before
1756         music-glossary.
1757
1758 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
1759
1760         * Documentation/user/lilypond-book.itely: use `,´ after xref:
1761         See xref documentation, for example.
1762
1763 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1764
1765         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
1766         pending_skip iso. ly_voice[-1]
1767         (main): add if __main__ for debugging.
1768
1769         * python/musicxml.py (Accidental.__init__): new class.
1770
1771         * scripts/musicxml2ly.py (progress): new function
1772         (musicxml_key_to_lily): don't barf on modeless keys.
1773         (create_skip_music): new function.
1774         (musicxml_spanner_to_lily_event): new function. Handle beams too.
1775         (musicxml_note_to_lily_main_event): new function.
1776
1777         * python/musicexp.py (Music.__init__): add comment field.
1778         (NestedMusic.append): new routine.
1779         (SequentialMusic.print_ly): print comment.
1780         (ArpeggioEvent.ly_expression): new class
1781         (BeamEvent.ly_expression): new class
1782         (NoteEvent.__init__): support for cautionary/forced accs.
1783
1784         * lily/lookup.cc (slur): normal order for array loop.
1785
1786         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
1787         to 0.0.
1788
1789         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
1790         collapsed.
1791
1792 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
1793
1794         * scm/music-functions.scm: Make phrasing slurs follow voice direction
1795
1796         * scripts/lilypond-book.py: Introduce option
1797         --preserve-line-breaks, for usage with srcltx
1798
1799 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1800
1801         * scm/output-lib.scm (print-circled-text-callback): draw circle
1802         around text using make-circle-markup.
1803
1804         * Documentation/user/*: strip out-www from file names.
1805
1806 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
1807
1808         * Documentation/user/lilypond.tely (direntry): remove empty lines;
1809         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
1810
1811 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1812
1813         * Documentation/user/GNUmakefile: idem.
1814
1815         * Documentation/user/macros.itexi: strip out-www
1816
1817         * python/rational.py: python 2.3 compat.
1818
1819         * VERSION (PATCH_LEVEL): release 2.7.21
1820
1821         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
1822         option formatting, lilypond style.
1823
1824         * python/musicexp.py: grab from Ikebana: a library for composing
1825         ly music expressions. 
1826         (Output_printer): class for advanced .ly printing.
1827         (eg. tupletting) 
1828
1829         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
1830         convert to pythonesque structure.
1831
1832         * python/rational.py: PD rational number class.
1833
1834         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
1835
1836 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
1837
1838         * lily/part-combine-iterator.cc: Minor bugfix
1839         
1840         * THANKS: Update bughunters
1841
1842 2005-12-02  Werner Lemberg  <wl@gnu.org>
1843
1844         * mf/README: Document process for proper mf2pt1 conversion.
1845
1846         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
1847         overlapping.
1848
1849         * mf/feta-harmonica.mf: Removed.  Unused.
1850
1851 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1852
1853         * scripts/lilypond-book.py (do_file): fix thinkos.
1854
1855 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1856
1857         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
1858         ($(outdir)/parser.cc): 
1859         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
1860
1861 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
1862
1863         * ly/titling-init.ly (tagline): it should be a space between
1864         "Music engraving by LilyPond" and the version number.
1865
1866 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1867
1868         * VERSION (PACKAGE_NAME): release 2.7.20
1869
1870 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1871
1872         * scm/define-markup-commands.scm (pad-to-box): new markup command.
1873
1874         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
1875         1.0.
1876         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
1877
1878 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1879
1880         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
1881
1882         * kpath-guile/: remove directory
1883
1884         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
1885         file. Encapsulate kpathsea using commandline tools.
1886
1887         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
1888         kpathsea) module.
1889
1890 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1891
1892         * Documentation/user/advanced-notation.itely (Setting automatic
1893         beam behavior): Correct a few typos. Thanks to David Bobroff.
1894
1895         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
1896         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
1897
1898 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1899
1900         * scripts/*.py: gmane address for bugs.
1901
1902 2005-11-28 Pal Benko <benkop@freestart.hu>
1903         
1904         * make/ly-rules.make: add -f switch to mv
1905
1906         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
1907
1908         * lily/bar-line.cc: interpret it
1909
1910 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1911
1912         * configure.in (--disable-documentation): New switch.
1913
1914         * GNUmakefile.in: Use it.
1915
1916         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
1917
1918 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1919
1920         * scripts/lilypond-book.py (do_file): search chunks for
1921         \\begin{document}
1922
1923         * GNUmakefile.in: add copy step in between so we can lose the
1924         out-www directories.
1925
1926 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1927
1928         * lily/pango-font.cc (pango_item_string_stencil): put
1929         geometry.width into glyph-string too.
1930
1931 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1932
1933         * scm/define-music-display-methods.scm (RevertProperty):
1934         (OverrideProperty): Use grob-property-path property, a list of
1935         symbols, instead of grob-property, which used to be a single
1936         symbol.
1937         (BassFigureEvent): a figure can be a plain number, not necessarily a
1938         markup.
1939
1940 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1941
1942         * VERSION: release 2.7.19
1943         
1944         * lily/figured-bass-engraver.cc (process_music): check
1945         figuredBassCenterContinuations first.
1946
1947         * scm/translation-functions.scm (format-bass-figure): make double
1948         sharp larger. 
1949
1950         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
1951         determine X-parent.
1952
1953         * lily/system-start-delimiter-engraver.cc: move from
1954         Nested_system_start_delimiter_engraver, rename
1955         Nested_system_start_delimiter_engraver ->
1956         System_start_delimiter_engraver.
1957
1958         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
1959         bracket type from hierarchy.
1960
1961 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1962
1963         * lily/rest.cc (y_offset_callback): read staff-position.
1964
1965         * scm/define-grob-properties.scm (all-user-grob-properties): don't
1966         mark after-line-breaking-callback as internal.
1967
1968         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
1969
1970 2005-11-25  Werner Lemberg  <wl@gnu.org>
1971
1972         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
1973
1974 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1975
1976         * stepmake/bin/add-html-footer.py (do_file): add google
1977
1978         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
1979         staff if first_start_ is true.
1980
1981 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1982
1983         * scripts/midi2ly.py (split_track): add __repr__ members.
1984         (track_first_item): only return Item if not None. This fixes a
1985         problem when dumping a track that starts with an empty channel.
1986
1987         * python/midi.c: doc module.
1988
1989 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1990
1991         * Documentation/user/global.itely (Creating MIDI files): Fix
1992         compilation problem.
1993
1994 2005-11-22  Graham Percival  <gpermus@gmail.com>
1995
1996         * Documentation/user/basic-notation.itely: clarify dynamic
1997         padding text.
1998
1999         * Documentation/user/advanced-notation.itely: add unicode
2000         escape control example, whatever that is.  :)
2001
2002         * Documentation/user/global.itely: added "removing dynamics
2003         from MIDI" code.
2004
2005 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2006
2007         * VERSION (PATCH_LEVEL): release 2.7.18
2008
2009         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
2010         System_start_delimiter_engraver by
2011         Nested_system_start_delimiter_engraver.
2012
2013         * lily/nested-system-start-delimiter-engraver.cc (struct
2014         Bracket_nesting_node): new class.
2015         (struct Bracket_nesting_group): new class
2016         (struct Bracket_nesting_staff): new class.
2017         (process_music): create hierarchy of grobs. This allows separate
2018         tuning of different SSDs. 
2019
2020         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
2021         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
2022
2023 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2024
2025         * lily/side-position-interface.cc (aligned_side): multiply
2026         staff_radius by 2.
2027
2028         * lily/script-engraver.cc (make_script_from_event): allow setting
2029         values to '()
2030
2031 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2032
2033         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
2034
2035         * scm/define-grobs.scm (all-grob-descriptions): new grob
2036         NestedSystemStartDelimiter.
2037
2038         * input/regression/system-start-heavy-bar.ly: new file.
2039
2040         * lily/nested-system-start-delimiter-engraver.cc: new file.
2041
2042         * lily/nested-system-start-delimiter.cc: new file.
2043
2044         * input/regression/system-start-nesting.ly: new file.
2045
2046         * scm/define-grobs.scm (all-grob-descriptions): use X side
2047         positioning for positioning braces for nested contexts.
2048
2049         * lily/system-start-delimiter.cc (print): don't divide extent by
2050         staff_space.
2051         (print): use style iso. glyph.
2052         (staff_bracket): translate glyph inside routine already.
2053
2054 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
2055
2056         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
2057         names.
2058
2059 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2060
2061         * scm/define-context-properties.scm
2062         (all-user-translation-properties): rename figuredBassFormatter
2063         from newFiguredBassFormatter.
2064
2065         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
2066
2067         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
2068
2069         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
2070
2071         * lily/beam.cc (calc_beaming): new function.
2072         (calc_shorten): new function.
2073
2074         * THANKS: add Edward Neeman.
2075
2076         * input/regression/accidental-clef-change.ly: new file.
2077
2078         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
2079
2080         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
2081
2082         * lily/clef-engraver.cc (inspect_clef_properties): reset
2083         localKeySignature for clef changes.
2084
2085 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2086
2087         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
2088         add dummy definition that works in Linux and add information in
2089         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
2090
2091         * Documentation/user/changing-defaults.itely (Modifying context
2092         plug-ins): Add index for \with.
2093
2094         * Documentation/user/music-glossary.tely (dal segno): Updated
2095         example to version >=2.6.
2096
2097 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2098
2099         * Documentation/user/instrument-notation.itely (Printing chord
2100         names): Reorder \chordmode and \repeat in one example.
2101
2102 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2103
2104         * VERSION: release 2.7.17
2105         
2106         * Documentation/topdocs/NEWS.tely (Top): add note about
2107         refactoring.
2108
2109         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
2110         new function. Search region of 3 positions for best tie.
2111         (score_configuration): new function.
2112         (score_aptitude): new function.
2113         (generate_configuration): new function.
2114         (get_configuration): new function.
2115         (Tie_formatting_problem): new function
2116
2117         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
2118
2119         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
2120
2121         * THANKS: add Eduardo Vieira & Ralph Little
2122
2123         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
2124         narrower.
2125
2126         * lily/include/tie-formatting-problem.hh (class
2127         Tie_formatting_problem): add Tie_details to
2128         Tie_formatting_problem. Update calling conventions.
2129
2130         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
2131         config.make.
2132
2133         * Documentation/user/lilypond.tely: remove musedata2ly entry.
2134
2135 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
2136
2137         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
2138         scm/define-context-properties.scm: Maintenance bugfix: make
2139         ligature brackets work again by removing obsolete ligature
2140         primitive callback push/pop.
2141
2142         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
2143         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
2144         value.
2145
2146 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2147
2148         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
2149         used and do not call it a path.
2150         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
2151
2152 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2153
2154         * lily/include/tie-formatting-problem.hh (class
2155         Tie_formatting_problem): new file.
2156
2157         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
2158
2159         * Documentation/misc/ChangeLog-2.3:  new file.
2160
2161         * lily/audio-staff.cc (output): degarianize.
2162
2163 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2164
2165         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
2166         Unset PYTHONOPTIMIZE.  Fixes install if set.
2167
2168 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2169
2170         * python/convertrules.py (conv): add warning about drums. 
2171
2172         * make/stepmake.make: include toplevel-version.make after config.make.
2173
2174         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
2175         also allow python2.4
2176
2177         * config.make.in (configure-srcdir): remove GXX GCC vars.
2178
2179         * stepmake/aclocal.m4: don't do non-srcdir build with
2180         symlinks. Use inclusion, so the src directory name can be changed.
2181
2182 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2183
2184         * make/mutopia-vars.make:
2185         * make/ly-vars.make: Use src-wildcard iso wildcard for source
2186         files.
2187
2188 2005-11-13  Werner Lemberg  <wl@gnu.org>
2189
2190         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
2191         but the affected path.  This ensures that the (overlapping) outlines
2192         have the same direction, which is a necessary prerequisite for
2193         FontForge's algorithm to remove overlaps.
2194         Formatting.
2195
2196         * mf/feta-haak.mf: Formatting.
2197         (draw_bracket): Slightly modify outline to avoid an unnecessary
2198         corner.
2199         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
2200         them from the affected paths.
2201
2202 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2203
2204         * mf/README: remove xpm / accordion notes.
2205
2206         * lily/tie-column-format.cc (set_chord_outline): add dots into
2207         skyline extents. This fixes tie formatting if the left head has dots.
2208
2209         * lily/tie.cc (get_configuration): only shift tie by a whole staff
2210         space inside the staff.
2211         (get_configuration): shift another position if necessary in case
2212         of left head tie  
2213
2214 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2215
2216         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
2217         buildscript-dir iso. $(depth)/buildscripts.
2218
2219         * tex/GNUmakefile (local-uninstall): remove
2220         music-drawing-routines.ps juggling.
2221
2222         * stepmake/stepmake/install-targets.make (local-install-files):
2223         prepend src-dir to install targets.
2224
2225         * lily/system-start-delimiter-engraver.cc
2226         (acknowledge_system_start_delimiter): use
2227         add_offset_callback(). This fixes translation of nested
2228         staffgroups.
2229
2230         * lily/grob-closure.cc (add_offset_callback): only encaps in
2231         simple_closure if it's a procedure.
2232         
2233         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
2234         from bar-line.
2235
2236         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
2237         remove-empty where pertinent.
2238
2239 2005-11-12  Graham Percival  <gpermus@gmail.com>
2240
2241         * Documentation/user/instrument-notation.itely: added
2242         Cameron Horsburgh's multiple stanzas docs.  Thanks!
2243
2244 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2245
2246         * lily/GNUmakefile
2247         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
2248         make picture in builddir, not srcdir.
2249
2250 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2251
2252         * VERSION: release 2.7.16
2253         
2254         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
2255         shell arguments. 
2256
2257 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2258
2259         * Documentation/user/examples.itely (Piano templates): Minor
2260         modification to the Piano centered lyrics example.
2261
2262 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2263
2264         * scripts/lilypond-invoke-editor.scm (run-browser): look at
2265         $BROWSER.
2266
2267         * Documentation/user/point-and-click.itely: simplify p&c
2268         instruction: don't configure firefox. Put lilypond-invoke-editor
2269         in front of the browser.
2270
2271         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
2272         (run-browser): new function.
2273
2274         * lily/parser.yy (Lily_lexer): recognize Book
2275
2276         * lily/book.cc (clone): new function
2277
2278         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
2279
2280 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
2281
2282         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
2283         Maintenance bugfix: reduce number of font related warnings by
2284         updating naming conventions for glyph-name.
2285
2286 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2287
2288         * scm/define-grobs.scm (all-grob-descriptions): add
2289         rhythmic-grob-interface to TabNoteHead.
2290
2291         * scm/layout-beam.scm (check-quant-callbacks): remove
2292         set_stem_lengths()
2293
2294 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
2295
2296         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
2297         alignment of centered divisiones.
2298
2299         * scm/scripts.scm (articulations): Maintenance bugfix:
2300         follow-into-staff -> quantize-position.
2301
2302         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
2303         plica head in porrectus deminutus.
2304
2305 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2306
2307         * make/lilypond.fedora.spec.in (Group): add %clean section.
2308
2309         * lily/tuplet-bracket.cc (print): change check: remove bracket if
2310         less then 1/5th of total length.  
2311         (print): use gap too.  Fixes tupletUp-single-bracket.ly
2312
2313         * scm/music-functions.scm (glue-mm-rest-texts): also put other
2314         events into EventChord. This fixes textspanners on mm rests. Fixes
2315         spanner-rest.ly
2316
2317         * lily/side-position-interface.cc (get_axis): read side-axis
2318         (set_axis): set side-axis.
2319
2320         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
2321         properties everywhere.
2322
2323         * lily/spacing-spanner.cc (breakable_column_spacing): add
2324         average-spacing-wishes. Take maximum if not set.
2325         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
2326
2327         * scm/define-grobs.scm (all-grob-descriptions): add
2328         average-spacing-wishes.
2329
2330         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
2331         offset callbacks. This fixes alignment for Fingering objects.
2332
2333         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
2334         space for key - timesig combination. 
2335
2336         * input/regression/script-stem-tremolo.ly (Module): new file.
2337
2338         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
2339         to key sig.
2340
2341         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
2342         Fixes: c-tremolo-script.ly.
2343         
2344         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
2345
2346         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
2347         
2348         * scm/define-grobs.scm (all-grob-descriptions): remove
2349         self-X-offset. Fixes alignment of octavate-8.
2350
2351         * scripts/lilypond-book.py (datadir): look in
2352         LILYPONDPREFIX/share/lilypond/current/
2353
2354         * GNUmakefile.in: symlink current to <VERSION>. 
2355
2356 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
2357
2358         * lily/main.cc: eps listed as a backend.
2359
2360 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2361
2362         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
2363
2364 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2365
2366         * lily/include/score.hh (class Score): remove texts_ member.
2367
2368         * lily/beam.cc (set_stem_lengths): force direction callback.
2369         (print): read quantized-positions, so we can force
2370         Beam::set_stem_lengths to occur.
2371         (rest_collision_callback): use common X parent. 
2372
2373 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2374
2375         * flower/file-path.cc (find): Bugfix: Return name of file found.
2376
2377         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
2378         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
2379         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
2380
2381 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2382
2383         * flower/offset.cc: idem.
2384
2385         * mf/*.mf: update email address.
2386
2387         * lily/font-config-scheme.cc:  new file.
2388
2389         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
2390
2391         * lily/*:  cs.uu.nl -> xs4all.nl
2392
2393         * VERSION (PATCH_LEVEL): release 2.7.15
2394
2395         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
2396         spec files.
2397
2398         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
2399
2400 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2401
2402         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
2403
2404         * lily/staff-performer.cc (process_music): add audio
2405         elements. This makes MIDI instrument changes work once again.
2406
2407         * lily/main.cc (LY_DEFINE): add gmane address.
2408
2409         * lily/beam.cc: remove calc_positions()
2410
2411         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
2412         original_ in private scope.
2413         (class Grob): drop pscore_ pointer, change to output_def pointer.
2414         (class Grob): cleanup class definition.
2415
2416         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
2417
2418 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2419
2420         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
2421         absolute.  Better diagnostics.
2422
2423         * GNUmakefile.in: Add bin/ to tree and populate with some links.
2424         This makes lilypond run from the build directory using argv0
2425         relocation (without any --prefix or LILYPONDPREFIX setting).
2426
2427 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2428
2429         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
2430
2431         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
2432         with simple-closure.
2433
2434         * lily/self-aligment-interface.cc (set_align_self): new function
2435         (set_center_parent): new function.
2436
2437         * lily/side-position-interface.cc (set_axis): new function.
2438
2439         * lily/new-fingering-engraver.cc (position_scripts): use drul for
2440         generic code. 
2441
2442         * scm/define-grob-properties.scm (all-user-grob-properties):
2443         remove [XY]-offset-callbacks add [YX]-offset
2444         
2445 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2446
2447         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
2448         entry for time signatures after breathing signs. Bug report by
2449         Scott Russell.
2450
2451 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2452
2453         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
2454         not absolute, make it absolute using PATH.
2455
2456 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2457
2458         * python/midi.c (initmidi): Fix type for mingw.
2459
2460 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2461
2462         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
2463
2464         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
2465         cross compiling.
2466
2467         * stepmake/aclocal.m4: Support python cross compiling.
2468
2469         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
2470         Add mingw section.
2471
2472 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2473
2474         * scm/output-lib.scm (chain-grob-member-functions): replace
2475         chained-callback.cc
2476
2477         * lily/chained-callback.cc (Module): remove file.
2478
2479         * lily/rest-collision.cc (force_shift_callback_rest): change to
2480         chained callback.
2481
2482         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
2483
2484         * lily/grob.cc (y_parent_positioning): remove axis argument from
2485         parent_positioning callbacks.
2486         (Grob): junk init code
2487         (get_offset): use generic property callbacks for
2488         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
2489         (axis_parent_positioning): new function
2490         (axis_offset_symbol): new function
2491         (chain_offset_callback): new function
2492         (add_offset_callback): new function
2493
2494         * lily/beam.cc (rest_collision_callback): change signature; this
2495         is now a chained callback.
2496
2497         * lily/include/dimension-cache.hh (class Dimension_cache): remove
2498         callback administration.
2499
2500         * lily/simple-closure.cc: new file. Smob type that allows "grob
2501         member functions",
2502
2503             (ly:make-simple-closure FUNC A B)
2504
2505         is evaluated as (FUNC grob A B). This allows chaining of callbacks
2506         in various ways.
2507
2508         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
2509         callbacks.
2510
2511         * lily/slur.cc (outside_slur_callback): take 2 arguments.
2512
2513         * lily/rest.cc (polyphonic_offset_callback): remove.
2514
2515         * lily/script-engraver.cc (try_music): remove bool* argument.
2516
2517         * scm/script.scm (default-script-alist): set quantize-position
2518         appropriately.
2519
2520         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
2521
2522         * lily/side-position-interface.cc (aligned_side): move staff
2523         position quantization from
2524         Side_position_interface::quantised_position().
2525         (quantised_position): remove
2526         
2527 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2528
2529         * input/regression/beam-quant-standard.ly: reindent, set
2530         debug-beam-quanting to #t.
2531
2532         * lily/beam-concave.cc (calc_concaveness): set concaveness to
2533         10000 if this is a "hard" concave beam.
2534
2535         * lily/beam.cc (calc_least_squares_positions): change from
2536         calc_least_squares_dy
2537         (set_stem_lengths): this is now a chained callback.
2538
2539         * lily/context-property.cc (execute_general_pushpop_property):
2540         bugfix override with procedure should have effect.
2541
2542         * scm/define-grob-properties.scm (all-internal-grob-properties):
2543         remove position-callbacks.
2544
2545         * scm/define-grobs.scm (all-grob-descriptions): use
2546         ly:make-callback-chain for positions property.
2547
2548         * scm/layout-beam.scm (check-quant-callbacks): return list of
2549         chained callbacks.
2550
2551         * scm/lily.scm (type-p-name-alist): add callback-chain
2552
2553         * lily/lily-guile.cc (type_check_assignment): type check failure
2554         is warning not message.
2555
2556         * lily/grob-property.cc (try_callback): walk callback chain if
2557         appropriate.
2558
2559         * lily/chained-callback.cc: new file. new smob type.
2560
2561         * lily/lily-guile.cc (procedure_arity): new function.
2562
2563 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2564
2565         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
2566
2567 2005-10-25  John Mandereau  <john.mandereau@free.fr>
2568  
2569         * Documentation/user/instrument-notation.itely (Figured bass):
2570         describe new features
2571
2572 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2573
2574         * lily/beam.cc (calc_least_squares_dy): use property callback.
2575
2576         * lily/beam-concave.cc (calc_concaveness): use property callback.
2577
2578         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
2579
2580 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2581
2582         * HACKING: Update.
2583
2584 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2585
2586         * scm/layout-page-layout.scm (page-headfoot): annotate
2587         pagetopspace too.
2588
2589         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
2590
2591         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
2592         doesn't take y-space.
2593
2594         * scm/paper.scm (paper-alist): fix A7 dimensions. 
2595
2596 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2597
2598         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
2599         src-wildcard, remove $(wildcard).
2600
2601         * po/GNUmakefile (PO_FILES): 
2602         * ps/GNUmakefile (PS_FILES): 
2603         * tex/GNUmakefile (TEX_FILES): 
2604         * cygwin/GNUmakefile (POSTINSTALLS):
2605         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
2606         some wildcard calls.
2607
2608 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2609
2610         * THANKS: add Thomas Bushnell.
2611
2612 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2613
2614         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
2615         (lilypond-main): Redirect to gui-main if 'gui is set.
2616         Backportme.
2617
2618         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
2619         for alternative installations kludging s/share/lib/g
2620         LILYPONDPREFIX. Backportme.
2621
2622         * SConstruct (libdir_package_version): Define.
2623
2624         * python/SConscript: 
2625         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
2626         module in libdir.  Backportme.
2627
2628 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2629
2630         * lily/main.cc: clarify --safe.
2631
2632 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2633
2634         * VERSION: release 2.7.14
2635         
2636         * Documentation/user/*.itely: remove minimumVerticalExtent.
2637
2638         * scm/define-grobs.scm (all-grob-descriptions): remove
2639         RemoveEmptyVerticalGroup
2640
2641         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
2642
2643         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
2644         compile on MOSX
2645
2646         * python/convertrules.py (conv): add rules.
2647
2648         * lily/grob.cc: remove is_empty()
2649
2650         * lily/grob-property.cc: remove add_to_list_property().
2651
2652         * scripts/convert-ly.py (datadir): add prefix switching hack to
2653         .py too.
2654
2655         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
2656         space-function tweak.
2657
2658         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
2659
2660         * scm/define-grob-properties.scm (all-user-grob-properties):
2661         remove callback property.
2662
2663         * lily/include/grob.hh (class Grob): remove property_callbacks_
2664         member. Properties of procedure type are assumed to be callbacks.
2665
2666         * lily/ligature-engraver.cc (override_stencil_callback):
2667         rewrite. Use noteHeadLigaturePrimitive as source.
2668
2669         * scm/define-grob-properties.scm (all-internal-grob-properties):
2670         remove ligature-primitive-callback
2671
2672         * lily/include/dimension-cache.hh (class Dimension_cache): make
2673         class, with Grob as friend.
2674
2675         * lily/grob.cc: remove set_extent_callback(), set_extent() and
2676         has_extent_callback()
2677
2678         * scm/translation-functions.scm (format-new-bass-figure): read
2679         figuredBassPlusDirection
2680
2681         * scm/define-context-properties.scm
2682         (all-user-translation-properties): add figuredBassPlusDirection.
2683
2684         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
2685
2686         * lily/align-interface.cc (set_ordered): new function.
2687
2688         * lily/grob.cc (flush_extent_cache): rewrite.
2689
2690         * lily/dimension-cache.cc (Dimension_cache): cache extent as
2691         Interval pointer directly.
2692
2693         * lily/main.cc (setup_paths): insert extra / .
2694         (setup_paths): junk cff entry.
2695
2696         * lily/font-config.cc (init_fontconfig): only add type1 / otf
2697         directories.
2698
2699         * lily/axis-group-engraver.cc (finalize): remove
2700         extraVerticalExtent, minimumVerticalExtent verticalExtent.
2701
2702         * lily/grob.cc (Grob): don't set extent from ctor.
2703         (extent): use property callbacks. 
2704
2705         * lily/axis-group-interface.cc: remove set_axes() function.
2706
2707         * lily/grob-property.cc (del_property): new function.
2708
2709 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2710
2711         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
2712         
2713 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2714
2715         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
2716
2717 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2718
2719         * mf/SConscript: Updates.
2720
2721         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
2722
2723         * stepmake/stepmake/*:
2724         * */GNUmakefile:
2725         * config.make.in:
2726         * GNUmakefile.in:
2727         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
2728         from any directory in build-dir.  Cleanups.
2729
2730         * make/srcdir.make.in: Remove.
2731
2732         * lily/main.cc (setup_paths): Fix and document build-dir hack.
2733
2734         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
2735         main).
2736
2737         * lily/SConscript: Remove ttftools.
2738
2739         * SConstruct: Resurrect.
2740
2741 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2742
2743         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
2744         Y coordinate. 
2745
2746         * lily/paper-book.cc (add_score_title): put Paper_score title into
2747         systems_ list.
2748
2749         * scm/translation-functions.scm (format-new-bass-figure): also
2750         allow plus in combination with _
2751
2752 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2753
2754         * VERSION: 2.7.13 released.
2755
2756         * lily/note-collision.cc (check_meshing_chords): don't wipe
2757         stencil, merely set transparent.
2758
2759         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
2760         (Top): document #'callbacks.
2761         (Top): document nested \override.
2762
2763         * input/regression/figured-bass.ly: update for slash and pluses.
2764
2765         * input/regression/figured-bass-continuation-forbid.ly (Module):
2766         new file.
2767
2768         * scm/translation-functions.scm (format-new-bass-figure): use
2769         slashed-digit if diminished is set.
2770         (format-new-bass-figure): add + if 'augmented is set.
2771
2772         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
2773
2774         * input/test/piano-staff-distance.ly: remove file.
2775
2776         * Documentation/user/advanced-notation.itely (Formatting cue
2777         notes): use length-fraction for making stems/beams smaller.
2778
2779         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
2780         modifications.
2781
2782         * lily/new-figured-bass-engraver.cc: new property
2783         centerFiguredBassContinuations
2784
2785         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2786         use callbacks.
2787
2788         * lily/context-property.cc (execute_general_pushpop_property):
2789         robustness checks.
2790
2791         * input/regression/override-nest.ly: new file.
2792
2793         * python/convertrules.py (FatalConversionError.subber): conversion
2794         rule for #'callbacks
2795
2796         * input/regression/override-nest.ly: new function.
2797
2798         * lily/parser.yy (music_property_def): allow \override #'a #'b =
2799         #c too. 
2800
2801         * lily/context-property.cc (lookup_nested_property): new function.
2802         (evict_from_alist): new function.
2803         (general_pushpop_property): new function.
2804         (execute_general_pushpop_property): rewrite. Support nested
2805         properties too.
2806
2807 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2808
2809         * lily/beam.cc: use length-fraction too.
2810
2811         * scm/define-grob-properties.scm (all-user-grob-properties):
2812         remove property flag-width-function
2813         (all-user-grob-properties): remove space-function.
2814
2815         * scm/layout-beam.scm: remove flag-width-function.
2816
2817         * lily/beam.cc: remove flag-width-function
2818
2819         * scm/layout-beam.scm: remove beam dir functions.
2820
2821         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
2822
2823         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
2824         for easier grace tweaks.
2825
2826         * lily/beam.cc: remove dir-function.
2827
2828         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
2829
2830         * lily/grob.cc: remove spacing-procedure.
2831
2832         * lily/note-head.cc (calc_stem_attachment): new function.
2833         (internal_print): use callback to get glyph-name.
2834
2835         * lily/grob-property.cc (get_interfaces): new function.
2836
2837         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
2838
2839         * lily/stem.cc (calc_stem_end_position): new function.
2840         (calc_length): new function.
2841         document details for stem.
2842         remove Stem::get_direction()
2843
2844         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
2845
2846         * lily/grob-property.cc (set_callback): new function.
2847
2848         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
2849
2850         * lily/item-scheme.cc: new file.
2851
2852         * lily/bar-line.cc (before_line_breaking): remove function.
2853         remove bar-size-procedure, break-glyph-function
2854
2855         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
2856
2857         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
2858
2859         * lily/system-start-delimiter.cc (print): suicide from
2860         here. Remove after_line_breaking_callback.
2861
2862         * lily/script-interface.cc (calc_direction): use callback for direction.
2863
2864         * lily/side-position-interface.cc (aligned_side): don't use
2865         Side_position_interface::get_direction directly. Use callback. 
2866
2867         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
2868         calculate stencil.
2869         (get_print_stencil): rename from get_stencil: create stencil with
2870         transparency, color and cause. 
2871
2872         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
2873
2874         * python/convertrules.py (conv): insert temporary warning rule.
2875
2876         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
2877
2878         * lily/grob-property.cc (try_callback): remove marker if applicable.
2879
2880         * lily/grob.cc: elucidate doc about after/before-line-breaking
2881
2882         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
2883
2884         * lily/stem.cc (height): idem.
2885
2886         * lily/stem-tremolo.cc: idem.
2887
2888         * lily/slur.cc (height): don't use get_uncached_stencil()
2889
2890         * lily/rest.cc (y_offset_callback): use offset callback
2891         iso. after-line-breaking callback.
2892
2893         * lily/grob.cc: change after/before-line-breaking-callback to
2894         after/before-line-breaking dummy properties.
2895
2896         * lily/include/grob.hh: remove Grob_status.
2897
2898         * scm/define-context-properties.scm
2899         (all-user-translation-properties): remove verticalAlignmentChildCallback
2900
2901         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
2902         (calc_direction): use callback
2903         (calc_positions): use callback.
2904
2905         * lily/tie.cc (calc_direction): use callback. Only call parent
2906         positioning for more than one tie.
2907
2908         * lily/tie-column.cc (calc_positioning_done): use callback
2909
2910         * lily/slur-scoring.cc (calc_control_points): use callback
2911
2912         * lily/slur.cc (calc_direction): use callback.
2913
2914         * lily/note-collision.cc (force_shift_callback): remove.
2915
2916         * lily/dot-column.cc (force_shift_callback): remove. Use
2917         other_axis_parent_positioning.
2918
2919         * lily/grob.cc (other_axis_parent_positioning): new function.
2920         (same_axis_parent_positioning): new function
2921
2922         * lily/align-interface.cc (alignment_callback): remove function.
2923
2924         * lily/note-collision.cc (calc_positioning_done): use callback.
2925
2926         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
2927         (calc_direction): idem.
2928         remove print function.
2929
2930         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
2931
2932         * lily/dot-column.cc (calc_positioning_done): use callback.
2933
2934         * lily/break-align-interface.cc (calc_positioning_done): use callback.
2935
2936         * lily/beam.cc (calc_direction): use pseudo-property for beam
2937         direction callback.
2938         (calc_positions): use callback 
2939
2940         * lily/align-interface.cc (calc_positioning_done): use
2941         callback. Fold fixed  distance and normal alignment in one function.
2942
2943         * lily/stem.cc (calc_stem_end_position): use callback.
2944         (calc_positioning_done): idem.
2945         (calc_direction): idem.
2946         (calc_stem_end_position): idem
2947         (calc_stem_info): idem.
2948
2949         * lily/grob-property.cc (get_property_data): new function: 
2950         (try_callback): new function.
2951
2952         * scm/define-grob-properties.scm (all-user-grob-properties): doc
2953         callbacks property.
2954
2955         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
2956
2957 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2958
2959         * lily/tie.cc (get_position): robustness fix. Don't crash if a
2960         tie
2961         has no heads.
2962         
2963         * lily/include/*.hh (Module): compile fixes.
2964
2965 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
2966
2967         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
2968         as an argument for char-syntax: use (char-syntax (or nil 0)) 
2969         instead of (char-syntax nil), thanks to Milan Zamazal.
2970
2971 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2972
2973         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
2974         dist.
2975
2976         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
2977         themselves.
2978
2979 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2980
2981         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
2982         add class_name() method.
2983
2984         * lily/music-scheme.cc: remove ly:music-name.
2985
2986 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2987
2988         * cygwin/postinstall-lilypond.sh: Remove cruft.
2989
2990         * cygwin/postremove-lilypond.sh: Remove.
2991
2992         * cygwin/GNUmakefile (default): Remove postremove rules.
2993
2994 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2995
2996         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
2997         even header too.
2998         
2999         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
3000         MacOS 9 users.
3001
3002         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
3003         consider break index for broken spanner.
3004
3005         * scm/define-markup-commands.scm (wordwrap-string): remove \r
3006         characters from string before splitting.
3007
3008 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3009
3010         * scm/framework-ps.scm (output-preview-framework): use
3011         is-book-title to determine whether to chop off the booktitle.
3012
3013         * lily/paper-book.cc (systems): init from book-title-properties
3014         (add_score_title): init score-title-properties.
3015
3016         * ly/paper-defaults.ly: add {score,book}-title-properties.
3017
3018         * scm/document-backend.scm (lookup-interface): error message if
3019         using unknown interface.
3020
3021         * lily/volta-bracket.cc (after_line_breaking): new function. Set
3022         edge-height.
3023
3024         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
3025         make_bracket.
3026         (make_bracket): new function.
3027
3028         * scm/lily.scm (define-scheme-options): add paper-size option.
3029
3030         * ly/declarations-init.ly (laissezVibrer): get paper size from
3031         -dpaper-size
3032
3033         * scm/translation-functions.scm: use \fontsize for changing the
3034         fontsize.
3035
3036         * scm/define-grobs.scm (all-grob-descriptions): set
3037         between-length-limit to 1.0
3038
3039         * lily/tie-helper.cc: add between_length_limit_ detail property.
3040
3041         * mf/feta-bolletjes.mf: typos.
3042
3043         * lily/note-head.cc (internal_print): don't shadow idx
3044         parameter. This fixes wrong attachment for do shape heads.
3045
3046 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3047
3048         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
3049
3050         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
3051
3052         * scm/layout-slur.scm: rename from slur.scm
3053
3054         * scm/layout-page-layout.scm: rename from page-layout.scm
3055
3056         * scm/layout-beam.scm: rename from beam.scm
3057
3058         * scm/define-grob-interfaces.scm (bass-figure-interface): add
3059         bass-figure-interface
3060
3061         * lily/new-figured-bass-engraver.cc (process_music): add
3062         implicitBassFigures property.
3063         
3064         * scm/define-markup-commands.scm (pad-x): new markup.
3065
3066         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
3067         minimumVerticalExtent on FiguredBass context.
3068
3069         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
3070         case the continuation crosses a line break.
3071
3072 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3073
3074         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
3075         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
3076         absolute file name bug.  Backportme.
3077
3078 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3079
3080         * VERSION (PACKAGE_NAME): release 2.7.12
3081
3082         * input/regression/figured-bass-continuation-center.ly: new file.
3083
3084         * input/regression/beam-outside-beamlets.ly: new file.
3085
3086         * lily/beam.cc (set_beaming): don't clip edges.
3087         (connect_beams): don't clip edges.
3088
3089         * lily/beaming-info.cc (clip_edges): new function.
3090
3091         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
3092
3093         * Documentation/user/instrument-notation.itely (Figured bass):
3094         demonstrate extenders, update seealso links.
3095
3096         * scm/titling.scm (marked-up-headfoot): change tagline
3097         handling. tagline = ##f will blank the tagline as well.
3098
3099 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3100
3101         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
3102
3103         * lily/new-figured-bass-engraver.cc (struct
3104         New_figured_bass_engraver): add new_music_found_ member.
3105
3106         * lily/lilypond-version.cc (Lilypond_version): deal with
3107         incorrectly formatted version strings. 
3108
3109         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
3110         New_figured_bass_engraver by default.
3111
3112         * lily/ttf.cc (print_trailer): only define glyph names when
3113         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
3114
3115 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3116
3117         * lily/horizontal-bracket.cc (make_bracket): new function.
3118
3119         * scm/define-grobs.scm (all-grob-descriptions): new grobs
3120         NewBassFigure, BassFigureBracket, BassFigureContinuation,
3121         BassFigureLine, BassFigureAlignment
3122
3123         * lily/new-figured-bass-engraver.cc (process_music): new file.
3124
3125         * lily/figured-bass-continuation.cc: new file.
3126
3127         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
3128         new file.
3129
3130 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3131
3132         * scripts/lilypond-book.py: Bug fix, put the quote around the
3133         actual score for LaTeX documents.
3134
3135         * scm/define-grobs.scm (all-grob-descriptions): Change
3136         collapse-height of the SystemStartBracket grob to 5.0, 
3137         so the bracket disappears for single stave score lines (similarly
3138         to SystemStartBraces). 
3139
3140         * Documentation/user/advanced-notation.itely (Polymetric
3141         notation): Clarify the use of compressMusic.
3142
3143         * Documentation/user/basic-notation.itely (Grace notes): Clarify
3144         that the grace spacer note in other staves need the same duration
3145         and document the stroke-style property.
3146
3147 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3148
3149         * Documentation/user/global.itely (Vertical spacing): document
3150         alignment-extra-space and fixed-alignment-extra-space.
3151
3152         * Documentation/topdocs/NEWS.tely (Top): add entry.
3153
3154         * input/regression/alignment-vertical-spacing.ly: new file.
3155
3156         * python/convertrules.py (conv): add rule.
3157
3158         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
3159
3160         * lily/align-interface.cc (stretch_after_break): new
3161         function. Read fixed-alignment-extra-space property.
3162         (align_elements_to_extents): read alignment-extra-space property.
3163
3164         * lily/lily-guile.cc (robust_scm2dir): new function.
3165
3166         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
3167         (annotate-space-left): new function. Annotate space left on page. 
3168         (annotate-y-interval): new function.
3169         (paper-system-annotate-last): new function. Annotate bottom-space.
3170
3171         * mf/feta-beugel.mf (y): 
3172
3173 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3174
3175         * VERSION (PACKAGE_NAME):  release 2.7.11
3176
3177         * scm/lily-library.scm (interval-translate): new function
3178         (interval-center): new function. 
3179
3180         * scm/page-layout.scm (paper-system-annotate): new function. Add
3181         arrows for dimensions.
3182  
3183         * scm/stencil.scm (dimension-arrows): new function.
3184
3185         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
3186
3187         * input/regression/page-spacing.ly: add annotatespacing
3188
3189         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
3190         (LY_DEFINE): new function ly:paper-system-set-property!
3191
3192         * Documentation/user/global.itely (Paper size): explain how to add
3193         sizes.
3194
3195         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
3196         correspond to GS's definition.
3197
3198         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
3199         tuplet bracket.
3200         (print): only connect to next bracket if the next one is alive.
3201         (print): set padding to 0.0 if the bound is a breakable
3202         column. This makes tupletFullLength brackets reach up to the staff
3203         line if it doesn't connect to the next line.
3204
3205 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3206
3207         * lily/bar-number-engraver.cc: correct docs.
3208
3209         * scm/output-lib.scm (first-bar-number-invisible): rename from
3210         default-bar-number-visibility
3211
3212 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3213
3214         * scm/define-music-properties.scm (all-music-properties): remove
3215         predicate property.
3216
3217 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
3218
3219         * po/fi.po: refresh.
3220
3221 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3222
3223         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
3224         superfluous s1.
3225         (disappear): bugfix.
3226
3227         * lily/stem-tremolo.cc (raw_stencil): read slope property.
3228
3229         * lily/include/paper-system.hh (class Paper_system): remove
3230         staff_extents_ member.
3231
3232         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
3233
3234         * lily/include/paper-system.hh (class Paper_system): remove
3235         number_ variable. Remove is_title_. Remove break_before_penalty_
3236
3237         * lily/paper-book.cc (systems): use 'number property iso. number_
3238         member.
3239
3240         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
3241         remove ly:paper-system-number.
3242
3243         * scm/lily-library.scm (paper-system-title?): new function.
3244
3245         * lily/book.cc (process): bugfix: flip ?: cases. 
3246
3247         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3248         add outputProperty.
3249
3250         * ly/music-functions-init.ly: add outputProperty music function.
3251
3252         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
3253
3254         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
3255         and next-padding.
3256         (optimal-page-breaks): rename from ly:optimal-page-breaks.
3257
3258         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
3259
3260         * lily/paper-system.cc (internal_get_property): new function.
3261
3262         * Documentation/user/global.itely (Vertical spacing): refer to
3263         page-spacing.ly
3264
3265         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
3266         pagetopspace
3267
3268         * input/regression/page-spacing.ly: new file.
3269
3270         * input/regression/page-top-space.ly: new file.
3271
3272         * lily/spacing-spanner.cc: cmath -> math.h
3273
3274         * lily/paper-system.cc (read_left_bound): new function. Read
3275         line-break-system-details from left bound to determine extents.
3276  
3277         * Documentation/user/programming-interface.itely (Using LilyPond
3278         syntax inside Scheme): change applyxxx -> applyXxx.
3279
3280         * ly/music-functions-init.ly: add outputProperty music function.
3281
3282         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
3283
3284         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
3285
3286         * python/convertrules.py (conv): rule
3287
3288         * ly/music-functions-init.ly: applyxxx -> applyXxx
3289
3290         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
3291         TabVoice to Voice.
3292
3293 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3294
3295         * flower/include/real.hh: include <math.h> iso. <cmath>
3296
3297         * flower/include/offset.hh: include real.hh
3298
3299 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3300
3301         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3302         fix example, now that 'interfaces is no longer directly available.
3303
3304         * lily/book.cc (process): don't crash if paper == NULL.
3305
3306         * po/fr.po: update.
3307
3308 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3309
3310         * scm/define-music-types.scm (music-descriptions): set length and
3311         start-callback for QuoteMusic
3312
3313 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3314
3315         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
3316         arguments. Fixes compilation error with gcc 3.3.
3317
3318 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3319
3320         * VERSION: release 2.7.10
3321
3322         * stepmake/stepmake/python-module-rules.make
3323         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
3324
3325         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
3326         real.hh
3327
3328 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3329
3330         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
3331         -Werror. Otherwise GCC barfs over various optimizations.
3332
3333         * scm/define-grob-properties.scm (all-internal-grob-properties):
3334         add note-head property
3335
3336         * Documentation/user/instrument-notation.itely (Laissez vibrer
3337         ties): new node.
3338
3339         * input/regression/laissez-vibrer-ties.ly: new file.
3340
3341         * lily/laissez-vibrer-engraver.cc: new file.    
3342
3343         * lily/include/tie-column-format.hh: new file.
3344
3345         * lily/tie-column-format.cc: new file. 
3346
3347         * lily/tie-column.cc (set_manual_tie_configuration): new function.
3348
3349         * lily/laissez-vibrer-tie.cc: new file.
3350
3351         * lily/include/laissez-vibrer-tie.hh: new file.
3352
3353         * ly/engraver-init.ly: add Laissez_vibrer_engraver
3354
3355         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
3356
3357         * scm/define-grobs.scm (all-grob-descriptions): add
3358         LaissezVibrerTie, LaissezVibrerTieColumn
3359
3360         * lily/tie-column.cc (set_tie_config_directions): new function
3361         (final_shape_adjustment): new function.
3362         (shift_small_ties): new function.
3363
3364         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
3365
3366         * lily/include/tie.hh (struct Tie_details): add x_gap_
3367         (struct Tie_configuration): add head_position_
3368
3369         * lily/tie-column.cc (set_chord_outline): new function.
3370
3371         * mf/cmr.enc.in:  remove file.
3372
3373 2005-09-11  Graham Percival  <gpermus@gmail.com>
3374
3375         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
3376
3377 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3378
3379         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
3380         reduce aliasing effects.
3381
3382         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
3383         box in skyline.
3384
3385 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3386
3387         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
3388
3389         * flower/include/real.hh: std::fabs too.
3390
3391 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
3392
3393         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
3394
3395         * lily, flower: Include C++ iso C headers.  Import namespace std
3396         throughout.
3397
3398         * lily/side-position-interface.cc: 
3399         * lily/scm-hash.cc: 
3400         * lily/note-head.cc: 
3401         * lily/include/includable-lexer.hh: 
3402         * flower/include/string-data.icc: Remove using std::*.
3403
3404         * lily, flower: Include C++ iso C headers.  Import namespace std
3405         throughout.
3406
3407         * lily/side-position-interface.cc: 
3408         * lily/scm-hash.cc: 
3409         * lily/note-head.cc: 
3410         * lily/include/includable-lexer.hh: 
3411         * flower/include/string-data.icc: Remove using std::*.
3412
3413         * Documentation/user/instrument-notation.itely (Entering lyrics):
3414         Multiple latin-1->utf-8 conversion fix.
3415
3416         * Documentation/user/*tely: Update Emacs cookie to utf-8.
3417
3418 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3419
3420         * lily/tie.cc (get_configuration): also avoid dots for non-space
3421         situations.
3422
3423 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3424
3425         * Documentation/user/instrument-notation.itely: Bugfix.
3426
3427 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3428
3429         * tex/GNUmakefile: don't install texinfo.tex
3430
3431         * tex/ : cleanup: remove unused files.
3432
3433         * lily/general-scheme.cc: remove my_{isinf,isnan}.
3434
3435         * flower/include/real.hh: using std::{isnan,isinf}
3436         
3437         * VERSION (PATCH_LEVEL): release 2.7.9
3438
3439 2005-09-05  Graham Percival  <gpermus@gmail.com>
3440
3441         * Documentation/user/ instrument-notation.itely,
3442         advanced-notation.itely: minor tweaks.
3443
3444         * input/test/script-chart.ly: add item padding.
3445
3446 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3447
3448         * flower/offset.cc: use math.h iso. <cmath>
3449
3450         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
3451         of IE users.
3452
3453         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
3454         (widen-left-stencil-edges): new function. Fix alignment problems
3455         with LaTeX includegraphics.
3456
3457         * lily/text-interface.cc (interpret_markup): use abort().
3458
3459 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3460
3461         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
3462
3463         * lily/tie.cc (get_configuration): update bezier shape as we
3464         change Y positions.
3465         (get_configuration): don't move large ties if we're outside of the
3466         staff.
3467
3468 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3469
3470         * scm/define-markup-commands.scm (strut): swap X and Y dims.
3471         
3472 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3473
3474         * .cvsignore: Add auto-generated configure files and then some.
3475
3476 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3477
3478         * scm/define-grobs.scm (DynamicLineSpanner): Add
3479         X-extent-callback.  Fixes hairpin-slur collision.
3480
3481 2005-08-31  Graham Percival  <gpermus@gmail.com>
3482
3483         * Documentation/user/advanced-notation.itely,
3484         basic-notation.itely: minor changes.
3485
3486 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3487
3488         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
3489         \linebreak between each .eps file if \betweenLilyPondSystem is
3490         undefined. 
3491
3492         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
3493         music): Document the \linebreak
3494
3495         * Documentation/user/lilypond-book.itely,
3496         input/tutorial/lbook-latex-test.tex,
3497         Documentation/user/examples.itely: Remove \usepackage{graphics}
3498
3499 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3500
3501         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
3502
3503         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
3504         compat bugfix.
3505
3506         * scripts/lilypond-book.py (PREAMBLE_LY): define
3507         inside-lilypond-book
3508         (modify_preamble): new function. Insert \RequirePackage{graphics}
3509         when no {graphics found in preamble.  
3510
3511 2005-08030  Graham Percival  <gpermus@gmail.com>
3512
3513         * Documentation/user/basic-notation.itely, global.itely,
3514         tutorial.itely: misc small changes.
3515
3516 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3517
3518         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
3519         VERSION.
3520
3521 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3522
3523         * lily/tie-column.cc (new_directions): put Tie down on center
3524         staff line. 
3525
3526         * lily/script-interface.cc (before_line_breaking): use
3527         Grob::programming_error
3528
3529         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
3530
3531         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
3532         of splitext.
3533
3534 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3535
3536         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
3537
3538 2005-08-29  Werner Lemberg  <wl@gnu.org>
3539
3540         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
3541         the `*.scale.pfa' files to avoid warnings.
3542
3543 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3544
3545         * lily/tempo-performer.cc (process_music): idem.
3546
3547         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
3548
3549 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3550
3551         * Documentation/user/advanced-notation.itely (Text markup): not a
3552         fragment.
3553
3554         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
3555
3556         * lily/staff-performer.cc (initialize): add tempo/name to
3557         audio_staff_
3558
3559
3560 2005-08-26  Graham Percival  <gpermus@gmail.com>
3561
3562         * Documentation/user/advanced.itely: add text-only example.
3563
3564         * Documentation/user/invoking.itely: add index entries for
3565         convert-ly.
3566
3567         * Documentation/user/ tutorial.itely, basic-notation.itely:
3568         small fixes suggested by Steve D.  Thanks!
3569
3570 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3571
3572         * input/regression/markup-bidi-pango.ly: new file.
3573
3574         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
3575         standard. Remove #ifdef. Remove memleak.
3576         (text_stencil): use text_dir to decide how to composite items.
3577         (text_stencil): determine uniform text direction for the entire
3578         string.
3579
3580         * scripts/lilypond-book.py (output_name): remove
3581         latex_filter_cmd. Non-portable to non-Unix systems. 
3582         (get_latex_textwidth): use File.write and os.unlink() instead.
3583
3584         * THANKS: add Vicente & Trevor.
3585
3586         * lily/grob.cc (discretionary_processing): look up origin for
3587         programming_error too. 
3588
3589         * input/regression/tie-broken.ly: new file.
3590
3591         * lily/tie-column.cc (set_chord_outlines): set outline for line
3592         break case too.
3593         
3594 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3595
3596         * lily/pango-font.cc (text_stencil): don't translate glyphs in
3597         unscaled transform, just translate stencils.
3598
3599         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
3600         MIDI.
3601
3602         * scm/define-markup-commands.scm (wordwrap-string): use
3603         text-direction
3604         (wordwrap-stencils): idem.
3605         (line): idem.
3606         (fill-line): idem.
3607         (wordwrap-stencils): translate last line to right for
3608         text-direction = LEFT.
3609
3610         * scm/define-grob-properties.scm (all-user-grob-properties): add
3611         text-direction.
3612
3613 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3614
3615         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
3616         when copying a Lily_parser object.
3617
3618 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3619
3620         * scm/define-markup-commands.scm (null): add null markup.
3621
3622 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3623
3624         * lily/item.cc: Add documentation of center-invisible
3625
3626 2005-08-24  Graham Percival  <gpermus@gmail.com>
3627
3628         * Documentation/user/advanced-notation.itely: add info about
3629         raising text.
3630
3631         * Documentation/user/programming-interface.itely: fix example
3632         involving raised text.
3633
3634 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3635
3636         * lily/beam.cc (print): fix X start/end points of isolated
3637         beamlets.
3638
3639         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
3640
3641         * lily/multi-measure-rest.cc (set_text_rods): new function.
3642
3643         * lily/vertical-align-engraver.cc (process_music): call
3644         Align_interface::set_axis(). This forces #'elements to be ordered,
3645         preventing random vertical reordering of staves.
3646
3647         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
3648         add avoid-slur property. 
3649
3650         * Documentation/user/basic-notation.itely (Measure repeats): add
3651         countPercentRepeats example.
3652
3653         * Documentation/user/advanced-notation.itely (Other text markup
3654         issues): remove remark about normal-font.  We have \normal-text
3655
3656         * input/regression/tie-chord.ly: add note about remaining bugs.
3657
3658         * lily/tie.cc (print): try Tie_column::set_directions () if
3659         control-points not yet defined.
3660
3661 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3662
3663         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
3664         extent. This fixes braces falling out of the EPS bbox.
3665
3666         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
3667         exactly to bbox.
3668
3669 2005-08-23  Graham Percival  <gpermus@gmail.com>
3670
3671         * {various} : change #up->#UP and #down->#DOWN.
3672
3673         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
3674
3675         * Documentation/user/advanced-notation.itely: clarify
3676         what objects handles text on a multimeasure rest.
3677
3678 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3679
3680         * VERSION (PATCH_LEVEL): release 2.7.7
3681
3682 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3683
3684         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
3685
3686         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
3687
3688         * input/regression/*.ly: formatting clean-up. Default layout
3689         before music expression.
3690
3691         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
3692         romanze28-2 example.
3693
3694         * scm/ps-to-png.scm: remove dir-re function.
3695         (make-ps-images): generate page names, instead of globbing them.
3696         This brings down LilyPond memory usage for make web by a factor
3697         10. (backportme?) 
3698
3699         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
3700         don't use glob. With 3000 files, globbing
3701         Documentation/user/out-www/ can take too much time. (backportme?)
3702         
3703         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
3704
3705         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
3706
3707         * input/regression/tie-manual.ly: new file
3708
3709         * input/regression/tie-chord.ly: update.
3710
3711         * flower/include/interval.hh (struct Interval_t): 
3712
3713         * lily/tie.cc (distance): new function 
3714         (height): new function.
3715         (init): new function
3716         (Tie_details): new struct.
3717
3718         * lily/skyline.cc (skyline_height): new function.
3719
3720         * lily/tie-column.cc (set_chord_outlines): new function.
3721         (new_directions): read tie-configuration
3722
3723         * lily/skyline.cc: fix ASCII art.
3724         
3725 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3726
3727         * python/convertrules.py (string_or_scheme): Fix spelling error
3728
3729 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3730         
3731         * lily/tie-column.cc (set_directions): set directions only once.
3732         (add_configuration): new function.
3733
3734         * lily/tie.cc (set_control_points): new function
3735
3736         * lily/tie-column.cc (new_directions): new function.
3737
3738         * ly/music-functions-init.ly: set 'pitch property
3739         iso. trill-pitch. This makes \relative work with \pitchedTrill
3740
3741         * lily/tie.cc (get_configuration): new function. Don't generate
3742         control points, rather, generate configuration.
3743         remove head-pair property.
3744
3745         * lily/include/tie.hh (struct Tie_configuration): new struct.
3746
3747 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
3748
3749         * Documentation/topdocs/NEWS.tely: clarify.
3750
3751 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3752
3753         * lily/tie.cc: remove minimum-length
3754
3755         * scm/define-grob-properties.scm (all-user-grob-properties):
3756         remove staffline-clearance, y-offset 
3757
3758         * input/regression/tie-dots.ly (Module): remove.
3759
3760         * lily/tie.cc (get_control_points): rewrite. Put short ties in
3761         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
3762
3763         * input/regression/tie-single.ly: new file.
3764
3765 2005-08-21  Graham Percival  <gpermus@gmail.com>
3766
3767         * ly/bagpipe.ly: fix compile problem.
3768
3769 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3770
3771         * lily/midi-item.cc (name): new method.
3772
3773         * lily/staff-performer.cc (acknowledge_audio_element): use
3774         signature of baseclass.
3775
3776         * lily/engraver-group.cc (do_announces): move recursion call out
3777         of while loop. 
3778
3779         * lily/drum-note-performer.cc (class Drum_note_performer): use
3780         process_music everywhere.
3781
3782         * ly/performer-init.ly: add default children everywhere.
3783
3784         * lily/paper-book.cc (output): call paper-book-write-midis
3785         directly: always write MIDI, even if no \layout {} block. 
3786
3787 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3788
3789         * VERSION (PACKAGE_NAME): release 2.7.6
3790
3791         * lily/percent-repeat-engraver.cc (try_music): don't print warning
3792         about not being able to handle repeat.
3793
3794 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3795
3796         * Documentation/user/examples.itely (Piano templates):
3797         * lily/include/performer-group.hh: Remove last traces of
3798         Performer_group_performer.  Fixes make web.
3799
3800 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3801
3802         * Documentation/user/examples.itely (Piano templates): change
3803         Engraver_group_engraver -> Engraver_group
3804
3805         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
3806         scm_stand_in_procs is not weak_any.
3807
3808         * lily/volta-bracket.cc (print): don't use strcmp().
3809
3810         * lily/volta-engraver.cc (process_music): use
3811         Text_interface::is_markup() for setting the 'text property of the
3812         volta bracket.
3813
3814         * input/mutopia/claop.py (accents): update syntax to 2.6
3815
3816         * scm/define-context-properties.scm
3817         (all-user-translation-properties): add countPercentRepeats.
3818
3819         * Documentation/user/basic-notation.itely (Measure repeats): add
3820         isolated percent example.
3821
3822 2005-08-18  Graham Percival  <gpermus@gmail.com>
3823
3824         * input/ {various}: change direction #1, #-1 to
3825         #up/#down or \fooUp, \fooDown.
3826
3827         * Documentation/user/music-glossary.tely: #-1 to #down.
3828
3829         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
3830         to #up, #-1 to #down.
3831
3832 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3833
3834         * lily/include/engraver-group.hh: rename.
3835
3836         * lily/include/performer-group.hh: rename.
3837
3838 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3839
3840         * input/test/script-abbreviations.ly: Removed some old LaTeX
3841         left overs.
3842
3843 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3844
3845         * python/convertrules.py (conv): inside-slur -> avoid-slur.
3846         Remove functions.  Remove if 1: constructs, reindent.
3847
3848         * scripts/convert-ly.py (add_version): Add functions from
3849         convertrules.py
3850
3851         * scm/script.scm (default-script-alist):
3852         s/priority/script-priority.  Fixes script stacking.  Backportme.
3853         (Fermata): Very low priority.
3854
3855 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3856
3857         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
3858
3859         * input/regression/slur-script.ly: remove padding tweaks. Add
3860         comment strings.
3861
3862         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
3863         time sigs and related stuff.
3864
3865         * scm/define-grob-properties.scm (all-user-grob-properties): add
3866         @code{} tags to property description.
3867
3868         * lily/include/line-group-group-engraver.hh (Module): remove file.
3869
3870         * python/convertrules.py (conv): add rule for
3871         Engraver_group_engraver -> Engraver_group.
3872
3873         * lily/include/performer-group-performer.hh: analogous.
3874
3875         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
3876
3877         * lily/context-def.cc (instantiate): check for
3878         Engraver_group_engraver and Performer_group_performer not
3879         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
3880  
3881 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3882
3883         * input/les-nereides.ly: Remove three fingering tweaks, update
3884         remaining one.
3885
3886         * input/regression/slur-script-inside.ly: Update, fix doc.
3887
3888         * scm/script.scm: Update to avoid-slur.
3889
3890         * scm/define-grob-properties.scm (avoid-slur): New property.
3891
3892         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
3893         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
3894         outside_slur_callback if avoid-slur != #'inside.
3895
3896         * scm/define-grobs.scm (Fingering, Textscript): No
3897         inside-slur/outside-slur preference.
3898         (DynamicLineSpanner): Always outside slur.
3899
3900         * input/regression/slur-script.ly: More tests.
3901
3902 2005-08-17  Graham Percival  <gpermus@gmail.com>
3903
3904         * Documentation/user/lilypond-book: fix notime entry.
3905
3906         * Documentation/user/advanced-notation.itely: add info on
3907         getting an I rehearsal mark.
3908
3909         * Documentation/user/putting.itely: reinstate "I", re-enforce
3910         the fact that \override numbers are the result of
3911         experimentation and personal taste.
3912
3913         * Documentation/user/invoking.itely: update convert-ly bugs.
3914
3915 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
3918         to #t.
3919
3920         * lily/timing-translator.cc (initialize): don't initialize timing.
3921
3922         * input/regression/stem-spacing.ly (Module): remove file.
3923
3924         * input/regression/spacing-stick-out.ly: specify Score context for
3925         \override
3926
3927         * input/regression/clefs.ly: remove spurious {}s 
3928
3929 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
3930
3931         * Documentation/topdocs/NEWS.tely,
3932         input/regression/repeat-percent-count.ly: clarify a bit.
3933
3934 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3935
3936         * input/no-notation/display-lily-tests.ly: delete
3937         display-lily-init call.
3938
3939         * ly/music-functions-init.ly (displayLilyMusic): move
3940         display-lily-init call at top level, so that the user should not
3941         have to call it.
3942
3943         * scm/define-music-display-methods.scm (note-name->lily-string):
3944         retrieve note names directly from pitchnames using new function `rassoc'.
3945         (display-lily-init): note names list construction removed.
3946
3947 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3948
3949         * THANKS: spello.
3950
3951         * lily/lily-parser.cc (get_header): copy module, instead of
3952         returning it.
3953
3954         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
3955         counters.
3956
3957         * Documentation/user/basic-notation.itely (Measure repeats): add
3958         links to Counter grobs.
3959
3960         * scm/define-grobs.scm (all-grob-descriptions): add
3961         DoublePercentRepeatCounter
3962         (all-grob-descriptions): add PercentRepeatCounter
3963
3964         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
3965         also create counter grobs.
3966
3967         * lily/separation-item.cc (extremal_break_aligned_grob): don't
3968         return grob without space-alist.
3969
3970         * input/proportional.ly: tune staff-padding.
3971
3972         * input/regression/repeat-percent-count.ly: new file. 
3973
3974 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3975
3976         * input/no-notation/display-lily-tests.ly: moved from
3977         input/regression/ to input/no-notation. Be sure to call
3978         `display-lily-init' before trying to use the display function.
3979
3980 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3981
3982         * scripts/lilypond-book.py (option_definitions): Don't localize
3983         the empty string. Fixes bug when --psfonts was used with
3984         non-English locale.
3985
3986 2005-08-15  Graham Percival  <gpermus@gmail.com>
3987
3988         * lily/tuplet-bracket.cc: simple build fix.
3989
3990         * Documentation/user/putting.itely: use "we" instead of "I".
3991
3992         * Documentation/user/basic-notation.itely: cautionary accidentals
3993         work with naturals, too.
3994
3995 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3996
3997         * lily/tuplet-bracket.cc (calc_position_and_height): add
3998         staff-padding support.
3999
4000         * input/proportional.ly: set staff-padding.
4001         
4002         * VERSION (PATCH_LEVEL): release 2.7.5
4003
4004         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
4005         fixes. Remove tweaks.
4006
4007         * input/regression/tuplet-slope.ly: add a test case.
4008
4009         * lily/tuplet-bracket.cc (calc_position_and_height): revert
4010         erroneous fix. Add spanner bounds to offset array with relative X
4011         positions.
4012
4013         * ly/engraver-init.ly: add Rest_engraver only once.
4014
4015         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
4016         (*parser*) lookup if (*parser*) != #f.
4017
4018 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4019
4020         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4021         Cut-and paste update.
4022
4023         * input/regression/slur-script.ly: Add example of reverting
4024         inside-slur for fingering.
4025
4026         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
4027         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
4028
4029         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
4030         outside_slur_callback if inside-slur == #f (as opposed to unset).
4031
4032 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4033
4034         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
4035         encoding files are already removed.
4036
4037 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4038
4039         * Documentation/user/advanced-notation.itely (Instrument names):
4040         Document a workaround for instrument names that collide with
4041         system start braces/brackets.
4042
4043 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4044
4045         * lily/rest-collision.cc (do_shift): spello.
4046
4047         * input/proportional.ly: use #'used property. Set break-overshoot
4048         property.
4049
4050         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
4051
4052         * lily/paper-column.cc: add #'used property
4053
4054         * lily/mark-engraver.cc (stop_translation_timestep): set grob
4055         array for staves found.
4056
4057         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
4058         array for stavesFound.
4059
4060         * lily/staff-spacing.cc (next_note_correction): add fixed and
4061         space to calling convention. This fixes spacing of accidentals
4062         after barlines.
4063
4064         * input/regression/spacing-accidental-stretch.ly: add barline -
4065         accidental case.
4066
4067         * scm/framework-ps.scm (page-header): add version number to
4068         creator
4069         (eps-header): idem.
4070
4071         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
4072         
4073 2005-08-13  Graham Percival  <gpermus@gmail.com>
4074
4075         * Documentation/user/global.itely: add "fit as much as
4076         possible onto this page" example (Vertical spacing).
4077
4078 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4079
4080         * *: Nitpick run.
4081
4082         * buildscripts/fixcc.py: Fixes.
4083
4084 2005-08-12  Graham Percival  <gpermus@gmail.com>
4085
4086         * Documentation/user/advanced-notation.itely: add markup
4087         example to Text spanners.
4088
4089 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4090
4091         * Documentation/user/basic-notation.itely (Ties): Add example of
4092         tying a tremolo to a chord. Thanks to Steve Doonan. 
4093
4094         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
4095         properties and move tieMelismaBusy to the list of written
4096         properties. 
4097
4098 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
4099
4100         * po/TODO: suggest to use a dedicated tool like kbabel.
4101
4102         * po/fi.po: update using kbabel.
4103
4104 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4105
4106         * *: Remove obsolete files.  Nitpick run.
4107
4108         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
4109
4110 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4111
4112         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
4113         too.
4114
4115         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
4116
4117         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
4118         whitespace as symbol separator.
4119
4120         * lily/side-position-interface.cc: Add slur-padding.
4121
4122         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
4123         quite a large fix, and it never worked in a stable release; so not
4124         really a regression.
4125
4126         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
4127         Update cut and paste code from Slur_engraver.
4128
4129         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
4130         Add.
4131
4132         * scm/define-grobs.scm (DynamicLineSpanner): Add
4133         dynamic-line-spanner-interface.
4134         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
4135
4136 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4137
4138         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
4139         to_boolean () so that non-set 'inside-slur means false.
4140
4141         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
4142         slur has control-points.  Skip script without direction.  Always
4143         do_shift if script inside slur, even if slur not contained in
4144         script y-extent.  Increment k in loop.
4145
4146 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4147
4148         * scm/define-markup-commands.scm: Improved regexp to search for
4149         EPS bounding boxes and corrected call to ly:warning.
4150
4151 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4152
4153         * Documentation/user/programming-interface.itely (Displaying music
4154         expressions): doc for \displayLilyMusic. Also some precisions in
4155         "Markup construction in Scheme"
4156
4157 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4158
4159         * scm/define-markup-commands.scm (normal-text): Added 2 new
4160         markup commands, \normal-text and \medium (the latter thanks to
4161         Bruce Fairchild). 
4162
4163 2005-08-08  Graham Percival  <gpermus@gmail.com>
4164
4165         * Documentation/user/programming-interface.itely: fix @{ @}.
4166
4167         * scm/define-markup-commands.scm: add linewidth info to
4168         \justify and \wordwrap, add "upright is the opposite of italic".
4169
4170         * Documentation/user/advanced-notation.itely: shaped->shape,
4171         add (cons (markup "foo")) type of example to text markup,
4172         reword multi-measure rests section.
4173
4174         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
4175         comment.  No actual code was touched.
4176
4177         * Documentation/user/invoking.itely: add more info about
4178         \include.  Thanks, Bruce!
4179
4180         * THANKS: add Bruce Fairchild, alphabetise.
4181
4182         * Documentation/user/global.itely: document \score{\header{}}
4183         behavior.
4184
4185         * Documentation/user/basic-notation.itely: reword multi-measure
4186         rest discussion in Rests.
4187
4188 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4189
4190         * Documentation/user/programming-interface.itely (Markup
4191         construction in Scheme): Corrected example and tried to clarify
4192         the implicit \line in the table.
4193
4194 2005-08-07  Graham Percival  <gpermus@gmail.com>
4195
4196         * Documentation/user/instrument-notation.itely: moved
4197         some bagpipe info back into the bagpipe section.  Somehow
4198         it ended up in the "other vocal issues" section?!  :o_O
4199
4200 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4201
4202         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
4203         directories, not paths).
4204
4205 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4206
4207         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
4208         plain emmentaler/aybabtu.  Backportme.
4209
4210         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
4211         missing dir correction.
4212
4213 2005-08-05  Graham Percival  <gperlist@shaw.ca>
4214
4215         * scm/define-markup-commands: fix reversed justify/wordwrap
4216         doc strings.
4217
4218 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
4219
4220         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
4221         lily/gregorian-ligature-engaver.cc,
4222         lily/include/ligature-engraver.hh,
4223         lily/include/coherent-ligature-engraver.hh,
4224         lily/include/gregorian-ligature-engraver.hh: make these classes
4225         truely abstract.  This should fix some internal oddities such as
4226         duplicate as well as dead translator/property declarations, and
4227         also some dead code.
4228
4229         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
4230         bugfix: avoid message "junking empty ligature" on ligature
4231         brackets by collecting dummy grobs.
4232
4233 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4234
4235         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
4236
4237         * input/proportional.ly (staffKind): bugfix.
4238         (staffKind): updates by Trevor Baca.
4239
4240         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
4241         default layout. 
4242
4243         * lily/tuplet-bracket.cc (print): check whether edge-text is a
4244         pair.
4245
4246         * lily/beam.cc (rest_collision_callback): call position_beam() if
4247         necessary.
4248
4249         * VERSION: release 2.7.4
4250
4251         * input/regression/spacing-uniform-stretching.ly: new file.
4252
4253         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
4254
4255         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
4256         contributor.
4257
4258         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
4259
4260         * input/proportional.ly: new file.
4261
4262         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
4263         columns is empty
4264
4265         * lily/tuplet-engraver.cc (finalize): new function. Reset right
4266         bounds to currentCommandColumn for the last step.
4267         (start_translation_timestep): if tupletFullLength is set, set
4268         bound to Paper Column
4269
4270         * input/regression/tuplet-full-length.ly (indent): new file.
4271
4272         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
4273         clique of loose columns, eg. a set of grace notes in strict
4274         notespacing.
4275
4276         * input/regression/spacing-strict-spacing-grace.ly: new file.
4277
4278         * lily/key-signature-interface.cc: change property name to
4279         alteration-alist
4280
4281         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
4282         keyAccidentalOrder
4283
4284         * python/convertrules.py (conv): keyAccidentalOrder ->
4285         keyAlterationOrder
4286
4287         * lily/key-engraver.cc (create_key): always print a cancellation
4288         for going to C-major/A-minor, regardless of printKeyCancellation.
4289         (create_key): remove typecheck for visibility. This fixes key
4290         signature not being printed.
4291
4292         * lily/spacing-determine-loose-columns.cc: new file.
4293
4294         * input/regression/spacing-strict-notespacing.ly: new file.
4295
4296         * lily/spacing-spanner.cc (generate_springs): rename from
4297         do_measure. 
4298         (generate_pair_spacing): new function.
4299         (init, generate_pair_spacing): set between-cols for floating
4300         nonmusical columns.
4301
4302         * lily/spaceable-grob.cc (get_spring): new function. 
4303
4304         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
4305         relative to the right edge of the prefatory matter.
4306
4307         * lily/beam.cc (print): read break-overshoot to determine where to
4308         stop/start broken beams.
4309
4310         * input/regression/spanner-break-overshoot.ly: new file.
4311
4312 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4313
4314         * ly/bagpipe.ly: updated.
4315
4316         * Documentat/user/instrument.itely: un-comment out bagpipe example.
4317
4318 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4319
4320         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
4321         support: now (de)crescs avoid slurs as well.
4322
4323         * Documentation/user/instrument-notation.itely (Bagpipe example):
4324         comment out non-functioning bagpipe example.
4325         (Bagpipe definitions): idem.
4326
4327         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
4328         (Top): add proportionalNotationDuration example.
4329
4330         * input/regression/spacing-proportional.ly: new file.
4331
4332         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
4333         synched to a beam.
4334
4335         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
4336         fixes beams with a single stem (eg. beams across linebreaks.)
4337
4338         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
4339
4340         * flower/rational.cc (operator +): prevent overflow. This fixes
4341         heavily nested tuplets.
4342
4343         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
4344         have to protect even those unlikely to be corrupted data members.  
4345
4346 2005-08-04  Graham Percival  <gperlist@shaw.ca>
4347
4348         * ly/bagpipe.ly: new file.
4349
4350         * THANKS: added Sven Axelsson.
4351
4352 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4353
4354         * lily/spacing-engraver.cc (stop_translation_timestep): directly
4355         copy proportionalNotationDuration into currentMusicalColumn if
4356         set.
4357
4358         * lily/spacing-spanner.cc (musical_column_spacing): if
4359         uniform-stretching set, fixed space is 0.0
4360
4361         * input/regression/spacing-multi-tuplet.ly: show
4362         uniform-stretching property.
4363
4364         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
4365
4366         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
4367         (struct Spacing_options): new struct.
4368
4369         * lily/spacing-basic.cc: new file.
4370
4371         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
4372         delta_t doesn't have to be smaller than shortest_playing_len
4373
4374 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4375
4376         * input/regression/markup-arrows.ly:  new file.
4377
4378         * lily/tuplet-bracket.cc: document new behavior.
4379
4380         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
4381         with line breaks.
4382
4383         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
4384
4385         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
4386         default 
4387
4388         * lily/tuplet-bracket.cc: add edge-text property.
4389         add break-overshoot.
4390         (print): read break-overshoot.
4391         (print): read edge-text, add stencils.
4392
4393         * mf/feta-arrow.mf: new file.
4394
4395         * mf/feta-generic.mf: add feta-arrow.
4396
4397 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4398
4399         * Documentation/user/lilypond-book.itely (An example of a
4400         musicological document): Added flag -o to dvips for people who use
4401         the default setting in teTeX where output is sent to the printer. 
4402
4403         * Documentation/user/global.itely (Vertical spacing): Added
4404         reference to the Axis_group_engraver which documents the *Extent
4405         properties.
4406
4407 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4408
4409         * Documentation/user/basic-notation.itely (Tuplets): add note
4410         about nested tuplets. Remove BUG. 
4411
4412         * input/regression/tuplet-nest.ly: update: remove manual hack. 
4413
4414         * lily/tuplet-bracket.cc (print): use robust_scm2drul
4415         (print): manually call print() for subtuplets.
4416         (calc_position_and_height): add subtuplets to the
4417         support. Vertically shift outer tuplet 
4418
4419         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
4420         remove-first for Lyrics, ChordNames and FiguredBass
4421
4422         * scm/define-grob-properties.scm (all-internal-grob-properties):
4423         use ly:grob-array? iso. grob-list?
4424         (all-internal-grob-properties): add tuplets grob-array.
4425
4426         * lily/tuplet-bracket.cc (add_tuplet_bracket):
4427         new function
4428
4429 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4430
4431         * input/test/time-signature-staff.ly: new file.
4432
4433         * ly/declarations-init.ly (center): escape to Scheme. Fixes
4434         spurious #<Music FingerEvent> errors. Backportme.
4435
4436 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4437
4438         * Documentation/user/programming-interface.itely (Markup
4439         construction in Scheme): Corrected markup syntax in the
4440         translation table.
4441
4442 2005-08-03  Graham Percival  <gperlist@shaw.ca>
4443
4444         * Documentation/user/instrument-notation.itely: small update
4445         to bagpipe notation docs; thanks Sven!
4446
4447         * Documentation/user/basic-notation.itely: add link about trills.
4448
4449 2005-08-02  Graham Percival  <gperlist@shaw.ca>
4450
4451         * Documentation/user/music-glossary: remove accidentally committed
4452         fink patch.
4453
4454 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
4455
4456         * lily/lily-parser.cc (get_header): new function. Enable multiple
4457         \header definitions.
4458
4459         * lily/parser.yy (lilypond_header_body): use get_header.
4460
4461         * ly/init.ly:
4462         * scm/lily-library.scm (print-score-with-defaults): renamed
4463         $globalheader to $defaultheader
4464         
4465         * Documentation/user/global.itely (Creating titles): added short
4466         explanation that multiple headers are useable.
4467
4468
4469 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4470
4471         * lily/module-scheme.cc (LY_DEFINE): new file. 
4472
4473         * Documentation/user/advanced-notation.itely (Font selection): add
4474         doco for make-pango-font-tree.
4475
4476 2005-07-31  Graham Percival  <gperlist@shaw.ca>
4477
4478         * Documentation/user/music-glossary: more languages
4479         for tenuto.
4480
4481         * Docuemntation/user/instrument-notation.itely: minor
4482         update for bagpipe example.
4483
4484 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4485
4486         * input/regression/+.ly (TODO): add some text.
4487
4488 2005-07-28  Graham Percival  <gperlist@shaw.ca>
4489
4490         * Documentation/user/invoking.itely: \score begins with music.
4491
4492         * Documentation/user/ basic-notation.itely,
4493         instrument-notation.itely: minor changes.
4494
4495         * Documentation/user/music-glossary.itely: began tenuto entry.
4496
4497 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4498
4499         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
4500
4501         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
4502
4503 2005-07-27  Graham Percival  <gperlist@shaw.ca>
4504
4505         * Documentation/user/examples.itely: remove bagpipe template.
4506
4507         * Documentation/user/instrument-notation.itely: add bagpipe
4508         section, maybe fix quotes in lyrics.  I hate text encoding.
4509         Clarify chord durations, more bagpipe stuff.
4510
4511 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4512  
4513         * lily/accidental-engraver.cc: formatting fixes.
4514
4515         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
4516         grob-array.
4517
4518         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
4519
4520         * lily/note-column.cc (arpeggio): new function.
4521
4522         * lily/note-spacing.cc (get_spacing): also take arpeggio into
4523         account for spacing.
4524
4525 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4526
4527         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
4528         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
4529         mingw build.
4530         
4531 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4532
4533         * scm/lily.scm (lilypond-all): clear anonymous modules after
4534         processing files.
4535
4536 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4537
4538         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
4539         SCM_I_CONSP
4540
4541         * VERSION: 2.7.3 released
4542
4543         * Documentation/user/invoking.itely (Invoking lilypond): add
4544         LILYPOND_GC_YIELD documentation.
4545
4546         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
4547         scm_from_real / scm_make_real.
4548
4549         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
4550         higher. This increases memory footprint, but provides overall
4551         speedup of 15 to 20%. 
4552
4553         * lily/include/translator.hh (class Translator): remove
4554         PRECOMPUTED_VIRTUAL everywhere.
4555
4556         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
4557
4558         * lily/context.cc (now_mom): non-recursive now_mom() 
4559
4560         * lily/include/profile.hh: new file.
4561
4562         * lily/profile.cc: new file.
4563
4564         * lily/grob.cc (Grob::Grob): look properties up directly.
4565
4566         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
4567         lookups.
4568
4569         * lily/include/box.hh (class Box): smob Box type.
4570
4571         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
4572
4573         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
4574         protect() and unprotect(). Use throughout.
4575
4576 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4577
4578         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
4579
4580         * scm/define-music-display-methods.scm (markup->lily-string):
4581         markup elements can also be strings (without simple-markup
4582         appended)
4583
4584 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4585
4586         * lily/context.cc (where_defined): also assign value in
4587         where_defined().
4588
4589         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
4590         (curve_coordinate): new function
4591
4592         * lily/simple-spacer.cc (add_columns): only add rods between
4593         column i and begin/end if keep-inside-line is set (this repleces
4594         allow-outside-line as default)
4595
4596 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4597
4598         * lily/tuplet-engraver.cc (start_translation_timestep): only read
4599         tupletSpannerDuration if applicable.
4600
4601         * lily/font-size-engraver.cc (process_music): read fontSize only
4602         once per timestep.
4603
4604         * lily/engraver*cc: use throughout.
4605         
4606         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
4607
4608         * lily/translator.cc (add_acknowledger): new file. Directly jump
4609         into an Engraver::acknowledge_xxx () method based on a grobs
4610         interface-list.
4611
4612         * lily/include/translator-dispatch-list.hh (class
4613         Engraver_dispatch_list): new struct, new file.
4614
4615         * scm/define-context-properties.scm
4616         (all-internal-translation-properties): remove acceptHashTable,
4617         acknowledgeHashTable
4618
4619         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
4620
4621         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
4622         change acknowledgeHashTable to C++ member. 
4623
4624         * lily/rest-collision.cc (do_shift): use extract_grob_set().
4625
4626 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4627
4628         * scm/display-lily.scm: new file. Define a `display-lily-music'
4629         function, that displays the music expression given as an argument,
4630         using LilyPond notation.
4631
4632         * scm/define-music-display-methods.scm: new file. Implementation
4633         of display methods for each music type.
4634
4635         * ly/music-functions-init.ly (displayLilyMusic): new function for
4636         displaying music with LilyPond notation.
4637
4638         * input/regression/display-lily-tests.ly: new regression test file
4639         for `display-lily-music'.
4640
4641         * scm/markup.scm: remove obsolete debugging code (for printing
4642         markups with LilyPond notation).
4643
4644         * scm/define-music-types.scm (music-name-to-property-table):
4645         * scm/clef.scm (supported-clefs): export, in order to be accessible
4646         from the (scm display-lily) module.
4647
4648 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4649
4650         * Documentation/topdocs/NEWS.tely (Top): Typo.
4651
4652 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
4653
4654         * Documentation/index.html.in, Documentation/texinfo.css,
4655           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4656           Documentation/bibliography/index.html.in,
4657           Documentation/bibliography/html-long.bst: revert css-width patch,
4658           it does not work with IE6.
4659
4660 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4661
4662         * Documentation/texinfo.css: revert 760px hack. 
4663
4664         * VERSION: release 2.7.2
4665
4666         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
4667
4668         * Documentation/user/basic-notation.itely (Barnumber check): add
4669         section.
4670
4671         * scm/music-functions.scm (skip-to-last): new function. Show only
4672         last showLastLength part of the \score.
4673
4674         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
4675
4676         * python/convertrules.py (conv): add ly:x-moment rule
4677
4678         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
4679
4680         * Documentation/topdocs/NEWS.tely (Top): add new feature.
4681
4682         * Documentation/user/instrument-notation.itely (Flexibility in
4683         alignment): options in subsections.
4684
4685         * lily/lyric-engraver.cc (process_music): don't typeset text for _
4686         syllable text. Instead, assume that the previous lyric text is a
4687         melismated text.
4688
4689         * Documentation/index.html.in: revert 800x600 change.
4690
4691 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4692
4693         * lily/main.cc (main): Remove invalid handle kludge.
4694
4695         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
4696         (lambda): add gui define.
4697
4698 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4699
4700         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
4701
4702         * Documentation/user/instrument-notation.itely (Musica ficta
4703         accidentals): add section Musica ficta accidentals
4704
4705         * lily/accidental-engraver.cc (make_suggested_accidental): new
4706         function.
4707         (make_standard_accidental): move into new function.
4708         (create_accidental): new function.
4709
4710         * scm/define-grobs.scm (all-grob-descriptions): new Grob
4711         AccidentalSuggestion
4712
4713         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
4714
4715         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
4716         undefined.
4717
4718         * Documentation/user/global.itely (Page formatting): document
4719         horizontalshift.
4720
4721         * scm/page-layout.scm (default-page-music-height):
4722         horizontalshift: new variable, shift all systems by
4723         horizontalshift to the right, to make space for instrument names.
4724
4725         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
4726
4727         * lily/input-scheme.cc (LY_DEFINE): take format commands.
4728
4729 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4730
4731         * lily/note-column.cc (dir): idem.
4732
4733         * lily/spacing-spanner.cc (Module): idem.
4734
4735         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
4736
4737         * lily/include/paper-column.hh (class Paper_column): add
4738         non-static get_rank() member.
4739
4740         * VERSION: release 2.7.1
4741         
4742         * scm/framework-null.scm: new file, used for benchmarking.
4743
4744 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
4745
4746         * Documentation/topdocs/INSTALL.texi, configure.in: fix
4747         version dependencies for fontforge and gs.
4748
4749         * Documentation/index.html.in, Documentation/texinfo.css,
4750         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4751         Documentation/bibliography/index.html.in, 
4752         Documentation/bibliography/html-long.bst: optimize width of
4753         html for a 800x600 screen (width:760), increases printability
4754         when 'fit to page' is not set and readability in wide screens.
4755
4756         * stepmake/bin/add-html-footer.py: add missing </p>.
4757
4758 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4759
4760         * scm/define-markup-commands.scm (beam): use polygon in beam
4761         command.
4762
4763         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
4764         all acknowledged grobs, and do potentially expensive merge and
4765         write in one go.
4766
4767         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
4768
4769         * configure.in (reloc_b): add --enable-static-gxx to statically
4770         link to libstdc++
4771
4772         * lily/GNUmakefile (static-gxx-libs): new target
4773         static-gxx-libs. Create symlink to libstdc++.a
4774
4775         * lily/new-lyric-combine-music-iterator.cc: rename to
4776         Lyric_combine_music_iterator
4777
4778         * lily/lyric-combine-music-iterator.cc
4779         (Old_lyric_combine_music_iterator): rename to
4780         Old_lyric_combine_music_iterator
4781
4782         * lily/*-engraver.cc (various): remove double use of
4783         PRECOMPUTED_VIRTUAL function: only use
4784         start_translation_timestep() and stop_translation_timestep(), not
4785         both.
4786
4787         * lily/break-substitution.cc (fast_substitute_grob_array): do
4788         fast_substitute_grob_array for all unordered grob_arrays.
4789         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
4790         (substitute_grob_array): optimize.
4791
4792         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
4793
4794         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
4795
4796         * lily/parser.yy: revert $globalheader patch.
4797         
4798         * lily/include/translator.icc
4799         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
4800         Translator methods, without _static helper.
4801  
4802         * lily/grob-smob.cc (derived_mark): rename from
4803         do_derived_mark(). Return void.
4804
4805         * scm/define-context-properties.scm
4806         (all-internal-translation-properties): remove tweakCount/tweakRank.
4807
4808         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
4809         predefined break-visibilities.
4810
4811         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
4812         booleans for break-visibility.
4813
4814         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
4815
4816         * python/convertrules.py (conv): rule for Timing_translator. 
4817
4818         * lily/include/translator.icc: new file. 
4819
4820         * lily/paper-column-engraver.cc (process_music): new
4821         file. Separate Paper_column factory from Score_engraver.
4822
4823         * lily/vertically-spaced-context-engraver.cc: administer
4824         spaceable-staves property of System.
4825
4826         * lily/translator-group-ctors.cc: new file.
4827
4828         * lily/context-property.cc (make_grob_from_properties): construct
4829         the right Grob class programmatically, looking at the class entry
4830         for the meta property.
4831
4832         * lily/break-align-engraver.cc (stop_translation_timestep): call
4833         Break_align_interface::add_element() directly.
4834
4835         * lily/context.cc (measure_position): measure_position() is now a
4836         normal function.
4837
4838         * lily/include/translator.hh (class Translator): rename
4839         process_acknowledged_grobs() to process_acknowledged() and move to
4840         Translator.
4841
4842         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
4843         field for each grob description.
4844
4845         * lily/include/translator-group.hh (class Translator_group):
4846         change to base class. Separate class from Translator. This gets
4847         rid of virtual inheritance for Engravers/Performers.
4848
4849         * lily/staff-performer.cc (class Staff_performer): derive
4850         Staff_performer from Performer, not Performer_group_performer 
4851
4852         * Lily/translator-group.cc (precomputed_recurse_over_translators):
4853         new function.
4854         (precompute_method_bindings): new function. Precompute lists of
4855         Translators, so we only call methods (process_music,
4856         start_translation_timestep, etc.) for Translators needing
4857         it. Also: dispose of pointer-to-member-function calls.
4858
4859         * lily/engraver-group-engraver.cc: remove engraver_each,
4860         recurse_down_engravers ()
4861
4862         * lily/note-head.cc (internal_print): only call
4863         glyph-name-procedure if style != default. 
4864
4865 2005-07-16  Graham Percival  <gperlist@shaw.ca>
4866
4867         * ly/titling-init.ly: add printallheaders option.
4868
4869         * Documentation/user/global.itely: document printallheaders.
4870
4871 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4872
4873         * lily/system.cc (do_derived_mark): don't mark from object_alist_
4874         anymore, but do it centrally.  
4875
4876         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4877         hammer hack.
4878
4879         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
4880
4881         * scm/output-lib.scm: remove hammer-print-function.
4882
4883         * lily/include/pointer-group-interface.hh (extract_grob_set): new
4884         macro. Declare a Link_array<Grob> and fill it from a grob.
4885         (extract_item_set): idem for item.
4886
4887         * lily/break-substitution.cc: add header.
4888         (fast_substitute_grob_array): rewrite for Grob_arrays.
4889         (substitute_grob_array): idem.
4890
4891         * lily/group-interface.cc (add_thing): remove file.
4892
4893         * flower/include/parray.hh (class Link_array): slice() is const.
4894
4895         * lily/include/grob-array.hh: new file.
4896
4897         * lily/grob-array.cc (spanner): new file.
4898
4899         * lily/beam-quanting.cc (fill): read details property from beam.
4900
4901         * lily/beam.cc: support details property.
4902
4903         * total speedups below: approx 10%.
4904
4905         * lily/include/beam.hh: new struct, softcode beam quanting parameters
4906
4907         * lily/include/grob.hh (class Grob): add interfaces_ member.
4908
4909         * lily/bezier.cc (init_polynomial_cache): new function: cache
4910         binom(3,j) t^j (1-t)^{3-j}
4911         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
4912
4913         * lily/*.cc: substitution throughout.
4914
4915         * lily/grob-property.cc (internal_get_object): new routine.
4916         (internal_set_object): idem. Store grob refrences in separate
4917         alist. This saves processing time, since properties aren't
4918         break-substituted, and the per grob namespace is smaller, both for
4919         grobs and non-grob properties.
4920
4921         * scm/define-grob-properties.scm (all-internal-grob-properties):
4922         remove center-element.
4923
4924         * lily/grob.cc: remove tweak-count, tweak-rank.
4925
4926 2005-07-15  Graham Percival  <gperlist@shaw.ca>
4927
4928         * Documentation/user/lilypond-book.itely: fixes example.
4929
4930 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4931
4932         * Documentation/user/global.itely (Creating titles):    
4933         * Documentation/user/examples.itely (All headers): change the
4934         place of \header in \score blocks (after music block) to make
4935         examples compile (cf. changes on parser.yy on 2005-07-10)
4936
4937 2005-07-13  Graham Percival  <gperlist@shaw.ca>
4938
4939         * python/convertrules.py: add exc -> ecc rule.
4940
4941         * scripts/convert-ly.py: add location of convertrules.py
4942         in a comment.
4943
4944         * Documentation/user/changing-defaults.itely: fix language.
4945
4946 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4947
4948         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
4949
4950 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4951
4952         * scm/output-socket.scm (grob-bbox): don't use inf? 
4953
4954         * flower/include/rational.hh: add operator bool() 
4955
4956         * scm/define-music-types.scm (music-descriptions): remove
4957         internal-class-name properties.
4958
4959         * lily/include/event.hh: remove file.
4960
4961         * lily/include/music-constructor.hh: remove file.
4962
4963         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
4964         in 'types property.
4965
4966         * lily/music.cc (duration_length_callback): new function.
4967
4968         * lily/event.cc: remove file.
4969
4970         * lily/music-constructor.cc: remove file.
4971
4972         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
4973
4974         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
4975         (get_context_key): idem.
4976
4977         * scm/lily.scm (lambda): new option object-keys (default to #f)
4978
4979         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
4980
4981         * scm/output-gnome.scm: remove beam routine.
4982
4983         * scm/output-ps.scm (scm): idem.
4984
4985         * scm/output-svg.scm: remove beam.
4986
4987         * ps/music-drawing-routines.ps: remove draw_beam.
4988
4989         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
4990
4991         * flower/include/guile-compatibility.hh (scm_from_locale_string):
4992         add scm_from_locale_string compatibility glue. 
4993
4994 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
4995
4996         * scripts/lilypond-book.py: Prevent occuring error when
4997         'lilypond-book --output=foo/ somefile.ly' is executed multiple
4998         times and target file shoud be overwritten.  (Error message said
4999         'input file and output file is same'.)
5000
5001 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5002
5003         * input/regression/slur-extreme.ly,
5004         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
5005         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
5006         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
5007         "excentricity" to "eccentricity".
5008
5009         * Documentation/user/converters.itely: fix URL for Noteedit and
5010         Rosegarden.
5011
5012         * THANKS: added Yoshinobu Ishizaki.
5013
5014 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5015
5016         * scm/define-markup-commands.scm (justify-field): add. 
5017
5018         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
5019
5020 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5021
5022         * lily/lookup.cc (filled_box): express filled_box with
5023         round_filled_box
5024
5025         * scm/midi.scm (paper-book-write-midis): new function. Write all
5026         performances in numbered MIDI files.
5027
5028         * lily/performance-scheme.cc (LY_DEFINE): new file.
5029         (LY_DEFINE): new function ly:performance-write.
5030
5031         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
5032         new function.
5033         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
5034
5035         * scm/framework-*.scm: use port arguments throughout.
5036
5037         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
5038
5039         * lily/paper-outputter.cc (Paper_outputter): take port argument.
5040
5041         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
5042
5043         * scm/framework-texstr.scm (output-framework): 
5044
5045         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
5046
5047         * scm/output-lib.scm (tablature-stem-attachment-function):
5048         tablature stem attachment fix. 
5049
5050 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5051
5052         * lily/bezier.cc: hardcode binomial coefficients of order 3.
5053
5054         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
5055
5056         * scm/define-music-types.scm (music-descriptions): don't use
5057         Music_wrapper type.
5058
5059         * lily/paper-column.cc (print): print moment too.
5060
5061         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
5062         remove compatibility cruft.
5063
5064         * lily/parser.yy (score_body): \score can only begin with Music. 
5065
5066         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
5067         make-score. Take music argument only. Move parser interaction to
5068         Scheme.
5069
5070         * scm/lily-library.scm (scorify-music): new function.
5071
5072         * python/lilylib.py (datadir): remove 2.1 compat kludge.
5073         (datadir): remove resource import.
5074         (print_environment): remove get_bbox()
5075         (cp_to_dir): remove pre 1.5.2 compat glue.
5076
5077 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5078
5079         * lily/include/simple-spacer.hh (Module): idem.
5080
5081         * lily/include/spring.hh (struct Spring): store inverse
5082         strength. This prevents division by zero.
5083
5084         * VERSION: release 2.7.0
5085         
5086         * lily/include/music.hh (class Music): remove Music::duration_log()
5087
5088         * lily/stem-engraver.cc (make_stem): take duration log from event.
5089
5090         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
5091
5092 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5093
5094         * scm/lily.scm (ly:load): load autochange.scm
5095
5096         * Documentation/user/tutorial.itely (Running LilyPond for the
5097         first time): remove reference to DVI/TeX
5098
5099         * scm/define-markup-commands.scm (text): add \text markup command.
5100
5101         * configure.in (reloc_b): bump requirement to Python 2.2.
5102
5103         * lily/include/dots.hh (class Dots): make has_interface() static.
5104
5105         * python/convertrules.py (conv): add rule for ly:grob-default-font
5106
5107         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
5108         alphabetical order.
5109
5110         * input/regression/trill-spanner-pitched.ly: new file.
5111
5112         * lily/font-interface-scheme.cc (LY_DEFINE): function
5113         ly:grob-default-font (changed from get-default-font).
5114
5115         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
5116
5117         * lily/note-head.cc (internal_print): if style is not a symbol,
5118         set style to 'default. 
5119         (internal_print): no style suffix if glyph-name-procedure not
5120         set. Default to quarter head.
5121
5122         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
5123
5124         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
5125
5126         * ly/music-functions-init.ly: \pitchedTrill
5127
5128         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
5129
5130         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
5131
5132         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
5133
5134         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
5135
5136         * po/fr.po: update
5137
5138         * po/de.po: update.
5139
5140 2005-07-06  Graham Percival  <gperlist@shaw.ca>
5141
5142         * Documentation/user/changing-defaults.itely: add link
5143         to grob-iterface.
5144
5145         * Documentation/user/advanced-notation.itely: add material
5146         to Setting automatic beam behaviour.  Thanks, Joe!
5147
5148         * Documentation/user/lilypond.itely: change encoding to utf-8.
5149
5150 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5151
5152         * Documentation/user/advanced-notation.itely (Setting automatic
5153         beam behavior): Correct the documentation of
5154         revert-auto-beam-setting (backportme)
5155
5156 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5157
5158         * lily/ly-module.cc (ly_make_anonymous_module): define
5159         %module-public-interface of module. 
5160
5161         * lily/lily-parser.cc (print_smob): allow printing of parser smob
5162         without lexer.
5163
5164 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5165
5166         * input/regression/fret-diagrams.ly: stretch example.
5167
5168 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5169
5170         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
5171         Fodor).
5172
5173 2005-06-30  Graham Percival  <gperlist@shaw.ca>
5174
5175         * Documentation/topdocs/AUTHORS.texi: update personal web address.
5176
5177         * Documentation/user/examples.itely, lilypond-book.itely:
5178         change \RequirePackage to \usepackage.
5179
5180         * Documentation/user/global.itely: document copyright and tagline.
5181
5182 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5183
5184         * Documentation/user/basic-notation.itely (Transpose): remove link
5185         to nonexistent UntransposableMusic.
5186
5187         * scm/output-svg.scm: remove old definitions.
5188
5189         * scripts/lilypond-book.py (do_file): search for kpsewhich before
5190         invoking.
5191
5192         * python/lilylib.py (search_exe_path): new function.
5193
5194 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5195
5196         * python/lilylib.py (mkdir_p): remove setup_environment()
5197         (backportme)
5198
5199         * buildscripts/mutopia-index.py (headertext): trim text.
5200
5201         * Documentation/topdocs/NEWS.tely (Top): refresh.
5202
5203         * scm/define-markup-commands.scm (wordwrap-string): new function:
5204         split string in paras and words.
5205         (wordwrap-markups): new function.
5206         (wordwrap-stencils): new function. 
5207         (justify): use it.
5208         (wordwrap): use it.
5209         (wordwrap-string): use it
5210         (justify-string): use it.
5211
5212         * scm/lily-library.scm (regexp-split): new function.
5213
5214         * scm/define-markup-commands.scm: remove encoded-simple. 
5215         remove font-markup.
5216         (fontsize): remove old version  of fontsize.
5217         (wordwrap): new markup function. Wrap into paragraphs.
5218
5219         * VERSION: Branch lilypond_2_6
5220         (MINOR_VERSION): go to 2.7.0
5221
5222 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5223
5224         * po/zh_TW.po: update from translation project.
5225
5226 2005-06-28  Graham Percival  <gperlist@shaw.ca>
5227
5228         * scm/midi.scm: compile fix.
5229
5230 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5231
5232         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
5233         patch. Now, the tempfile module is loaded too, not only used.
5234
5235 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
5236
5237         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
5238         0.05 - 1.00 to 0.25 - 1.00
5239
5240         * scm/midi.scm: moved the default-instrument-equalizer procedure
5241         to just under the insturment-equalizer-alist it takes as an
5242         argument.
5243
5244 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5245
5246         * Documentation/user/advanced-notation.itely (Font selection):
5247         remove CMR note.
5248
5249         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
5250
5251 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5252
5253         * THANKS: Add UTF-8 marker.
5254
5255         * Documentation/user/point-and-click.itely (http): Update: use
5256         lilypond-invoke-editor.  Fix: instruct to use user.js.
5257
5258 2005-06-27  Graham Percival  <gperlist@shaw.ca>
5259
5260         * ly/titling-init.ly: implements printpagenumber, increases
5261         space between dedication and title (to avoid collisions with
5262         "g" and "q" in dedication), and nicer logic about copyright
5263         and instrument fields being printed on the first page.
5264         Thanks Vincent!
5265
5266         * Documentation/user/global.itely: document printpagenumber.
5267
5268 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5269
5270         * Documentation/topdocs/NEWS.tely: Update to 2.6.
5271
5272 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5273
5274         * THANKS: update to 2.6
5275
5276         * VERSION: 2.6.0 released.
5277
5278 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5279
5280         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
5281         rule, errorneously removed probably because of misleading comment.
5282
5283 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5284
5285         * python/lilylib.py (datadir): py2exe comments.
5286
5287         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
5288
5289         * configure.in (reloc_b): make fontconfig REQUIRED.
5290
5291 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
5292
5293         * po/fi.po: add latest translations.
5294
5295 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5296
5297         * ChangeLog: recode utf-8
5298
5299         * Documentation/pictures/lilypond.xpm (Module): edited photo as
5300         logo.
5301
5302         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
5303
5304         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
5305
5306         * python/convertrules.py (do_conversion): don't print program_name
5307         from within a module
5308
5309         * configure.in (reloc_b): bump fontforge requirement to 20050624.
5310
5311         * python/convertrules.py (conv): add 2.6.0 dummy rule.
5312
5313 2005-06-23  Graham Percival  <gperlist@shaw.ca>
5314
5315         * Documentation/user/lilypond-book.itely,
5316         Documentation/user/examples.itely: add \RequirePackage{graphics}.
5317
5318         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
5319         fixes baseline-skip.  Thanks Vincent!
5320
5321         * Documentation/user/advanced-notation.itely, global.itely:
5322         moved "Selecting font sizes" to global, since it deals with
5323         notation font size, not text fonts.
5324
5325 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5326
5327         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
5328         to fonts.
5329
5330 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5331
5332         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
5333         workaround since /dev/stdin doesn't work on Cygwin. Using a
5334         temporary file in the current directory since latex doesn't
5335         understand the path name to the default TMP in Cygwin (at least on
5336         win XP).
5337         
5338         * Documentation/user/global.itely (Creating titles): Correct
5339         misprint in example. Thanks to Rob Vlasaty.
5340
5341 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5342
5343         * VERSION (PATCH_LEVEL): release 2.5.32
5344
5345         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
5346         variable in lily module
5347
5348         * scm/framework-ps.scm (output-classic-framework): error message
5349         regarding the classic framework.
5350
5351         * Documentation/user/henle-flat-gray.png (Module): new file.
5352
5353         * Documentation/user/baer-flat-gray.png (Module): new file.
5354
5355         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
5356         whiteout for markups.
5357
5358         * buildscripts/substitute-encoding.py (note_glyph): include _ in
5359         regex too. This fixes change clef appearance in PDF. 
5360
5361         * ttftool/include/*: remove.
5362
5363         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
5364
5365         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
5366
5367         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
5368
5369         * ttftool/*: remove ttftool subdirectory.
5370
5371         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
5372
5373         * lily/ttf.cc (print_header): new file. Convert to type42, using
5374         FreeType to parse the TTF. 
5375
5376         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
5377         and post table may differ. Pass around post_nglyphs as well.
5378
5379 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5380
5381         * ly/music-functions-init.ly (musicMap): new music function
5382         musicMap. 
5383         
5384 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5385
5386         * make/mutopia-rules.make: anti-alias-factor = 2
5387
5388         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
5389         page switch.
5390
5391         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
5392         anti-alias-factor for lilypond-book runs.
5393
5394         * scm/ps-to-png.scm (scale-down-image): new function.
5395         (my-system): new function.
5396         (make-ps-images): blow up GS resolution by anti-alias-factor,
5397         scale down image by anti-alias-factor.  This improves appearance
5398         of bitmaps
5399         (make-ps-images): remove showpage. Fixes spurious empty png at
5400         end.
5401
5402         * scm/framework-ps.scm (write-preamble): downcase filename before
5403         string-matching. Should fix .TTF files (as opposed to ttf files)  
5404
5405         * Documentation/user/tutorial.itely (Running LilyPond for the
5406         first time): separate subsections for windows, macos and unix.  
5407
5408         * Documentation/user/invoking.itely (Updating files with
5409         convert-ly): add MacOS X note.
5410
5411 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5412
5413         * Documentation/user/introduction.itely (Engraving): don't include
5414         file optical-spacing, add directly.
5415
5416         * lily/paper-outputter.cc (file): open file in binary mode. This
5417         fixes OTF embedding on windows.
5418
5419 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5420
5421         * scm/framework-ps.scm (write-preamble): remove debugging output.
5422
5423         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
5424
5425         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
5426         outdir.
5427         (install-fc-cache): install font cache in installation directories.
5428
5429 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5430
5431         * scm/editor.scm (editor-command-template-alist): Use char iso
5432         column, except for Emacs.
5433         (get-editor-command): Substitute char too (Bertalan Fodor).
5434
5435 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5436
5437         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
5438         quoted ~s.  This should fix PNG output on Windows; single quotes
5439         are regular characters on Windows.
5440
5441 2005-06-16  Graham Percival  <gperlist@shaw.ca>
5442
5443         * Documentation/user/basic-notation.itely: include ChoirStaff
5444         in System start delimiters.
5445
5446         * Documentation/user/putting.itely: new doc section on
5447         fixing overlapping notation.
5448
5449 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5450
5451         * Documentation/user/global.itely (Paper size): \paper is in
5452         \book, not \score.
5453
5454         * make/mutopia-rules.make: -ddelete-intermediate-files
5455
5456         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
5457
5458 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5459
5460         * ChangeLog: Recode utf-8.
5461
5462         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
5463         datadir with .py modules.
5464
5465 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
5466
5467         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
5468
5469 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5470
5471         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
5472         
5473         * scm/framework-ps.scm (write-preamble): remove status check.
5474
5475         * Documentation/user/invoking.itely (Updating files with
5476         convert-ly): remove -o option.
5477
5478         * VERSION (PACKAGE_NAME): release 2.5.31
5479
5480         * scm/framework-ps.scm (write-preamble): use ly:system.
5481         (write-preamble): verbosity.
5482
5483         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
5484
5485         * python/convertrules.py: new file. Store conversion rules
5486         separately.
5487
5488 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5489
5490         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
5491
5492 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5493
5494         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
5495         \musicDisplay 
5496
5497         * Documentation/user/instrument-notation.itely (More stanzas): Add
5498         reference to StanzaNumber.
5499
5500 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5501
5502         * THANKS: separate section for website translators.
5503
5504 2005-06-14  Graham Percival  <gperlist@shaw.ca>
5505
5506         * Documentation/topdocs/INSTALL.texi: update vim info;
5507         thanks Simon Bailey!
5508
5509         * Documentation/user/advanced-notation.itely: included
5510         color names.
5511
5512         * Documentation/user/advanced-notation.itely,
5513         Documentation/usr/notation-appendices.itely: moved
5514         color names into an appendix.
5515
5516 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5517         
5518         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
5519
5520         * scm/lily.scm (lambda): initialize program options from here.
5521
5522         * scm/framework-*.scm: add header info.
5523
5524         * lily/main.cc (parse_argv): only set output format to pdf if no
5525         other format specified.
5526
5527         * scm/backend-library.scm (postprocess-output): process
5528         'delete-intermediate-files after running convert-to-*. This fixes
5529         PNG generation when 'delete-intermediate-files is set.
5530         
5531 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5532
5533         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
5534         links on website. 
5535
5536 2005-06-13  Graham Percival  <gperlist@shaw.ca>
5537
5538         * Documentation/topdocs/INSTALL.texi,
5539         Documentation/user/lilypond-book.itely: typos.
5540
5541 2005-06-12  Pal Benko  <benkop@freestart.hu>
5542
5543         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
5544         added between program name and switch; -b changed to -f not
5545         to generate pdf
5546
5547 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5548
5549         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
5550         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
5551
5552         * input/sakura-sakura.ly: add \midi.
5553
5554         * buildscripts/mutopia-index.py (find): use /usr/bin/find
5555         iso. python find. 
5556
5557         * ttftool/test.c (main): cosmetics.
5558
5559         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
5560
5561         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
5562         create a ttf2ps binary.
5563
5564         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
5565
5566         * scm/backend-library.scm (postscript->png): set rename-page-1 to
5567         true.
5568
5569 2005-06-11  Graham Percival <gperlist@shaw.ca>
5570
5571         * Documentation/user/lilypond-book.itely: add warning about
5572         the font warnings in dvips.
5573
5574 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5575
5576         * THANKS: typo
5577
5578         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
5579
5580         * GNUmakefile.in: remove links for .map, .enc
5581         don't fail if out/ doesn't exist yet.
5582
5583 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5584
5585         * ttftool/util.c (surely_read): return nbytes
5586
5587         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
5588
5589         * VERSION (PACKAGE_NAME): release 2.5.30
5590
5591         * flower/string-convert.cc (precision_string): >? fix.
5592
5593         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
5594         (make-ps-images): add verbose -q too.
5595
5596         * lily/default-actions.cc (Module): new file. default
5597         {book,score}-print functions.
5598
5599         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
5600         pass results via parseStringResult, lookup via ly:parser-lookup.  
5601
5602         * lily/lily-parser.cc (Lily_parser): only clone lexer in
5603         constructors.
5604         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
5605         (parse_string): idem.
5606
5607         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
5608
5609         * lily/main.cc (main_with_guile): copy be_verbose_global into
5610         ly_set_option()
5611
5612 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5613
5614         * scm/backend-library.scm (postscript->pdf):
5615         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
5616         verbose mode.  Search for several names of gs executable.
5617
5618 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5619
5620         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
5621         directly. This fixes a massive memory leak, provided you use CVS
5622         GUILE.
5623
5624 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
5625
5626         * ly/property-init.ly: Added tieDashed.
5627
5628         * THANKS: Added some bughunters for 2.5.
5629
5630 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5631
5632         * lily/program-option.cc: add debug-gc option.
5633
5634         * lily/include/lily-guile-macros.hh: don't protect exported module
5635         objects.
5636
5637         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
5638
5639         * scm/backend-library.scm (postscript->pdf): use
5640         delete-intermediate-files iso. running-from-gui? 
5641
5642         * ttftool/util.c (surely_read): robustness. Allow read() to return
5643         less bytes than requested, as per posix standards.
5644
5645         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
5646         program option.
5647
5648         * ttftool/include/ttftool.h ("C"): rename verbosity to
5649         ttf_verbosity. Add to public interface.
5650
5651         * scm/music-functions.scm (unfold-repeats): remove debugging display.
5652
5653         * lily/program-option.cc: rename from scm-option.cc
5654
5655         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
5656         (get_help_string): Print pretty help string.
5657
5658         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
5659         to snippet preamble.
5660
5661         * lily/scm-option.cc: remove command-line-settings option. Fold
5662         all command-line options plus default settings in a generic
5663         interface. 
5664
5665         * flower/getopt-long.cc (table_string): indent 2nd lines of help
5666         texts too.
5667
5668 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5669
5670         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
5671         or EXT_ components non-empty.
5672
5673 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5674
5675         * scm/lily.scm (running-from-gui?): Export.
5676
5677         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
5678         output in .ly source directory.
5679
5680 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5681
5682         * ttftool/util.c (surely_lseek): more verbosity.
5683
5684         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
5685         compile.
5686
5687         * lily/parser.yy (Repeated_music): remove >? 
5688
5689         * scm/backend-library.scm (postscript->pdf): Support for
5690         -dgs-font-load=1
5691
5692         * scm/framework-ps.scm (write-preamble): make font loading
5693         switchable to GS via --define-default gs-font-load=1
5694
5695 2005-06-09  Graham Percival  <gperlist@shaw.ca>
5696
5697         * Documentation/user/global.itely: added \layout docs.
5698
5699 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5700
5701         * lily/lily-parser-scheme.cc: add unistd.h
5702
5703 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5704
5705         * scm/editor.scm: add char argument.
5706
5707         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
5708
5709         * ttftool/util.c (syserror): use errno for better error reporting.
5710
5711         * lily/source-file.cc (get_counts): new function. Calc column,
5712         line and char count in one go.
5713
5714         * lily/binary-source-file.cc (quote_input): rename to quote_input
5715
5716         * lily/input.cc (set): new function.
5717
5718 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5719
5720         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
5721         directory part of file name to search directory.
5722
5723         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
5724         search path and chdir to DIR if --outname=DIR used.
5725
5726         * lily/main.cc (prepend_env_path): Bugfix: Check directory
5727         existence before appending original path.
5728
5729 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5730
5731         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
5732         file" massage.
5733
5734         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
5735         texinfo.tex is always used.
5736         
5737 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5738
5739         * flower/include/axis.hh: rename from axes.hh
5740
5741         * lily/include/text-interface.hh (Module): rename from text-item.hh
5742
5743         * VERSION (PATCH_LEVEL): release 2.5.29
5744
5745         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
5746
5747         * scm/framework-ps.scm (font-file-as-ps-string): new function.
5748         (handle-macfont): new function. Call fondu for Native mac fonts.
5749
5750         * scm/define-markup-commands.scm (fill-line): handle text-widths =
5751         '() case.
5752
5753 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5754
5755         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
5756         multi-page.  Fix .eps regular expression.
5757
5758 2005-06-07  Graham Percival  <gperlist@shaw.ca>
5759
5760         * Documentation/user/putting.itely: add info on modifying templates.
5761
5762         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
5763         misc small changes.
5764
5765 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5766
5767         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
5768
5769         * scripts/lilypond-ps2png.scm
5770
5771         * VERSION (PACKAGE_NAME): release 2.5.28
5772
5773 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5774
5775         * lily/main.cc (prepend_env_path): Do not append /, that does not
5776         work.  Localedir lives in datadir, not in prefix.
5777
5778         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
5779         hack for windows.
5780
5781         * flower/include/file-cookie.hh: Compile fix.
5782
5783 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5784
5785         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
5786
5787         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
5788         system primitives.
5789         (gulp-port): using read-string!/partial. We don't want to read an
5790         entire PS file  (GUILE 1.6 limits strings to 16M) 
5791
5792         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
5793         properties. Add font-interface. 
5794
5795         * scm/define-grob-properties.scm (all-user-grob-properties):
5796         remove old bracket properties.
5797
5798         * scm/x11-color.scm: reformat. 
5799
5800         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
5801         LedgerLineSpanner if new StaffSymbol is found. 
5802
5803         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
5804         staff-symbol for finishing staff. 
5805
5806         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
5807
5808         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
5809         change black to currentColor everywhere. This fixes color support
5810         in SVG.
5811
5812 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
5813
5814         * input/regression/fret-diagrams.ly: new file to test fret diagram
5815         capability
5816
5817         * scm/output-tex.scm: remove white-dot and white-text
5818
5819         * scm/output-ps.scm: remove white-dot and white-text
5820
5821         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
5822         using ly:stencil-in-color instead
5823         (draw-dots) : remove call to white-dot
5824
5825 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5826
5827         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
5828         support.
5829
5830         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
5831
5832         * flower/include/file-cookie.hh: new file. lily_cookie extension 
5833
5834         * flower/file-cookie.cc: new file. lily_cookie extension.
5835         
5836 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5837
5838         * scm/editor.scm (editor-command-template-alist): Add syn
5839         editor (Jaap [de Vos]).
5840
5841 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5842
5843         * scripts/lilypond-ps2png.scm:
5844         * scm/ps-to-png.scm: New file.
5845
5846         * scm/backend-library.scm (postscript->png): Use it.
5847
5848         * scripts/lilypond-ps-to-png.py: Remove file.
5849
5850         * python/lilylib.py (get_bbox, make_ps_images): Remove.
5851
5852 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5853
5854         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
5855
5856         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
5857         start on grace moment. Fixes autobeam-grace.ly.
5858
5859         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
5860         process anything unless we're at the end of a pending beam. Fixes
5861         syncopated 8ths beamed across a beat.
5862
5863 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5864
5865         * scm/editor.scm (editor-command-template-alist): Start emacs if
5866         emacslient fails.
5867
5868         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
5869
5870         * flower/file-path.cc (is_file, is_dir): Export.
5871
5872         * lily/main.cc (prepend_env_path, set_env_file): Use them.
5873
5874 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5875
5876         * lily/easy-notation.cc: Added include cctype to correct
5877         compilation error.
5878
5879 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5880
5881         * scm/backend-library.scm (postscript->pdf): set resolution to
5882         1200, so bitmap fonts aren't that ugly. 
5883
5884         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
5885
5886         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
5887         parent if we have a notehead. Fixes incorrect offsets when
5888         Paper_column is very wide in the X direction.
5889
5890         * input/regression/font-family-override.ly (Module): new file.
5891
5892         * scm/font.scm (make-pango-font-tree): new function.
5893
5894         * lily/beam.cc (before_line_breaking): remove warning about less
5895         than 2 visible stems. We still get a warning when there is only
5896         one stem.
5897
5898 2005-06-01  Werner Lemberg  <wl@gnu.org>
5899
5900         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
5901         correctly.
5902
5903 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5904
5905         * lily/slur-scoring.cc (generate_avoid_offsets): new
5906         function. Generate avoid offsets once per slur.
5907
5908         * lily/slur.cc (add_extra_encompass): add dependency to
5909         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
5910
5911         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
5912         too. Fixes inf error with added bass notes.
5913
5914         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
5915         argument anymore.
5916
5917         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
5918
5919         * input/tutorial/lbook-latex-test.tex: add line length test.
5920
5921         * scripts/lilypond-book.py (set_default_options): new
5922         function. Call this before dissecting snippets, so linewidth
5923         settings reach the snippets.
5924
5925 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5926
5927         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
5928
5929 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5930
5931         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
5932
5933 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5934
5935         * stepmake/aclocal.m4: More autopackage friendliness.
5936
5937 2005-05-31  Graham Percival  <gperlist@shaw.ca>
5938
5939         * Documentation/index.html.in: remove link to LSR.
5940
5941         * Documentation/user/global.itely: remove duplicate
5942         "dedication" \header{} section.
5943
5944 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5945
5946         * VERSION (PACKAGE_NAME): release 2.5.27.
5947
5948         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
5949         too. Plugs memory leak.
5950
5951         * make/lilypond.fedora.spec.in (Group): remove
5952         lilypond-pdfpc-helper.
5953
5954         * scripts/GNUmakefile (SEXECUTABLES): remove
5955         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
5956
5957         * scm/font.scm (make-century-schoolbook-tree): add Mono as
5958         'typewriter family.
5959
5960         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
5961         memory leak.
5962
5963         * lily/parser.yy (score_body): don't clone Score, that's done in
5964         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
5965
5966         * lily/score-engraver.cc (derived_mark): new function.
5967         (initialize): unprotect Paper_score. This fixes a memory leak.
5968
5969         * lily/score-performer.cc (derived_mark): new function.
5970
5971         * lily/score-translator.cc (get_output): use SCM for get_output() call.
5972
5973         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
5974         spurious warning.
5975
5976         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
5977         serif.
5978
5979 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5980
5981         * configure.in (reloc_b): Add --enable-relocation.
5982
5983 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5984
5985         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
5986
5987         * input/regression/alignment-order.ly: add Staff example.
5988
5989 2005-05-31  John Mandereau   <john.mandereau@free.fr>
5990
5991         * po/fr.po: update.
5992
5993 2005-05-31  Graham Percival  <gperlist@shaw.ca>
5994
5995         * Documentation/index.html.in: add link to LSR.
5996
5997 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5998
5999         * scm/define-stencil-commands.scm (Module): new file. Register all
6000         allowed stencil expression heads in a central place.
6001
6002         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
6003         ly:make-stencil
6004
6005         * lily/stencil-expression.cc (all_stencil_heads): registering
6006         stencil expressions.
6007
6008         * lily/stencil-interpret.cc: new file. Stencil expression
6009         interpreting.
6010
6011         * input/xiao-haizi-guai-guai.ly: move file back.
6012
6013 2005-05-30  Graham Percival  <gperlist@shaw.ca>
6014
6015         * Documentation/user/advanced.itely, converters.itely,
6016         instrument-notation.itely, lilypond-book.itely: misc small
6017         changes.
6018
6019 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6020
6021         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
6022
6023         * make/lilypond.fedora.spec.in: Fix source url.
6024
6025         * cygwin: Update from mingw patches.
6026
6027         * scm/editor.scm (editor-command-template-alist): Use jedit
6028         -reuseview (Bertalan), add uedit (Patrick Huberts).
6029
6030         * input/xiao-hai-zi-guai-guai.ly: Rename from
6031         xiao-haizi-guai-guai.ly.
6032
6033         * input/*: Reindent, do not use TAB.
6034
6035         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
6036         white background.
6037
6038 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6039
6040         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
6041         numerical overflow error.
6042
6043 2005-05-29 Laura Conrad <lconrad@laymusic.org>
6044         
6045         * abc2ly.py: fix to syntax error in multi-part output.
6046
6047 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6048
6049         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
6050         with disappearing span bars when alignAboveContext is active
6051
6052         * lily/property-iterator.cc (check_grob): use is-grob?
6053         object-property. Fixes crash-key-sig-font-size.ly. 
6054
6055 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6056
6057         * lily/bar-line.cc (print): don't round barlines; this produces
6058         odd aliasing effects in Acroread.
6059
6060         * lily/timing-engraver.cc (process_music): robustness fix.
6061
6062         * lily/context-def.cc (filter_engravers): bugfix.
6063
6064 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6065
6066         * lily/lilypond.rc.in: Add ly-icon.
6067
6068         * lily/GNUmakefile: 
6069         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
6070         rules.
6071
6072 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6073
6074         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
6075
6076         * ps/music-drawing-routines.ps: 
6077
6078         * scm/output-ps.scm: remove draw ez_ball.
6079
6080         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6081         EasyNotation context definition.
6082
6083         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
6084         Text_interface and color for making easy note heads.
6085
6086         * lily/stencil.cc (with_color): new function.
6087
6088         * ps/music-drawing-routines.ps: remove draw_zigzag_line
6089
6090         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
6091         output routine. Zigzag now works in SVG too.
6092
6093         * scm/output-tex.scm (filledbox): idem.
6094
6095         * scm/output-svg.scm (filledbox): idem.
6096
6097         * scm/output-ps.scm (lily-def): remove horizontal-line. 
6098
6099         * lily/lookup.cc (horizontal_line): use draw-line. 
6100
6101         * lily/system-start-delimiter.cc: remove old staff bracket code.
6102
6103         * mf/feta-haak.mf: further tweaks.
6104
6105         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
6106
6107         * mf/feta-generic.mf: include feta-haak.
6108
6109         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
6110
6111         * scm/framework-ps.scm (write-preamble): only load fonts if their
6112         filename is a string. 
6113
6114 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6115
6116         * scm/output-svg.scm (circle): support circle.
6117         (bracket): stub for bracket.
6118
6119         * scripts/lilypond-book.py (main): make sure --psfonts warning is
6120         correct.
6121
6122 2005-05-26  Graham Percival  <gperlist@shaw.ca>
6123
6124         * Documentation/user/lilypond.tely, advanced-notation.itely,
6125         basic-notation.itely, instrument-notation.itely, global.itely,
6126         introduction.itely, tutorial.itely: rearranging, editing,
6127         clean-up.
6128
6129         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
6130         for compiling on FreeBSD.
6131
6132 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6133
6134         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
6135         otf files.
6136
6137         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
6138         bugfixes.
6139
6140         * VERSION: 2.5.26 released.
6141
6142         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
6143
6144 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
6145
6146         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
6147         if printpagenumber is false.
6148
6149 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6150
6151         * lily/font-config.cc (init_fontconfig): comment out FontConfig
6152         cache warning.
6153
6154         * lily/tie.cc (print): support dotted ties.
6155         
6156 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6157
6158         * scm/define-grobs.scm (all-grob-descriptions): switch off
6159         debugging
6160         (all-grob-descriptions): Arpeggio has Y-extent.
6161
6162         * scm/define-music-properties.scm (all-music-properties): document
6163         length-callback and start-callback as "read-only".
6164
6165         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
6166         length-callback after creation. 
6167
6168         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
6169         compressmusic -> compressMusic.
6170
6171         * ly/music-functions-init.ly (oldaddlyrics): idem.
6172
6173         * lily/parser.yy: NewLyricCombineMusic ->
6174         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
6175
6176 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
6177
6178         * ly/Welcome_to_LilyPond.ly: typo.
6179
6180 2005-05-24  Graham Percival  <gperlist@shaw.ca>
6181
6182         * Documentation/user/lilypond.tely: move changing-defaults to be
6183         before global issues.
6184
6185         * Documentation/user/basic-notation.itely: move Transpose section
6186         here from advanced/Other.
6187
6188         * Documentation/user/changing-defaults.itely,
6189         advanced-notation.itely: move Fonts to advanced, edit.
6190
6191 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6192
6193         * lily/parser.yy (bare_int): remove rule.  From now on, we require
6194         # before negative integers.
6195
6196 2005-05-23  Graham Percival  <gperlist@shaw.ca>
6197
6198         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
6199
6200         * Documentation/user/lilypond.tely: change Unified index to
6201         LilyPond index.
6202
6203         * Documentation/user/advanced-notation.itely,
6204         instrument-notation.itely: editing.
6205
6206 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6207
6208         * scm/lily.scm (lilypond-all): Bugfix: return failed.
6209
6210         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
6211
6212 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6213
6214         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
6215         ly:port-move.  Needs to be stderr-specific on mingw.
6216         Run fixcc.
6217
6218 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6219
6220         * lily/general-scheme.cc (ly:port-move): Remove.
6221
6222         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
6223         windows.
6224
6225         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
6226         variables.  This eliminates the need for a gs.bat wrapper, which
6227         opens a console.
6228
6229         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
6230         * scm/lily.scm (running-from-gui?): 
6231         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
6232         artifact of not compiling with -mwindows.
6233
6234         * scm/editor.scm: Define PLATFORM.
6235
6236 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6237
6238         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
6239         can start to cut & paste lilypond-book fragments.  
6240
6241         * scm/define-music-types.scm (music-descriptions): remove
6242         UntransposableMusic
6243
6244 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6245
6246         * scm/output-ps.scm (glyph-string): remove / before CIDs.
6247
6248 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6249
6250         * Documentation/user/instrument-notation.itely: remove *Engraver.
6251
6252         * Documentation/user/advanced-notation.itely: edit, rearrange.
6253
6254 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6255
6256         * scm/output-ps.scm (glyph-string): take cid? argument. Use
6257         findresource iso. findfont for CID CFF fonts.
6258
6259         * VERSION (PACKAGE_NAME): release 2.5.25
6260
6261         * ly/Welcome_to_LilyPond.ly: add  \version
6262
6263 2005-05-20  Graham Percival  <gperlist@shaw.ca>
6264
6265         * Documentation/user/programming-interface.itely: move
6266         \displayMusic into its own section.
6267
6268         * Documentation/user/basic-notation.itely: finish editing.
6269
6270 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6271
6272         * flower/file-path.cc (find): don't throw away file_name.dir, but
6273         append to it. Fixes \include with directories.
6274
6275         * flower/include/file-path.hh (class File_path): don't derive from
6276         Array<String>.
6277
6278         * flower/include/file-name.hh (class File_name): remove to_str0()
6279
6280         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
6281         Hara_kiri_engraver in separate file.
6282
6283         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
6284         translation went wrong. Fixes vertically translated slurs.
6285
6286 2005-05-19  Graham Percival  <gperlist@shaw.ca>
6287
6288         * Documentation/user/basic-notaton.itely: editing.
6289
6290 2005-05-18  Graham Percival  <gperlist@shaw.ca>
6291
6292         * Documentation/user/macros.itexi, basic-notation.itely:
6293         add @commonprop (commonly used properties) macro.
6294
6295 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6296
6297         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
6298
6299         * scripts/lilypond-book.py (invokes_lilypond): new function
6300         (main): only run fontextract if invokes_lilypond() is true.
6301
6302         * lily/function-documentation.cc (ly_add_function_documentation):
6303         duh, use !=
6304
6305         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
6306
6307         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
6308
6309         * scm/lily.scm (running-from-gui?): lowercase Darwin.
6310
6311         * lily/function-documentation.cc (ly_add_function_documentation):
6312         use scm_hash_table_p() for checking.
6313
6314 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6315
6316         * Documentation/user/advanced-notation.itely (Text scripts):
6317         Change nonexisting @internalsref{Text markup} to @ref{Text
6318         markup}.  Change @internalsref{Text script} to
6319         @internalsref{TextScript}.
6320
6321         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
6322
6323 2005-05-17  Graham Percival  <gperlist@shaw.ca>
6324
6325         * Documentation/user/tutorial.itely, basic-notation.itely,
6326         changing-defaults.itely: remove duplicate cindex entries
6327         that appear on the same page.
6328
6329         * scm/define-grobs.scm: change default padding for TextSpanner.
6330
6331         * Documentation/topdocs/AUTHORS.texi: update email address.
6332
6333         * Documentation/user/global.itely: add info about \include.
6334
6335 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6336
6337         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
6338         when running-from-gui.
6339
6340         * scm/editor.scm (get-editor): Add platform defaults.
6341
6342         * scm/backend-library.scm (postscript->pdf): Typo.
6343
6344 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6345
6346         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
6347
6348         * lily/font-config.cc (init_fontconfig): add warning about cache.
6349
6350 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6351
6352         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
6353
6354 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6355
6356         * lily/horizontal-bracket.cc (print): Take care of the direction
6357         property so brackets above the stave point downwards. 
6358
6359         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
6360         for HorizontalBracket so it doesn't end up within the stave.
6361
6362 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6363
6364         * lily/GNUmakefile (default): Typo.
6365
6366         * scm/lily.scm (PLATFORM): Export.
6367
6368         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
6369         load-font-via-GS, ttftool or fopencookie is broken on windows.
6370         
6371         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
6372         -dSAFER, that is broken on windows.
6373
6374 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6375
6376         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
6377         for FlexLexer.h
6378
6379         * scripts/lilypond-invoke-editor.scm: remove stray -
6380
6381 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6382
6383         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
6384         Fixes deprecation warning.
6385
6386         * flower/include/string.icc (to_string): Only inline if
6387         -DSTRING_UTILS_INLINED.
6388
6389         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
6390         name.  Remove windows comment.
6391
6392         * scm/editor.scm (slashify): New function.
6393         (get-editor-command): Use it.
6394         (get-command-template): Do not alter editor command if
6395         environment value includes `%(file)s' magic.
6396
6397         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
6398         (dissect-uri): Use it.
6399         (unquote-uri): Bugfix.
6400
6401 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6402
6403         * scm/framework-ps.scm (write-preamble): add TTF rule.
6404
6405         * Documentation/topdocs/README.texi (Top): remove note about
6406         xdelta.
6407
6408         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
6409         requirement.
6410
6411         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
6412         function. Figure out where FlexLexer.h lives
6413
6414         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
6415         
6416 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6417
6418         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
6419         with Windows root in file name.
6420
6421         * scm/backend-library.scm (ly:system): Only redirect output (using
6422         system and shell, ugh) if /dev/null is writable.
6423
6424         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
6425         windows icon.
6426
6427         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
6428         on Mingw.
6429
6430         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
6431         click.
6432
6433         * flower/file-path.cc (is_dir, is_file): New function.  Actually
6434         use result of stat when available.
6435
6436         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
6437         absolute file name and root.
6438
6439         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
6440
6441         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
6442
6443         * flower/file-name.cc (slashify): Bugfix, do substitute if no
6444         slashes in file name.
6445
6446 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6447
6448         * Documentation/user/preface.itely (Preface): Run
6449         texinfo-all-menus-update.
6450
6451         * scm/editor.scm (get-editor-command): Bugfix: allow full
6452         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
6453
6454         * Documentation/pictures/lilypond-48.xpm: New file.
6455
6456         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
6457
6458         * ly/Welcome_to_LilyPond.ly: New file.
6459
6460         * lily/main.cc (main): Only identify if we have a terminal.
6461
6462         * scm/backend-library.scm (postscript->png)
6463         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
6464         non-/bin/sh).
6465
6466 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
6467
6468         * Documentation/topdocs/AUTHORS.texi: polish, update.
6469
6470 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6471
6472         * Documentation/user/preface.itely (Notes for version 2.6): new
6473         notes for 2.6
6474
6475         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
6476         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
6477         is not fully contained" warnings.
6478
6479         * lily/slur-scoring.cc (get_bound_info): remove warning.
6480
6481         * lily/staff-symbol-engraver.cc (process_music): start initial
6482         spanner in process_music(). This fixes overrides of StaffSymbol
6483         properties.
6484
6485         * scm/framework-pdf.scm (Module): remove.
6486
6487         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
6488
6489         * lily/ambitus-engraver.cc: formatting cleanups.
6490
6491         * mf/feta-solfa.mf (Module): remove.
6492
6493         * ChangeLog: more details about contributions.
6494
6495 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6496
6497         * lily/align-interface.cc (align_elements_to_extents): warn if
6498         called too early. Fixes: disappearing-staff-lines.ly
6499
6500         * VERSION (PACKAGE_NAME): release 2.5.24
6501
6502 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6503
6504         * stepmake/aclocal.m4: Typo.
6505
6506         * flower/string.cc (substitute): Take two strings or two
6507         characters.  Update callers.
6508
6509 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6510
6511         * flower/file-name.cc (File_name): Slashify.
6512
6513         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
6514
6515         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
6516
6517         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
6518
6519         * configure.in (gui_b): Use it.
6520
6521         * lily/lilypond.rc.in: New file.
6522
6523         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
6524
6525 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6526
6527         * Documentation/user/advanced-notation.itely: edit of Text
6528         section; clarify text scripts vs. text markup.
6529
6530 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6531
6532         * lily/multi-measure-rest-engraver.cc
6533         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
6534         separation items on start. Fixes mm rests in start of score.
6535
6536         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
6537         don't access StaffSymbol if not there.
6538         Fixes: crash-staff-symbol-engraver.ly.
6539
6540         * lily/instrument-name-engraver.cc (class
6541         Instrument_name_engraver): data member first_. Create
6542         InstrumentName on start. 
6543
6544 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6545
6546         * Documentation/user/instrument-notation.itely: add guitar
6547         position.
6548
6549         * Documentation/user/introduction.itely,
6550         Documentation/user/lilypond.tely,
6551         Documentation/user/tutorial.itely: begin pruning
6552         unused (duplicated) cindex entries and misc cleanup.
6553
6554 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6555
6556         * input/test/volta-chord-names.ly: Bring the explanation up to
6557         date.
6558
6559 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6560
6561         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
6562         Specify `@documentencoding utf-8' for html, ignore warnings.
6563
6564 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
6565
6566         * THANKS: Added bughunters.
6567
6568 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6569
6570         * lily/main.cc: update help string for `lilypond -H'.
6571
6572         * po/fi.po: update.
6573         
6574 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6575
6576         * Documentation/user/advanced-notation.itely: minor fixes.
6577
6578 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6579
6580         * scm/editor.scm: New module.
6581
6582         * scm/lily.scm (gui-main): Use it.
6583
6584         * scm/framework-gnome.scm (spawn-editor): Use it.
6585
6586         * scripts/lilypond-invoke-editor.scm: Use it in new script.
6587
6588 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6589
6590         * scm/framework-ps.scm (load-font-via-GS):  new function.
6591
6592         * lily/pango-font.cc (pango_item_string_stencil): add support for
6593         CID keyed font.
6594
6595         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
6596
6597 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6598
6599         * Documentation/user/basic-notation.itely: add @ref.
6600
6601         * Documentation/user/advanced-notation.itely: add example
6602         of 5/8 beaming.
6603
6604 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6605
6606         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
6607
6608         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
6609         going through ps2pdf wrappers.
6610
6611 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
6612
6613         * Documentation/user/instrument-notation.itely: petrucci note
6614         heads: updated docu
6615
6616         * input/regression/note-head-style.ly: updated regression test;
6617         indentation fixes
6618
6619         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
6620         heads as default
6621
6622         * mf/parmesan-heads.mf: minor editing; use musicological names
6623         (rather than optical description) as note head names
6624
6625         * scm/output-lib.scm: complete petrucci heads
6626
6627 2005-05-09  Pal Benko  <benkop@freestart.hu>
6628
6629         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
6630         heads, but bigger)
6631
6632 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6633
6634         * lily/main.cc (main_with_guile): Remove no files check.
6635
6636         * lily/main.cc (ly:usage): Export to Scheme.
6637
6638         * scm/lily.scm (no-files-handler): New function.
6639
6640         * scm/lily.scm (lilypond-main): Use it.
6641
6642         * configure.in (gui_b): Add mbrtowc checking.
6643         Resurrect [utf8/]wchar.h checking.
6644
6645 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6646
6647         * Documentation/user/advanced-notation.itely (Metronome marks):
6648         Add link to the program reference for MetronomeMark
6649
6650         * Documentation/user/lilypond-book.itely (An example of a
6651         musicological document): Correct the example using psfonts 
6652
6653 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
6654
6655         * po/fi.po: update after a lesson how to update entries against
6656         source.
6657         
6658         * po/TODO: document the lesson.
6659
6660 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6661
6662         * configure.in (gui_b): remove wcrtomb checking.
6663
6664         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
6665         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
6666
6667 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6668
6669         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
6670         keep Scheme expressions and strings unmodified when doing the
6671         conversion to postfix notation for slurs and beams. Should
6672         hopefully solve most related conversion problems. 
6673
6674         * Documentation/user/lilypond-book.itely : Clarify and correct how
6675         to call dvips with -h psfonts.
6676
6677 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6678
6679         * Documentation/user/instrument-notation.itely (Entering lyrics):
6680         Typo.  Fixes build.
6681
6682 2005-05-09  Graham Percival  <gperlist@shaw.ca>
6683
6684         * Documentation/user/lilypond-book.itely: document PSFONTS file.
6685
6686         * Documentation/user/lilypond.tely, lilypond-book.itely,
6687         tutorial.itely: change references to 2.5.x to 2.6.x.
6688
6689         * Documentation/user/instrument-notation.itely: clarified \addlyrics
6690         vs \lyricmode.
6691
6692         * Documentation/user/invoking.itely: remove old info about
6693         lilypond-profile.
6694
6695         * Documentation/topdocs/INSTALL.texi: remove old info about
6696         lilypond-profile, add warning about needing international fonts
6697         to build docs.
6698
6699 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6700
6701         * lily/include/grob-info.hh (class Grob_info): make data member
6702         private. Changes throughout.
6703
6704         * input/regression/alignment-order.ly: new file. 
6705
6706         * lily/vertical-align-engraver.cc (acknowledge_grob): read
6707         alignAboveContext and alignBelowContext
6708
6709 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6710
6711         * lily/pfb.cc (LY_DEFINE): add cast.
6712
6713         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
6714         matches .otf
6715         (write-preamble): warn about unknown fonts.
6716
6717         * lily/pfb.cc (Module): new function ly:otf->cff
6718
6719         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
6720         (get_otf_table): new function.
6721
6722 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6723
6724         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
6725         iso. ps2png.
6726
6727 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
6728
6729         * po/fi.po: apply second round of update.
6730
6731 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6732
6733         * scm/x11-color.scm (make-x11-color-handler): don't use
6734         #\sp. Apparently doesn't work on all platforms. 
6735
6736 2005-05-06  Graham Percival  <gperlist@shaw.ca>
6737
6738         * Documentation/user/advanced-notation.itely, putting.itely,
6739         tutorial.itely, global.itely, introduction.itely: really minor fixes.
6740
6741 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6742
6743         * VERSION (PACKAGE_NAME): release 2.5.23
6744
6745 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6746
6747         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
6748         convert to utf-8.
6749
6750         * THANKS: Add translators for this release, convert to utf-8.
6751
6752         * mf/GNUmakefile (MFTRACE_FLAGS):
6753         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
6754         outdir as option (WAS: hardcoded).
6755
6756 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6757
6758         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
6759         finished_span_
6760
6761         * THANKS: add Hans Forbrich.
6762
6763         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6764
6765         * Documentation/user/basic-notation.itely (Staff symbol): document
6766         start/stop staff. Reference to ossia.ly
6767
6768         * input/test/ossia.ly: new example using stop and startStaff.
6769
6770         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
6771         in other words, don't create "|" barline at start of the score.
6772         (start_translation_timestep): don't set whichBar for start of score.
6773
6774         * input/regression/staff-halfway.ly: use new functionality.
6775
6776         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
6777         start and stop staff based on events.
6778
6779         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
6780
6781         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
6782
6783 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6784
6785         * Documentation/user/programming-interface.itely (How markups work
6786         internally ): remove \encoding reference.
6787
6788 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6789
6790         * scripts/convert-ly.py: Attempt to do a smarter update of 
6791         text markups from versions < 1.9.0 with arbitrary nesting.
6792
6793 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6794
6795         * po/fi.po: convert to utf-8, and update.
6796
6797 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6798
6799         * make/lilypond.suse.spec.in: update from suse 2.4 package.
6800
6801         * lily/*.cc: more <? >? to min/max changes
6802
6803         * lily/include/interpretation-context-handle.hh: rename
6804         Interpretation_context_handle to Context_handle.
6805
6806 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6807
6808         * input/regression/GNUmakefile (local_delete): use `find` together 
6809         with `xargs` to avoid too long argument-lists in cmd line.
6810
6811 2005-05-04  Graham Percival  <gperlist@shaw.ca>
6812
6813         * Documentation/user/introduction.itely: updates "About this manual".
6814
6815         * Documentation/user/advanced-notation.itely,
6816         invoking.itely: minor fixes.
6817
6818 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6819
6820         * COPYING: add font exception. Update FSF address. 
6821
6822         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
6823         should be taken without child context.
6824
6825         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
6826
6827         * scm/define-markup-commands.scm (triangle): new command, as
6828         robust replacement for unicode Delta/Triangle.
6829
6830 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6831
6832         * ps/music-drawing-routines.ps: add fillp argument.
6833
6834         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
6835
6836         * lily/font-config.cc (init_fontconfig): don't add cff/
6837
6838         * VERSION (PACKAGE_NAME): release 2.5.22
6839
6840         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
6841
6842         * lily/grace-engraver.cc (consider_change_grace_settings): use
6843         is_alias(). Fixes problem with CueVoice grace notes. 
6844
6845         * lily/simultaneous-music-iterator.cc (construct_children): call
6846         Music_iterator::quit() for iterators that start out invalid. This
6847         fixes indefinitely continuing contexts.
6848
6849         * buildscripts/substitute-encoding.py: new file
6850
6851         * Documentation/user/basic-notation.itely (Basic polyphony): fix
6852         missing @end 
6853
6854         * scripts/lilypond-book.py (write_if_updated): print file name.
6855
6856         * Documentation/user/basic-notation.itely (Explicitly
6857         instantiating voices): idem.
6858
6859         * Documentation/user/advanced-notation.itely (Text spanners):
6860         remove stray { } 
6861
6862         * lily/context.cc (default_child_context_name): the default child
6863         is now first in accepts_list_.
6864
6865         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6866         \defaultchild to all relevant contexts.  This fixes:
6867         drums-pitch.ly.
6868
6869         (Probably also fixes similar problems with ancient
6870         transcriptions getting CueVoices instead of the desired voices.)
6871  
6872         * lily/context-def.cc (get_default_child): new function.
6873         (get_accepted): place default child in front of list.
6874
6875         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
6876
6877         * lily/include/context-def.hh (struct Context_def): add
6878         default_accept_
6879
6880 2005-05-03  Graham Percival  <gperlist@shaw.ca>
6881
6882         * scm/define-grobs.scm: remove "remove-first" line, since
6883         the absent property is set to #f anyway.
6884
6885         * Documentation/user/basic-notation.itely,
6886         advanced-notation.itely, instrument-notation.itely: minor
6887         fixes.
6888
6889         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
6890
6891         * Documentation/user/advanced-notation.itely,
6892         changing-defaults.itely: consolidate Text stuff in
6893         advanced notation.
6894
6895         * Documentation/user/global.itely: better docs for \header.
6896
6897         * Documentation/user/putting.itely: new chapter; placeholder
6898         for future expansion.
6899
6900         * Documentation/user/examples.itely: moved "suggestions for
6901         writing LP files" section into putting.itely.
6902
6903         * Documentation/user/lilypond.itely: added new chapter,
6904         fixed the short table of contents.
6905
6906 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6907
6908         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
6909         infinity for unfeasible beams.
6910
6911         * make/lilypond.fedora.spec.in (Group): idem.
6912
6913         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
6914
6915         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
6916
6917         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
6918         fonts directly.
6919
6920         * buildscripts/gen-emmentaler-scripts.py (i): idem.
6921
6922         * mf/GNUmakefile: remove all CFF rules.
6923
6924         * scm/framework-ps.scm (ps-embed-cff): reinstate.
6925
6926         * lily/open-type-font-scheme.cc (LY_DEFINE):
6927         new function ly:otf-font-table-data.
6928         (LY_DEFINE): new function otf-font?
6929
6930 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6931
6932         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
6933         ($(outdir)/Fontmap.lily): idem.
6934
6935         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
6936         for PFAEmmentaler-XXX.pfa. 
6937
6938         * Documentation/user/music-glossary.tely (accidental): NL
6939         translation of accidental.
6940
6941 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6942
6943         * flower/include/international.hh: Bugfix: include "string.hh".
6944
6945         * lily/include/mingw-compatibility.hh: New file.
6946
6947         * flower/include/libc-extension.hh (memrev): Rename from strrev.
6948
6949         * configure.in: Search for mingw wcrtomb library.
6950
6951 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6952
6953         * scripts/convert-ly.py: Bug fix
6954
6955         * Documentation/user/changing-defaults.itely (Common tweaks):
6956         Added example where the context has to be specified explicitly
6957         (MetronomeMark). 
6958
6959 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6960
6961         * scripts/lilypond-book.py (ly_options): set timing to #f for
6962         notime option.
6963
6964         * scripts/convert-ly.py (conv): typo.
6965
6966         * flower/*.cc: remove <? and >?
6967         
6968         * lily/*.cc: remove <? and >?
6969
6970         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
6971         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
6972         editor.
6973
6974 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6975
6976         * lily/part-combine-engraver.cc: add space to variable list.
6977
6978 2005-04-30  Graham Percival  <gperlist@shaw.ca>
6979
6980         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
6981         remove-first to false (matches docs)
6982
6983         * Documentation/user/advanced-notation.itely: corrected docs
6984         concerning remove-first.
6985
6986 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6987
6988         * lily/part-combine-engraver.cc: make sure that the relevant
6989         properties are included in the documentation.
6990
6991 2005-04-28  Graham Percival  <gperlist@shaw.ca>
6992
6993         * Documentation/user/lilypond-book.itely: Bernard's docs
6994         for \betweenLilyPondSystem.
6995
6996 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6997
6998         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
6999         remarks.
7000
7001 2005-04-28  Pal Benko  <benkop@freestart.hu>
7002
7003         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
7004         only on vertical lines of flexa shape, and use a constant
7005         thickness value for horizontal lines (patch slightly modified by
7006         Jürgen Reuter)
7007
7008         * lily/include/mensural-ligature.hh: make 2 comments clearer
7009
7010 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
7011
7012         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
7013         to need_extra_horizontal_space; bugfix: use class scope to avoid
7014         global namespace pollution
7015
7016         * Documentation/user/instrument-notation.itely (ligatures): added
7017         comment on possible future syntax change and how to work around
7018
7019         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
7020         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
7021         intervals (fixes agnus dei example)
7022
7023         * Documentation/user/instrument-notation.itely (white mensural
7024         ligatures): selected a more illustrative example
7025
7026 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
7027
7028         * Documentation/index.html.in: specify utf-8 charset in meta content.
7029
7030 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7031
7032         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
7033         empty 2nd page for single page.
7034
7035         * scm/lily.scm: remove p&c definitions.
7036
7037         * po/zh_TW.po (Module): new translation.
7038
7039         * lily/lily-guile.cc (ly_chain_assoc): remove.
7040
7041         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
7042         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
7043
7044 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7045
7046         * lily/beaming-info.cc: remove infinity_i
7047
7048         * scripts/abc2ly.py (out_filename): fix thinko with \version.
7049
7050 2005-04-26  Graham Percival  <gperlist@shaw.ca>
7051
7052         * Documentation/user/basic-notation.itely,
7053         instrument-notation.itely, advanced-notation.itely,
7054         changing-defaults.itely: minor fixes.  Added docs
7055         for colors to advanced-notation.itely.
7056
7057         * Documentation/user/advanced-notation.itely: fixed compile
7058         problem and added Bernard's x11-color doc patch.
7059
7060 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7061
7062         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
7063         alright this time round.
7064
7065 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7066
7067         * Documentation/topdocs/INSTALL.texi (Top): idem.
7068
7069         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
7070
7071         * VERSION (MAJOR_VERSION): release 2.5.21
7072
7073         * scm/output-ps.scm (grob-cause): bugfix.
7074
7075 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
7076
7077         * cygwin/*: Update.
7078
7079         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
7080         stuff.
7081
7082         * scm/output-ps.scm (grob-cause): Bugfix.
7083
7084         * scm/lily.scm (ly:load): Remove x11-color.
7085
7086         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
7087         quote executable, fixes getting version from program --with
7088         --options.
7089         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
7090         $ac_exeect.
7091
7092         * Documentation/user/GNUmakefile: Only build music-glossary with
7093         rendered lilypond snippets during web.
7094
7095 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7096
7097         * po/de.po: update.
7098
7099         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
7100
7101 2005-04-22  Laura Conrad <lconrad@laymusic.org>
7102  
7103         * scripts/abc2ly:
7104         second title line append with punctuation dash character;
7105         encode abc2ly python strings in utf-8
7106        
7107 2005-04-21  Laura Conrad <lconrad@laymusic.org>
7108
7109         * scripts/abc2ly fix chords (again)
7110  
7111 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
7112
7113         * scm/x11-color.scm: new file
7114         All x11 color names can be accessed with:
7115         #(x11-color 'ColorName),
7116         #(x11-color "ColorName") or:
7117         #(x11-color "color name")
7118         If the x11 color name is not recognised then it defaults
7119         to black
7120
7121         * scm/lily.scm: amended to call scm/x11-color.scm
7122
7123 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7124
7125         * Documentation/user/invoking.itely (Reporting bugs): comment out
7126         reference to online PNG bug repository.
7127
7128 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7129
7130         * lily/translator-scheme.cc (ly:translator-property): Remove.
7131         Update callers.
7132
7133         * lily/context-scheme.cc (ly:context-now): Move from translator.
7134         Update callers.
7135
7136 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7137
7138         * input/regression/grid-lines.ly (skips): refine example.
7139
7140         * scm/define-context-properties.scm
7141         (all-user-translation-properties): doc autoBeamCheck
7142
7143         * input/regression/grid-lines.ly (Module): new file.
7144
7145         * lily/grid-point-engraver.cc (Module): new file.
7146
7147         * lily/grid-line.cc (Module): new file.
7148
7149         * lily/grid-line-span-engraver.cc (Module): new file.
7150
7151         * lily/grid-line-interface.cc (Module): new file.
7152
7153 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7154
7155         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
7156         missing parameter, actualy cdr through list.  Actually return a
7157         list with ENTRY removed (was '()).
7158
7159         * scripts/convert-ly.py: Update.  Print warning if file cannot be
7160         opened.
7161         (do_conversion): Fix printing of continuation comma.
7162
7163         * Documentation/user/advanced-notation.itely (Beam formatting):
7164         Remove refbugs about compound time and mixed duration.
7165
7166         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
7167         modulo moments explicitely.
7168
7169         * lily/moment.cc (operator %): New function.
7170
7171         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
7172
7173         * lily/translator-scheme.cc (ly:translator-now,
7174         ly:translator-property): New function.
7175
7176         * scm/auto-beam.scm (default-auto-beam-check): New function.
7177
7178         * lily/auto-beam-engraver.cc (test_moment): Use it.
7179
7180         * flower/rational.cc (operator %): Bugfix.
7181
7182 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
7183
7184         * scripts/abc2ly: Bugfix
7185
7186 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7187
7188         * python/fontextract.py (write_extracted_fonts): bugfix, too many
7189         %'s on EndFont comment.
7190
7191         * lily/ledger-line-spanner.cc: some more words of explanation.
7192
7193 2005-04-20  John Williams <williams@tni.com>  
7194         
7195         * scripts/lilypond-book.py: htmlquote bugfix.
7196         Allow snippets to be given distinct filenames.
7197         Allow the default alt text to be overridden.
7198
7199 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
7200
7201         * ly/performer-init.ly: Bugfix
7202
7203         * THANKS: Added bughunters.
7204
7205 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7206
7207         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
7208
7209         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
7210         position (was: use modulo measure length).
7211
7212         * configure.in (no gui_b): Remove optional gtk+ requirement.
7213
7214 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7215
7216         * Documentation/user/basic-notation.itely (Pitches): add
7217         LedgerLineSpanner.
7218
7219         * lily/dynamic-engraver.cc (process_music): set right bound to
7220         script if present. Else, do not set.
7221         (acknowledge_grob): only set right bound of finished spanner to
7222         note column if no other bound is set.
7223
7224         * python/lilylib.py (make_ps_images): switch back to png16m.
7225         
7226 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7227
7228         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
7229         writing up to date file.  Add dvips usage suggestion.
7230
7231         * scripts/convert-ly.py: Fix error message.
7232         Print usage if no files on command line.
7233         (usage): Add example usage.
7234
7235         * input/test/compound-time.ly: New file.
7236
7237         * input/test/circle.ly: New file.
7238
7239         * Documentation/topdocs/NEWS.tely: Use them.
7240
7241         * input/test/boxed-stencil.ly: Remove \score.
7242
7243         * buildscripts/mf-to-table.py (base): Add .log dependency.
7244
7245         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
7246         pfa's.  Add .log dependency
7247
7248         * scm/define-markup-commands.scm (lower): New command.
7249
7250         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
7251         make it default.
7252
7253 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7254
7255         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
7256         also to finished cresc as right bound. This fixes:
7257         skip-string-decresc.ly
7258
7259         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
7260         relative_coordinate if extent is empty.
7261
7262         * lily/stem.cc (width_callback): determine correct extent if flag
7263         is not there. This fixes slur-no-flag.ly
7264
7265         * lily/grace-engraver.cc (consider_change_grace_settings): new
7266         function.
7267         (initialize): also consider_change_grace_settings() on
7268         initialization. Fixes large grace notes at start of score.
7269
7270         * lily/break-align-interface.cc (do_alignment): don't translate if
7271         total_extent is empty.
7272
7273         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
7274
7275 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7276
7277         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
7278         with slash.
7279
7280 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7281
7282         * stepmake/aclocal.m4: Remove tfm_path.
7283
7284 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7285
7286         * scm/music-functions.scm (markup-expression->make-markup): fix
7287         bug with cons arguments of markup commands.
7288         (music->make-music): fix music expression property list building
7289
7290 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7291
7292         * aclocal.m4: Massage package names.
7293
7294         * SCons updates.
7295
7296 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7297
7298         * VERSION (PACKAGE_NAME): release 2.5.20
7299
7300         * lily/stem.cc (calc_stem_info): add minimum Y extent of
7301         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
7302
7303         * lily/percent-repeat-engraver.cc (try_music): add measure before
7304         next_moment to future processing moment. Fixes:
7305         percent-repeat-mm-rest.ly
7306         (process_music): don't add moment for 2nd time.
7307
7308         * input/regression/repeat-percent.ly: add mmrests as extra test.
7309
7310         * lily/axis-group-engraver.cc (acknowledge_grob): read
7311         keepAliveInterfaces to decide what to kill.
7312
7313         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
7314         percent-repeat-interface to keepAliveInterfaces. This fixes
7315         percent-repeat-harakiri.
7316
7317 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7318
7319         * SCons updates.
7320
7321 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7322
7323         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
7324
7325         * aclocal.m4: remove --enable-tfm-path configure option
7326
7327         * input/test/ancient-font.ly (lowerStaff): clef name errors.
7328
7329         * scm/backend-library.scm (postscript->png): newline after
7330         finishing command.
7331
7332         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
7333         (LY_DEFINE): ly:paper-score-paper-systems: new function 
7334
7335         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
7336
7337         * lily/score.cc (default_rendering): use Music_output too.
7338
7339         * input/test/chord-names-languages.ly (Module): rename file.
7340
7341         * lily/text-spanner.cc: add bound-padding.
7342
7343         * lily/paper-book.cc (systems): accept Paper_score
7344         iso. Paper_system vector. 
7345
7346         * input/regression/line-arrows.ly: new file.
7347
7348         * lily/paper-score.cc (process): run get_paper_systems() only once.
7349
7350         * lily/line-spanner.cc (line_stencil): add arrows.
7351
7352 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
7353
7354         * lily/line-interface.cc (make_arrow): new function. 
7355         (arrows): idem.
7356
7357 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
7358
7359         * input/test/chord-names-german.ly: update for italian/french
7360         chords.
7361         
7362         * Documentation/user/instrument-notation.itely (Printing chord
7363         names): update.
7364
7365 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7366
7367         * lily/include/paper-score.hh (class Paper_score): remove unused
7368         prototypes.
7369
7370         * lily/book.cc (process): add -COUNT to midi output.
7371
7372         * lily/score.cc (book_rendering): remove outname argument
7373         (book_rendering): return list of Music_outputs. 
7374
7375         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
7376
7377         * lily/book.cc (process): loop over Music_outputs returned from
7378         Score::book_rendering().
7379
7380         * lily/*.cc (width_callback): remove spurious "unused" warnings
7381         for assert (axis==[XY]_AXIS); 
7382
7383         * lily/include/music-output.hh (class Music_output): smobify class.
7384
7385         * lily/include/paper-score.hh (class Paper_score): make members
7386         private.
7387
7388         * lily/performance.cc (process): return #f iso. #<undefined>. This
7389         prevents #<undefined> leaking into GUILE-userspace.
7390
7391 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7392
7393         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
7394
7395 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
7396
7397         * scm/chord-name.scm : support for italian and french
7398         chords names.
7399
7400         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
7401         a space defined by chordPrefixSpacer when the root name is
7402         direclty followed by a prefix.
7403
7404         * ly/engraver-init.ly : chordPrefixSpacer       
7405         * scm/define-context-properties.scm : chordPrefixSpacer
7406         * ly/property-init.ly : italianChords, frenchChords 
7407
7408 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7409
7410         * mf/feta-din.mf: Remove.
7411
7412         * mf/GNUmakefile (fontdir): Bugfix.
7413
7414         * mf/SConstruct: Some updates.
7415
7416         * SConstruct: Require pkg-config.
7417         (test_program): Bugfix for double digit version compares, use
7418         integer (not string-) compare.
7419         Optionally require gs 8.14.
7420
7421         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
7422
7423         * lily/*: s/ifdef HAVE_*/if have/.
7424
7425         * SConstruct (test_lib): New function.  Update pkg-config and some
7426         other requirements.
7427
7428         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
7429         freetype, pangof2t.
7430
7431 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7432
7433         * po/lilypond.pot, ...: Update using bison-CVS.
7434
7435         * python/lilylib.py (make_ps_images): Fixo.
7436
7437 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7438
7439         * python/lilylib.py (make_ps_images): typo.
7440
7441         * configure.in (gui_b): make bison optional.
7442
7443         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
7444
7445 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
7446
7447         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
7448         with one parameter can be defined in a LaTeX file when processed
7449         by lilypond-book this will be evaluated between the systems of
7450         a multi-system score. The parameter is the number of systems processed.
7451
7452 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7453
7454         * python/lilylib.py (make_ps_images): Escape newline.
7455
7456         * Documentation/user/music-glossary.tely: Run
7457         texinfo-all-menus-update.
7458
7459 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7460
7461         * scm/lily-library.scm (old-relative-not-used-message)
7462         (version-not-seen-message): Add input-file-name-location to message.
7463
7464         * lily/parser.yy (lilypond): Add token aliases.
7465
7466         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
7467         not confuse with alteration.
7468         (alteration): Add.
7469
7470 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7471
7472         * python/lilylib.py (make_ps_images): use -dEPSCrop
7473
7474         * VERSION (PACKAGE_NAME): release 2.5.19 
7475
7476         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
7477         only put xrefs in info documentation.
7478
7479         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
7480         .pdf rule to tex-rules.make.
7481
7482         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
7483         from -systems.* output.
7484
7485         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
7486         directly, remove -$(PAGESIZE) target.
7487
7488         * input/test/embedded-postscript.ly: update.
7489
7490 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7491
7492         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
7493
7494         * Documentation/user/changing-defaults.itely (Font selection):
7495         document font-name.
7496
7497         * input/regression/font-name.ly: show Pango fonts for
7498         font-name. Update example. 
7499
7500         * lily/pango-select.cc (properties_to_pango_description): don't
7501         convert symbol font-size to number, but use to lookup.
7502
7503         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
7504
7505         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
7506         (NAME . FILE-NAME) tuples for font descriptions. 
7507         (write-preamble): display BeginFont DSC comments.
7508
7509         * python/fontextract.py (write_extracted_fonts): new file. Extract
7510         font resources from a PS file.
7511
7512         * scripts/lilypond-book.py (option_definitions): --psfonts option.
7513         (Compile_error.process_include): do_file returns chunks.
7514
7515         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
7516
7517         * make/lysdoc-targets.make: .texi is .PRECIOUS
7518
7519         * scripts/lilypond-book.py (write_if_updated): new function.
7520
7521 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7522
7523         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
7524
7525 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7526
7527         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
7528
7529         * input/regression/markup-syntax.ly: remove \score.
7530
7531         * scm/define-markup-commands.scm (draw-circle): add fill argument
7532
7533         * scm/stencil.scm (make-circle-stencil): add fill argument
7534
7535         * ps/music-drawing-routines.ps: add fill argument.
7536
7537         * ly/performer-init.ly: add CueVoice to MIDI too.
7538
7539         * ps/music-drawing-routines.ps: new routine BeginEPSF /
7540         EndEPSF.
7541
7542         * input/regression/markup-eps.ly: new file.
7543
7544         * scm/framework-ps.scm (write-preamble): change order: vars should
7545         be inited before procedures.
7546
7547         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
7548         for EPS files.
7549
7550         * scm/define-markup-commands.scm (epsfile): add epsfile command.
7551
7552 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7553
7554         * configure.in (gui_b): add check for ghostscript 8.15
7555
7556 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7557
7558         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
7559         start of line. Fixes cresc-after-newline.ly
7560
7561         * lily/source-file.cc (file_line_column_string): use get_column().
7562
7563 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7564
7565         * lily/source-file.cc (get_column): utf-8 support for column numbers.
7566
7567 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7568
7569         * lily/*: use message () iso progress_indication () for messages.
7570         Revise/uniformise user messages.
7571
7572         * flower/warn.cc (progress_indication): New function.
7573         (message): Use it.  Fixes newline problems.
7574
7575         * config.make.in (webdir): Sort out install dirs.
7576
7577         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
7578
7579         * python/lilylib.py (command_name): Bugfix.
7580         (make_ps_images):
7581
7582 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
7583
7584         * lily/main.cc: --help says what types of backends are availabe
7585
7586 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7587
7588         Fix ./VERSION dependency, and without need to reconfigure.
7589
7590         * lily/main.cc (setup_paths): Update.
7591
7592         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
7593
7594         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
7595
7596         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
7597         Add \line for some simplistic cases.
7598
7599         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
7600
7601 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7602
7603         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
7604         to compile LY files (useful for adding eg. "-I" args)
7605         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
7606         2Gnome command for gnome backend.
7607         (LilyPond-command-formatgnome): call the 2Gnome command. key
7608         binding: C-c C-g
7609
7610 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7611
7612         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
7613         depend on all PNG images.
7614
7615 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7616
7617         * GNUmakefile.in: Bugfix: also link .map files.
7618
7619 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7620
7621         * scm/music-functions.scm (music->make-music): generate 
7622         a (make-music ...) sexpr from a music expression.
7623         (display-scheme-music): use guile pretty printer to display the
7624         make-music sexpr.
7625
7626 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7627
7628         * ly/engraver-init.ly: reindent.
7629         Add CueVoice.
7630
7631         * scm/music-functions.scm (music-pretty-string): handle moments
7632         too.
7633         (music-pretty-string): only print non-empty lists.
7634         (cue-substitute): create CueVoice context, which has smaller type.
7635
7636         * lily/moment-scheme.cc (LY_DEFINE): new methods
7637         ly:moment-grace-{numerator,denominator}
7638
7639         * lily/context-handle.cc: remove quit() method. 
7640
7641         * lily/font-config.cc (init_fontconfig): be verbose about font path.
7642         (init_fontconfig): success is 0, not !0
7643
7644 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7645
7646         * mf/feta-nummer-code.mf (code): add plus glyph.
7647
7648         * lily/tie.cc (print): idem.
7649
7650         * lily/slur.cc (print): don't use thickness property for
7651         slur shape-thickness.
7652
7653         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
7654         while adding stencils.
7655
7656         * scm/define-markup-commands.scm (with-color): with-color markup
7657         command.
7658         (whiteout): new markup command 
7659         (filled-box): new markup command
7660
7661 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7662
7663         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
7664         test for PDF docs.
7665
7666         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
7667         PFAAybabtu-Regular.  Fixes feta font in PDFs.
7668         
7669         Notes for tetex-3.0 make web:
7670            psclean.map: s/uhv8a/uhvr8a/
7671            config.ps add:
7672                 p +psfonts_t1.map
7673                 p +psclean.map
7674                 p +typeface.map
7675
7676 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7677
7678         * scm/music-functions.scm (music-pretty-string): fix bug with
7679         string argument.
7680
7681 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7682
7683         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
7684
7685 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7686
7687         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
7688         only process options if they're there.
7689         (write_file_map): add version-seen? to snippet-map.ly
7690
7691 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7692
7693         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
7694         formatting cleanups.
7695
7696         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
7697         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
7698
7699 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700
7701         * scm/framework-ps.scm (ps-font-command): don't hash, just use
7702         name directly.
7703
7704         * lily/main.cc (setup_paths): either add mf/out to search path or 
7705         fonts/{otf,type1,etc}
7706         
7707         * lily/font-config.cc (init_fontconfig): either add mf/out to
7708         FontConfig or fonts/{otf,type1,etc}
7709
7710         * GNUmakefile.in: don't put mf/ link in share/ dir.
7711
7712         * lily/staff-spacing.cc: move same-direction-correction to
7713         note-spacing-interface
7714
7715         * scm/lily.scm (lilypond-main): use variable argument count for
7716         exception handler.
7717
7718         * lily/font-config.cc (init_fontconfig): add operator pacification
7719         message.
7720
7721         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
7722
7723         * buildscripts/gen-emmentaler-scripts.py (i): generate
7724         PFAEmmentaler as well.
7725
7726         * scm/framework-ps.scm (munge-lily-font-name): new function
7727         (write-preamble): hack: insert PFA equivalent of CFF into
7728         .PS. This makes LilyPond output printable on normal PS printers
7729         again.
7730
7731         * buildscripts/gen-emmentaler-scripts.py (i): generate
7732         PFAEmmentaler.pfa aswell.
7733
7734 2005-04-06  John Williams <williams@tni.com>  
7735         
7736         * scripts/lilypond-book.py: refactor the compose_ly procedure.
7737         
7738 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7739
7740         * scm/page-layout.scm (default-page-make-stencil): always combine
7741         the header stencil, even if empty. This prevents the body text to
7742         reach up to the margins.
7743
7744         * po/rw.po (Module): new file, for Kinyarwanda.
7745
7746         * input/test/spacing-optical.ly (Module): new file.
7747
7748         * lily/staff-spacing.cc: add same-direction-correction
7749
7750 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7751
7752         * Documentation/user/introduction.itely (Engraving): Comment-out
7753         non-existent file.
7754
7755 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7756
7757         * scm/define-grob-properties.scm (all-user-grob-properties): add
7758         same-direction-correction
7759
7760         * VERSION: release 2.5.18
7761
7762 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
7763
7764         * lily/grob.cc (mark_smob): Check pscore->layout_ before
7765         dereferencing.  Fixes make web.
7766
7767         * lily/midi-stream.cc: Handle unwritable midi file.  Include
7768         errno.h.
7769
7770         * Documentation/user/: Fix links.
7771
7772 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7773
7774         * lily/text-interface.cc (Module): rename from text-item.cc
7775
7776         * input/regression/apply-output.ly (texidoc): function naming fix.
7777
7778         * lily/time-signature-performer.cc (derived_mark): new function.
7779
7780         * lily/lily-parser-scheme.cc:  print mapped file name for progress
7781
7782         * scripts/lilypond-book.py (find_linestarts): new function.
7783         (find_toplevel_snippets): keep track of line numbers.
7784
7785         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
7786         all key changes.
7787
7788         * ly/declarations-init.ly (partCombineListener): use
7789         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
7790
7791         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
7792
7793 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
7794
7795         * lily/text-item.cc: Fix link.
7796
7797         * Documentation/user/changing-defaults.itely (Changing defaults):
7798         Fix programs reference links.
7799
7800         * Documentation/user/music-glossary.tely: Convert to utf-8.
7801
7802 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7803
7804         * make/lilypond-vars.make: remove TEXMF from variables.
7805         remove DEB_BUILD pk font variables.
7806         remove GUILE_LOAD_PATH
7807         remove TeX memory vars.
7808
7809 2005-04-04  Werner Lemberg  <wl@gnu.org>
7810
7811         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
7812
7813 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7814
7815         * ps/lilyponddefs.ps: remove reencode-font
7816
7817         * lily/simple-spacer.cc (add_columns): also compare
7818         directly. Column rank doesn't distinguish between broken and
7819         unbroken columns. This fixes large spaces before time sig changes.
7820
7821         * Documentation/user/point-and-click.itely: document ly:set-option.
7822
7823         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
7824         point_and_click_global is set.
7825
7826         * lily/scm-option.cc (LY_DEFINE): add point-and-click
7827         ly:set-option argument.
7828
7829 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7830
7831         * GNUmakefile.in: Include symlinks in webball.
7832
7833         * Documentation/user/GNUmakefile (source-links): Add symlinks to
7834         source dir for split and non-split manuals.
7835
7836         * Documentation/user/*y: Fix @uref/@inputfile links for
7837         split/non-split HTML documents.
7838
7839         * Documentation/user/GNUmakefile (local-WWW): Do not generate
7840         .ps.gz.
7841         
7842 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7843
7844         * GNUmakefile.in: Add newline.
7845
7846 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
7847
7848         * tex/lilyponddefs.tex: use color instead of xcolor
7849         * scm/output-tex.scm: minor editing
7850
7851 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7852
7853         * scm/music-functions.scm (display-scheme-music): pretty printer
7854         for music expressions.
7855
7856 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7857
7858         * buildscripts/install-info-html.sh (index_file): Fix link.
7859
7860 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7861
7862         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
7863
7864         * Documentation/index.html.in: Add size estimates with some big pages.
7865
7866         * Documentation/user/tutorial.itely (Running LilyPond for the
7867         first time): Add/replace some @rglos links.  TODO: add more
7868         @rglos links in tutorial, test non-intrusiveness (.css).
7869
7870         * stepmake/bin/add-html-footer.py (do_file): Remove info's
7871         annoying's indication of referencing external document.
7872
7873         * Documentation/user/GNUmakefile: Split version of glossary too.
7874         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
7875         links, not only for html.
7876
7877         * Documentation/user/introduction.itely: Fix some links for other
7878         than html, do not use `here' as link name.
7879
7880 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7881
7882         * scm/documentation-generate.scm (string-append): Fix @usermanref,
7883         @glossaryref.
7884
7885 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * scm/page-layout.scm (default-page-make-stencil): only add header
7888         if existing and not empty. Fixes spurious programming error.
7889
7890         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
7891
7892 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
7893
7894         * scm/output-tex.scm: implement {re,}setcolor
7895         * tex/lilyponddefs.tex: use color package
7896
7897 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7898
7899         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
7900         additions to website.
7901
7902         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
7903
7904         * Documentation/user/macros.itexi: Fix @usermanref html links in
7905         split documents: use @inforef.
7906
7907 2005-03-30  Graham Percival  <gperlist@shaw.ca>
7908
7909         * Documentation/user/programming-interface.itely: minor fix.
7910
7911         * Documentation/user/advanced-notation.itely: added info to
7912         Metronome markings.
7913
7914 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7915
7916         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
7917         use box-stencil.  Remove y-padding argument.
7918         (make-stencil-circler): New function.
7919
7920         * buildscripts/lilypond-words.py (F): 
7921         * elisp/SConscript (a): 
7922         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
7923         * vim/SConscript (a): 
7924         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
7925
7926         * lily/general-scheme.cc: Build fix.
7927
7928         * scm/markup.scm:
7929         * input/regression/markup-scheme.ly: 
7930         * input/regression/markup-syntax.ly: Drop 'new-' from name.
7931
7932         * scm/stencil.scm (make-circle-stencil): New function.
7933
7934         * scm/define-markup-commands.scm (draw-circle): Use it.  New
7935         name (was cicle).  Update callers.
7936         (circle): New markup command, similar to box.
7937
7938         * scm/stencil.scm (circle-stencil): New function.
7939
7940 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
7941
7942         * configure.in: Detect libutf8/wchar.h variant.
7943
7944         * stepmake/aclocal.m4: Modify shared size test.
7945
7946 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7947
7948         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
7949
7950 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7951
7952         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
7953         
7954         * VERSION (PACKAGE_NAME):  release 2.5.17
7955
7956 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
7957
7958         * scm/backend-library.scm (postscript->png): Fix comment and png
7959         message.
7960
7961         * GNUmakefile.in (link-tree): Fix locales.
7962
7963 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7964
7965         * lily/stencil-scheme.cc (LY_DEFINE): change to
7966         ly:stencil-aligned-to, non mutating.
7967
7968         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
7969
7970         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
7971
7972         * lily/quote-iterator.cc (derived_mark): call
7973         Music_wrapper_iterator::derived_mark() too.
7974
7975         * lily/grace-engraver.cc (derived_mark): change signature, add
7976         const.
7977
7978 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7979
7980         * SConstruct (symlink): 
7981         * GNUmakefile.in (link-tree): Add scripts to prefix.
7982
7983         * lily/general-scheme.cc (ly:effective-prefix): New function.
7984
7985         * scm/backend-library.scm (postscript->png): Use it.
7986
7987 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7988
7989         * lily/paper-score.cc (process): don't delete grobs after
7990         producing stencils. 
7991
7992         * scm/part-combiner.scm (determine-split-list): switch off
7993         debugging info.
7994
7995         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
7996         if available.
7997
7998         * scm/define-context-properties.scm
7999         (all-user-translation-properties): add stringNumberOrientations.
8000
8001         * lily/new-fingering-engraver.cc (position_scripts): make generic,
8002         so fingering and string-numbers are separately controlled.
8003
8004 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8005
8006         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
8007         not use debugging.
8008
8009 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8010
8011         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
8012
8013         * config.hh.in: add HAVE_FONTCONFIG.
8014
8015         * Documentation/user/instrument-notation.itely (String number
8016         indications): new node.
8017
8018         * input/regression/new-markup-syntax.ly (texidoc): add circle.
8019
8020         * lily/new-fingering-engraver.cc (add_string): new function. 
8021         (acknowledge_grob): accept string-number-event as well.
8022
8023         * scm/define-markup-commands.scm (circle): new markup command.
8024
8025         * scm/output-lib.scm (print-circled-text-callback): new function.
8026
8027         * lily/GNUmakefile: move ifeq after include stepmake.make.
8028
8029 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8030
8031         * config.make.in (HAVE_LIBKPATHSEA_SO):
8032         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
8033
8034         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
8035         add KPATHSEA_LIBS.
8036
8037         * debian/watch: 
8038         * debian/control: Update.
8039
8040 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8041
8042         * input/test/title-markup.ly (spaceTest): remove.
8043
8044         * input/test/embedded-tex.ly (Module): remove.
8045
8046         * input/test/music-box.ly: use 'name property, not ly:music-name.
8047
8048         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
8049
8050         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
8051
8052 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8053
8054         * Documentation/topdocs/INSTALL.texi (Top): Remove information
8055         about xdeltas.  Add information about CVS.
8056
8057         * scm/lily.scm (lilypond-main): Fix invocation of handler,
8058         gracefully handle failed files.
8059
8060         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
8061
8062         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
8063         small fixes.
8064
8065         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
8066         No unnecessarily specific i18n messages.  Remove stray `1'.
8067
8068 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8069
8070         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
8071         documentencoding
8072
8073         * scm/documentation-lib.scm (texi-file-head): set utf-8
8074         documentencoding.
8075
8076         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
8077         Delta, not the Symbol one. 
8078
8079         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
8080         for the .map file.
8081
8082         * Documentation/topdocs/INSTALL.texi (Top): add running
8083         requirement as compilation requirement.
8084
8085 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8086
8087         * buildscripts/mutopia-index.py (headertext): add h1 header and
8088         utf-8 charset meta field.
8089
8090         * input/GNUmakefile: prune example list.
8091
8092         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
8093         options.
8094
8095         * lily/slur-scoring.cc (get_base_attachments): only look at stem
8096         extent for visible stems.
8097
8098         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
8099
8100 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8101
8102         * Documentation/topdocs/INSTALL.texi (Top): Updates.
8103
8104         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
8105
8106 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8107
8108         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
8109         pass inf/nan into slur scoring.
8110
8111         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
8112         page.
8113
8114         * scripts/abc2ly.py (dump_voices): use alphabet().
8115
8116 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
8117         
8118         * mf/GNUmakefile (depth): use $(FONTFORGE). 
8119
8120 2005-03-27 Matthias Neeracher <neeracher@mac.com>
8121         
8122         * flower/include/virtual-methods.hh: simplify. Patch by
8123
8124 2005-03-25  John Williams <williams@tni.com>  
8125
8126         * scripts/lilypond-book.py (main): add png for HTML too, guess
8127         only if necessary. 
8128
8129 2005-03-25  Graham Percival  <gperlist@shaw.ca>
8130
8131         * Documentation/topdocs/INSTALL.texi: now recommends
8132         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
8133
8134         * Documentation/user/basic-notation.itely,
8135         Documentation/user/tutoria.itely: warn about
8136         only one (phrasing) slur at once.
8137
8138 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
8139
8140         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
8141
8142 2005-03-23  Graham Percival  <gperlist@shaw.ca>
8143
8144         * Documentation/user/basic-notation.itely: fixed info about
8145         ending a (de)cresc.
8146
8147         * Documentation/user/lilypond-book.itely: fixed
8148         lilypond-book filter example and warned about not doing
8149         --filter and --process at the same time.
8150
8151 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
8152
8153         * lily/parser.yy (bass_number),
8154         Documentation/user/instrument-notation.itely (Figured bass): 
8155         Add the possibility to use text markup in figured bass. 
8156
8157 2005-03-19  Graham Percival  <gperlist@shaw.ca>
8158
8159         * Documentation/user/global.itely: added info about naming
8160         identifiers and breakbefore.
8161
8162         * Documentation/user/invoking.itely: added info about batch
8163         processing files with convert-ly, removed references to TeX
8164         in the jail section.
8165
8166         * Documentation/user/examples.itely: possibly fixed piano
8167         dynamics.
8168
8169         * Documentation/user/advanced-notation.itely: added info
8170         about removing other types of Staff.
8171
8172         * Documentation/user/instrument-notation.itely: possibly
8173         fixed piano staff line switch.
8174
8175         * Documentation/user/changing-defaults.itely: added info
8176         about using normal font in titles.
8177
8178 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8179
8180         * VERSION (PATCH_LEVEL): release 2.5.16
8181
8182         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
8183         explicitly.
8184
8185 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8186
8187         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
8188         whitespace.
8189
8190         * python/lilylib.py (make_ps_images):
8191         * scm/backend-library.scm (postscript->pdf, postscript->png):
8192         Quote file name.  Use format rather than string-append juggling.
8193
8194 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8195
8196         * python/lilylib.py (make_ps_images): add x to -g argument. 
8197
8198         * lily/key-performer.cc (create_audio_elements): don't use
8199         scm_eval_string. Check for minor 3rd directly.
8200   
8201         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
8202         (sarabandeCelloGlobal): key is D minor, not F major.
8203
8204 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8205
8206         Fix truncated --png output (Peter Danenberg).
8207         
8208         * python/lilylib.py (make_ps_images):
8209         * scripts/ps2png.py (copyright): Grok --papersize option.
8210
8211         * scm/backend-library.scm (postscript->png): Add parameter
8212         PAPERSIZE.  Update callers.
8213
8214         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
8215         Fixes symbol placement.
8216
8217         * lily/spanner.cc: 
8218         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
8219         <libc-extension.hh>).
8220
8221 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8222
8223         * Nitpick run.
8224
8225         * buildscripts/fixcc.py: Update.
8226
8227         Builddir run fixes.
8228
8229         * HACKING (datadir): Add VERSION.
8230
8231         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
8232         higher up.
8233
8234 2005-03-15  Werner Lemberg  <wl@gnu.org>
8235
8236         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
8237         diagonal stem doesn't become thinner.
8238
8239 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8240
8241         * buildscripts/fixcc.py: Fixes (Werner).
8242
8243 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8244
8245         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
8246         Emmentaler/Aybabtu.
8247
8248         * GNUmakefile.in: fix lilypond-words path.
8249
8250         * po/tr.po: update to 2.3.21
8251
8252         * lily/new-fingering-engraver.cc (position_scripts): take priority
8253         from head position.
8254
8255         * input/regression/finger-chords-order.ly (texidoc): new file.
8256
8257 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8258
8259         * make/ly-rules.make: 
8260         * stepmake/aclocal.m4: 
8261         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
8262
8263         * buildscripts/fixcc.py (rules): Leave space after operator.
8264
8265 2005-03-14  Werner Lemberg  <wl@gnu.org>
8266
8267         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
8268         top of the glyph with smooth curve.
8269
8270 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8271
8272         * Documentation/user/global.itely (Page layout): remove
8273         printpagenumber.
8274
8275 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
8276
8277         * input/regression/mensural-ligatures.ly: new file (with examples
8278         compiled by Pal Benko).
8279
8280         * Documentation/user/instrument-notation.itely: Bugfix: yet some
8281         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
8282         musicglyph access.  Many small beautifications in ancient
8283         examples.
8284
8285         * input/test/divisiones.ly: fixed indentation; small
8286         beautifications
8287
8288         * ly/engraver-init.ly: added FIXME comment
8289
8290         * scripts/lilypond-book.py,
8291         Documentation/user/lilypond-book.itely: added music fragment
8292         option "packed" to lilypond-book
8293
8294         * Documentation/user/instrument-notation.itely: Bugfix: added
8295         missing LedgerLineSpanner color setting in several places.  Added
8296         music fragment option "packed" to VaticanaContext example.
8297
8298 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8299
8300         * scm/define-grobs.scm (all-grob-descriptions): switch off
8301         Hyphen_spanner::set_spacing_rods 
8302
8303         * lily/lyric-hyphen.cc (print): add padding between syllable and
8304         hyphen.
8305         (print): shorten hyphen in tight situations (determine using
8306         minimum-length)
8307
8308         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
8309         0.4pt.
8310
8311 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8312
8313         * ly/titling-init.ly (bookTitleMarkup): Refinements.
8314
8315         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
8316         header/footer markings for regression-test.
8317
8318         * scm/backend-library.scm (output-scopes, header-to-file): Move
8319         from framework-tex.scm.
8320
8321         * scm/framework-ps.scm (output-framework)
8322         (output-preview-framework):
8323         * scm/framework-eps.scm (output-classic-framework)
8324         (output-framework): Use it.  Fixes collated files.
8325
8326 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8327
8328         * input/sakura-sakura.ly: 
8329         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
8330
8331         * buildscripts/guile-gnome.sh: Update.
8332
8333         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
8334
8335         * mf/aybabtu.pe.in: Capitalize Aybabtu.
8336
8337 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8338
8339         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
8340         culprit: always exit the loop if we find a rod, even if it has
8341         distance < 0. 
8342
8343         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
8344         algorithm.
8345
8346         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
8347         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
8348
8349         * scm/output-svg.scm (dashed-line): new  function body.
8350         
8351         * GNUmakefile.in: create .htaccess.
8352
8353 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8354
8355         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
8356
8357 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8358
8359         * VERSION (PACKAGE_NAME): release 2.5.15
8360
8361         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
8362
8363         * scm/framework-svg.scm (output-framework): put scaling in
8364         document header. Apply scaling only once.
8365         (output-framework): dump page size in px, not mm. 
8366
8367         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
8368         from font-size.
8369
8370         * lily/paper-outputter-scheme.cc (LY_DEFINE):
8371         ly:outputter-output-scheme, new function.
8372
8373         * scm/output-svg.scm (pango-description-to-svg-font): new function
8374
8375 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8376
8377         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
8378         target.
8379
8380         * input/typography-demo.ly: new file.
8381
8382 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8383
8384         * Documentation/user/global.itely (File structure): Add markup blocks
8385         to toplevel expressions.
8386         (Multiple movements, Creating titles): Add markup blocks.
8387
8388         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
8389         <libc-extension.hh>).
8390
8391         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
8392
8393         * flower
8394         * lily
8395         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
8396
8397 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8398
8399         * lily/accidental.cc: special bboxes for natural. 
8400
8401         * mf/feta-toevallig.mf: make stems heavier.
8402
8403         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
8404         texts as well.
8405
8406         * mf/feta-klef.mf: revise. 
8407
8408         * mf/feta-schrift.mf: make thinning of accent less pronounced.
8409
8410         * mf/feta-klef.mf: add rounded curve at top. 
8411         make thinnib a little heavier.
8412
8413 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8414
8415         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
8416
8417         * buildscripts/fixcc.py: New file.
8418
8419         * input/regression/utf8.ly: Update Debian font description.
8420
8421 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8422
8423         * stepmake/aclocal.m4: Fix test.
8424
8425 2005-03-09  Graham Percival  <gperlist@shaw.ca>
8426
8427         * Documentation/user/invoking.itely: added Sebastino Vigna's
8428         docs for the --jail option.
8429
8430 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8431
8432         * lily/stem.cc (print): only produce stemlets if there are no
8433         noteheads on this stem.
8434
8435         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
8436         don't crash on stemlet (visible stem without heads).
8437
8438         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
8439         unbroken situations. 
8440
8441         * scm/output-lib.scm (center-invisible): new function.
8442
8443         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
8444         wishes to determine loose column space.
8445
8446         * lily/font-config.cc (init_fontconfig): add
8447         fonts/{otf,type1,cff}  to path.
8448
8449         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
8450
8451         * mf/GNUmakefile (Module): install all fonts under otf/
8452
8453         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
8454         replace /fonts/otf/ by /ps/ 
8455
8456         
8457 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8458
8459         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
8460
8461         * lily/book.cc (process): Oops, add score_.header_.
8462
8463         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
8464
8465         * lily/parser.yy: Handle toplevel and book texts as score.
8466
8467         * scm/page-layout.scm (default-page-make-stencil):
8468         Bugfix: (page-properties rename.
8469
8470         * scm/backend-library.scm (ly:system): Typo.
8471
8472 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8473
8474         * stepmake/stepmake/executable-targets.make (installexe): don't
8475         strip installed executables
8476
8477         * lily/font-select.cc (get_font_by_design_size): revert
8478         pango_description_string as well.
8479
8480         * lily/system.cc (set_loose_columns): put loose column just left
8481         of next column.
8482
8483         * lily/include/group-interface.hh (extract_grob_array): rename
8484         from Pointer_group_interface__extract_grobs
8485
8486         * input/regression/ledger-line-minimum.ly (texidoc): new file.
8487
8488         * lily/ledger-line-spanner.cc (set_spacing_rods): new
8489         function. Keep ledgered note heads at a minimum distance.
8490         Introduce minimum-length-fraction
8491         (print): introduce length-fraction property.
8492
8493 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8494
8495         * tex/GNUmakefile: remove latin1.enc rules.
8496
8497 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8498
8499         * scm/titling.scm: Typo.
8500
8501         * input/regression/score-text.ly: Really add.
8502
8503         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
8504
8505 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8506
8507         * lily/open-type-font-scheme.cc:  new file.
8508
8509 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8510
8511         * scm/titling.scm (layout-extract-page-properties): Rename from
8512         page-properties.  Update callers.
8513
8514         * lily/lexer.ll (Lily_lexer):
8515         * lily/parser.yy: Junk lyric_markup state.
8516
8517         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
8518
8519         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
8520         Add texts parameter.
8521
8522 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8523
8524         * lily/lexer.ll (lyric_markup): New mode.
8525         (Lily_lexer::push_lyric_markup_state): New method.
8526         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
8527
8528         * lily/parser.yy (book_body):
8529         (toplevel_expression): Grok \markup texts.
8530
8531         * lily/score-scheme.cc (ly:music-scorify): 
8532         * scm/lily-library.scm (collect-music-for-book): Take texts
8533         parameter.
8534
8535         * lily/score.cc (texts_): New member.
8536
8537         * lily/paper-book.cc (systems): Format score texts.
8538
8539         * score-text.ly: New file.
8540
8541         * ttftool/SConscript:
8542         * kpath-guile/SConscript: New file.
8543
8544         * lily/SConscript:
8545         * SConstruct: Update.
8546
8547 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8548
8549         * VERSION (PACKAGE_NAME): release 2.5.14
8550
8551 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8552
8553         * lily/main.cc: Add dummy xgettext markers.
8554
8555 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8556
8557         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
8558         requirements
8559
8560         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
8561         executable is < 40k
8562
8563         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
8564         hack.
8565
8566 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8567
8568         * flower/libc-extension.cc:
8569         * flower/include/libc-extension.hh: [Open]BSD simply cast
8570         cookie/funopen declarations.
8571
8572         * stepmake/aclocal.m4: Check for libkpathsea.so.
8573
8574         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
8575         dl_kpse_find_file.
8576
8577 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8578
8579         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
8580         (open_library): alternative for static library.
8581
8582 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8583
8584         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
8585
8586         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
8587
8588         Drop run-time dependency on teTeX.
8589
8590         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
8591
8592         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
8593         KPATHSEA_LIBS in LIBS.
8594         (STEPMAKE_DLOPEN): New function.
8595
8596         * lily/font-config.cc (init_fontconfig): Use dir for directory,
8597         not path.
8598
8599         * flower/file-path.cc (directories): Rename from paths, as this
8600         return an array of directories (a single path).
8601
8602 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8603
8604         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
8605
8606         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
8607         new ly:kpathsea-find-file
8608
8609         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
8610
8611         * kpath-guile/GNUmakefile: new file
8612
8613         * buildscripts/gen-emmentaler-scripts.py (i): generate
8614         emmentaler-X.fontname as well.
8615
8616         * buildscripts/ps-embed-cff.py: new script
8617
8618         * scm/lily-library.scm: remove ps-embed-cff.
8619
8620         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
8621         font loading. 
8622
8623         * scm/font.scm (add-music-fonts): load dynamics/numbers through
8624         fontconfig as well.
8625
8626         * lily/font-config.cc (init_fontconfig): add cff/ too.
8627
8628         * ly/generate-embedded-cff.ly: capitalize.
8629
8630         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
8631         so as to register the pango font.
8632
8633         * lily/font-config.cc (init_fontconfig): add
8634         prefix/{otf,type1,mf/out} to fontconfig path.
8635
8636         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
8637         overrides all. 
8638
8639         * configure.in (gui_b): remove ec mftrace check
8640
8641         * config.hh.in: use lilypond-Major.Minor as data directory.
8642
8643         * scm/framework-ps.scm (dump-page): use output-units for landscape.
8644
8645         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
8646         name.
8647
8648 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8649
8650         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
8651         error messages.
8652
8653         * flower/libc-extension.cc:
8654         * flower/include/libc-extension.hh: [Open]BSD fixes for
8655         cookie/funopen declarations.
8656
8657 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8658
8659         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
8660         emmentaler.
8661
8662         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
8663         lcrm10.
8664
8665         * scm/define-markup-commands.scm (fontsize): new markup
8666         command. Also set baseline-skip
8667
8668 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
8669         
8670         * lily/main.cc (do_chroot_jail): paranoia security for webserver
8671         use.
8672
8673 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8674
8675         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
8676
8677         * lily/pdf.cc: remove PDF related files
8678
8679 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8680
8681         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
8682         <hamamatsu@gmx.de>
8683
8684 2005-03-05  Graham Percival  <gperlist@shaw.ca>
8685
8686         * Documentation/user/advanced-notation.itely: first draft
8687         of reorg done.
8688
8689         * Documentation/user/global.itely: fixed (sub)section
8690         bits of MIDI.
8691
8692 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8693
8694         * cygwin/mknetrel (extras): Bufix (Bertalan).
8695
8696         * Documentation/user/basic-notation.itely (Chords): @ref fix.
8697         * Documentation/user/instrument-notation.itely (Introducing chord
8698         names): Compile fix: must have unique name.
8699
8700 2005-03-02  Graham Percival  <gperlist@shaw.ca>
8701
8702         * Documentation/user/instrument-notation.itely: reorg.
8703
8704 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8705
8706         * scm/output-gnome.scm:
8707         * scm/output-svg.scm: Fix font scaling.
8708
8709 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8710
8711         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
8712         what link to use best.
8713
8714         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
8715         * Documentation/user/tutorial.itely (Automatic and manual beams):
8716         Fix @ref.
8717
8718         * lily/tweak-registration.cc (replace_grob_tweak): New function.
8719         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
8720         * scm/framework-gnome.scm (tweak): Use it.
8721
8722 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8723
8724         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
8725
8726         * scm/output-ps.scm (white-text): reinstate white-text
8727
8728 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8729
8730         * scm/output-ps.scm (offset-add): Remove.
8731
8732         * scm/lily-library.scm (offset-flip-y): New function.
8733         * scm/framework-gnome.scm (tweak): Use it.
8734
8735         * scm/output-gnome.scm (grob-cause): Add parameter.
8736
8737         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
8738         * scm/output-ps.scm (url-link): Move.
8739         (white-text): Warn user about brokenness.
8740
8741         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
8742         wrt ghostscript.
8743
8744 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8745
8746         * lily/slash-repeat-engraver.cc (try_music): always make slashes
8747         if body length smaller than measure length.
8748
8749         * scm/define-markup-commands.scm (with-url): oops. use Y extent
8750         for Y.
8751
8752         * ly/titling-init.ly (tagline): put default tagline in \paper
8753
8754 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8755
8756         * lily/kpath.cc: 
8757         * lily/pdf.cc (Pdf_file): Use more generic error messages.
8758
8759         * scm/lily-library.scm (version-not-seen-message): New function.
8760         * ly/init.ly: Use it.
8761
8762         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
8763         breaks as progess.
8764
8765         * scripts/lilypond-book.py (do_process_cmd): Do not lump
8766         whitespace with l10n message.
8767
8768         * scm/framework-tex.scm (convert-to-ps):
8769         (convert-to-dvi): Do not use overly specific l10n messages.
8770
8771         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
8772
8773         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
8774         merge stderr with stdout.  
8775
8776 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8777
8778         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
8779         Neeracher).
8780
8781 2005-02-29  Graham Percival  <gperlist@shaw.ca>
8782
8783         * Documentation/user/instrument-notation.teily: moved
8784         \arpeggio to Basic.
8785
8786         * Documentation/user/advanced-notation.itely: Articulation to
8787         Basic, a bunch of stuff from Basic moved to Advanced.
8788
8789         * Documentation/user/basic.itely: swapped various sections,
8790         reorganized Basic.
8791
8792 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8793
8794         * flower/memory-stream.cc: 
8795         * flower/libc-extension.cc: Remove obsolete #undefs.
8796
8797         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
8798         more carefully.
8799
8800 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8801
8802         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
8803         dependency.
8804
8805         * VERSION (PACKAGE_NAME): release 2.5.13
8806
8807         * GNUmakefile.in (web-ext): don't ship ps.gz
8808
8809         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
8810         stdout
8811
8812 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8813
8814         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
8815         without libintl.  Now it compiles too.
8816
8817 2005-02-28  Graham Percival  <gperlist@shaw.ca>
8818
8819         * Documentation/user/basic-notation.itely,
8820         instument-notation.itely, advanced-notation.itely:
8821         split up contents of notation.itely.
8822
8823         * Documentation/user/notation.itely: file removed.
8824
8825         * Documentation/user/invoking.itely, converters.itely:
8826         moved convert-ly info to invoking.itely.
8827
8828         * Documentation/user/global.itely, changing-defaults.itely,
8829         sound-output.itexi: moved global settings, file layout, and
8830         sound into global.itely.
8831
8832         * Documentation/user/sound-output.itexi: file removed.
8833
8834         * Documentation/user/lilypond.tely: removed links to
8835         notation.itely and sound.itely.
8836
8837 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8838
8839         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
8840
8841         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
8842  
8843         * THANKS: add sponsor.
8844
8845         * scm/define-markup-commands.scm (with-url): new markup command.
8846
8847         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
8848         tagline.
8849         
8850         * scm/output-tex.scm (url-link): stub.
8851
8852         * scm/output-ps.scm (url-link): new function.
8853
8854         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
8855         ly:set-point-and-click
8856
8857 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8858
8859         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
8860         based on pdf-viewer setting.
8861
8862         * scm/framework-ps.scm (write-preamble): Find and set preferred
8863         pdf-viewer.
8864
8865 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8866
8867         * Documentation/user/point-and-click.itely: update for PDF point &
8868         click.
8869
8870         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
8871         editors based on EDITOR setting.
8872
8873 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8874
8875         * scm/*: Oops, more grand 2005 replace bits.
8876
8877 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8878
8879         * ps/music-drawing-routines.ps: new routine: insert PDF mark
8880
8881         * scm/output-ps.scm (grob-cause): point & click support for
8882         PostScript
8883
8884 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8885
8886         * lily/input-scheme.cc (LY_DEFINE): rename to
8887         ly:input-file-line-column
8888
8889 2005-02-26  Graham Percival  <gperlist@shaw.ca>
8890
8891         * Documentation/user/examples.itely: small fix from Steve Doonan.
8892
8893         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
8894
8895         * THANKS: added Yuval Harel.
8896
8897         * Documentation/user/{various}: inserted two spaces after a period.
8898
8899         * Documentation/user/lilypond.tely: added framework for reorg.
8900
8901         * Documentation/user/basic-notation.itely, instrument-notation.itely,
8902         advanced-notation.itely, global.itely: new files, placeholder for
8903         future reorg.
8904
8905 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
8906
8907         * Documentation/user/notation.itely: revamped Polyphony section
8908         
8909 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8910
8911         * Documentation/user/lilypond-book.itely (Music fragment options):
8912         doc fontload.
8913
8914         * Documentation/user/changing-defaults.itely (Text encoding): add
8915         fontload option to utf8 include
8916
8917         * scripts/lilypond-book.py (compose_ly): add fontload option
8918
8919         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
8920         force-eps-font-include option.
8921
8922         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
8923         black triangle
8924
8925         * Documentation/user/invoking.itely (Editor support): remove
8926         lilypond-latex section.
8927
8928         * scripts/lilypond-latex.py (Module): remove script.
8929
8930         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
8931         overwrite .log. 
8932
8933         * lily/main.cc: remove -m, --no-layout
8934
8935         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
8936         to define. We don't want to override fprintf everywhere.
8937
8938 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
8939
8940         * cygwin/lilypond.hint: 
8941         * cygwin/README.in: Update dependencies.
8942
8943         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
8944         Bugfix: do not pollute CPPFLAGS, LIBS.
8945
8946         * cygwin/mknetrel (extras): Cross compile fixes.
8947
8948         * ttftool/util.c: 
8949         * ttftool/ttfps.c: 
8950         * ttftool/ps.c: #include libc-extension.hh
8951
8952         * flower/include/libc-extension.hh:
8953         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
8954         wrapper using funopen.
8955         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
8956         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
8957
8958         * config.hh.in:
8959         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
8960         (AC_CHECK_HEADERS): Add libio.h
8961
8962         * scripts/convert-ly.py: Uniformize, internationalize.
8963         (2.5.2): Remove fatal encoding rule.
8964         (2.5.13): Handle latin1 encoding gracefully.
8965
8966 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
8967
8968         * HACKING: Fix line breaks.
8969
8970 2005-02-23  Werner Lemberg  <wl@gnu.org>
8971
8972         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
8973         contains those two files.
8974
8975 2005-02-21  Werner Lemberg  <wl@gnu.org>
8976
8977         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
8978         to improve overlap removal process.
8979
8980         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
8981         left and right ending.  This ensures better overlapping.
8982         Update all callers.
8983         ("lineprall"): Don't use draw_gridline to get better overlapping.
8984
8985 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8986
8987         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
8988
8989         * Documentation/topdocs/NEWS.tely (Top): oops.
8990
8991 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
8992
8993         * HACKING: new file.
8994
8995         * input/regression/utf8.ly (portuguese): added a portuguese example
8996         to show latin1 accents.
8997
8998 2005-02-21  Pal Benko  <benkop@freestart.hu>
8999
9000         * lily/mensural-ligature-engraver.cc:
9001         * lily/mensural-ligature.cc:
9002         * lily/include/mensural-ligature.hh: new algorithm implemented
9003
9004         * scm/define-grob-properties.scm: join-left killed (add-join may
9005         be used); join-left-amount changed to join-right-amount
9006
9007 2005-02-21  Graham Percival  <gperlist@shaw.ca>
9008
9009         * Documentation/user/notation.itely: small but urgent fix.
9010
9011 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
9012
9013         * lily/duration-scheme.cc: bugfix: correct parameters to
9014         SCM_ASSERT_TYPE.
9015
9016         * THANKS: added Pal.
9017
9018         * Documentation/user/notation.itely: bugfix: unTeXified
9019         $\\backslash$.  Bugfix: yet another glyph renaming victim:
9020         "timesig.*x/y" -> "timesig.*xy".
9021
9022 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9023         
9024         * VERSION (PACKAGE_NAME): release 2.5.12
9025
9026 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9027
9028         * ly/engraver-init.ly: set tieWaitForNote to #t by default
9029
9030         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
9031
9032         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
9033
9034         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
9035
9036 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
9037
9038         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
9039         latin1..utf-8.
9040
9041         * input/regression/stanza-number.ly:
9042         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
9043
9044         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
9045
9046 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9047
9048         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
9049         NEWS. Refer to website for older news.  
9050
9051         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
9052         .HTML. This should be done for specific servers only.
9053
9054         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
9055         .ly image examples.
9056
9057         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
9058         in layer 0 too.
9059
9060         * scm/define-context-properties.scm
9061         (all-user-translation-properties): add tieWaitForNote
9062
9063         * scm/define-grobs.scm (all-grob-descriptions): add
9064         Tie_column::before_line_breaking
9065
9066         * lily/tie.cc (get_column_rank): new function
9067
9068         * lily/tie-column.cc (before_line_breaking): new function.
9069         (werner_directions): take into account ties that start on
9070         different columns.  
9071
9072         * lily/score-engraver.cc (set_columns): move add_column() so we
9073         have column rank available.
9074
9075         * lily/tie.cc (get_column_rank): new function.
9076
9077         * input/regression/utf8.ly (japanese): add japanese lyrics.
9078
9079         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
9080
9081         * THANKS: add Steve D
9082
9083         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
9084         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
9085
9086 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
9087
9088         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
9089         to show harmonic notes
9090         * scm/define-markup-commands.scm: in \markup-by-number
9091         "dots-dot" -> "dots.dot" to show dotted notes
9092
9093 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9094
9095         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
9096
9097         * flower/memory-stream.cc (writer): new file.
9098
9099         * configure.in: add endian test.
9100
9101 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
9102
9103         * Documentation/user/examples.itely: small
9104         simplification/beautification
9105
9106         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
9107         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
9108         notation manual.
9109
9110         * lily/mensural-ligature.cc: bugfix: another few victims of the
9111         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9112
9113         * ly/gregorian-init.ly: commit some experimental code for hi-level
9114         ligature input language lying around here for several months.
9115
9116         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
9117         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
9118
9119         * lily/vaticana-ligature-engraver.cc: bugfix: another few
9120         "x-y-z"->"x.y.s-z" fixes.
9121
9122 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9123
9124         * scm/framework-pdf.scm (scm): new file
9125
9126         * lily/include/pdf.hh (class Pdf_file): new file.
9127
9128         * lily/pdf.cc (write_trailer): new file.
9129
9130 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
9131
9132         * input/regression/color.ly: new file
9133
9134         * lily/stencil.cc (interpret_stencil_expression):
9135         when a color expression is encountered: save current color,
9136         process the rest of the expression, and restore previous color.
9137
9138         * lily/system.cc (get_line): check all grobs for color property and
9139         prepare the stencil scheme expressions for further processing.
9140         Fix layer-loop.
9141
9142         * scm/define-grob-properties.scm: introduce the color property.
9143
9144         * scm/output-lib.scm: color helper functions.
9145
9146         * scm/output-ps.scm: introduce setcolor/resetcolor.
9147
9148 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9149
9150         * ly/*.ly, input/regression/*.ly: Added missing \version
9151         statements in some files.
9152
9153 2005-02-15  Graham Percival  <gperlist@shaw.ca>
9154
9155         * Documentation/user/notation.itely: minor editing.
9156
9157         * Documentation/user/converters.itely: updated convert-ly bugs.
9158
9159         * Documentation/user/lilypond-book.itely: add info about using
9160         feta characters in latex.
9161
9162 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9163
9164         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
9165
9166 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9167
9168         * scm/define-grob-properties.scm (all-user-grob-properties):
9169         removed 'dashed property.
9170
9171 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9172
9173         * scm/lily.scm (define-safe-public): new macro for defining
9174         variables that can be used in --safe mode. Use it in *.scm
9175         instead of manually setting safe-objects in safe-lily.scm.
9176
9177 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9178         
9179         * lily/slur.cc: Slur-dash patch by Bertalan.
9180
9181         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
9182
9183         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
9184
9185 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9186
9187         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
9188
9189 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9190
9191         * mf/GNUmakefile: teTeX-3.0 install fix.
9192
9193         * Cygwin patch from Bertalan.
9194
9195         * stepmake/stepmake/metafont-rules.make: Remove bashism.
9196
9197 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9198
9199         * GNUmakefile.in: 
9200         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
9201
9202         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
9203         2.0.x compatibility.
9204
9205 2005-02-08  Werner Lemberg  <wl@gnu.org>
9206
9207         * mf/feta-din-code.mf: Format; clean up code.
9208         Replace `---' with `--' plus explicit path directions.
9209         (linethickness#, stafflinethickness#): Remove.
9210         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
9211         ("dynamic s"): Improve shape.
9212         ("dynamic p"): Improve shape.
9213         Replace `draw' with better outline approximation.
9214         ("dynamic r"): Improve shape.
9215         Don't call `fill' and `draw' at the same time.
9216
9217 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9218
9219         * SConstruct (symlink):
9220         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
9221         build fix: add enc symlink.
9222
9223         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
9224
9225         Support for DESTDIR besides prefix=/foo
9226
9227         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
9228
9229         * stepmake/stepmake/*.make:
9230         * */GNUmakefile:
9231         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
9232
9233         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
9234
9235         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
9236         mawk in fontforge (date) test.
9237
9238 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9239
9240         * scm/font.scm (make-century-schoolbook-tree): add NCS as
9241         font-family=roman. Add Luxi Sans as sans
9242
9243 2005-02-07  Graham Percival  <gperlist@shaw.ca>
9244
9245         * Documentation/user/notation.itely: add warning about
9246         percent repeats and Voice contexts.
9247
9248         * Documentation/user/lilypond-book.itely: clarified the
9249         necessity of dvips -u arguments.
9250
9251 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
9252
9253         * THANKS: Added a bunch of bug hunters.
9254
9255 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9256
9257         * scm/framework-ps.scm (output-preview-framework): bugfix.
9258
9259         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
9260         o/ for chord modifier..
9261
9262         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
9263
9264         * lily/drum-note-performer.cc:  remove unused (thanks Michael
9265         Welsh Duggan). 
9266
9267 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9268
9269         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
9270
9271         * ly/titling-init.ly: Do not also print intstrument in header on
9272         first page.  Do not print page number on first and only page.
9273
9274 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9275
9276         * input/regression/*.ly: remove old-relative everywhere
9277
9278         * lily/music-sequence.cc (simultaneous_relative_callback): do
9279         what-if analysis on copy, not on original. Fixes old-relative
9280         compatibility.
9281
9282         * scm/backend-library.scm (postscript->png): space before
9283         --verbose.
9284         
9285 2005-02-05  Werner Lemberg  <wl@gnu.org>
9286
9287         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
9288         is defined.
9289
9290         * mf/feta-alphabet.mf: Define `staffsize#'.
9291         Include `feta-params.mf'.
9292         s/staffheight/design_size/.
9293
9294         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
9295
9296         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
9297
9298         * mf/feta-nummer-code.mf: Reformatted.
9299         (draw_six): Use outline intersection to avoid a self-intersecting
9300         path.
9301         ("Numeral comma"): Fix serious outline glitches.  This slightly
9302         changes the glyph shape.
9303         ("Numeral dash"): Use `draw_rounded_block'.
9304         ("Numeral dot"): Use `drawdot'.
9305         ("Numeral 1"): Assure identical tangent directions for the
9306         intersection points of paths.  The glyph shape improvement is only
9307         visible at very high magnifications.
9308         ("Numeral 2"): Use `solve' macro to make the lower right part of
9309         the glyph outline touch the x axis exactly.  This changes the
9310         glyph shape.
9311         Minor fixes for better overlap removal support.
9312         ("Numeral 4"): Make lefter corner `rounder'.
9313         ("Numeral 5"): Assure identical tangent directions for the
9314         intersection points of paths.  This improves the glyph shape at
9315         high magnifications.
9316         ("Numeral 7"): Use `solve' macro to make the upper right part of
9317         the glyph outline touch the metrics box exactly.  This changes the
9318         glyph shape.
9319         Avoid corner in the upper left part of the glyph (causing a minor
9320         shape change).
9321
9322         * mf/feta-ital-*.mf: Removed.  Unused.
9323
9324 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9325
9326         * VERSION (PATCH_LEVEL): release 2.5.11
9327
9328         * input/regression/fill-line-test.ly: new file.
9329
9330         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
9331         emmentaler name, eg. emmentaler-23. 
9332
9333 2005-02-04  Christian Hitz  <chhitz@gmx.net>
9334
9335         * scm/scm/define-markup-commands.scm (fill-line): rework for better
9336         alignment with centered texts
9337
9338         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
9339         list of paddings
9340
9341 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9342
9343         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
9344
9345         * lily/note-column.cc (translate_rests): call flush_extent_cache()
9346         of parents when translating rests. Fixes: c-chord-rest.ly 
9347
9348         * lily/include/dimension-cache.hh (struct Dimension_cache): add
9349         dimension_callback_ member.
9350
9351         * lily/grob.cc (flush_extent_cache): new function. Force recompute
9352         of extents.
9353
9354 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
9355
9356         * all but lily/*: The grand 2004/2005 replace.
9357
9358 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9359
9360         * lily/*: add space after ,  
9361
9362         * scm/music-functions.scm (has-request-chord): don't use
9363         ly:music-name anywhere. Fixes <<\\>> notation. 
9364
9365         * scm/define-markup-commands.scm (box): use font-size for
9366         padding. Fixes boxed-rehearsal-marks.ly
9367
9368         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
9369         identifier definition too, so foo = \lyrics { ...   } bar = #1
9370         doesn't complain about "bar" being LYRICS_STRING.
9371
9372         * lily/paper-def.cc (find_pango_font): new routine; Store
9373         pango_fonts in hash tab too. This is necessary for retrieving
9374         Pango_fonts::physical_font_tab() later on.
9375  
9376         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
9377         crash if psname is null.
9378
9379         * lily/lily-guile.cc (ly_hash2alist): new function
9380
9381         * Documentation/user/changing-defaults.itely (Text encoding):
9382         rewrite. 
9383
9384         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
9385         -> font_filename mapping.
9386
9387         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
9388         ly_pango_font_physical_fonts
9389
9390         * scm/framework-ps.scm (supplies-or-needs): extract names from
9391         physical Pango_fonts.
9392
9393         * utf8.ly: new file.
9394
9395 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9396
9397         * Documentation/user/changing-defaults.itely (Page layout): add
9398         doco about systemSeparatorMarkup.
9399
9400         * scm/page-layout.scm (default-page-make-stencil): add-to-page
9401         function.
9402         (default-page-make-stencil): insert system separators.
9403
9404         * scm/define-markup-commands.scm (hcenter): add
9405         (beam): add.
9406
9407 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9408
9409         * scm/output-ps.scm (ez-ball): reinstate ez notation.
9410
9411 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9412
9413         * lily/main.cc: Spell backend consistently.  Sort options.
9414
9415 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9416
9417         * scripts/lilypond-book.py (Module): revert @include.
9418         
9419 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9420
9421         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
9422         Bugfix: @include .tex (not .texi).  Small cleanups.
9423
9424         * stepmake/bin/add-html-footer.py (i18n): New function.
9425
9426 2005-01-31  Werner Lemberg  <wl@gnu.org>
9427
9428         * mf/feta-nummer.mf: Removed.  Unused.
9429
9430 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9431
9432         * lily/ : 2004 -> 2005 s&r
9433
9434         * scm/file-cache.scm (cached-file-contents): add file. Read each
9435         file only once.
9436
9437         * scm/font.scm (add-pango-fonts): change order. Medium weight is
9438         now default.
9439
9440         * VERSION: release 2.5.10
9441         
9442         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
9443
9444         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
9445
9446         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
9447         that both X and Y extents of bbox are non-nil.
9448
9449 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9450
9451         * scm/chord-name.scm (alteration->text-accidental-markup): change
9452         - to . 
9453
9454         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
9455
9456         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
9457
9458         * Documentation/user/invoking.itely (Invoking lilypond): add note
9459         about EPS backend.
9460
9461         * scm/framework-eps.scm: new file: create per-system/per-page EPS
9462         files for inclusion in lilypond-book document.
9463
9464         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
9465
9466         * input/tutorial/lbook-texi-test.texi: new file.
9467
9468         * scm/safe-lily.scm (safe-objects): add
9469         {begin,end}-of-line-(in)?visible as safe.
9470  
9471 2005-01-30  Graham Percival  <gperlist@shaw.ca>
9472
9473         * Documentation/user/changing-defaults.itely: fixed example
9474         of (dynamics).
9475
9476 2005-01-29  Graham Percival  <gperlist@shaw.ca>
9477
9478         * lily/main.cc: fix info about -o=FILE.
9479
9480 2005-01-29  Werner Lemberg  <wl@gnu.org>
9481
9482         * mf/feta-toevallig.mf ("Natural"): Completely changed the
9483         construction to assure smooth transition from straight to curved
9484         lines.
9485
9486 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9487
9488         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
9489         stencils.
9490
9491         * ps/lilyponddefs.ps: add start-page, start-system doesn't
9492         translate to top of page. Fixes alignment problems of
9493         lilypond-generated EPS files.
9494
9495 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9496
9497         * scm/part-combiner.scm (analyse-spanner-states): trigger on
9498         crescendo-end as well, since Decrescendo maybe ended with Stop
9499         Crescendo.). Fixes: partcombine-diminuendo.ly
9500
9501         * scm/script.scm (default-script-alist): swap portato symbols.
9502
9503         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
9504
9505         * lily/paper-outputter-scheme.cc (LY_DEFINE):
9506         ly:outputter-port. New function.
9507
9508         * scm/framework-ps.scm (output-classic-framework): dump a
9509         -systems.texi too
9510         (output-classic-framework): dump multiple systems on an "infinite"
9511         page EPS including fonts. 
9512
9513         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
9514         .eps files for both texi and tex formats. Use PNG coming from
9515         lilypond.
9516         
9517 2005-01-28  Graham Percival  <gperlist@shaw.ca>
9518
9519         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
9520
9521         * scripts/lilypond-latex.py: fix info about -o=FILE.
9522
9523 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9524
9525         * ly/generate-embedded-cff.ly: write .cff.ps files.
9526
9527         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
9528
9529         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
9530         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
9531
9532 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9533
9534         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
9535
9536 2005-01-28  Werner Lemberg  <wl@gnu.org>
9537
9538         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
9539         macros.
9540         (draw_bulb): Improved.
9541
9542         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
9543         metapost bug.
9544         (draw_pedal_P): Use soft_end_penstroke.
9545         (draw_pedal_d): Use soft_start_penstroke.
9546
9547         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
9548         path.
9549         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
9550         doesn't change the glyph shape.
9551
9552         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
9553         changing the shape) to avoid fontforge warnings.
9554
9555         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
9556         soft_end_penstroke and fix glyph shape.
9557
9558 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9559
9560         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
9561
9562 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9563
9564         * scm/define-markup-commands.scm (line): filter out empty stencils
9565         from line command.
9566
9567         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
9568         amount.
9569
9570 2005-01-27  Graham Percival  <gperlist@shaw.ca>
9571
9572         * Documentation/user/notation.itely: added info about what
9573         \voiceFoo does.  Also rewrote warning about marks at
9574         a line break.
9575
9576         * Documentation/user/changing-defaults.itely: added info
9577         about putting dynamics in parenthesis and brackets.
9578
9579 2005-01-27  Werner Lemberg  <wl@gnu.org>
9580
9581         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
9582
9583 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9584
9585         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
9586         portato-direction.ly
9587
9588         * lily/beam.cc (consider_auto_knees): add beam height to
9589         threshold. Fixes: knee-multiple-beam.ly
9590
9591         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
9592         pedal line spanners. Fixes: instrument-center-pedal.ly
9593
9594         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
9595         if encountering barline. Fixes: auto-beam-repeat.ly
9596
9597 2005-01-26  Werner Lemberg  <wl@gnu.org>
9598
9599         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
9600         overlapping.
9601
9602         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
9603         with inflections for the 1/2 sharp glyph.
9604
9605         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
9606         connection between `t' and `r'.
9607         Unify bulb with the rest of `r' to avoid grazing outlines which
9608         confuses the overlap removal algorithm of fontforge.
9609
9610         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
9611         inflections.
9612         (draw_cross): Fix shape to have uniform thickness in corners.
9613
9614         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
9615         to avoid an uneven number of self-intersections; this confuses
9616         fontforge.
9617         Fix a slight bug in the shape at left bottom (which is visible only
9618         at high magnifications).
9619         `Center' the stem horizontally to avoid overlapping.
9620
9621 2005-01-24  Werner Lemberg  <wl@gnu.org>
9622
9623         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
9624         to `asis'.
9625         (fet_begingroup): Save group name in string `feta_group'.
9626         (fet_endgroup): Updated.
9627         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
9628
9629         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
9630
9631         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
9632         in metapost.
9633
9634 2005-01-24  Graham Percival  <gperlist@shaw.ca>
9635
9636         * Documentation/user/notation.itely: really minor editing.
9637
9638 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9639
9640         * Documentation/user/examples.itely: minor editing.
9641
9642         * Documentation/user/changing-defaults.itely: minor editing.
9643
9644         * Documentation/user/notation.itely: clarified info on polyphony
9645         and \addlyrics.
9646
9647 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9648
9649         * scm/output-gnome.scm: 
9650         * scm/output-svg.scm:
9651         * scm/lily-library.scm (font-name-style): Update font name
9652         kludging for fontconfig use.
9653
9654 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
9655
9656         * scm/define-markup-commands.scm: Document right-align and
9657         larger markup commands. Remove "TODO" from the topmost comment
9658         "each markup function should have a doc string." More consistent
9659         use of new-lines.
9660
9661 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9662
9663         * Documentation/user/changing-defaults: removed info about
9664         copyright symbol, since it's likely to change soon.
9665         Added info about betweensystemspace.
9666
9667         * Documentation/user/notation.itely: minor fixes.
9668
9669         * Documentation/user/lilypond.tely,
9670         Documentation/user/music-glossary.tely: changed copyright
9671         date to 2005 instead of 2004.
9672
9673         * input/test/volta-chord-names.ly: added old example back.
9674
9675 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9676
9677         * mf/feta-beugel.mf: use design size 20 (not 15).
9678
9679         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
9680         change name to aybabtu completely
9681
9682 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9683
9684         * buildscripts/gen-emmentaler-scripts.py (outdir): add
9685         design_size to fontname
9686
9687 2005-01-19  Werner Lemberg  <wl@gnu.org>
9688
9689         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
9690         mf/feta-schrift.mf: s/p/pat/ if a path variable.
9691
9692         * mf/feta-autometric.mf (set_char_box): Add code which emits
9693         specials for mf2pt1 if run with metapost.
9694         (to_bp): New macro for mf2pt1.
9695
9696 2005-01-18  Graham Percival  <gperlist@shaw.ca>
9697
9698         * Documentation/user/changing-defaults: added info on
9699         creating a copyright symbol.
9700
9701 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9702
9703         * VERSION: release 2.5.9
9704         
9705 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
9706
9707         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
9708
9709         * Documentation/user/notation.itely: Document
9710         score-override-auto-beam-setting Fix documentation for
9711         revert-auto-beam-setting.
9712
9713 2005-01-18  Werner Lemberg  <wl@gnu.org>
9714
9715         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
9716         (procset): New function to define a procset resource.
9717         (ps-embed-pfa): New function to define a font resource.
9718         (setup): New function to define a `Setup' environment.
9719         (preamble): Use new functions.
9720
9721         * ps/lilypond.defs (init-lilypond-parameters): New function to
9722         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
9723
9724 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9725
9726         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
9727
9728 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
9729
9730         * scm/define-markup-commands.scm: Change number->markletter-string
9731         to take two arguments (vector number). Add number->mark-alphabet-vector
9732         and markalphabet markup command.
9733
9734         * scm/translation-functions.scm: Add format-mark-box-alphabet,
9735         format-mark-alphabet, format-mark-box-barnumbers and
9736         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
9737
9738 2005-01-17  Graham Percival  <gperlist@shaw.ca>
9739
9740         * Documentation/user/examples.itely: add SATB automatic piano
9741         reduction template.
9742
9743         * Documentation/user/notation.itely: added info about changing
9744         partcombine texts.  Also adds examples of alternate lyrics.
9745
9746         * Documentation/user/changing-defaults.itely: added warning
9747         about \RemoveEmptyStaffContext overriding previous changes.
9748
9749 2005-01-17  Werner Lemberg  <wl@gnu.org>
9750
9751         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
9752         feta-alphabet*.
9753
9754 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9755
9756         * python/lilylib.py (make_ps_images): don't do final showpage for
9757         multi-page documents.
9758         
9759         * VERSION (MY_PATCH_LEVEL): release 2.5.8
9760
9761 2005-01-16  Graham Percival  <gperlist@shaw.ca>
9762
9763         * Documentation/user/lilypond.tely: changed order of appendices;
9764         unified index should be last.
9765
9766         * Documentation/user/notation.itely: add example of key signatures
9767         and info about Staff.printKeyCancellation.
9768
9769 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9770
9771         * lily/include/repeated-music.hh (class Repeated_music): change
9772         into "namespace" class.
9773
9774         * lily/event.cc: remove Key_change_event.
9775
9776         * lily/include/transposed-music.hh (class Transposed_music): remove.
9777
9778         * lily/transposed-music.cc: remove
9779
9780         * lily/include/relative-music.hh: remove.
9781
9782         * lily/include/music-sequence.hh (struct Music_sequence): change
9783         into "namespace" class.
9784
9785         * lily/untransposable-music.cc (Module): remove
9786
9787         * lily/include/un-relativable-music.hh (Module): remove
9788
9789         * lily/include/untransposable-music.hh (Module): remove
9790
9791         * lily/include/music-list.hh (Module): remove file
9792
9793         * lily/un-relativable-music.cc: remove file.
9794
9795 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9796
9797         * lily/parser.yy: Compile fix.
9798
9799 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9800
9801         * lily/include/music.hh (class Music): unvirtualize transpose().
9802
9803         * lily/sequential-music.cc: remove file.
9804
9805         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
9806
9807         * lily/slur-scoring.cc (get_best_curve): only switch on
9808         DEBUG_SLUR_SCORING for non NDEBUG builds.
9809
9810         * lily/include/music.hh (class Music): replace Music::start_mom()
9811         by start-callback property
9812
9813         * lily/include/grace-music.hh: remove file. 
9814
9815         * lily/stem.cc (height): robustness fix.
9816
9817         * lily/time-scaled-music.cc: remove file.
9818
9819         * lily/include/music.hh (class Music): include SCM init argument.
9820         (class Music): replace Music::get_length() virtual by
9821         length-callback property everywhere.
9822
9823         * scripts/convert-ly.py (conv): add  # to \property scalar value.
9824
9825         * mf/GNUmakefile: don't install *list.ly
9826
9827 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9828
9829         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
9830
9831 2005-01-12  Werner Lemberg  <wl@gnu.org>
9832
9833         This patch addresses the following problems in the feta sources
9834         files which contribute to the fetaXX fonts.
9835
9836         . Many fixes for rasterization at low resolutions (consistent use of
9837           `vround' and `hround', integer shift values for paths, applying
9838           `eps' for mirrored paths, use of `define_whole_pixels' and
9839           friends, etc.) -- while this probably looks like a waste of time
9840           it has revealed deficiencies in some glyph shapes.  See comment at
9841           the end of feta-params.mf how vertical symmetry is achieved.
9842
9843         . The `---' operator has been replaced everywhere with `--'; this
9844           both improves and considerably reduces the font size after
9845           conversion with mf2pt1.
9846
9847         These change aren't explicitly mentioned below since virtually all
9848         glyphs are affected.
9849
9850         Other notable differences:
9851
9852         . Glyphs from feta-accordion.mf now have charboxes around the
9853           outline.
9854
9855         . Fixed incorrect charbox for `accDot'.
9856
9857         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
9858
9859         . Fixed position of the bow in the `upprall' glyph and its siblings.
9860
9861         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
9862           dependent on the staff line thickness to avoid touching the middle
9863           staff line at smaller sizes.
9864
9865         . Largely extended output for feta-testXX: Where useful, glyphs
9866         are shown both between and on staff lines.
9867
9868
9869         * mf/feta-params.mf (staff_space_rounded,
9870         stafflinethickness_rounded, linethickness_rounded,
9871         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
9872         Update all code which uses them where appropriate.
9873         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
9874         New variables used to control rasterization at low resolutions.  Set
9875         to zero if feta code is processed with metapost.
9876
9877         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
9878         (draw_rounded_block, draw_square_block): Updated to use `--' only.
9879         (flare_path): Updated.
9880         Make it work with `filldraw' (but only circular pens).
9881         (hfloor, vfloor, hceiling, vceiling): New macros.
9882
9883         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
9884         Use `draw' again in mf mode to have good pixel dropout control.
9885         Fix intersection points of horizontal lines with circle.
9886         ("accDot"): Fix parameters for set_char_box.
9887         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
9888         control.
9889
9890         * mf/feta-banier.mf: Updated.
9891
9892         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
9893         testing.
9894         (undraw_inside_ellipse): Remove `center' argument.  Update all
9895         callers.
9896         (draw_brevis): New macro, called by "Brevis notehead".
9897         (draw_whole_triangle_head): New macro, called by "Whole
9898         trianglehead".
9899         (draw_small_triangle_head): Use `filldraw'.
9900
9901         * mf/feta-eindelijk.mf: Remove useless global group.
9902         Updated.
9903
9904         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
9905         `filldraw'.
9906
9907         * mf/feta-pendaal.mf: Updated.
9908
9909         * mf/feta-puntje.mf: Updated.
9910
9911         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
9912         less points.
9913         ("Flageolet"): Use `draw' again in mf mode to have good pixel
9914         dropout control.
9915         ("Varied Coda"): Use `draw_block'.
9916         (draw_comma): Fix typo.
9917         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
9918         pixel dropout control.
9919
9920         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
9921         position of bow.
9922
9923         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
9924         sizes.
9925
9926         * mf/feta-toevallig.mf (remember_pic): New variable, used for
9927         testing.
9928         (draw_meta_sharp): Much simplified.
9929         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
9930
9931         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
9932
9933 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9934
9935         * Documentation/user/notation.itely (Ancient rests): Fix typo
9936         (thanks Anthony)
9937
9938 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9939
9940         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
9941
9942         * lily/main.cc (setup_paths): Add cff.
9943
9944         * mf/GNUmakefile (foe): Include actual target %.cff.
9945         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
9946
9947 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
9950         suffix for main_input_b_.
9951
9952         * scm/music-functions.scm (toplevel-music-functions):
9953         precompute music lengths for music expressions.  
9954
9955 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9956
9957         * lily/include/input.hh (class Input): new `end_' slot for end of
9958         input. Renamed defined_str0_ to start_.
9959
9960         * lily/input.cc (Input): Add Input::Input (Input const &) and
9961         remove Input::Input (Source_file*, char const *). Use the new
9962         slots.
9963         (set_location): method used by bison to propagate input
9964         locations (YYLLOC_DEFAULT).
9965         (end_line_number, end_column_number, step_forward): new methods
9966         
9967         * lily/input-scheme.cc (ly:input-both-locations): new function,
9968         similar to ly:input-location, but also return the end line and
9969         column.
9970
9971         * lily/include/includable-lexer.hh: 
9972         * lily/includable-lexer.cc: 
9973         * lily/include/lily-lexer.hh (class Lily_lexer): 
9974         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
9975         Includable_lexer to Lily_lexer, in order to update lexloc (the
9976         yylloc), a new slot of Lily_lexer.
9977         (here_input, LexerError): simplify by using the lexloc slot (aka
9978         yylloc)
9979
9980         * lily/lexer.ll: #define yylloc to use input locations (it may
9981         be useless here?). Fixed the #embedded_scm rule (step the location
9982         forward in order to skip the sharp sign before parsing the scheme
9983         expression)
9984
9985         * lily/include/lily-parser.hh (class Lily_parser): 
9986         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
9987         here_input()
9988         (parser_error): overload for more precise locations of errors.
9989
9990         * lily/parser.yy (YYLTYPE): set location type to Input
9991         (YYLLOC_DEFAULT): use Input::set_location()
9992         (yylex): add the YYLTYPE* location parameter.
9993         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
9994         Give an Input parameter to THIS->parser-error() for more accurate
9995         messages.
9996
9997 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9998
9999         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
10000
10001         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
10002         on BEAMQUANTING for non-NDEBUG builds.
10003
10004         * lily/stem.cc (head_count): performance: avoid String::String()
10005         inside oft called function.
10006
10007 2005-01-09  Graham Percival  <gperlist@shaw.ca>
10008
10009         * Documentation/user/examles.itely: attempted fix for broken
10010         string quartet template.
10011
10012         * Documentation/user/notation.itely: remove unnecessary broken
10013         link.
10014
10015 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10016
10017         * VERSION (PACKAGE_NAME): release 2.5.7
10018
10019 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10020
10021         * config.make.in (METAFONT): Append -progname=mf, fixes use with
10022         mf-nowin for teTeX-3.0.  Backportme.
10023
10024         * scm/output-svg.scm (utf8-string): New function.
10025
10026         * scm/output-gnome.scm (utf8-string): New function.
10027         (otf-name-mangling): Remove.
10028
10029         * lily/pango-font.cc (Pango_font): Use font string iso font
10030         filename for utf8-text.
10031
10032         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
10033         name.
10034
10035 2005-01-08  Graham Percival  <gperlist@shaw.ca>
10036
10037         * Documentation/user/notation.itely: add info about
10038         Staff.extraNatural = ##f in Pitches section.  Also
10039         fixed some minor issues in the Vocal music section.
10040
10041 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10042
10043         * scm/output-ps.scm (white-text): comment out Helvetica font,
10044         which is broken for my GS install.
10045
10046         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
10047         which provides a tighter bbox.
10048
10049         * scm/define-grobs.scm (all-grob-descriptions): remove all
10050         extra-offsets from definitions.
10051
10052 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
10053
10054         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
10055         add tuning for 4-string bass and some common 4/5-string banjo
10056         tunings.  New function (four-string-banjo) turns a 5-string tuning
10057         into a 4-string tuning.  New function
10058         (fret-number-tablature-format-banjo) computes correct fret numbers
10059         on 5-string banjos.
10060
10061         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
10062         Add beam correction to TabVoice.
10063
10064         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
10065         using bold font; makes tabs more readable.
10066
10067 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10068
10069         * lily/font-select.cc (get_font_by_design_size): don't make
10070         Modified_font_metric; this causes trouble, since we don't know the
10071         font magnification from inside Pango_font::text_stencil()
10072
10073         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
10074
10075         * Documentation/user/notation.itely (The Lyrics context): comment out
10076         broken {Small ensembles} link.
10077
10078         * scm/framework-svg.scm (output-framework): change calling convention.
10079
10080         * lily/object-key-dumper-scheme.cc: new file.
10081
10082         * lily/object-key-undumper-scheme.cc: new file.
10083
10084         * lily/tweak-registration-scheme.cc: new file.
10085
10086         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
10087
10088         * Documentation/user/examples.itely (String quartet): uncomment
10089         broken example.
10090
10091         * lily/font-config.cc: new file.
10092
10093 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10094
10095         * scm/output-svg.scm: 
10096         * scm/output-gnome.scm: s/bigcheese/emmentaler.
10097
10098         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
10099
10100 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10101
10102         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
10103         Add headers.
10104
10105         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
10106
10107 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10108
10109         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
10110
10111         * lily/include/main.hh: lose _b hungarian suffixes for global
10112         variables.
10113
10114         * lily/include/lily-guile-macros.hh: new file.
10115
10116         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
10117
10118         * lily/general-scheme.cc: new file. 
10119
10120         * lily/font-select.cc (get_font_by_design_size): retrieve
10121         PangoFont for (designsize . "pango-descr") entries.
10122
10123         * lily/lily-parser-scheme.cc: new file.
10124
10125         * lily/output-def-scheme.cc: new file.
10126
10127         * lily/paper-book-scheme.cc: new file.
10128
10129         * lily/duration-scheme.cc (LY_DEFINE): new file.
10130
10131         * lily/pitch-scheme.cc:  new file.
10132
10133         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
10134
10135 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10136
10137         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
10138
10139 2005-01-06  Graham Percival  <gperlist@shaw.ca>
10140
10141         * Documentation/user/notation.itely: minor editing.
10142
10143         * Documentation/user/changing-defaults: minor editing.
10144
10145         * Documentation/user/examples.itely: add template for
10146         string quartet part extraction; demonstrates tag.
10147
10148 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
10149
10150         * Documentation/user/notation.itely: documents
10151         format-mark-box-letters and format-mark-box-numbers
10152
10153         * scm/define-context-properties.scm: change comment.
10154
10155 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10156
10157         * scm/framework-ps.scm (output-classic-framework): new function:
10158         dump systems as separate .eps files (without fonts) and write a
10159         single collecting .tex file.
10160
10161 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10162
10163         * Documentation/user/notation.itely (Setting simple songs):
10164         Correct several errors in the equivalent formulation of
10165         \addlyrics. 
10166         (The Lyrics context): Corrected link to the SATB example.
10167
10168 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10169
10170         * scm/lily.scm (completize-formats): new function
10171         (postprocess-output): new function
10172
10173         * lily/paper-book.cc (classic_output): change calling
10174         convention. Give basename as first argument. 
10175         remove Paper_book::post_processing().
10176
10177         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
10178
10179 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10180
10181         * lily/paper-outputter.cc (LY_DEFINE): new function
10182         ly:outputter-close.
10183
10184         * lily/main.cc: change --format,-f to --backend,-b
10185
10186         * lily/include/main.hh: rename format to backend.
10187
10188         * scm/translation-functions.scm (format-mark-box-numbers): add.
10189         patch by Erlend Aasland
10190
10191 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10192
10193         * lily/pango-font.cc (text_stencil): dump string as
10194         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
10195
10196 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10197
10198         * configure.in (gui_b): Remove handy developer-only
10199         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
10200         CVS source installations (but break other non-default but correct
10201         PKG_CONFIG_PATH setups), as this is no longer developer-only.
10202
10203         * SConstruct: 
10204         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
10205         compatibility (backportme).
10206
10207         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
10208
10209 2005-01-03  Werner Lemberg  <wl@gnu.org>
10210
10211         Prepare glyph shapes for mf2pt1 conversion.
10212
10213         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
10214         (accDiscant, accFreebase, accStdbase): Replace `draw' with
10215         `penstroke'.
10216         (accDot): Use `drawdot'.
10217         (accBayanbase): Replace `draw' with `draw_gridline'.
10218         (print_penpos): Moved to feta-macros.mf.
10219         (accOldEE): Replace `filldraw' with `penstroke'.
10220         Replace `draw' with `penstroke' and `drawdot'.
10221
10222         * mf/feta-banier.mf: Code clean-up.
10223         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
10224         `fill'.
10225
10226         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
10227
10228         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
10229         paremeter to control drawing of labels.  Update all callers.
10230
10231         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
10232         (new_bulb): Return a bulb as a single path.  To do that, it now
10233         takes some more parameters.  Updated all callers.
10234         (draw_gclef): Major clean-up.  `draw' has been replaced with
10235         `penstroke', unnecessary outlines have been removed.
10236         Remove (unused) gnome-canvas code.
10237
10238         * mf/feta-macros.mf (print_penpos): New macro (from
10239         feta-accordion.mf).
10240         Other minor fixes.
10241
10242         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
10243         ("Pedal dot"): Use `drawdot'.
10244         (draw_pedal_P): Add parameter to control drawing of labels.  Update
10245         all callers.
10246         Fix shape at top.
10247         (draw_pedal_e): Add parameter to control drawing of labels.  Update
10248         all callers.
10249         (draw_pedal_d): Add parameter to control drawing of labels.  Update
10250         all callers.
10251         Revert drawing direction.
10252
10253         * mf/feta-schrift.mf (draw_fermata): Use single path.
10254         (draw_short_fermata): Replace `filldraw' with `fill'.
10255         (draw_long_fermata, draw_very_long_fermata): Replace calls to
10256         `draw_rounded_block' with a single path.
10257         ("Thumb"): Draw full circle instead of mirroring segments.
10258         (draw_accent): New macro.
10259         ("> accent", "espr"): Use it.
10260         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
10261         ("open (unstopped)"): Draw full circle instead of mirroring
10262         segments.
10263         (draw_vee): Removed.
10264         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
10265         ("Downbow"): Replace calls to `draw_rounded_block' with a single
10266         path.
10267         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
10268         partial pieces drawn with `fill' -- these do still overlap with the
10269         stem of the `t' but just once, not multiple times so that fontforge
10270         can handle it gracefully.
10271         Change other parts of the glyph so that fontforge's overlapping
10272         algorithm reliably works.
10273         (draw_heel): Replace `draw' with `fill'.
10274         (draw_toe): Use `draw_accent' instead of `draw_vee'.
10275         ("Flageolet"): Replace `draw' with `penstroke'.
10276         ("Segno"): Replace `filldraw' with `penstroke'.
10277         Replace `draw' with `drawdot'.
10278         ("Coda"): Replace `fill' with `penstroke', using a single path.
10279         ("Varied Coda"): Use less overlapping paths.
10280         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
10281         single path.
10282
10283         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
10284         group to better control the `labels' command.
10285         Rename argument to `offset' and use it actually.  Update all
10286         callers.
10287         Replace `filldraw' with `fill'.
10288         ("mordent", "prallmordent", "upmordent", "downmordent",
10289         "lineprall"): Replace `draw' with `draw_gridline'.
10290         ("upprall", "downprall"): Replace `draw' with `fill'.
10291
10292         * mf/feta-timesig.mf: Formatting.
10293
10294         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
10295         to...
10296         ("Flat"): Here.
10297         (draw_paren): Move code to draw labels to...
10298         ("Right Parenthesis"): Here.
10299
10300 2005-01-02  Graham Percival <gperlist@shaw.ca>
10301
10302         * Documentation/user/notation.itely: add example of \setTextDecresc
10303         and \setTextDim.
10304
10305 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
10306
10307         * scm/define-markup-commands.scm :  fix glyph-strings of
10308         accidentals and \note-by-number
10309
10310 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10311
10312         * VERSION: 2.5.6 released.
10313         
10314         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
10315
10316         * input/regression/new-markup-scheme.ly: oops. font-family=music
10317         -> font-encoding fetaMusic.  
10318
10319         * lily/main.cc: put default to PS.
10320
10321         * lily/tfm.cc: idem.
10322
10323         * lily/afm.cc: idem.
10324
10325         * lily/include/modified-font-metric.hh (struct
10326         Modified_font_metric): remove coding_scheme() method.
10327
10328         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
10329
10330         * scripts/convert-ly.py (conv): crash on encountering \encoding.
10331
10332         * input/les-nereides.ly: convert to utf8
10333
10334         * lily/modified-font-metric.cc (text_dimension): idem.
10335
10336         * lily/parser.yy (TODO): idem.
10337
10338         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
10339
10340         * lily/lexer.ll: remove encoding
10341
10342         * scm/framework-ps.scm (output-variables): separately scale the
10343         page to mm 
10344
10345         * lily/pango-font.cc (Pango_font): fix scaling.
10346
10347         * lily/font-metric.cc (design_size): design_size returns a
10348         dimension now as well.
10349
10350 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10351
10352         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
10353         brace generation. 
10354
10355         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
10356
10357 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10358
10359         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
10360         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
10361
10362 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10363
10364         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
10365         in first run as well.
10366
10367         * scm/paper.scm (layout-set-staff-size): use text-font-size in
10368         dimension less points (ie. 12 = 12 point)
10369
10370         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
10371
10372         * lily/all-font-metrics.cc (find_pango_font): set description_
10373
10374         * lily/pango-font.cc (text_stencil): export size as well.
10375         (text_stencil): fix scaling and extents box.
10376
10377 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10378
10379         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
10380
10381         * Documentation/user/invoking.itely (Invoking lilypond): document
10382         texstr
10383
10384         * scripts/convert-ly.py (conv): add ancient rules.
10385
10386         * scm/clef.scm (c0-pitch-alist): replace - with .
10387
10388         * scripts/lilypond-book.py (process_snippets): add texstr support.
10389
10390         * scm/framework-texstr.scm (header): change extension to .textmetrics
10391
10392         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
10393         -f tex.
10394
10395         * lily/text-metrics.cc: new file.
10396         (try_load_text_metrics): new function
10397
10398         * lily/include/text-metrics.hh: new file.
10399
10400 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10401
10402         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
10403         ly_scheme_function to ly_lily_module_constant.
10404
10405         * lily/modified-font-metric.cc (text_dimension): try
10406         lookup_tex_text_dimension() first.
10407
10408         * lily/tfm.cc: new function ly:load-text-dimensions
10409
10410 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10411
10412         * scm/output-texstr.scm (text): use \lilygetmetrics
10413
10414         * scm/framework-texstr.scm (header): dump in new format.
10415
10416         * tex/lilypond-tex-metrics: new file.
10417         
10418 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
10419
10420         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
10421         mapping.
10422         (index_to_charcode): New method.
10423
10424         * scm/output-ps.scm (glyph-string): 
10425         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
10426
10427 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
10428
10429         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
10430         implement fully, need FONT to get to charcode.
10431
10432         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
10433
10434         * scm: Cleanups.
10435
10436         * Documentation/user/changing-defaults.itely: Fix internalsrefs
10437         {Tunable context properties},
10438         {All layout objects},
10439         {Music definitions}.
10440
10441 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10442
10443         * VERSION: release 2.5.5
10444         
10445         * lily/main.cc: use TeX as default output format.
10446
10447         * flower/file-path.cc (find): try to open directly as well, so we
10448         find absolute path files. 
10449
10450         * lily/pango-select.cc: new file.
10451
10452         * scm/framework-ps.scm: remove all encoding code. 
10453         load pfb/pfa for PangoFont too.
10454         
10455         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
10456
10457 2004-12-22  Werner Lemberg  <wl@gnu.org>
10458
10459         Prepare glyph shapes for mf2pt1 conversion.
10460
10461         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
10462
10463         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
10464         (define_triangle_shape): Use it to replace `draw' with `fill' and
10465         `unfill'.  Update all callers.
10466         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
10467         (draw_cross): Ditto.
10468         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
10469         Use penrazor for better conversion with mf2pt1.
10470         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
10471         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
10472         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
10473         draw_la_head, draw_ti_head): Replace `filldraw' with
10474         `fill'.  Update all callers.
10475
10476 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10477
10478         * lily/paper-book.cc (output): revert: only allow a single output
10479         format.
10480
10481         * lily/include/pango-font.hh: new file.
10482
10483         * lily/pango-font.cc: new file.
10484
10485         * lily/font-metric.cc (text_stencil): new routine
10486
10487         * lily/all-font-metrics.cc (find_pango_font): new routine.
10488
10489         * lily/include/font-metric.hh (struct Font_metric): add
10490         text_stencil()
10491
10492         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
10493
10494 2004-12-22  Werner Lemberg  <wl@gnu.org>
10495
10496         Prepare glyph shapes for mf2pt1 conversion.
10497
10498         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
10499
10500         * mf/feta-toevallig.mf: Formatting.
10501         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
10502         ("Natural"): Fix paths to allow better postprocessing.
10503         (draw_meta_flat): Use `z3l' as additional point in path to get
10504         better conversion with mf2pt1.
10505         Other minor cleanups.
10506         ("3/4 Flat"): Add auxiliary points and modify path to replace
10507         `draw' with `fill'.
10508         ("Double Sharp"): Mirror path segments instead of picture elements
10509         to get a single outline.
10510         Modify path to replace `filldraw' with `fill'.
10511
10512 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10513
10514         * input/test/unfold-all-repeats.ly: added file back.
10515
10516         * Documentation/user/notation.itely,
10517         Documentation/user/programming-interface.itely
10518         Documentation/user/changing-defaults.itely: fixed misc broken
10519         links to input/test/ files.
10520
10521 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10522
10523         * tex/texinfo.tex: Update.  We should not be distributing this,
10524         but since we do, use latest version.
10525
10526         * Documentation/user/macros.itexi: Comment-out \fetaflat,
10527         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
10528         macros for feta glyphs.
10529
10530 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10531
10532         * Documentation/user/changing-defaults.itely: fix index for set.
10533
10534         * Documentation/user/converters.itely: added convert-ly bugs list
10535         from CVS.
10536
10537 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10538
10539         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
10540         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
10541         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
10542         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
10543
10544         * mf/GNUmakefile (pfa_warning): Use less broken check.
10545
10546         * python/lilylib.py (setup_environment): Remove cruft from
10547         GS_FONTPATH.
10548
10549         * configure.in: Bump mftrace requirement to 1.1.1.
10550
10551 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10552
10553         * scm/output-svg.scm (beam): Use polygon.
10554
10555         * scm/lily-library.scm: Bugfix.
10556
10557         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
10558
10559         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
10560
10561 2004-12-19  Werner Lemberg  <wl@gnu.org>
10562
10563         Prepare glyph shapes for mf2pt1 conversion.
10564
10565         * mf/feta-eindelijk: Some formatting.
10566         (multi_rest_x, multi_beam_height): Removed.  Unused.
10567         ("Quarter rest"): Use `intersectiontimes' to create a single
10568         outline.
10569         (rest_crook): Removed.  Unused.
10570         (draw_rest_bulb): Return path (without filling).  Update callers.
10571         Simplified.
10572         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
10573         "128th rest"): Simplify `pat'.
10574         Create single outline.
10575
10576 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10577
10578         * mf/GNUmakefile (ALL_GEN_FILES):
10579         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
10580
10581         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
10582         function.
10583
10584 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10585
10586         * scm/output-texstr.scm (placebox): add routine
10587
10588         * VERSION (PACKAGE_NAME): release 2.5.4
10589
10590         * scm/framework-texstr.scm (output-framework): new file.  
10591
10592         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
10593         processing.
10594
10595         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
10596
10597         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
10598         rule.
10599
10600         * configure.in (gui_b): bump mftrace requirement to 1.1.0
10601
10602         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
10603
10604         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
10605
10606 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10607
10608         * scm/framework-svg.scm (dump-page): Implement landscape.
10609
10610 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10611
10612         * lily/main.cc (setup_paths): Add svg to search path.
10613
10614         * scm/output-svg.scm:
10615         * scm/framework-svg.scm: Add pageSet.  Update.
10616         (dump-fonts): New function.
10617         (output-framework): Use it.
10618
10619         * mf/GNUmakefile: 
10620         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
10621
10622 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10623
10624         * tex/lilyponddefs.tex: comment out new ifpdf code.
10625
10626 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10627
10628         * GNUmakefile.in: 
10629         * SConstruct (symlink): Replace afm by otf.
10630
10631         * scm/framework-gnome.scm (gnome-main): Remove invocation of
10632         ly:pango-add-afm-decoder.
10633
10634         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
10635
10636 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10637
10638         * scm/output-ps.scm (new-text): don't access t glyph for getting
10639         space dimension.
10640
10641         * ly/init.ly: warn about \version
10642
10643         * lily/lexer.ll: set version-seen?
10644
10645 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10646
10647         * scm/output-svg.scm (string->entities): Update.
10648
10649 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10650
10651         * lily/main.cc (setup_paths): replace afm by otf for path. 
10652
10653         * lily/pangofc-afm-decoder.cc: remove.
10654
10655         * lily/include/pangofc-afm-decoder.hh: remove.
10656
10657         * scm/framework-scm.scm (output-framework): new file.
10658
10659         * mf/GNUmakefile: remove SAUTER_FONTS.
10660         remove SVG/sodipodi hacks.
10661
10662         * scm/lily-library.scm (stderr): move stderr.
10663
10664         * mf/GNUmakefile: remove AFM support.
10665
10666         * buildscripts/mf-to-table.py (base): remove AFM support.
10667
10668         * lily/open-type-font.cc (design_size): use design_size
10669
10670 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
10671
10672         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
10673
10674 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10675
10676         * mf/GNUmakefile: Generate combined aybabtu info.
10677         * mf/aybabtu.pe.in (i): Load it.
10678
10679         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
10680         are not symbols.
10681
10682         * lily/include/open-type-font.hh (count): New method.
10683
10684         * mf/aybabtu.pe.in: Typo.
10685
10686         * Documentation/user/out/lilypond-internals.nexi (Scheme
10687         functions): Typo.
10688
10689         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
10690
10691 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10692
10693         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
10694         subfonts.
10695
10696         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
10697
10698         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
10699         (tex-font-command-raw): new function.
10700
10701         * lily/include/virtual-font-metric.hh (Module): remove file
10702
10703         * lily/virtual-font-metric.cc (Module): remove file.
10704         
10705
10706         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
10707         (get_indexed_char): read bbox from lily table if present.
10708
10709 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10710
10711         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
10712         aybabtu.subfonts
10713
10714         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
10715         global glyphname. Enables more than 64 glyphs in the OTF.
10716
10717 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10718
10719         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
10720         braces.
10721
10722         * lily/open-type-font.cc (design_size): Use 12 as default for
10723         design size.
10724
10725         * mf/aybabtu.pe.in: New file.  Merge all our braces.
10726
10727         * mf/GNUmakefile: Generate aybabtu.
10728
10729         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
10730
10731 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10732
10733         * scm/lily-library.scm (char->unicode-index): Remove.
10734
10735         * scm/output-gnome.scm (text): Bugfix for plain string input.
10736         Updates.
10737
10738         * scm/output-svg.scm (svg-font): Add weight to font selection.
10739
10740 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10741
10742         * Documentation/topdocs/INSTALL.texi (Top): Point to
10743         buildscripts/out/clean-fonts instead of
10744         buildscripts/clean-fonts.sh. 
10745
10746 2004-12-13  Graham Percival  <gperlist@shaw.ca>
10747
10748         * input/regression/figured-bass.ly: attempt to clarify text.
10749
10750         * Documentation/user/notation.tely: add cindex for tag, attempt to
10751         add figured bass example.
10752
10753         * Documentation/user/changing-defaults: basic editing.
10754
10755 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10756
10757         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
10758
10759         * lily/open-type-font.cc (LY_DEFINE): new function
10760         ly:font-sub-fonts
10761
10762         * lily/include/font-metric.hh (struct Font_metric): new method
10763         sub_fonts()
10764
10765         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
10766         . with - in add.stem.
10767         
10768 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10769
10770         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
10771         and fetaDynamic.
10772
10773         * lily/rest.cc (glyph_name): Change - to . .
10774
10775         * scm/output-gnome.scm (text): Hello world, again.
10776
10777         * scm/output-svg.scm (named-glyph): New function.  Hello world!
10778
10779         * lily/modified-font-metric.cc (index_to_charcode): New method.
10780
10781         * lily/include/font-metric.hh (index_to_charcode): New function.
10782
10783         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
10784         new function.
10785         (ly:font-glyph-to-index): Remove.
10786
10787 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10788
10789         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
10790
10791         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
10792
10793         * lily/open-type-font.cc (load_scheme_table): new function
10794
10795         * lily/dots.cc (print): replace - 
10796
10797         * lily/open-type-font.cc (attachment_point): new function.
10798         (load_table): read LILC table
10799
10800         * buildscripts/gen-bigcheese-scripts.py (Module): new
10801         file. Generate FF scripts.
10802
10803         * mf/feta-din10.mf: idem.
10804
10805         * mf/feta-nummer10.mf: remove mf files.
10806
10807         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
10808
10809 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10810
10811         * lily/lily-guile.cc: Use scm_from_locale_stringn.
10812
10813         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
10814         compatibility.
10815
10816 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10817
10818         * lily/open-type-font.cc (get_indexed_char): scale metrics by
10819         design-size and units_per_EM.
10820
10821         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
10822
10823 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10824
10825         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
10826         does not crash fontforge.
10827
10828         * scm/lily-library.scm (char->unicode-index): Hack to map onto
10829         PUA.
10830
10831 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10832
10833         * scm/framework-ps.scm (ps-embed-cff): new function.
10834
10835         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
10836
10837 2004-12-12  Werner Lemberg  <wl@gnu.org>
10838
10839         * mf/bigcheese.pe.in: Add PUA mapping.
10840         Don't create Type 42 but bare CFF font.
10841
10842 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10843
10844         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
10845         within canvas boundaries.
10846
10847         * mf/merge.pe.in: Set font names, version, license GPL.
10848
10849         * make/substitute.make: Add FONTFORGE.
10850
10851         * config.make.in (FONTFORGE): Add.
10852
10853         * configure.in (gui_b): Use PATH_PROG for fontforge.
10854
10855 2004-12-11  Graham Percival  <gperlist@shaw.ca>
10856
10857         * scm/define-markup-commands.scm: add baseline-skip to info
10858         about \column.
10859
10860 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10861
10862         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
10863
10864         * scm/output-gnome.scm (named-glyph): Use it.
10865
10866         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
10867
10868         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
10869         (upper_string, lower_string, reverse_string): Remove.
10870
10871         * configure.in (fontforge): Reinstate version check.
10872
10873         * ly/engraver-init.ly: Fix clef glyph names.
10874
10875         * lily/time-signature.cc (special_time_signature): Fix fraction
10876         glyph names.
10877
10878 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10879
10880         * mf/merge.pe: new file.
10881
10882         * lily/freetype.cc: new file.
10883
10884         * lily/include/open-type-font.hh (class Open_type_font): new file.
10885
10886         * lily/include/freetype.hh: new file.
10887
10888         * lily/open-type-font.cc: new file.
10889
10890         * lily/all-font-metrics.cc (find_otf): new function.
10891
10892 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10893
10894         * lily/time-signature.cc (special_time_signature): Fix.
10895
10896         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
10897         GTK2 before checking for pango.  Fixes -fgnome.
10898
10899         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
10900         Scheme name.
10901
10902         * scm/define-markup-commands.scm:
10903         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
10904
10905         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
10906
10907         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
10908         date versions.  Fixes configure.
10909         (STEPMAKE_CHECK_VERSION): Support optional actual program version
10910         argument.
10911
10912 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10913
10914         * buildscripts/mf-to-table.py (write_ps_encoding): write real
10915         names in .enc
10916
10917         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
10918
10919 2004-12-09  Graham Percival  <gperlist@shaw.ca>
10920
10921         * Documentation/user/changing-defaults.itely: add info about
10922         make-dynamic-script
10923
10924         * Documentation/user/notation.itely: add link in dynamics to
10925         section about make-dynamic-script.
10926
10927 2004-12-09  Christian hitz  <chhitz@gmx.net>
10928
10929         * lily/lily-guile.cc: change MACOS_X to __APPLE__
10930
10931 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10932
10933         * buildscripts/mf-to-table.py (parse_logfile): use . for
10934         concatting name and group.
10935         (parse_logfile): use M for Minus (negative.)
10936
10937         * lily/include/type-swallow-translator.hh
10938         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
10939
10940         * lily/*.cc: cosmetics around = sign.
10941
10942         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
10943         lyric spacing on the penultimate column.
10944
10945 2004-12-05  Christian Hitz  <chhitz@gmx.net>
10946
10947         * configure.in:
10948         * lily/accidental-placement.cc:
10949         * lily/bar-line.cc:
10950         * lily/beam-concave.cc:
10951         * lily/beam-quanting.cc:
10952         * lily/beam.cc:
10953         * lily/bezier-bow.cc:
10954         * lily/bezier.cc:
10955         * lily/break-align-interface.cc:
10956         * lily/custos.cc:
10957         * lily/dimension-cache.cc:
10958         * lily/dot-column.cc:
10959         * lily/font-metric.cc:
10960         * lily/font-select.cc:
10961         * lily/gourlay-breaking.cc:
10962         * lily/grob-property.cc:
10963         * lily/grob.cc:
10964         * lily/lily-guile.cc:
10965         * lily/line-spanner.cc:
10966         * lily/lookup.cc:
10967         * lily/lyric-extender.cc:
10968         * lily/lyric-hyphen.cc:
10969         * lily/mensural-ligature.cc:
10970         * lily/midi-def.cc:
10971         * lily/misc.cc:
10972         * lily/note-collision.cc:
10973         * lily/note-column.cc:
10974         * lily/note-head.cc:
10975         * lily/paper-outputter.cc:
10976         * lily/percent-repeat-item.cc:
10977         * lily/rest-collision.cc:
10978         * lily/side-position-interface.cc:
10979         * lily/simple-spacer.cc:
10980         * lily/slur-configuration.cc:
10981         * lily/slur-scoring.cc:
10982         * lily/slur.cc:
10983         * lily/spaceable-grob.cc:
10984         * lily/spacing-spanner.cc:
10985         * lily/spanner.cc:
10986         * lily/staff-symbol-referencer.cc:
10987         * lily/stem.cc:
10988         * lily/stencil.cc:
10989         * lily/system-start-delimiter.cc:
10990         * lily/system.cc:
10991         * lily/text-item.cc:
10992         * lily/tie.cc:
10993         * lily/tuplet-bracket.cc:
10994         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
10995         <cmath> beacause isinf/isnan is undefined in <cmath>
10996
10997 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10998
10999         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
11000
11001 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11002
11003         * VERSION: release 2.5.3
11004         
11005 2004-11-29  Arno Waschk <arno@arnowaschk.de>
11006
11007         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
11008
11009 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11010
11011         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
11012
11013         * lily/note-head.cc (internal_print): always try the "s" head if
11014         u/d not found.
11015
11016         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
11017
11018 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11019
11020         * mf/parmesan-heads.mf (overdone_heads): typos.
11021
11022 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11023
11024         * lily/parser.yy (markup): in markups, { .. } without command
11025         before are also flattened, ie \line must be explicitely used.
11026
11027         * Documentation/user/changing-defaults.itely:
11028         * Documentation/user/notation.itely: 
11029         * input/wilhelmus.ly: 
11030         * input/regression/instrument-name-markup.ly: 
11031         * input/regression/markup-score.ly: 
11032         * input/regression/new-markup-scheme.ly: 
11033         * input/regression/new-markup-syntax.ly: 
11034         * input/test/coriolan-margin.ly: use \line in markups where
11035         appropriate
11036         
11037 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11038
11039         * scm/new-markup.scm (map-markup-command-list): helper function
11040         used in parser.yy to map markup commands on a markup list.
11041
11042         * lily/parser.yy: get rid off < > in markups by treating { } as
11043         real lists.
11044
11045         * lily/lexer.ll: remove < > from markup lexer mode.
11046
11047         * scripts/convert-ly.py (conv): add rule for converting 
11048         \markup < > to \markup { }
11049
11050         * ly/titling-init.ly: 
11051         * input/test/coriolan-margin.ly: 
11052         * input/regression/new-markup-syntax.ly: 
11053         * input/regression/new-markup-scheme.ly: 
11054         * input/regression/multi-measure-rest-text.ly: 
11055         * input/regression/markup-stack.ly: 
11056         * input/regression/markup-score.ly: 
11057         * input/regression/instrument-name-markup.ly: 
11058         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
11059         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
11060         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
11061         * input/wilhelmus.ly: 
11062         * Documentation/user/notation.itely: 
11063         * Documentation/user/music-glossary.tely: 
11064         * Documentation/user/changing-defaults.itely: change < > to { } in
11065         markups
11066
11067 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11068
11069         * lily/accidental-placement.cc (position_accidentals): shortcut if
11070         no accidentals to place.
11071
11072 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11073
11074         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
11075         typo s/ly:dimension ?/ly:dimension?/
11076
11077         * input/regression/lily-in-scheme.ly: 
11078         * input/regression/music-function.ly: 
11079         * ly/spanners-init.ly (assertBeamSlope): 
11080         * scm/music-functions.scm (def-grace-function): add the paper
11081         argument to music function definitions.
11082
11083 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11084
11085         * lily/moment.cc (LY_DEFINE):
11086         ly:moment-main-{denominator,numberator}, new function.
11087
11088         * lily/score-engraver.cc (typeset_all): assign to column on basis
11089         of axis-group-parent-X setting.
11090
11091         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
11092         add_element() on basis of axis-group-parent-Y setting.
11093
11094         * lily/grob.cc: add axis-group-parent-{XY} properties.
11095
11096         * input/regression/spacing-stick-out.ly: new file.
11097
11098         * lily/simple-spacer.cc (add_columns): use binary search for
11099         setting column rods. Changes O(n^2) to O(n log(n)) for
11100         constructing spacing problem from columns.
11101         (add_columns): read allow-outside-line to make sure no texts stick
11102         out.
11103         (solve): Simple_spacer::is_active() only determines
11104         satisfies_constraints_ for non-ragged typesetting.
11105
11106         * lily/simultaneous-music.cc (to_relative_octave): only set
11107         old_relative_used if return pitch actually changed.
11108
11109         * scm/define-context-properties.scm
11110         (all-user-translation-properties): change to match implementation.
11111
11112         * python/lilylib.py: Replace re.match by re.search and adds "-c
11113         showpage" to the gs command line (Johannes Schindelin)
11114
11115         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
11116         before processing. Prevents crash when inf is in the extent.
11117
11118         * scm/define-markup-commands.scm (note-by-number): add "s" to
11119         "noteheads-" glyphname.
11120  
11121         * lily/parser.yy (Generic_prefix_music): supply parser argument to
11122         music function as well.
11123         
11124 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11125
11126         * VERSION: release 2.5.2
11127
11128         * Documentation/user/changing-defaults.itely (Creating titles):
11129         add breakbefore variable.
11130
11131         * lily/paper-book.cc (set_system_penalty): new function. Set
11132         penalty_ based on breakBefore setting
11133
11134         * lily/context-specced-music-iterator.cc (construct_children):
11135         interpret special context id $uniqueContextId 
11136
11137         * lily/context.cc (create_unique_context): new method. Move
11138         creation of unique (\new) contexts into interpreting phase. This
11139         makes
11140
11141           foo= \new Staff ..
11142           << \foo \foo >>
11143
11144         produce 2 staves.
11145         
11146
11147         * scm/define-music-properties.scm (all-music-properties): add
11148         quoted-voice-direction
11149
11150         * ly/music-functions-init.ly: killCues function.
11151
11152         * scm/music-functions.scm (cue-substitute): move creation of voice
11153         contexts further to the back. 
11154
11155 2004-11-25  Werner Lemberg  <wl@gnu.org>
11156
11157         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
11158         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
11159
11160 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
11161
11162         * buildscripts/guile-gnome.sh: Fixed typo.
11163
11164 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11165
11166         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
11167
11168         * scripts/abc2ly.py (dump_slyrics): add ord(). 
11169
11170         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
11171         to regular engraver. 
11172
11173 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11174
11175         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
11176
11177 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11178
11179         * scm/define-markup-commands.scm (fill-line): Typo.
11180
11181         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
11182         and newer.
11183
11184 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
11185
11186         * ly/dynamic-scripts-init.ly: Fixed typo.
11187
11188 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11189
11190         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
11191         note-head, to have different attachment points for up and down.
11192
11193         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
11194
11195         * mf/feta-generic.mf (else): remove solfa.
11196
11197         * mf/feta-bolletjes.mf (tishape): remove unicode test.
11198
11199         * scm/define-context-properties.scm
11200         (all-user-translation-properties): add shapeNoteStyles property.
11201
11202         * lily/shape-note-heads-engraver.cc (process_music): new file.
11203
11204         * lily/event.cc (transpose): call Event::transpose() for
11205         transposing the tonic.
11206
11207 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11208
11209         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
11210         Unicode/OpenType and AFM.
11211
11212         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
11213
11214 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11215
11216         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
11217
11218         * lily/context.cc (Context): unprotect key from ctor.
11219
11220         * scm/stencil.scm (stack-lines): return empty-stencil if argument
11221         is '()
11222         (stack-stencils): idem.
11223
11224         * Documentation/user/changing-defaults.itely (Creating titles):
11225         document new title layout options.
11226
11227         * lily/parser.yy (lilypond_header_body): copy previous
11228         $globalheader if present.
11229
11230         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
11231         ly:module-copy
11232         
11233         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
11234
11235         * scm/titling.scm: remove old titling functions
11236
11237         * lily/stencil.cc (translate): remove absolute dimension.
11238
11239         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
11240         via markup.
11241
11242         * scm/page-layout.scm (marked-up-headfoot): create header/footer
11243         field from user-supplied markup
11244
11245         * scm/define-markup-commands.scm (on-the-fly): new markup
11246         command. Enter SCM markup procedure directly in Scheme.
11247         (fromproperty): new markup command. Read markup from props argument.
11248
11249         * scm/titling.scm (marked-up-title): create title via
11250         user-specified markup. 
11251
11252         * scm/define-markup-commands.scm (column): remove empty stencils
11253         from column.
11254
11255         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
11256         not have side-effect of creating variable stub.
11257
11258         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
11259
11260 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11261
11262         * scm/encoding.scm (coding-alist): 
11263         * scm/font.scm (add-ec-fonts):
11264         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
11265         Extended-TeX-Font-Encoding---Latin.
11266
11267         * lily/side-position-interface.cc (general_side_position): Add
11268         actual offset to error message (avoid constant error messages).
11269
11270         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
11271         block.
11272
11273         * lily/font-select.cc (select_encoded_font)
11274         (get_font_by_mag_step, get_font_by_design_size): 
11275         * lily/modified-font-metric.cc (Modified_font_metric): 
11276         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
11277
11278         * scm/encoding.scm (coding-alist): Add fetaDynamic.
11279         (read-encoding-file): Bugfix: do not require space after bracket.
11280
11281         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
11282         these do not exist.
11283
11284 2004-11-20  Graham Percival  <gperlist@shaw.ca>
11285
11286         * Documentation/user/notation.itely: added info about typesetting
11287         boxed bar numbers.
11288
11289 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11290
11291         * flower/interval.cc (T_to_string): gcc4 fixes.
11292
11293         * scm/define-markup-commands.scm (fill-line): use
11294         stack-stencils. This fixes problems with putting already centered
11295         stencils in a line.
11296
11297         * VERSION: release 2.5.1
11298
11299         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
11300
11301 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11302
11303         * input/example-[1-3].ly: simplify.
11304
11305         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
11306
11307         * scm/output-ps.scm (new-text): new function. Use glyphshow to
11308         show glyphs.
11309
11310         * scm/encoding.scm (decode-byte-string): new function.
11311
11312         * scripts/convert-ly.py (conv): add warning about
11313         set-global-staff-size.
11314
11315         * Doxyfile: add. 
11316
11317         * scripts/convert-ly.py (conv): add raggedlastbottom rule
11318         (conv): warn for TextSpanner split.
11319         (conv): warn for textheight.
11320
11321 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11322
11323         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
11324         building the documentation, info with images are installed.
11325         (final-install): Fix description.  Mention sourcing of login
11326         scripts (instead of running).
11327
11328 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11329
11330         * Debian lmodern support.  Note that LilyPond will issue warnings
11331         
11332             no such encoding: "FontSpecific"
11333
11334           The font selection mechanism wants to get the encoding from the
11335           font itself, but the idea of lmodern is that it is usable with
11336           different encodings, ie, Lily should get the encoding from the
11337           font tree, rather than the font itself.  This would require some
11338           more work.
11339         
11340         * configure.in: Test for and accept lmodern if EC fonts not found.
11341
11342         * scm/framework-tex.scm (font-load-command): TeX font name
11343         mangling for latin1 encoded cork-lm fonts.
11344         (convert-to-ps): Load lm.map if available.
11345
11346         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
11347         available.
11348
11349         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
11350
11351         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
11352         available.
11353
11354         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
11355         path for absolute file name, that is silly.
11356
11357         * lily/score-engraver.cc (initialize): 
11358
11359         * Documentation/user/GNUmakefile (local-install-info): Invoke
11360         install-info --remove first.
11361
11362         * #include cleanup (Andreas Scherer).
11363
11364 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
11365
11366         * input/test/script-abbreviations.ly: fix typos.
11367
11368 2004-11-17  Werner Lemberg  <wl@gnu.org>
11369
11370         * python/lilylib.py (options_help_str): Support pretty-printing of
11371         newlines in fourth element of option description.
11372
11373         * scripts/lilypond-book.py (option_definitions): Use new lilylib
11374         feature.
11375         Sort options.
11376
11377         * Documentation/user/lilypond-book.itely: Finish update.
11378
11379 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11380
11381         * Documentation/user/macros.itexi: Add comment about \command.
11382
11383         * Documentation/user/lilypond.tely:
11384         * Documentation/user/lilypond-book.itely: Fix names of lilypond
11385         and lilypond-book nodes, so that `info lilypond' visits the manual
11386         at top level, and `info lilypond-book' visits the lilypond-book
11387         section.
11388
11389         * Documentation/user/GNUmakefile (local-install-info): Fix rules
11390         and packager messages.
11391
11392         * lily/pangofc-afm-decoder.cc: Update test.
11393
11394 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11395
11396         * scm/lily-library.scm (char->unicode-index): New function.
11397
11398         * scm/output-gnome.scm: 
11399         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
11400
11401         * Proper naming of file name throughout; s/filename/file[-_]name/.
11402
11403         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
11404
11405         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
11406
11407 2004-11-16  Werner Lemberg  <wl@gnu.org>
11408
11409         * scripts/lilypond-book.py: The Lord has commanded me to use only
11410         tabs for indentation.  Your humble servant obeys.
11411
11412 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11413
11414         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
11415         including font, if LilyPond-feta font is only feta font in path.
11416
11417         * scm/output-gnome.scm (text): Revert to file name of font if font
11418         has no name.  Fixes ec font selection.
11419         (char): Bugfix: do not utf8 twice.  Fixes clefs.
11420
11421         * scm/framework-svg.scm:
11422         * scm/output-svg.scm: New file.  TODO: figure out how to
11423         do character by index in font.
11424
11425         * scm/output-sodipodi.scm: Remove.
11426
11427         * scm/output-ps.scm (stem): Remove.
11428
11429 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
11430
11431         * scm/output-gnome.scm (beam): New function.
11432         (slur): Round corners.
11433         (round-filled-box): Round corners.
11434
11435 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11436
11437         * scm/output-gnome.scm (beam): add function.
11438         (draw-line): new routine.
11439         (dashed-line): stub; call draw-line
11440         (polygon): new routine.
11441
11442 2004-11-15  Werner Lemberg  <wl@gnu.org>
11443
11444         * Documentation/user/lilypond-book.itely: Revise section on
11445         lilypond-book options.
11446         Other minor fixes.
11447
11448         * scripts/lilypond-book.py: Change indentation to 4.
11449         Minor formatting.
11450
11451 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11452
11453         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
11454         grobs that have tweaks specced.
11455         
11456 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
11457
11458         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
11459
11460 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11461
11462         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
11463         actual char #, not 0 based index.
11464
11465         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
11466
11467         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
11468         Warning: do make -C mf clean.
11469
11470         * lily/context-property.cc: Compile fix.
11471
11472         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
11473         Grok ec-fonts, braces and dynamics.
11474
11475         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
11476
11477 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11478
11479         * lily/include/tweak-registration.hh: new file.
11480
11481         * lily/tweak-registration.cc: new file.
11482
11483         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
11484         saving tweaks.
11485
11486         * scm/output-gnome.scm (text): comment dribble.
11487
11488 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11489
11490         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
11491
11492         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
11493         path-def before using.  Fixes muchtomany slurs in wrong places
11494         bug.
11495
11496 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11497
11498         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
11499
11500         * lily/include/object-key-undumper.hh (Module): new file.
11501
11502         * lily/object-key-undumper.cc (Module): New file. Deserialize
11503         keys. SCM bindings
11504
11505         * lily/object-key-dumper.cc (Object_key_dumper): idem.
11506         Provide SCM bindings.
11507
11508         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
11509         new file. Serialize object keys.
11510         
11511         * lily/object-key.cc (dump): new function.
11512         (as_scheme): new virtual function
11513         (undump): new function
11514         (undumpers): new table.
11515
11516         * lily/include/global-context.hh (Context): take \score key upon init.
11517
11518         * lily/object-key-dumper.cc (serialize_key): new file.
11519
11520         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
11521
11522         * lily/lily-lexer.cc: remove \quote.
11523
11524         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
11525
11526         * lily/context.cc (Context): take key argument in ctor.
11527         (create_context): new function
11528
11529         * lily/grob.cc (Grob): take key argument in ctor.  
11530
11531         * lily/lilypond-key.cc (do_compare): new file.
11532
11533         * lily/object-key.cc (Object_key): new file.
11534
11535         * lily/include/object-key.hh (class Object_key): new file.
11536
11537         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
11538
11539 2004-11-13  Graham Percival  <gperlist@shaw.ca>
11540
11541         * Documentation/user/lilypond-book.itely: add small warning about
11542         noindent default in lilypond-book.
11543
11544         * Documentation/user/converters.itely: add examples for convert-ly.
11545
11546         * Documentation/user/examples.itely: change version string in templates
11547         to 2.4.0.
11548
11549 2004-11-12  Karl Hammar  <karl@aspodata.se>
11550
11551         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
11552         cmdline, use xargs instead (backportme)
11553
11554 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
11555         
11556         * Documentation/user/: Numerous fixes in the user manual.
11557
11558 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11559
11560         * lily/parser.yy (re_rhythmed_music): search music expression for
11561         context-id, surround by \new Voice if not found. Fixes:
11562         addlyrics-second-staff.ly
11563
11564         * VERSION: 2.5.0 released.
11565         
11566 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11567
11568         * Documentation/index.html.in: Fix url to one big page.  (backportme)
11569
11570         * Documentation/user/GNUmakefile: Separate rules for split and
11571         unsplit html documents.  Remove perl massaging.  (backportme)
11572
11573 2004-11-11  Graham Percival  <gperlist@shaw.ca>
11574
11575         * Documentation/user/lilypond-book.itely: add short warning about
11576         \lilypond{} in LaTeX docs.
11577
11578 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11579
11580         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
11581         found.  (backportme)
11582
11583         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
11584         version requirement.  (backportme)
11585
11586         * configure.in: Be explicit about old versions of
11587         ec-fonts-mtraced.  (backportme)
11588
11589         * lily/context-selector.cc (set_tweaks): New function.
11590         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
11591         web with -DTWEAK.
11592
11593         * Documentation/user/introduction.itely (Automated engraving):
11594         Remove fragment option.  Fixes web.
11595
11596         * lily/context-property.cc (make_item_from_properties):
11597         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
11598         #ifdef.
11599
11600         * scm/define-context-properties.scm
11601         (all-internal-translation-properties): Add tweakRank and tweakCount.
11602
11603         * lily/grob.cc: 
11604         * scm/define-grob-properties.scm (all-internal-grob-properties):
11605         Add tweak-rank and tweak-count.
11606
11607 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11608
11609         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
11610         New function.
11611         (text): Use them.
11612
11613         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
11614         animated/opaque grob dragging tweaks.
11615
11616         * buildscripts/guile-gnome.sh: Update.
11617
11618 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11619
11620         * scm/define-grobs.scm (all-grob-descriptions): Added
11621         line-interface to the LigatureBracket object.
11622
11623 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11624
11625         * scm/framework-gnome.scm (item-event): Support non-animated mouse
11626         dragging tweaks.
11627
11628         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
11629
11630         * lily/context-selector.cc (store_context): New function.
11631
11632         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
11633         (store_grob): New function.
11634         (identify_grob): Add Moment parameter.
11635
11636         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
11637         exists.
11638
11639         * scm/framework-gnome.scm (save-tweaks): Write as alist.
11640
11641 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11642
11643         * scm/framework-gnome.scm (item-event): Print grob id.
11644         (save-tweaks): New function.
11645         (tweak): New funtion.
11646         (item-event): Use it, bound to arrow keys.
11647
11648         * lily/context-property.cc (make_item_from_properties): Register grob.
11649         * lily/context.cc (add_context): Register context.
11650
11651         * lily/include/context-selector.hh:
11652         * lily/include/grob-selector.hh:
11653         * lily/context-selector.cc:
11654         * lily/grob-selector.cc: New file.
11655
11656 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11657
11658         * lily/slur.cc: add 'positions to interface
11659
11660         * lily/main.cc: reinstate PS as standard output format. 
11661
11662         * scm/framework-tex.scm (output-preview-framework): print systems
11663         up to first non title system.
11664
11665         * lily/grace-engraver.cc (start_translation_timestep): split
11666         scm_cadddr
11667         
11668 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11669
11670         * lily/quote-iterator.cc (Module): remove old quote-iterator
11671
11672         * scm/define-music-types.scm (music-descriptions): move
11673         NewQuoteMusic over QuoteMusic
11674
11675         * Documentation/user/notation.itely (Formatting cue notes): use
11676         \cueDuring.
11677
11678         * lily/new-quote-iterator.cc (quote_ok): new function.
11679
11680         * input/regression/quote-cue-during.ly: new file.
11681
11682         * input/regression/quote-grace.ly: new file.
11683
11684         * scm/define-context-properties.scm (Module): change definition of
11685         graceSettings
11686
11687         * lily/context-property.cc (Module): rename from
11688         translator-property.cc
11689
11690         * lily/context.cc (context_name_symbol): new function
11691
11692         * lily/grace-engraver.cc: new file. Set properties for grobs based
11693         on the grace-ness of now_moment().
11694
11695         * scm/music-functions.scm (add-grace-property): use list
11696         iso. vector for graceSettings
11697         remove set-{start,stop}-grace-properties. 
11698
11699         * lily/new-quote-iterator.cc (construct_children): set
11700         quote_outlet_ if no quoted-context-{id,type} specified.
11701
11702         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
11703
11704         * lily/parser.yy (command_element): remove \quote.
11705
11706         * ly/music-functions-init.ly (location): add quoteDuring music
11707         function. 
11708
11709         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
11710         optional semicolon. (backportme)
11711
11712 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11713
11714         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
11715         need to link to GUILE et al.
11716
11717 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11718
11719         * scm/define-music-properties.scm (all-music-properties): add
11720         quoted-context-type, quoted-context-id.
11721
11722         * scm/lily.scm (type-check-list): new function.
11723         
11724         * scm/lily-library.scm: new file. Generic library routines.
11725
11726         * lily/parser.yy (Generic_prefix_music): move typechecking out of
11727         parser.
11728
11729         * ly/music-functions-init.ly: add quoteDuring function.
11730
11731         * lily/include/music-iterator.hh (class Music_iterator): rename
11732         set_translator -> set_context
11733
11734         * lily/parser.yy (Generic_prefix_music_scm): add
11735         MUSIC_FUNCTION_SCM_SCM_MUSIC
11736
11737         * scm/lily.scm (sanitize-command-option): new function. (backportme)
11738
11739         * scm/framework-tex.scm (header): sanitize TeX paper size.
11740         (backportme)
11741
11742 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11743
11744         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
11745
11746         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
11747
11748         * scm/framework-tex.scm (font-load-command): Use T1 if no
11749         font-encoding set.  (backportme)
11750
11751         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
11752         exists before converting.  (backportme)
11753
11754         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
11755         exists before converting.  (backportme)
11756         (convert-to-ps): Remove .ps file if it exists before
11757         converting.  (backportme)
11758
11759         * lily/lexer.ll: Remove extra progress newline, use present tense.
11760
11761         * scm/paper.scm (paper-alist): public.
11762         * scm/framework-tex.scm (convert-to-ps):
11763         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
11764         command line.
11765
11766 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11767
11768         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
11769
11770         * lily/recording-group-engraver.cc (derived_mark): mark
11771         now_events_. (backportme)
11772
11773 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11774
11775         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
11776
11777         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
11778         invoking latex. (backportme.)
11779
11780         * lily/stem.cc (off_callback): center stems for all rest stems.
11781
11782 2004-11-05  Werner Lemberg  <wl@gnu.org>
11783
11784         * Documentation/user/lilypond.tely: Add more guidelines for writing
11785         lilypond texinfo documents.
11786
11787 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
11788
11789         * Documentation/index.html.in: remove <hr>.
11790
11791         * THANKS: change 2.3 to 2.4.
11792
11793 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
11794
11795         * scm/output-gnome.scm: More fontconfig comment.
11796
11797 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
11798
11799         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
11800         <package> directory in $(builddir)/share according with
11801         PACKAGE_NAME defined in the VERSION file.
11802
11803 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11804
11805         * lily/beam.cc (rest_collision_callback): use local beam
11806         multiplicity.
11807
11808         * input/regression/stem-stemlet.ly: new file.
11809
11810         * lily/stem.cc (add_head): store rests as well.
11811
11812         * scm/define-grob-properties.scm (all-user-grob-properties): add
11813         stemlet-length
11814
11815         * lily/stem.cc: store rests as well.
11816         
11817         * input/regression/new-slur.ly: mention forcing.
11818
11819 2004-11-04  Werner Lemberg  <wl@gnu.org>
11820
11821         * Documentation/user/*: A new round of layout fixes and document
11822         structure cleanup.
11823
11824 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
11825
11826         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
11827
11828 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11829
11830         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
11831
11832 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11833
11834         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
11835
11836         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
11837
11838         * lily/main.cc (main): Invoke identify.
11839
11840         * scm/lily.scm (postscript->pdf): Remove progress newline.
11841         Write progress to stderr.
11842
11843         * lily/paper-book.cc (output): Remove progress newline.
11844
11845         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
11846         gettext on user messages, and remove whitespace.
11847
11848         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
11849
11850         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
11851         argv[0] (Thomas Scharkowski).
11852
11853         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
11854         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
11855         for ec-fonts-mtraced.
11856
11857         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
11858         --srcdir build (Bertalan).
11859
11860         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
11861         headers and library too (Laura Conrad).
11862
11863         * Documentation/topdocs/INSTALL.texi (Top): Mention development
11864         package for guile too (Laura Conrad).
11865
11866         * lily/main.cc (usage): Typo.
11867
11868 2004-11-02  Werner Lemberg  <wl@gnu.org>
11869
11870         * Documentation/user/notation.ly: More fixes to improve appearance.
11871
11872         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
11873         better output for multicolumn tables.
11874
11875 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11876
11877         * lily/main.cc (dir_info): Fixed typo in the printouts.
11878
11879 2004-11-01  Werner Lemberg  <wl@gnu.org>
11880
11881         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
11882         of output.
11883         Set `per_line' to 2; replace hard-coded value with it.
11884
11885         * Documentation/user/*: Many fixes to improve appearance of
11886         printed manual.
11887
11888 2004-11-01  Werner Lemberg  <wl@gnu.org>
11889
11890         * Documentation/user/changing-defaults.itely,
11891         Documentation/user/notation.ly,
11892         Documentation/user/programming-interface.itely: Use @/.
11893         Fix formatting of some lilypond snippets and tables.
11894
11895         * scripts/lilypond-book.py (compose_ly): Provide useful default
11896         for LINEWIDTH in `override'.
11897
11898 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11899
11900         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
11901
11902 2004-10-31  Werner Lemberg  <wl@gnu.org>
11903
11904         Resetting @exampleindent to `5' gives ugly results with texinfo's
11905         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
11906         (if not quoting) to change @exampleindent only locally.
11907
11908         * scripts/lilypond-book.py (NOQUOTE): New variable.
11909         (output) [LATEX]: Remove AFTER and BEFORE.
11910         [TEXINFO]: Remove AFTER and BEFORE.
11911         Fix QUOTE and VERBATIM pattern.
11912         Add NOQUOTE pattern.
11913         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
11914         and BEFORE.
11915         [output_texinfo]: Use NOQUOTE.
11916
11917 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11918
11919         * Documentation/user/changing-defaults.itely: clarify paper
11920         size commands with correct info.
11921
11922         * Documentation/user/lilypond-book.itely: add more docs for
11923         filename extensions.
11924
11925 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11926
11927         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
11928         (PATCH_LEVEL): start 2.5.0.
11929
11930 #Local variables:
11931 #coding: utf-8
11932 #End:
11933