]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
make sure vsize and VPOS are
[lilypond.git] / ChangeLog
1 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2
3         * flower/include/std-vector.hh: make sure vsize and VPOS are
4         defined for binary_search_bounds().
5
6         * flower/std-string.cc (std): add to_string(long unsigned).
7
8         * configure.in (gui_b): excise std_string option.
9         (gui_b): excise std_vector option.
10
11         * flower/string.cc (Module): excise flower array & string
12
13         * flower/include/std-string.hh: excise flower string.
14
15         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
16
17         * python/convertrules.py (lilypond_version_re_str): require
18         only numbers and dots in \version string.
19
20 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
21
22         * lily/system-start-delimiter.cc (print): allow style = text too.
23
24         * lily/system-start-delimiter-engraver.cc
25         (acknowledge_system_start_text): new function, also add add to
26         support of system-start-text (instrument names). This fixes
27         instrument names on piano staves.
28
29         * lily/instrument-name-engraver.cc: rewrite. Use
30         system-start-delimiter approach. This save memory and cpu.
31
32         * scm/define-grobs.scm (all-grob-descriptions): remove
33         instrument-name from break-alignment.
34
35         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
36
37 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
38
39         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
40         jobserver going.
41
42         * configure.in (std_vector): On by default.
43
44         * lily/include/font-metric.hh:
45         * lily/include/tfm-reader.hh: 
46         * lily/include/spanner.hh: Use unsigned for indices and sizes.
47         Update users.
48
49         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
50
51 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
52
53         * VERSION (PACKAGE_NAME): 2.7.31
54
55         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
56         EPS edge at 0, but take minimum with left-overshoot. This fixes
57         cut off system start delims. 
58
59         * lily/instrument-name-engraver.cc (stop_translation_timestep):
60         hack: add to axis group if not added yet. This fixes hara kiri'd
61         piano staves.
62
63         * lily/hara-kiri-group-spanner.cc
64         (force_hara_kiri_in_y_parent_callback): fix signatures.
65
66         * lily/hairpin.cc (print): check next hairpin to see whether or
67         not to be continuing.
68
69 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
70
71         * Remove trailing whitespace from makefiles.
72         
73         * flower/include/std-vector.hh: Add binary_search_bounds workaround
74         for earlier gcc.
75
76         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
77
78         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
79
80         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
81
82         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
83
84         * configure.in: Use it.
85
86 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
87
88         * scm/music-functions.scm (pitch-of-note): new function.
89
90         * ly/music-functions-init.ly: add \octave and \addquote
91
92         * lily/parser.yy (music_function_chord_body): softcode \octave.
93         (lilypond_header): softcode \addquote
94
95 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
96
97         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
98         array.hh, parray.hh at all.  Getting ready to flip the
99         configure default.
100
101         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
102
103         * lily/source-file.cc (file::get_line): Help binary_search_bounds
104         a bit.
105
106         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
107
108 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
109
110         * flower/include/array.hh: typo. 
111
112 2006-02-02  Graham Percival  <gpermus@gmail.com>
113
114         * Documentation/user/advanced-notation.itely: doc "\#" in text.
115
116 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
117
118         * flower/include/pqueue.hh: Derive from std::vector.
119
120         * flower/include/parray.hh: Conform to std::vector interface.
121         Update users.
122
123 2006-02-02  Graham Percival  <gpermus@gmail.com>
124
125         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
126
127 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
128
129         * flower/file-path.cc (is_file): remove if 0 section.
130
131         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
132         selecting afii61352.
133
134 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
135
136         * flower/include/std-vector.hh (boundary): Oops, reverse.
137
138         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
139         remove superfluous `d'.
140
141         * flower/include/std-vector.hh (boundary, top): Detach from class.
142         Remove empty vector shell.
143
144         * flower/include/array.hh (reverse, swap): Detach from class.
145         Update users.
146         
147         * flower/include/std-vector.hh
148         * flower/include/array.hh (concat): Globally change to insert ().
149
150         
151         * flower/include/std-vector.hh
152         * flower/include/parray.hh
153         * flower/include/array.hh (elem, elem_ref): Globally replace by
154         at ().
155
156 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
157
158         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
159
160         * python/convertrules.py (FatalConversionError.sub_cxx_id):
161         anticipate on identifier substitutions.
162
163 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
164
165         * flower/include/std-vector.hh (insert): Remove, replace by
166         std::vector interface.  Update callers.
167
168         * flower/include/array.icc (insert): Change signature to
169         match std::vector interface.
170         
171         * flower/include/array.icc (vector_sort): Bugfix.
172
173 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
174
175         * lily/parser.yy (output_def_head_with_mode_switch): new
176         production. Result: dashes and underscores may be used in the
177         \paper block.
178
179         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
180
181         * python/convertrules.py (conv): oops. One slash too much.
182
183 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
184
185         * flower/include/std-vector.hh (sort): Remove, replace by
186         ::vector_sort.  Update callers.
187
188         * flower/include/std-vector.hh (slice): Remove.  Update callers.
189         (sort): Bugfix.
190
191         * flower/test-std.cc (vector_sort): New test.
192
193 2006-02-01  Graham Percival  <gpermus@gmail.com>
194
195         * Documentation/user/putting.itely: fixes from Erik.
196
197 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
198
199         * flower/test-std.cc: Add simple unit test for vector migration.
200
201         * stepmake/stepmake/test*: Unit test support.
202
203         * flower/include/std-vector.hh (del): Remove.  Use erase (),
204         update callers.
205
206         * flower/include/array.hh (begin, end): Add.
207         (del, get): Remove.
208
209 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
210
211         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
212         std::string not String. 
213
214         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
215         iso UINT_MAX.
216
217         * lily/prob.cc (Prob): copy type_ too.
218
219         * lily/lily-guile.cc (mangle_cxx_identifier): new
220         function. Class_bla::foo_bar_[px] ->
221         ly:class-bla::foo-bar[?!]. Changes throughout
222
223 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
224
225         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
226
227         * lily/beam.cc (calc_direction): take dir from visible stem in
228         degenerate case.
229
230 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
231
232         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
233         Fix -1, >=0 boundary checks for unsigned vsize.
234
235         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
236         loop for unsigned vsize.
237
238         * configure.in (--enable-std-vector): New option.
239         (--enable-std-string): On by default.
240
241         * flower/include/std-vector.hh: New file.  Enable switch to
242         std::vector, update client code.
243
244 2006-01-30  Graham Percival  <gpermus@gmail.com>
245
246         * scm/document-translation.scm: clarify "this context is also
247         known as".  Thanks, Werner!
248
249         * Documentation/user/putting.itely: small fixes from Don Blaheta.
250
251         * Documentation/user/invoking.itely: small fix from Don.
252
253 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
254
255         * scm/lily.scm (define-scheme-options): rename option
256         preview-include-book-title to book-title-preview
257         (define-scheme-options): move force-eps-font-include (from paper
258         block) to eps-font-include -d option.
259
260         * VERSION (PATCH_LEVEL): release 2.7.30
261
262         * input/bach-schenker.ly (staffPiano): new file.
263
264         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
265
266         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
267         credits to Nicolas.
268
269         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
270
271         * ps/lilyponddefs.ps: remove start-system, stop-system,
272         start-page fluff. This saves putting { } code on the stack, fixing
273         stack overflows when including EPS files.
274
275 2006-01-29  Graham Percival  <gpermus@gmail.com>
276
277         * Documentation/user/putting.itely: minor fixes (comments on -devel).
278
279 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
280
281         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
282
283 2006-01-28  Graham Percival  <gpermus@gmail.com>
284
285         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
286
287 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
288
289         * input/mutopia/claop.py: Update.
290
291 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
292
293         * input/regression/completion-heads.ly (texidoc): fix.
294
295         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
296
297         * lily/tie-formatting-problem.cc
298         (set_ties_config_standard_directions): use abs iso fabs for ints.
299
300         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
301
302         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
303         little less than noteheight, to prevent overlaps in chords.
304
305         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
306         head, and fudge stem-attachment.
307
308         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
309
310         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
311
312 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
313
314         * lily/main.cc (main): Debugging aid: catch exceptions.
315
316         * flower/std-string.cc (to_string): Robustification.  Fixes midi
317         output with std::string.
318
319 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
320
321         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
322
323 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
324
325         * Fix -DSTRING_UTILS_INLINED.
326
327 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
328
329         * VERSION (PATCH_LEVEL): release 2.7.29
330
331         * lily/relocate.cc (setup_paths): mingw uses std string too.
332
333         * lily/*.cc: various fixes for substr(ARG).
334
335         * lily/sustain-pedal.cc (print): 
336
337         * flower/file-name.cc (slashify): use std strings.
338
339         * flower/string-convert.cc: remove publib.h
340
341         * scm/define-markup-commands.scm (verbatim-file): new markup
342         command \verbatim-file
343
344         * Documentation/topdocs/NEWS.tely: fixup URLs
345
346         * input/regression/alignment-vertical-manual-setting.ly (Module):
347         new file.
348
349         * lily/align-interface.cc (align_elements_to_extents): overwrite
350         translations with numbers in alignment-offsets from left bound
351
352         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
353         (page-translate-systems): new function: take into account Y-offset.
354
355         * Documentation/topdocs/NEWS.tely (Top): document new features.
356
357         * input/regression/page-layout-manual-position.ly (Module): new
358         file.
359
360 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
361
362         * flower/file-path.cc (path::parse_path): Oops.
363
364         * Finish std::string interface.  For now, use std:: marker
365         throughout for easy s/r.
366
367 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
368
369         * Documentation/user/putting.itely (Score is a single musical
370         expression): typo.
371         (Score is a single musical expression): more typos.
372
373         * scm/page.scm (annotate-space-left): thinko.
374         (annotate-page): more thinkos.
375
376 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
377
378         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
379         for different \score blocks separately.
380         (post-process-pages): put write-page-layout into paper block.
381
382         * lily/output-def.cc (get_parser): new file.
383
384         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
385         file.
386
387         * lily/include/output-def.hh (class Output_def): add parser_ member.
388
389         * input/regression/page-layout-twopass.ly (Module): new file.
390
391         * scm/lily.scm: remove cpp hack.
392
393         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
394
395 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
396
397         * GNUmakefile.in (c-clean): New target.
398
399         * flower/include/std-string.hh: String/std::string compatibility:
400         Use NPOS for `not found' (iso -1), use ssize for length () and pos
401         type.
402
403         * flower/rational.cc: 
404         * flower/include/rational.hh: 
405
406         * flower/offset.cc: 
407         * flower/include/offset.hh: 
408
409         * flower/interval.cc: 
410         * flower/include/interval.hh: 
411
412         * flower/string-convert.cc: 
413         * flower/include/string-convert.hh: Use std::string [interface].
414         Update callers.
415
416 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
417
418         * Documentation/index.html.in: clean up.
419
420 2006-01-25  Graham Percival  <gpermus@gmail.com>
421
422         * Documentation/user/putting.itely: another new untested doc section.
423
424 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
425
426         * scm/layout-page-layout.scm (write-page-breaks): write
427         \spacingTweaks #ALIST. Handle grace timing.
428
429         * scm/: more imports.
430
431         * scm/page.scm (make-page): add footer/header.
432         (annotate-space-left): revise: only take page argument.
433         (layout->page-init): new function.
434
435         * scm/layout-page-layout.scm (write-page-breaks): preliminary
436         version of the system/spacing/linebreak hack writing to the output
437
438         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
439         ly:make-prob.
440
441         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
442         ly:spanner-bound
443
444 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
445
446         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
447
448         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
449
450         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
451         handling to page.scm
452
453         * lily/prob-scheme.cc (LY_DEFINE): new file.
454         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
455
456         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
457         prob functions.
458
459         * lily/music.cc (derived_mark): derive Music from Prob.
460
461         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
462
463         * lily/prob.cc (Module): Implement Prob (Property Object), object
464         with shared and r/w property alists.  
465
466         * lily/include/prob.hh (Module): new file. Declare Prob.
467
468         * flower/string.cc: remove is_empty().
469
470         * flower/include/string.hh (class String): remove String:: qualifier.
471
472         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
473         substitute appropriate functions.
474
475         * flower/include/string.hh (class String): remove to_str0 and
476         is_empty(). S&R everywhere.
477
478 2006-01-23  Graham Percival  <gpermus@gmail.com>
479
480         * Documentation/user/basic-notation.itely: add hairpin
481         after-linebreak tweak to commonprop.
482
483         * Documentation/user/putting.itely: added two new sections.
484
485 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
486
487         * flower/international.cc: 
488         * flower/include/international.hh: 
489
490         * flower/getopt-long.cc: 
491         * flower/include/getopt-long.hh: Use std::string [interface].
492         Update callers.
493
494         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
495
496         * stepmake/stepmake/executable-rules.make: Add dependency on
497         module libraries.
498
499 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
500
501         * flower/file-path.cc: 
502         * flower/include/file-path.hh: Use std::string [interface].
503         Update callers.
504
505         * flower/direction.cc: 
506         * flower/axis.cc: Unused.  Remove.
507
508         * configure.in (--enable-std-string): New option.
509
510         * flower/std-string.cc: 
511         * flower/include/std-string.hh: New file.
512
513         * flower/file-name.cc[STD_STRING]:
514         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
515
516 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
517
518         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
519
520         * scm/define-markup-commands.scm (with-dimensions):
521         with-dimensions markup command.
522
523         * input/test/font-table.ly: use it.
524
525         * lily/open-type-font.cc (glyph_list): new function.
526
527         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
528
529         * lily/ttf.cc: remove ly:font-glyph-list scheme function
530
531 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
532
533         * ly/music-functions-init.ly (parallelMusic): new music function
534         for parallel music entry.
535
536         * scm/define-music-properties.scm (all-music-properties): new
537         'void music property
538
539         * scm/music-functions.scm (ly:music-message): make public, to be
540         used in music function definitions
541
542         * scm/lily-library.scm (collect-music-for-book): discard music
543         when the 'void property is set.
544
545 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
546
547         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
548
549         * mf/GNUmakefile: idem.
550
551         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
552
553         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
554
555         * Documentation/user/notation-appendices.itely (The Feta font):
556         use it.
557
558         * input/test/font-table.ly: new file. Generate font table within lily.
559
560         * Documentation/user/notation-appendices.itely (The Feta font):
561         use new font-table.ly file. 
562
563         * stepmake/stepmake/install-out-targets.make
564         (local-install-outfiles): only create directory if
565         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
566
567 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
568
569         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
570
571         * VERSION (PACKAGE_NAME): release 2.7.28
572
573         * scm/framework-ps.scm (write-preamble): use it to pick exactly
574         the right font from a Mac dfont.
575         (write-preamble): don't forget directory, only look at files.
576
577         This fixes problems with TTF files in dfonts that don't match
578         their PostScript names.
579          
580         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
581         PS name from TTF font.
582
583         * input/regression/tie-manual.ly: document new feature.
584
585         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
586
587         * VERSION (MY_PATCH_LEVEL): bump to .28
588
589         * Documentation/user/basic-notation.itely (Ties): add tie examples
590         refs.
591
592         * lily/tie-formatting-problem.cc (score_ties_configuration):
593         symmetry penalties for outer ties.
594
595 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
596
597         * lily/tie-formatting-problem.cc (generate_configuration) 
598         (set_manual_tie_configuration): skip non-pair manual
599         tie-configuration, so you can set individual ties as
600
601           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
602
603         * input/regression/tie-chord.ly: use generateTiePattern to
604         simplify file.
605
606         * lily/tie-formatting-problem.cc (peak_around): new function.
607         (score_configuration): use sliding criterion for staff line collisions. 
608         (score_configuration): idem for dot collisions.
609         (generate_configuration): use separate stem_gap for gap to stem.
610
611         * lily/include/tie-formatting-problem.hh (struct Tie_details):
612         separate penalty factors for x and y distance.
613         (struct Tie_details): separate penalties for tip and center line collisions.
614
615 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
616
617         * lily/tie-formatting-problem.cc (generate_configuration): make
618         large ties avoid stafflines in the horizontal section.
619         (score_configuration): use softcoded penalties
620         (score_aptitude): idem.
621
622         * lily/tie-helper.cc (from_grob): softcode tie details
623
624         * lily/staff-symbol-referencer.cc (on_staff_line): new function
625
626         * lily/staff-symbol-referencer.cc (on_line): rename from
627         on_staffline 
628
629 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
630
631         * ly/music-functions-init.ly: remove duplicate tag.
632
633         * lily/include/*.hh: GCC 4.1 fixes.
634
635 006-01-16  Erlend Aasland  <erlenda@gmail.com>
636
637         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
638
639         * scm/define-music-types.scm: fix bug in desc. string
640         for OverrideProperty
641
642 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
643
644         * scripts/lilypond-book.py: bugfix
645
646         * scm/define-music-types.scm: fix typos.
647
648 2006-01-14  Graham Percival  <gpermus@gmail.com>
649
650         * Documentation/user/ basic-notation.itely, global.itely,
651         advanced-notation.itely, instrument-notation.itely: small
652         additions (bugs and commonly tweaked properties).
653
654 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
655
656         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
657         detection of mingw build.
658         (MINGW_BUILD): opps.
659
660 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
661
662         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
663         i686-mingw32.
664
665 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
666
667         * scm/music-functions.scm (skip->rest): add skip->rest
668
669 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
670
671         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
672         explicitly.
673
674         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
675         config dirs. Aids debugging. 
676         (display_config): also display config files.
677
678 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
679
680         * VERSION: release 2.7.27
681
682         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
683         for determining bar size.
684
685         * lily/staff-symbol.cc (print): place lines at distance line-positions
686
687         * scm/define-grob-properties.scm (all-user-grob-properties): add
688         line-positions.
689
690         * lily/staff-symbol.cc (height): new function.
691
692         * input/regression/staff-line-positions.ly:  new file.
693
694 2006-01-06  Graham Percival  <gpermus@gmail.com>
695
696         * input/test/add-staccato.ly: remove reference to old file.
697
698 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
699
700         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
701         lilypond binary too.
702
703 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
704
705         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
706
707 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
708
709         * scripts/midi2ly.py: Bugfix: Declare datadir.
710
711         * make/ly-rules.make:
712         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
713         that seems to be gone). Fixes make web.
714
715         * The grand 2005-2006 replace.
716
717         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
718
719 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
720
721         * make/lilypond-vars.make: set LILYPOND_BINARY variable
722         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
723         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
724         like -dgs-font-load.
725
726         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
727         remove absolute path to lilypond binary.
728         
729 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
730
731         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
732
733 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
734
735         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
736
737         * mf/GNUmakefile: remove broken dvips map symlink.
738
739 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
740
741         * lily/main.cc: 
742         * configure.in: Cosmetic fixes.
743
744 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
745
746         * Documentation/user/music-glossary.tely (Pitch names): Added
747         Spanish pitch names and durations, thanks to Ernesto Gancedo
748
749 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
750
751         * scm/lily.scm (define-scheme-options): use quasi-quote for option
752         init. Fixes verbose printing of .scm files.
753
754         * stepmake/aclocal.m4: add spaces before - options.
755         
756 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
757
758         * lily/relocate.cc (setup_paths): Bugfix: do not store result
759         of path search in local block variable.
760
761 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
762
763         * configure.in (NCSB_DIR): --enable-ncsb-dir
764         (LINK_GXX_STATICALLY): denko.
765
766         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
767
768         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
769         use locate to find c059033l.pfb. 
770         
771 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
772
773         * lily/tie-formatting-problem.cc
774         (problem::generate_base_chord_configuration): Use my_round (was
775         round).
776
777         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
778         do not invoke mbrtowc.
779
780         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
781
782 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
783
784         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
785
786 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
787
788         * Documentation/user/invoking.itely (svg): revise.
789
790 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
791
792         * lily/lexer.ll: use sourcefilename iso. renameinput.
793
794 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
795
796         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
797         <PostScriptName>.ttf instead of c059XXXttf.
798
799         * lily/program-option.cc (LY_DEFINE): special support for
800         --verbose, so it works before option init too.
801  
802         * mf/GNUmakefile (local-install): oops.
803
804         * lily/lyric-hyphen.cc (print): oops.
805
806         * buildscripts/pfx2ttf.fontforge: new file.
807         
808         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
809         ($(outdir)/%.ttf): new rule. 
810
811         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
812         to LyricHyphen.
813
814         * lily/lyric-hyphen.cc (print): multiply hyphen height by
815         font-size
816
817 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
818
819         * VERSION: release 2.7.26
820         
821         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
822
823 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
824
825         * lily/font-config.cc (init_fontconfig): verbosity.
826
827         * THANKS: add Muziekacademie Lede. 
828
829         * scripts/musicxml2ly.py (print_voice_definitions): new function 
830         (print_score_setup): new function
831         (convert): read part definition to output staves properly.
832
833         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
834         Music_xml notes.
835
836         * python/musicexp.py (Output_printer.__init__): use _ in data
837         members.
838         (Output_printer.unformatted_output): new function: no formatting,
839         but count braces.
840         (Duration.get_length): remove isinstance() checks for
841         Output_printer everywhere.
842
843         * input/regression/lyrics-bar.ly (texidoc): add
844         Separating_line_group_engraver.
845
846 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
847
848         * lily/relocate.cc (framework_relocation): New function,
849         factored from set_relocation ().
850         (prefix_relocation): Rename from set_relocation ().
851         (setup_paths): Use it.
852
853 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
854
855         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
856         numbers. Patch by Erlend Aasland.
857
858 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
859
860         * lily/font-config.cc (init_fontconfig): print warning if cache
861         file is not existant.
862
863         * lily/main.cc: don't use #ifdef but #if
864
865 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
866
867         * lily/grob-property.cc (internal_set_property): don't abort on
868         calculation-in-progress.
869
870         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
871
872         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
873         connect-to-neighbor property not connect-to-other
874
875         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
876         (LY_DEFINE): oops. don't forget protection.
877
878         * flower/parse-afm.cc (Module): strip AFM handling completely.
879
880         * lily/stencil-expression.cc: idem.
881
882         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
883
884         * lily/function-documentation.cc (ly_add_function_documentation):
885         use static member iso. Protected_scm
886
887         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
888
889         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
890
891 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
892
893         * lily/relocate.cc (set_env_dir): New function.
894         (set_relocation): Use it to fix setting PANGO_PREFIX.
895
896 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
897
898         * input/regression/stem-direction-context.ly: remove rest.
899
900         * lily/melody-engraver.cc (process_music): restart for bar lines.
901         (acknowledge_slur): restart for slurs.
902
903 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
904
905         * Documentation/user/invoking.itely: describe how to view SVG 
906         output using Inkscape which replace embedded fonts with OTF fonts.
907
908 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
909
910         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
911
912 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
913
914         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
915         comment.
916
917 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
918
919         * VERSION (PACKAGE_NAME): release 2.7.25
920
921         * Documentation/topdocs/NEWS.tely (Top): document new feature.
922
923         * input/regression/stem-direction-context.ly: new file.
924
925         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
926
927         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
928         on rest.
929
930         * ly/engraver-init.ly: add Melody_engraver
931
932         * lily/beam.cc (calc_direction): use default-direction
933         iso. get_default_direction()
934
935         * scm/define-grob-properties.scm (all-user-grob-properties): add
936         default-direction property.
937
938         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
939
940         * lily/stem.cc (calc_default_direction): remove
941         Stem::get_default_direction, use default-direction with callback
942         instead.
943
944         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
945
946         * lily/melody-engraver.cc: new file. Acknowledge stems for
947         interpolated stem directions. 
948
949         * lily/melody-spanner.cc: new file. Interpolate stem directions.
950
951         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
952
953         * lily/slur-configuration.cc (fit_factor): more robust check for
954         point in curve X-extent.
955
956         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
957         (outside_slur_callback): check for 'outside avoidance.
958
959         * lily/slur-configuration.cc (score_extra_encompass): don't use
960         bound->column() == avoid->column() for checking extents, as this
961         doesn't work for accidentals. 
962
963         * lily/slur-engraver.cc (acknowledge_extra_object): remove
964         DynamicText hardcoding.
965
966         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
967         crash if bound stem is NULL
968
969         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
970         pedals.
971
972 2005-12-22  Graham Percival  <gpermus@gmail.com>
973
974         * scm/define-markup-commands.scm: typo.  @code{\raise}
975         => @code{\\raise}.
976
977         * darwin.patch: now used again, includes a
978         required patch from fink.
979
980 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
981
982         * po/TODO: mention gtranslator along with kbabel.
983         * po/fi.po: update translations.
984
985 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
986
987         * lily/relocate.cc (setup_paths): Bugfix.
988
989 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
990
991         * lily/slur-configuration.cc (score_extra_encompass): don't use
992         "avoid" choice for avoid-slur.
993
994         * stepmake/bin/install.py (dest): don't create existing dir.
995
996 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
997
998         * stepmake/bin/install.py: Remove file before copying.
999
1000         * config.make.in: 
1001         * stepmake/aclocal.m4: Do not substitute INSTALL.
1002
1003 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1004
1005         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1006         depend on link-tree.
1007
1008         * lily/relocate.cc (setup_paths): only check path for non-absolute
1009         dir without directory part.
1010
1011         * flower/file-name.cc (is_absolute):  new method.
1012         (is_absolute): check root_ too.
1013
1014 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1015
1016         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
1017         relocation code.  Oops, don't comment out too much.
1018
1019         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
1020         iso itself.
1021
1022         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
1023         compile.
1024
1025 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1026
1027         * .cvsignore: Add install-sh.
1028
1029         * autogen.sh (srcdir): Typo.
1030
1031 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1032
1033         * autogen.sh (srcdir): urg. Touch install-sh.
1034
1035         * stepmake/bin/install-sh (Module): remove.
1036
1037         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
1038
1039         * lily/include/relocate.hh: new file.
1040
1041         * lily/relocate.cc: new file. Contain relocation logic.
1042
1043         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
1044         (main): read LILYPOND_VERBOSE as the first thing.
1045
1046         * stepmake/aclocal.m4: remove INSTALL variable.
1047
1048         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
1049         separate target for making font symlinks.
1050         (documentation-dir): use $(if $(findstring )) for switching off
1051         Documentation.
1052
1053         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
1054         something if DOCUMENTATION is no.
1055
1056 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1057
1058         * VERSION: release 2.7.24
1059
1060         * lily/script-column-engraver.cc (stop_translation_timestep):
1061         delay adding to script-column.
1062
1063         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
1064
1065         * python/convertrules.py (conv): rule for number-visibility
1066
1067         * lily/slur-configuration.cc (score_extra_encompass): different
1068         distance measure for avoid and inside avoidance.
1069         (score_extra_encompass): use 1/(distance+eps) as penalty.
1070
1071         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
1072         encompass objects for generating slur curves.
1073
1074         * lily/slur.cc: use details iso. slur-details property.
1075
1076         * input/regression/slur-tuplet.ly: new file.
1077
1078         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
1079
1080         * flower/include/offset.hh (class Offset): new operator /=
1081
1082         * lily/tuplet-number.cc (print): new file, new interface.
1083
1084         * scm/define-grob-properties.scm (all-user-grob-properties):
1085         remove number-visibility property.
1086
1087         * lily/tuplet-bracket.cc (calc_control_points): new function
1088         (calc_connect_to_neighbors): new function.
1089         (print): remove text handling for tuplet numberdef.
1090
1091         * lily/tuplet-engraver.cc (struct Tuplet_description): create
1092         TupletNumbers too. 
1093
1094         * lily/lily-guile.cc (robust_scm2booldrul): new function
1095
1096         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
1097
1098         * lily/tuplet-bracket.cc (calc_position_and_height): use
1099         staff-padding to control whether tuplet brackets are over staves.
1100
1101         * lily/grob.cc (suicide): clear dim_caches_.
1102
1103         * lily/dimension-cache.cc (clear): new function.
1104
1105         * lily/grob.cc (extent): swap order of min-extent and extent
1106         calculations. This fixes hara kiri staves. 
1107
1108 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1109
1110         * lily/main.cc: Nitpick: relocation is not based on path, but on
1111         directory (location).
1112
1113 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1114
1115         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
1116
1117         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
1118
1119         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
1120
1121         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
1122
1123         * stepmake/stepmake/generic-vars.make (Module): idem.
1124
1125         * stepmake/stepmake/executable-targets.make (default): use it.
1126
1127         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
1128
1129         * make/GNUmakefile: don't install make rules.
1130
1131         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
1132         slashes.
1133         (prepend_env_path): more verbosity.
1134
1135 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1136
1137         * GNUmakefile.in: add dir argument for find command.
1138
1139         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
1140         fixes weird line numbers for point & click.
1141
1142         * lily/source-file.cc (get_counts): init line/column/char counts.
1143
1144 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1145
1146         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
1147
1148 2005-12-16  Graham Percival  <gpermus@gmail.com>
1149
1150         * Documentation/user/basic-notation.itely, advanced-notation.itely:
1151         minor fixes from Fredric.  Thanks!
1152
1153 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1154
1155         * ly/music-functions-init.ly: add \bar and \clef music function 
1156
1157         * lily/lily-lexer.cc: idem.
1158
1159         * lily/parser.yy (FIXME): remove BAR and CLEF.
1160
1161 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1162
1163         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
1164
1165         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
1166         function arguments too
1167
1168         * lily/main.cc (set_relocation): new function.
1169
1170         * scripts/musicxml2ly.py (convert): add \version
1171
1172         * lily/tie.cc: remove get_default_attachments()
1173
1174         * VERSION (PACKAGE_NAME): release 2.7.23
1175         
1176         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
1177         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
1178
1179         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1180
1181         * lily/tie-formatting-problem.cc (score_ties): new function
1182         (get_variations): new function. Try flipping dirs for collisions.
1183         (generate_optimal_chord_configuration): new function. 1-opt search
1184         for better configuration.
1185
1186         * lily/tie-configuration.cc: new file.
1187
1188         * lily/tie.cc: junk Tie::get_configuration()
1189
1190         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
1191         (score_ties_configuration): new function.
1192         (generate_ties_configuration): new function.
1193         (generate_base_chord_configuration): new function.
1194         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
1195         (set_manual_tie_configuration): Move body from tie-column-format.cc 
1196
1197         * input/regression/tie-dot.ly: new file.
1198
1199         * lily/tie-formatting-problem.cc (score_configuration): score
1200         tie/dot collisions.
1201
1202         * lily/tie-helper.cc (get_transformed_bezier): new function
1203
1204         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
1205
1206         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
1207         -undefined suppress iso. -framework Python 
1208
1209         * scm/define-grobs.scm (all-grob-descriptions): set
1210         springs-and-rods (thanks Joe Neeman!)
1211
1212 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1213
1214         * input/no-notation/display-lily-tests.ly (test): 
1215         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
1216         changed from \tag #'(a b) to \tag #'a \tag #'b
1217
1218 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1219
1220         * Documentation/topdocs/NEWS.tely: strip out-www.
1221
1222         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
1223
1224         * config.make.in (AR): add AR and RANLIB
1225
1226         * flower/libc-extension.cc: include cassert
1227
1228         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
1229         darwin check.
1230
1231 2005-12-11  Graham Percival  <gpermus@gmail.com>
1232
1233         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
1234
1235         * stepmake/stepmake/python-modules-vars.make: define
1236         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
1237
1238         * THANKS: added Johannes Schindelin.
1239
1240 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1241
1242         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
1243
1244         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1245         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
1246
1247         * lily/parser.yy: reorganize file layout.
1248
1249         * ly/music-functions-init.ly: add tweak music function.
1250
1251         * lily/grob-info.cc (ultimate_music_cause): new function:
1252         recursively lookup causes. 
1253
1254         * lily/parser.yy (chord_body_element): allow music functions for
1255         post-events, allow music functions for chord elements. 
1256  
1257         * lily/font-config-scheme.cc (display_fontset): add cast.
1258
1259         * python/convertrules.py (FatalConversionError.sub_syms): \tag
1260         #'(a b) -> \tag #'a \tag #'b rule.
1261
1262         * python/musicexp.py (Output_printer.dump_version): new function
1263
1264 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1265
1266         * lily/parser.yy (FIXME): remove \tag
1267         (FIXME): remove tag_music() function.
1268
1269         * lily/lily-lexer.cc: remove \tag
1270
1271         * ly/music-functions-init.ly: define music-function "tag"
1272
1273         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
1274
1275 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1276
1277         * VERSION (PATCH_LEVEL): release 2.7.22
1278
1279         * input/regression/lyric-hyphen-retain.ly: renew.
1280
1281         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
1282         grob
1283
1284         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
1285         iso. minimum-length property for rods.
1286
1287         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
1288         LyricSpace item to keep lyrics spaced apart.
1289
1290         * ly/engraver-init.ly: remove Separating_line_group_engraver
1291
1292         * Documentation/user/music-glossary.tely: do setfilename before
1293         music-glossary.
1294
1295 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
1296
1297         * Documentation/user/lilypond-book.itely: use `,´ after xref:
1298         See xref documentation, for example.
1299
1300 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1301
1302         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
1303         pending_skip iso. ly_voice[-1]
1304         (main): add if __main__ for debugging.
1305
1306         * python/musicxml.py (Accidental.__init__): new class.
1307
1308         * scripts/musicxml2ly.py (progress): new function
1309         (musicxml_key_to_lily): don't barf on modeless keys.
1310         (create_skip_music): new function.
1311         (musicxml_spanner_to_lily_event): new function. Handle beams too.
1312         (musicxml_note_to_lily_main_event): new function.
1313
1314         * python/musicexp.py (Music.__init__): add comment field.
1315         (NestedMusic.append): new routine.
1316         (SequentialMusic.print_ly): print comment.
1317         (ArpeggioEvent.ly_expression): new class
1318         (BeamEvent.ly_expression): new class
1319         (NoteEvent.__init__): support for cautionary/forced accs.
1320
1321         * lily/lookup.cc (slur): normal order for array loop.
1322
1323         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
1324         to 0.0.
1325
1326         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
1327         collapsed.
1328
1329 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
1330
1331         * scm/music-functions.scm: Make phrasing slurs follow voice direction
1332
1333         * scripts/lilypond-book.py: Introduce option
1334         --preserve-line-breaks, for usage with srcltx
1335
1336 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1337
1338         * scm/output-lib.scm (print-circled-text-callback): draw circle
1339         around text using make-circle-markup.
1340
1341         * Documentation/user/*: strip out-www from file names.
1342
1343 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
1344
1345         * Documentation/user/lilypond.tely (direntry): remove empty lines;
1346         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
1347
1348 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1349
1350         * Documentation/user/GNUmakefile: idem.
1351
1352         * Documentation/user/macros.itexi: strip out-www
1353
1354         * python/rational.py: python 2.3 compat.
1355
1356         * VERSION (PATCH_LEVEL): release 2.7.21
1357
1358         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
1359         option formatting, lilypond style.
1360
1361         * python/musicexp.py: grab from Ikebana: a library for composing
1362         ly music expressions. 
1363         (Output_printer): class for advanced .ly printing.
1364         (eg. tupletting) 
1365
1366         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
1367         convert to pythonesque structure.
1368
1369         * python/rational.py: PD rational number class.
1370
1371         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
1372
1373 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
1374
1375         * lily/part-combine-iterator.cc: Minor bugfix
1376         
1377         * THANKS: Update bughunters
1378
1379 2005-12-02  Werner Lemberg  <wl@gnu.org>
1380
1381         * mf/README: Document process for proper mf2pt1 conversion.
1382
1383         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
1384         overlapping.
1385
1386         * mf/feta-harmonica.mf: Removed.  Unused.
1387
1388 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1389
1390         * scripts/lilypond-book.py (do_file): fix thinkos.
1391
1392 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1393
1394         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
1395         ($(outdir)/parser.cc): 
1396         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
1397
1398 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
1399
1400         * ly/titling-init.ly (tagline): it should be a space between
1401         "Music engraving by LilyPond" and the version number.
1402
1403 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1404
1405         * VERSION (PACKAGE_NAME): release 2.7.20
1406
1407 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1408
1409         * scm/define-markup-commands.scm (pad-to-box): new markup command.
1410
1411         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
1412         1.0.
1413         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
1414
1415 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1416
1417         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
1418
1419         * kpath-guile/: remove directory
1420
1421         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
1422         file. Encapsulate kpathsea using commandline tools.
1423
1424         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
1425         kpathsea) module.
1426
1427 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1428
1429         * Documentation/user/advanced-notation.itely (Setting automatic
1430         beam behavior): Correct a few typos. Thanks to David Bobroff.
1431
1432         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
1433         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
1434
1435 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1436
1437         * scripts/*.py: gmane address for bugs.
1438
1439 2005-11-28 Pal Benko <benkop@freestart.hu>
1440         
1441         * make/ly-rules.make: add -f switch to mv
1442
1443         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
1444
1445         * lily/bar-line.cc: interpret it
1446
1447 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1448
1449         * configure.in (--disable-documentation): New switch.
1450
1451         * GNUmakefile.in: Use it.
1452
1453         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
1454
1455 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1456
1457         * scripts/lilypond-book.py (do_file): search chunks for
1458         \\begin{document}
1459
1460         * GNUmakefile.in: add copy step in between so we can lose the
1461         out-www directories.
1462
1463 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1464
1465         * lily/pango-font.cc (pango_item_string_stencil): put
1466         geometry.width into glyph-string too.
1467
1468 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1469
1470         * scm/define-music-display-methods.scm (RevertProperty):
1471         (OverrideProperty): Use grob-property-path property, a list of
1472         symbols, instead of grob-property, which used to be a single
1473         symbol.
1474         (BassFigureEvent): a figure can be a plain number, not necessarily a
1475         markup.
1476
1477 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1478
1479         * VERSION: release 2.7.19
1480         
1481         * lily/figured-bass-engraver.cc (process_music): check
1482         figuredBassCenterContinuations first.
1483
1484         * scm/translation-functions.scm (format-bass-figure): make double
1485         sharp larger. 
1486
1487         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
1488         determine X-parent.
1489
1490         * lily/system-start-delimiter-engraver.cc: move from
1491         Nested_system_start_delimiter_engraver, rename
1492         Nested_system_start_delimiter_engraver ->
1493         System_start_delimiter_engraver.
1494
1495         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
1496         bracket type from hierarchy.
1497
1498 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1499
1500         * lily/rest.cc (y_offset_callback): read staff-position.
1501
1502         * scm/define-grob-properties.scm (all-user-grob-properties): don't
1503         mark after-line-breaking-callback as internal.
1504
1505         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
1506
1507 2005-11-25  Werner Lemberg  <wl@gnu.org>
1508
1509         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
1510
1511 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1512
1513         * stepmake/bin/add-html-footer.py (do_file): add google
1514
1515         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
1516         staff if first_start_ is true.
1517
1518 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1519
1520         * scripts/midi2ly.py (split_track): add __repr__ members.
1521         (track_first_item): only return Item if not None. This fixes a
1522         problem when dumping a track that starts with an empty channel.
1523
1524         * python/midi.c: doc module.
1525
1526 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1527
1528         * Documentation/user/global.itely (Creating MIDI files): Fix
1529         compilation problem.
1530
1531 2005-11-22  Graham Percival  <gpermus@gmail.com>
1532
1533         * Documentation/user/basic-notation.itely: clarify dynamic
1534         padding text.
1535
1536         * Documentation/user/advanced-notation.itely: add unicode
1537         escape control example, whatever that is.  :)
1538
1539         * Documentation/user/global.itely: added "removing dynamics
1540         from MIDI" code.
1541
1542 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1543
1544         * VERSION (PATCH_LEVEL): release 2.7.18
1545
1546         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
1547         System_start_delimiter_engraver by
1548         Nested_system_start_delimiter_engraver.
1549
1550         * lily/nested-system-start-delimiter-engraver.cc (struct
1551         Bracket_nesting_node): new class.
1552         (struct Bracket_nesting_group): new class
1553         (struct Bracket_nesting_staff): new class.
1554         (process_music): create hierarchy of grobs. This allows separate
1555         tuning of different SSDs. 
1556
1557         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
1558         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
1559
1560 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1561
1562         * lily/side-position-interface.cc (aligned_side): multiply
1563         staff_radius by 2.
1564
1565         * lily/script-engraver.cc (make_script_from_event): allow setting
1566         values to '()
1567
1568 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1569
1570         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
1571
1572         * scm/define-grobs.scm (all-grob-descriptions): new grob
1573         NestedSystemStartDelimiter.
1574
1575         * input/regression/system-start-heavy-bar.ly: new file.
1576
1577         * lily/nested-system-start-delimiter-engraver.cc: new file.
1578
1579         * lily/nested-system-start-delimiter.cc: new file.
1580
1581         * input/regression/system-start-nesting.ly: new file.
1582
1583         * scm/define-grobs.scm (all-grob-descriptions): use X side
1584         positioning for positioning braces for nested contexts.
1585
1586         * lily/system-start-delimiter.cc (print): don't divide extent by
1587         staff_space.
1588         (print): use style iso. glyph.
1589         (staff_bracket): translate glyph inside routine already.
1590
1591 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
1592
1593         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
1594         names.
1595
1596 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1597
1598         * scm/define-context-properties.scm
1599         (all-user-translation-properties): rename figuredBassFormatter
1600         from newFiguredBassFormatter.
1601
1602         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
1603
1604         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
1605
1606         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
1607
1608         * lily/beam.cc (calc_beaming): new function.
1609         (calc_shorten): new function.
1610
1611         * THANKS: add Edward Neeman.
1612
1613         * input/regression/accidental-clef-change.ly: new file.
1614
1615         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
1616
1617         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
1618
1619         * lily/clef-engraver.cc (inspect_clef_properties): reset
1620         localKeySignature for clef changes.
1621
1622 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1623
1624         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
1625         add dummy definition that works in Linux and add information in
1626         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
1627
1628         * Documentation/user/changing-defaults.itely (Modifying context
1629         plug-ins): Add index for \with.
1630
1631         * Documentation/user/music-glossary.tely (dal segno): Updated
1632         example to version >=2.6.
1633
1634 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1635
1636         * Documentation/user/instrument-notation.itely (Printing chord
1637         names): Reorder \chordmode and \repeat in one example.
1638
1639 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1640
1641         * VERSION: release 2.7.17
1642         
1643         * Documentation/topdocs/NEWS.tely (Top): add note about
1644         refactoring.
1645
1646         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
1647         new function. Search region of 3 positions for best tie.
1648         (score_configuration): new function.
1649         (score_aptitude): new function.
1650         (generate_configuration): new function.
1651         (get_configuration): new function.
1652         (Tie_formatting_problem): new function
1653
1654         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
1655
1656         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
1657
1658         * THANKS: add Eduardo Vieira & Ralph Little
1659
1660         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
1661         narrower.
1662
1663         * lily/include/tie-formatting-problem.hh (class
1664         Tie_formatting_problem): add Tie_details to
1665         Tie_formatting_problem. Update calling conventions.
1666
1667         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
1668         config.make.
1669
1670         * Documentation/user/lilypond.tely: remove musedata2ly entry.
1671
1672 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
1673
1674         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
1675         scm/define-context-properties.scm: Maintenance bugfix: make
1676         ligature brackets work again by removing obsolete ligature
1677         primitive callback push/pop.
1678
1679         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
1680         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
1681         value.
1682
1683 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1684
1685         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
1686         used and do not call it a path.
1687         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
1688
1689 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1690
1691         * lily/include/tie-formatting-problem.hh (class
1692         Tie_formatting_problem): new file.
1693
1694         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
1695
1696         * Documentation/misc/ChangeLog-2.3:  new file.
1697
1698         * lily/audio-staff.cc (output): degarianize.
1699
1700 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1701
1702         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
1703         Unset PYTHONOPTIMIZE.  Fixes install if set.
1704
1705 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1706
1707         * python/convertrules.py (conv): add warning about drums. 
1708
1709         * make/stepmake.make: include toplevel-version.make after config.make.
1710
1711         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
1712         also allow python2.4
1713
1714         * config.make.in (configure-srcdir): remove GXX GCC vars.
1715
1716         * stepmake/aclocal.m4: don't do non-srcdir build with
1717         symlinks. Use inclusion, so the src directory name can be changed.
1718
1719 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1720
1721         * make/mutopia-vars.make:
1722         * make/ly-vars.make: Use src-wildcard iso wildcard for source
1723         files.
1724
1725 2005-11-13  Werner Lemberg  <wl@gnu.org>
1726
1727         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
1728         but the affected path.  This ensures that the (overlapping) outlines
1729         have the same direction, which is a necessary prerequisite for
1730         FontForge's algorithm to remove overlaps.
1731         Formatting.
1732
1733         * mf/feta-haak.mf: Formatting.
1734         (draw_bracket): Slightly modify outline to avoid an unnecessary
1735         corner.
1736         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
1737         them from the affected paths.
1738
1739 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1740
1741         * mf/README: remove xpm / accordion notes.
1742
1743         * lily/tie-column-format.cc (set_chord_outline): add dots into
1744         skyline extents. This fixes tie formatting if the left head has dots.
1745
1746         * lily/tie.cc (get_configuration): only shift tie by a whole staff
1747         space inside the staff.
1748         (get_configuration): shift another position if necessary in case
1749         of left head tie  
1750
1751 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1752
1753         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
1754         buildscript-dir iso. $(depth)/buildscripts.
1755
1756         * tex/GNUmakefile (local-uninstall): remove
1757         music-drawing-routines.ps juggling.
1758
1759         * stepmake/stepmake/install-targets.make (local-install-files):
1760         prepend src-dir to install targets.
1761
1762         * lily/system-start-delimiter-engraver.cc
1763         (acknowledge_system_start_delimiter): use
1764         add_offset_callback(). This fixes translation of nested
1765         staffgroups.
1766
1767         * lily/grob-closure.cc (add_offset_callback): only encaps in
1768         simple_closure if it's a procedure.
1769         
1770         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
1771         from bar-line.
1772
1773         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
1774         remove-empty where pertinent.
1775
1776 2005-11-12  Graham Percival  <gpermus@gmail.com>
1777
1778         * Documentation/user/instrument-notation.itely: added
1779         Cameron Horsburgh's multiple stanzas docs.  Thanks!
1780
1781 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1782
1783         * lily/GNUmakefile
1784         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
1785         make picture in builddir, not srcdir.
1786
1787 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1788
1789         * VERSION: release 2.7.16
1790         
1791         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
1792         shell arguments. 
1793
1794 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1795
1796         * Documentation/user/examples.itely (Piano templates): Minor
1797         modification to the Piano centered lyrics example.
1798
1799 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1800
1801         * scripts/lilypond-invoke-editor.scm (run-browser): look at
1802         $BROWSER.
1803
1804         * Documentation/user/point-and-click.itely: simplify p&c
1805         instruction: don't configure firefox. Put lilypond-invoke-editor
1806         in front of the browser.
1807
1808         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
1809         (run-browser): new function.
1810
1811         * lily/parser.yy (Lily_lexer): recognize Book
1812
1813         * lily/book.cc (clone): new function
1814
1815         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
1816
1817 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
1818
1819         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
1820         Maintenance bugfix: reduce number of font related warnings by
1821         updating naming conventions for glyph-name.
1822
1823 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1824
1825         * scm/define-grobs.scm (all-grob-descriptions): add
1826         rhythmic-grob-interface to TabNoteHead.
1827
1828         * scm/layout-beam.scm (check-quant-callbacks): remove
1829         set_stem_lengths()
1830
1831 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
1832
1833         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
1834         alignment of centered divisiones.
1835
1836         * scm/scripts.scm (articulations): Maintenance bugfix:
1837         follow-into-staff -> quantize-position.
1838
1839         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
1840         plica head in porrectus deminutus.
1841
1842 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1843
1844         * make/lilypond.fedora.spec.in (Group): add %clean section.
1845
1846         * lily/tuplet-bracket.cc (print): change check: remove bracket if
1847         less then 1/5th of total length.  
1848         (print): use gap too.  Fixes tupletUp-single-bracket.ly
1849
1850         * scm/music-functions.scm (glue-mm-rest-texts): also put other
1851         events into EventChord. This fixes textspanners on mm rests. Fixes
1852         spanner-rest.ly
1853
1854         * lily/side-position-interface.cc (get_axis): read side-axis
1855         (set_axis): set side-axis.
1856
1857         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
1858         properties everywhere.
1859
1860         * lily/spacing-spanner.cc (breakable_column_spacing): add
1861         average-spacing-wishes. Take maximum if not set.
1862         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
1863
1864         * scm/define-grobs.scm (all-grob-descriptions): add
1865         average-spacing-wishes.
1866
1867         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
1868         offset callbacks. This fixes alignment for Fingering objects.
1869
1870         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
1871         space for key - timesig combination. 
1872
1873         * input/regression/script-stem-tremolo.ly (Module): new file.
1874
1875         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
1876         to key sig.
1877
1878         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
1879         Fixes: c-tremolo-script.ly.
1880         
1881         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
1882
1883         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
1884         
1885         * scm/define-grobs.scm (all-grob-descriptions): remove
1886         self-X-offset. Fixes alignment of octavate-8.
1887
1888         * scripts/lilypond-book.py (datadir): look in
1889         LILYPONDPREFIX/share/lilypond/current/
1890
1891         * GNUmakefile.in: symlink current to <VERSION>. 
1892
1893 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
1894
1895         * lily/main.cc: eps listed as a backend.
1896
1897 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1898
1899         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
1900
1901 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1902
1903         * lily/include/score.hh (class Score): remove texts_ member.
1904
1905         * lily/beam.cc (set_stem_lengths): force direction callback.
1906         (print): read quantized-positions, so we can force
1907         Beam::set_stem_lengths to occur.
1908         (rest_collision_callback): use common X parent. 
1909
1910 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1911
1912         * flower/file-path.cc (find): Bugfix: Return name of file found.
1913
1914         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
1915         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
1916         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
1917
1918 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1919
1920         * flower/offset.cc: idem.
1921
1922         * mf/*.mf: update email address.
1923
1924         * lily/font-config-scheme.cc:  new file.
1925
1926         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
1927
1928         * lily/*:  cs.uu.nl -> xs4all.nl
1929
1930         * VERSION (PATCH_LEVEL): release 2.7.15
1931
1932         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
1933         spec files.
1934
1935         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
1936
1937 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1938
1939         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
1940
1941         * lily/staff-performer.cc (process_music): add audio
1942         elements. This makes MIDI instrument changes work once again.
1943
1944         * lily/main.cc (LY_DEFINE): add gmane address.
1945
1946         * lily/beam.cc: remove calc_positions()
1947
1948         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
1949         original_ in private scope.
1950         (class Grob): drop pscore_ pointer, change to output_def pointer.
1951         (class Grob): cleanup class definition.
1952
1953         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
1954
1955 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1956
1957         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
1958         absolute.  Better diagnostics.
1959
1960         * GNUmakefile.in: Add bin/ to tree and populate with some links.
1961         This makes lilypond run from the build directory using argv0
1962         relocation (without any --prefix or LILYPONDPREFIX setting).
1963
1964 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1965
1966         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
1967
1968         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
1969         with simple-closure.
1970
1971         * lily/self-aligment-interface.cc (set_align_self): new function
1972         (set_center_parent): new function.
1973
1974         * lily/side-position-interface.cc (set_axis): new function.
1975
1976         * lily/new-fingering-engraver.cc (position_scripts): use drul for
1977         generic code. 
1978
1979         * scm/define-grob-properties.scm (all-user-grob-properties):
1980         remove [XY]-offset-callbacks add [YX]-offset
1981         
1982 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1983
1984         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
1985         entry for time signatures after breathing signs. Bug report by
1986         Scott Russell.
1987
1988 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1989
1990         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
1991         not absolute, make it absolute using PATH.
1992
1993 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1994
1995         * python/midi.c (initmidi): Fix type for mingw.
1996
1997 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1998
1999         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
2000
2001         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
2002         cross compiling.
2003
2004         * stepmake/aclocal.m4: Support python cross compiling.
2005
2006         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
2007         Add mingw section.
2008
2009 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2010
2011         * scm/output-lib.scm (chain-grob-member-functions): replace
2012         chained-callback.cc
2013
2014         * lily/chained-callback.cc (Module): remove file.
2015
2016         * lily/rest-collision.cc (force_shift_callback_rest): change to
2017         chained callback.
2018
2019         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
2020
2021         * lily/grob.cc (y_parent_positioning): remove axis argument from
2022         parent_positioning callbacks.
2023         (Grob): junk init code
2024         (get_offset): use generic property callbacks for
2025         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
2026         (axis_parent_positioning): new function
2027         (axis_offset_symbol): new function
2028         (chain_offset_callback): new function
2029         (add_offset_callback): new function
2030
2031         * lily/beam.cc (rest_collision_callback): change signature; this
2032         is now a chained callback.
2033
2034         * lily/include/dimension-cache.hh (class Dimension_cache): remove
2035         callback administration.
2036
2037         * lily/simple-closure.cc: new file. Smob type that allows "grob
2038         member functions",
2039
2040             (ly:make-simple-closure FUNC A B)
2041
2042         is evaluated as (FUNC grob A B). This allows chaining of callbacks
2043         in various ways.
2044
2045         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
2046         callbacks.
2047
2048         * lily/slur.cc (outside_slur_callback): take 2 arguments.
2049
2050         * lily/rest.cc (polyphonic_offset_callback): remove.
2051
2052         * lily/script-engraver.cc (try_music): remove bool* argument.
2053
2054         * scm/script.scm (default-script-alist): set quantize-position
2055         appropriately.
2056
2057         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
2058
2059         * lily/side-position-interface.cc (aligned_side): move staff
2060         position quantization from
2061         Side_position_interface::quantised_position().
2062         (quantised_position): remove
2063         
2064 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2065
2066         * input/regression/beam-quant-standard.ly: reindent, set
2067         debug-beam-quanting to #t.
2068
2069         * lily/beam-concave.cc (calc_concaveness): set concaveness to
2070         10000 if this is a "hard" concave beam.
2071
2072         * lily/beam.cc (calc_least_squares_positions): change from
2073         calc_least_squares_dy
2074         (set_stem_lengths): this is now a chained callback.
2075
2076         * lily/context-property.cc (execute_general_pushpop_property):
2077         bugfix override with procedure should have effect.
2078
2079         * scm/define-grob-properties.scm (all-internal-grob-properties):
2080         remove position-callbacks.
2081
2082         * scm/define-grobs.scm (all-grob-descriptions): use
2083         ly:make-callback-chain for positions property.
2084
2085         * scm/layout-beam.scm (check-quant-callbacks): return list of
2086         chained callbacks.
2087
2088         * scm/lily.scm (type-p-name-alist): add callback-chain
2089
2090         * lily/lily-guile.cc (type_check_assignment): type check failure
2091         is warning not message.
2092
2093         * lily/grob-property.cc (try_callback): walk callback chain if
2094         appropriate.
2095
2096         * lily/chained-callback.cc: new file. new smob type.
2097
2098         * lily/lily-guile.cc (procedure_arity): new function.
2099
2100 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2101
2102         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
2103
2104 2005-10-25  John Mandereau  <john.mandereau@free.fr>
2105  
2106         * Documentation/user/instrument-notation.itely (Figured bass):
2107         describe new features
2108
2109 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2110
2111         * lily/beam.cc (calc_least_squares_dy): use property callback.
2112
2113         * lily/beam-concave.cc (calc_concaveness): use property callback.
2114
2115         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
2116
2117 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2118
2119         * HACKING: Update.
2120
2121 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2122
2123         * scm/layout-page-layout.scm (page-headfoot): annotate
2124         pagetopspace too.
2125
2126         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
2127
2128         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
2129         doesn't take y-space.
2130
2131         * scm/paper.scm (paper-alist): fix A7 dimensions. 
2132
2133 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2134
2135         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
2136         src-wildcard, remove $(wildcard).
2137
2138         * po/GNUmakefile (PO_FILES): 
2139         * ps/GNUmakefile (PS_FILES): 
2140         * tex/GNUmakefile (TEX_FILES): 
2141         * cygwin/GNUmakefile (POSTINSTALLS):
2142         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
2143         some wildcard calls.
2144
2145 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2146
2147         * THANKS: add Thomas Bushnell.
2148
2149 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2150
2151         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
2152         (lilypond-main): Redirect to gui-main if 'gui is set.
2153         Backportme.
2154
2155         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
2156         for alternative installations kludging s/share/lib/g
2157         LILYPONDPREFIX. Backportme.
2158
2159         * SConstruct (libdir_package_version): Define.
2160
2161         * python/SConscript: 
2162         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
2163         module in libdir.  Backportme.
2164
2165 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2166
2167         * lily/main.cc: clarify --safe.
2168
2169 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2170
2171         * VERSION: release 2.7.14
2172         
2173         * Documentation/user/*.itely: remove minimumVerticalExtent.
2174
2175         * scm/define-grobs.scm (all-grob-descriptions): remove
2176         RemoveEmptyVerticalGroup
2177
2178         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
2179
2180         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
2181         compile on MOSX
2182
2183         * python/convertrules.py (conv): add rules.
2184
2185         * lily/grob.cc: remove is_empty()
2186
2187         * lily/grob-property.cc: remove add_to_list_property().
2188
2189         * scripts/convert-ly.py (datadir): add prefix switching hack to
2190         .py too.
2191
2192         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
2193         space-function tweak.
2194
2195         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
2196
2197         * scm/define-grob-properties.scm (all-user-grob-properties):
2198         remove callback property.
2199
2200         * lily/include/grob.hh (class Grob): remove property_callbacks_
2201         member. Properties of procedure type are assumed to be callbacks.
2202
2203         * lily/ligature-engraver.cc (override_stencil_callback):
2204         rewrite. Use noteHeadLigaturePrimitive as source.
2205
2206         * scm/define-grob-properties.scm (all-internal-grob-properties):
2207         remove ligature-primitive-callback
2208
2209         * lily/include/dimension-cache.hh (class Dimension_cache): make
2210         class, with Grob as friend.
2211
2212         * lily/grob.cc: remove set_extent_callback(), set_extent() and
2213         has_extent_callback()
2214
2215         * scm/translation-functions.scm (format-new-bass-figure): read
2216         figuredBassPlusDirection
2217
2218         * scm/define-context-properties.scm
2219         (all-user-translation-properties): add figuredBassPlusDirection.
2220
2221         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
2222
2223         * lily/align-interface.cc (set_ordered): new function.
2224
2225         * lily/grob.cc (flush_extent_cache): rewrite.
2226
2227         * lily/dimension-cache.cc (Dimension_cache): cache extent as
2228         Interval pointer directly.
2229
2230         * lily/main.cc (setup_paths): insert extra / .
2231         (setup_paths): junk cff entry.
2232
2233         * lily/font-config.cc (init_fontconfig): only add type1 / otf
2234         directories.
2235
2236         * lily/axis-group-engraver.cc (finalize): remove
2237         extraVerticalExtent, minimumVerticalExtent verticalExtent.
2238
2239         * lily/grob.cc (Grob): don't set extent from ctor.
2240         (extent): use property callbacks. 
2241
2242         * lily/axis-group-interface.cc: remove set_axes() function.
2243
2244         * lily/grob-property.cc (del_property): new function.
2245
2246 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2247
2248         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
2249         
2250 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2251
2252         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
2253
2254 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2255
2256         * mf/SConscript: Updates.
2257
2258         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
2259
2260         * stepmake/stepmake/*:
2261         * */GNUmakefile:
2262         * config.make.in:
2263         * GNUmakefile.in:
2264         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
2265         from any directory in build-dir.  Cleanups.
2266
2267         * make/srcdir.make.in: Remove.
2268
2269         * lily/main.cc (setup_paths): Fix and document build-dir hack.
2270
2271         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
2272         main).
2273
2274         * lily/SConscript: Remove ttftools.
2275
2276         * SConstruct: Resurrect.
2277
2278 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2279
2280         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
2281         Y coordinate. 
2282
2283         * lily/paper-book.cc (add_score_title): put Paper_score title into
2284         systems_ list.
2285
2286         * scm/translation-functions.scm (format-new-bass-figure): also
2287         allow plus in combination with _
2288
2289 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2290
2291         * VERSION: 2.7.13 released.
2292
2293         * lily/note-collision.cc (check_meshing_chords): don't wipe
2294         stencil, merely set transparent.
2295
2296         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
2297         (Top): document #'callbacks.
2298         (Top): document nested \override.
2299
2300         * input/regression/figured-bass.ly: update for slash and pluses.
2301
2302         * input/regression/figured-bass-continuation-forbid.ly (Module):
2303         new file.
2304
2305         * scm/translation-functions.scm (format-new-bass-figure): use
2306         slashed-digit if diminished is set.
2307         (format-new-bass-figure): add + if 'augmented is set.
2308
2309         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
2310
2311         * input/test/piano-staff-distance.ly: remove file.
2312
2313         * Documentation/user/advanced-notation.itely (Formatting cue
2314         notes): use length-fraction for making stems/beams smaller.
2315
2316         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
2317         modifications.
2318
2319         * lily/new-figured-bass-engraver.cc: new property
2320         centerFiguredBassContinuations
2321
2322         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2323         use callbacks.
2324
2325         * lily/context-property.cc (execute_general_pushpop_property):
2326         robustness checks.
2327
2328         * input/regression/override-nest.ly: new file.
2329
2330         * python/convertrules.py (FatalConversionError.subber): conversion
2331         rule for #'callbacks
2332
2333         * input/regression/override-nest.ly: new function.
2334
2335         * lily/parser.yy (music_property_def): allow \override #'a #'b =
2336         #c too. 
2337
2338         * lily/context-property.cc (lookup_nested_property): new function.
2339         (evict_from_alist): new function.
2340         (general_pushpop_property): new function.
2341         (execute_general_pushpop_property): rewrite. Support nested
2342         properties too.
2343
2344 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2345
2346         * lily/beam.cc: use length-fraction too.
2347
2348         * scm/define-grob-properties.scm (all-user-grob-properties):
2349         remove property flag-width-function
2350         (all-user-grob-properties): remove space-function.
2351
2352         * scm/layout-beam.scm: remove flag-width-function.
2353
2354         * lily/beam.cc: remove flag-width-function
2355
2356         * scm/layout-beam.scm: remove beam dir functions.
2357
2358         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
2359
2360         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
2361         for easier grace tweaks.
2362
2363         * lily/beam.cc: remove dir-function.
2364
2365         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
2366
2367         * lily/grob.cc: remove spacing-procedure.
2368
2369         * lily/note-head.cc (calc_stem_attachment): new function.
2370         (internal_print): use callback to get glyph-name.
2371
2372         * lily/grob-property.cc (get_interfaces): new function.
2373
2374         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
2375
2376         * lily/stem.cc (calc_stem_end_position): new function.
2377         (calc_length): new function.
2378         document details for stem.
2379         remove Stem::get_direction()
2380
2381         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
2382
2383         * lily/grob-property.cc (set_callback): new function.
2384
2385         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
2386
2387         * lily/item-scheme.cc: new file.
2388
2389         * lily/bar-line.cc (before_line_breaking): remove function.
2390         remove bar-size-procedure, break-glyph-function
2391
2392         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
2393
2394         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
2395
2396         * lily/system-start-delimiter.cc (print): suicide from
2397         here. Remove after_line_breaking_callback.
2398
2399         * lily/script-interface.cc (calc_direction): use callback for direction.
2400
2401         * lily/side-position-interface.cc (aligned_side): don't use
2402         Side_position_interface::get_direction directly. Use callback. 
2403
2404         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
2405         calculate stencil.
2406         (get_print_stencil): rename from get_stencil: create stencil with
2407         transparency, color and cause. 
2408
2409         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
2410
2411         * python/convertrules.py (conv): insert temporary warning rule.
2412
2413         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
2414
2415         * lily/grob-property.cc (try_callback): remove marker if applicable.
2416
2417         * lily/grob.cc: elucidate doc about after/before-line-breaking
2418
2419         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
2420
2421         * lily/stem.cc (height): idem.
2422
2423         * lily/stem-tremolo.cc: idem.
2424
2425         * lily/slur.cc (height): don't use get_uncached_stencil()
2426
2427         * lily/rest.cc (y_offset_callback): use offset callback
2428         iso. after-line-breaking callback.
2429
2430         * lily/grob.cc: change after/before-line-breaking-callback to
2431         after/before-line-breaking dummy properties.
2432
2433         * lily/include/grob.hh: remove Grob_status.
2434
2435         * scm/define-context-properties.scm
2436         (all-user-translation-properties): remove verticalAlignmentChildCallback
2437
2438         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
2439         (calc_direction): use callback
2440         (calc_positions): use callback.
2441
2442         * lily/tie.cc (calc_direction): use callback. Only call parent
2443         positioning for more than one tie.
2444
2445         * lily/tie-column.cc (calc_positioning_done): use callback
2446
2447         * lily/slur-scoring.cc (calc_control_points): use callback
2448
2449         * lily/slur.cc (calc_direction): use callback.
2450
2451         * lily/note-collision.cc (force_shift_callback): remove.
2452
2453         * lily/dot-column.cc (force_shift_callback): remove. Use
2454         other_axis_parent_positioning.
2455
2456         * lily/grob.cc (other_axis_parent_positioning): new function.
2457         (same_axis_parent_positioning): new function
2458
2459         * lily/align-interface.cc (alignment_callback): remove function.
2460
2461         * lily/note-collision.cc (calc_positioning_done): use callback.
2462
2463         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
2464         (calc_direction): idem.
2465         remove print function.
2466
2467         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
2468
2469         * lily/dot-column.cc (calc_positioning_done): use callback.
2470
2471         * lily/break-align-interface.cc (calc_positioning_done): use callback.
2472
2473         * lily/beam.cc (calc_direction): use pseudo-property for beam
2474         direction callback.
2475         (calc_positions): use callback 
2476
2477         * lily/align-interface.cc (calc_positioning_done): use
2478         callback. Fold fixed  distance and normal alignment in one function.
2479
2480         * lily/stem.cc (calc_stem_end_position): use callback.
2481         (calc_positioning_done): idem.
2482         (calc_direction): idem.
2483         (calc_stem_end_position): idem
2484         (calc_stem_info): idem.
2485
2486         * lily/grob-property.cc (get_property_data): new function: 
2487         (try_callback): new function.
2488
2489         * scm/define-grob-properties.scm (all-user-grob-properties): doc
2490         callbacks property.
2491
2492         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
2493
2494 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2495
2496         * lily/tie.cc (get_position): robustness fix. Don't crash if a
2497         tie
2498         has no heads.
2499         
2500         * lily/include/*.hh (Module): compile fixes.
2501
2502 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
2503
2504         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
2505         as an argument for char-syntax: use (char-syntax (or nil 0)) 
2506         instead of (char-syntax nil), thanks to Milan Zamazal.
2507
2508 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2509
2510         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
2511         dist.
2512
2513         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
2514         themselves.
2515
2516 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2517
2518         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
2519         add class_name() method.
2520
2521         * lily/music-scheme.cc: remove ly:music-name.
2522
2523 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2524
2525         * cygwin/postinstall-lilypond.sh: Remove cruft.
2526
2527         * cygwin/postremove-lilypond.sh: Remove.
2528
2529         * cygwin/GNUmakefile (default): Remove postremove rules.
2530
2531 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2532
2533         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
2534         even header too.
2535         
2536         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
2537         MacOS 9 users.
2538
2539         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
2540         consider break index for broken spanner.
2541
2542         * scm/define-markup-commands.scm (wordwrap-string): remove \r
2543         characters from string before splitting.
2544
2545 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2546
2547         * scm/framework-ps.scm (output-preview-framework): use
2548         is-book-title to determine whether to chop off the booktitle.
2549
2550         * lily/paper-book.cc (systems): init from book-title-properties
2551         (add_score_title): init score-title-properties.
2552
2553         * ly/paper-defaults.ly: add {score,book}-title-properties.
2554
2555         * scm/document-backend.scm (lookup-interface): error message if
2556         using unknown interface.
2557
2558         * lily/volta-bracket.cc (after_line_breaking): new function. Set
2559         edge-height.
2560
2561         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
2562         make_bracket.
2563         (make_bracket): new function.
2564
2565         * scm/lily.scm (define-scheme-options): add paper-size option.
2566
2567         * ly/declarations-init.ly (laissezVibrer): get paper size from
2568         -dpaper-size
2569
2570         * scm/translation-functions.scm: use \fontsize for changing the
2571         fontsize.
2572
2573         * scm/define-grobs.scm (all-grob-descriptions): set
2574         between-length-limit to 1.0
2575
2576         * lily/tie-helper.cc: add between_length_limit_ detail property.
2577
2578         * mf/feta-bolletjes.mf: typos.
2579
2580         * lily/note-head.cc (internal_print): don't shadow idx
2581         parameter. This fixes wrong attachment for do shape heads.
2582
2583 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2584
2585         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
2586
2587         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
2588
2589         * scm/layout-slur.scm: rename from slur.scm
2590
2591         * scm/layout-page-layout.scm: rename from page-layout.scm
2592
2593         * scm/layout-beam.scm: rename from beam.scm
2594
2595         * scm/define-grob-interfaces.scm (bass-figure-interface): add
2596         bass-figure-interface
2597
2598         * lily/new-figured-bass-engraver.cc (process_music): add
2599         implicitBassFigures property.
2600         
2601         * scm/define-markup-commands.scm (pad-x): new markup.
2602
2603         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
2604         minimumVerticalExtent on FiguredBass context.
2605
2606         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
2607         case the continuation crosses a line break.
2608
2609 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2610
2611         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
2612         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
2613         absolute file name bug.  Backportme.
2614
2615 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2616
2617         * VERSION (PACKAGE_NAME): release 2.7.12
2618
2619         * input/regression/figured-bass-continuation-center.ly: new file.
2620
2621         * input/regression/beam-outside-beamlets.ly: new file.
2622
2623         * lily/beam.cc (set_beaming): don't clip edges.
2624         (connect_beams): don't clip edges.
2625
2626         * lily/beaming-info.cc (clip_edges): new function.
2627
2628         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
2629
2630         * Documentation/user/instrument-notation.itely (Figured bass):
2631         demonstrate extenders, update seealso links.
2632
2633         * scm/titling.scm (marked-up-headfoot): change tagline
2634         handling. tagline = ##f will blank the tagline as well.
2635
2636 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2637
2638         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
2639
2640         * lily/new-figured-bass-engraver.cc (struct
2641         New_figured_bass_engraver): add new_music_found_ member.
2642
2643         * lily/lilypond-version.cc (Lilypond_version): deal with
2644         incorrectly formatted version strings. 
2645
2646         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
2647         New_figured_bass_engraver by default.
2648
2649         * lily/ttf.cc (print_trailer): only define glyph names when
2650         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
2651
2652 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2653
2654         * lily/horizontal-bracket.cc (make_bracket): new function.
2655
2656         * scm/define-grobs.scm (all-grob-descriptions): new grobs
2657         NewBassFigure, BassFigureBracket, BassFigureContinuation,
2658         BassFigureLine, BassFigureAlignment
2659
2660         * lily/new-figured-bass-engraver.cc (process_music): new file.
2661
2662         * lily/figured-bass-continuation.cc: new file.
2663
2664         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
2665         new file.
2666
2667 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2668
2669         * scripts/lilypond-book.py: Bug fix, put the quote around the
2670         actual score for LaTeX documents.
2671
2672         * scm/define-grobs.scm (all-grob-descriptions): Change
2673         collapse-height of the SystemStartBracket grob to 5.0, 
2674         so the bracket disappears for single stave score lines (similarly
2675         to SystemStartBraces). 
2676
2677         * Documentation/user/advanced-notation.itely (Polymetric
2678         notation): Clarify the use of compressMusic.
2679
2680         * Documentation/user/basic-notation.itely (Grace notes): Clarify
2681         that the grace spacer note in other staves need the same duration
2682         and document the stroke-style property.
2683
2684 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2685
2686         * Documentation/user/global.itely (Vertical spacing): document
2687         alignment-extra-space and fixed-alignment-extra-space.
2688
2689         * Documentation/topdocs/NEWS.tely (Top): add entry.
2690
2691         * input/regression/alignment-vertical-spacing.ly: new file.
2692
2693         * python/convertrules.py (conv): add rule.
2694
2695         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
2696
2697         * lily/align-interface.cc (stretch_after_break): new
2698         function. Read fixed-alignment-extra-space property.
2699         (align_elements_to_extents): read alignment-extra-space property.
2700
2701         * lily/lily-guile.cc (robust_scm2dir): new function.
2702
2703         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
2704         (annotate-space-left): new function. Annotate space left on page. 
2705         (annotate-y-interval): new function.
2706         (paper-system-annotate-last): new function. Annotate bottom-space.
2707
2708         * mf/feta-beugel.mf (y): 
2709
2710 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2711
2712         * VERSION (PACKAGE_NAME):  release 2.7.11
2713
2714         * scm/lily-library.scm (interval-translate): new function
2715         (interval-center): new function. 
2716
2717         * scm/page-layout.scm (paper-system-annotate): new function. Add
2718         arrows for dimensions.
2719  
2720         * scm/stencil.scm (dimension-arrows): new function.
2721
2722         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
2723
2724         * input/regression/page-spacing.ly: add annotatespacing
2725
2726         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
2727         (LY_DEFINE): new function ly:paper-system-set-property!
2728
2729         * Documentation/user/global.itely (Paper size): explain how to add
2730         sizes.
2731
2732         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
2733         correspond to GS's definition.
2734
2735         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
2736         tuplet bracket.
2737         (print): only connect to next bracket if the next one is alive.
2738         (print): set padding to 0.0 if the bound is a breakable
2739         column. This makes tupletFullLength brackets reach up to the staff
2740         line if it doesn't connect to the next line.
2741
2742 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2743
2744         * lily/bar-number-engraver.cc: correct docs.
2745
2746         * scm/output-lib.scm (first-bar-number-invisible): rename from
2747         default-bar-number-visibility
2748
2749 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2750
2751         * scm/define-music-properties.scm (all-music-properties): remove
2752         predicate property.
2753
2754 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
2755
2756         * po/fi.po: refresh.
2757
2758 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2759
2760         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
2761         superfluous s1.
2762         (disappear): bugfix.
2763
2764         * lily/stem-tremolo.cc (raw_stencil): read slope property.
2765
2766         * lily/include/paper-system.hh (class Paper_system): remove
2767         staff_extents_ member.
2768
2769         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
2770
2771         * lily/include/paper-system.hh (class Paper_system): remove
2772         number_ variable. Remove is_title_. Remove break_before_penalty_
2773
2774         * lily/paper-book.cc (systems): use 'number property iso. number_
2775         member.
2776
2777         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
2778         remove ly:paper-system-number.
2779
2780         * scm/lily-library.scm (paper-system-title?): new function.
2781
2782         * lily/book.cc (process): bugfix: flip ?: cases. 
2783
2784         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2785         add outputProperty.
2786
2787         * ly/music-functions-init.ly: add outputProperty music function.
2788
2789         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
2790
2791         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
2792         and next-padding.
2793         (optimal-page-breaks): rename from ly:optimal-page-breaks.
2794
2795         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
2796
2797         * lily/paper-system.cc (internal_get_property): new function.
2798
2799         * Documentation/user/global.itely (Vertical spacing): refer to
2800         page-spacing.ly
2801
2802         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
2803         pagetopspace
2804
2805         * input/regression/page-spacing.ly: new file.
2806
2807         * input/regression/page-top-space.ly: new file.
2808
2809         * lily/spacing-spanner.cc: cmath -> math.h
2810
2811         * lily/paper-system.cc (read_left_bound): new function. Read
2812         line-break-system-details from left bound to determine extents.
2813  
2814         * Documentation/user/programming-interface.itely (Using LilyPond
2815         syntax inside Scheme): change applyxxx -> applyXxx.
2816
2817         * ly/music-functions-init.ly: add outputProperty music function.
2818
2819         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
2820
2821         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
2822
2823         * python/convertrules.py (conv): rule
2824
2825         * ly/music-functions-init.ly: applyxxx -> applyXxx
2826
2827         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
2828         TabVoice to Voice.
2829
2830 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2831
2832         * flower/include/real.hh: include <math.h> iso. <cmath>
2833
2834         * flower/include/offset.hh: include real.hh
2835
2836 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2837
2838         * Documentation/user/changing-defaults.itely (Difficult tweaks):
2839         fix example, now that 'interfaces is no longer directly available.
2840
2841         * lily/book.cc (process): don't crash if paper == NULL.
2842
2843         * po/fr.po: update.
2844
2845 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2846
2847         * scm/define-music-types.scm (music-descriptions): set length and
2848         start-callback for QuoteMusic
2849
2850 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2851
2852         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
2853         arguments. Fixes compilation error with gcc 3.3.
2854
2855 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2856
2857         * VERSION: release 2.7.10
2858
2859         * stepmake/stepmake/python-module-rules.make
2860         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
2861
2862         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
2863         real.hh
2864
2865 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2866
2867         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
2868         -Werror. Otherwise GCC barfs over various optimizations.
2869
2870         * scm/define-grob-properties.scm (all-internal-grob-properties):
2871         add note-head property
2872
2873         * Documentation/user/instrument-notation.itely (Laissez vibrer
2874         ties): new node.
2875
2876         * input/regression/laissez-vibrer-ties.ly: new file.
2877
2878         * lily/laissez-vibrer-engraver.cc: new file.    
2879
2880         * lily/include/tie-column-format.hh: new file.
2881
2882         * lily/tie-column-format.cc: new file. 
2883
2884         * lily/tie-column.cc (set_manual_tie_configuration): new function.
2885
2886         * lily/laissez-vibrer-tie.cc: new file.
2887
2888         * lily/include/laissez-vibrer-tie.hh: new file.
2889
2890         * ly/engraver-init.ly: add Laissez_vibrer_engraver
2891
2892         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
2893
2894         * scm/define-grobs.scm (all-grob-descriptions): add
2895         LaissezVibrerTie, LaissezVibrerTieColumn
2896
2897         * lily/tie-column.cc (set_tie_config_directions): new function
2898         (final_shape_adjustment): new function.
2899         (shift_small_ties): new function.
2900
2901         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
2902
2903         * lily/include/tie.hh (struct Tie_details): add x_gap_
2904         (struct Tie_configuration): add head_position_
2905
2906         * lily/tie-column.cc (set_chord_outline): new function.
2907
2908         * mf/cmr.enc.in:  remove file.
2909
2910 2005-09-11  Graham Percival  <gpermus@gmail.com>
2911
2912         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
2913
2914 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2915
2916         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
2917         reduce aliasing effects.
2918
2919         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
2920         box in skyline.
2921
2922 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2923
2924         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
2925
2926         * flower/include/real.hh: std::fabs too.
2927
2928 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
2929
2930         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
2931
2932         * lily, flower: Include C++ iso C headers.  Import namespace std
2933         throughout.
2934
2935         * lily/side-position-interface.cc: 
2936         * lily/scm-hash.cc: 
2937         * lily/note-head.cc: 
2938         * lily/include/includable-lexer.hh: 
2939         * flower/include/string-data.icc: Remove using std::*.
2940
2941         * lily, flower: Include C++ iso C headers.  Import namespace std
2942         throughout.
2943
2944         * lily/side-position-interface.cc: 
2945         * lily/scm-hash.cc: 
2946         * lily/note-head.cc: 
2947         * lily/include/includable-lexer.hh: 
2948         * flower/include/string-data.icc: Remove using std::*.
2949
2950         * Documentation/user/instrument-notation.itely (Entering lyrics):
2951         Multiple latin-1->utf-8 conversion fix.
2952
2953         * Documentation/user/*tely: Update Emacs cookie to utf-8.
2954
2955 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2956
2957         * lily/tie.cc (get_configuration): also avoid dots for non-space
2958         situations.
2959
2960 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
2961
2962         * Documentation/user/instrument-notation.itely: Bugfix.
2963
2964 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2965
2966         * tex/GNUmakefile: don't install texinfo.tex
2967
2968         * tex/ : cleanup: remove unused files.
2969
2970         * lily/general-scheme.cc: remove my_{isinf,isnan}.
2971
2972         * flower/include/real.hh: using std::{isnan,isinf}
2973         
2974         * VERSION (PATCH_LEVEL): release 2.7.9
2975
2976 2005-09-05  Graham Percival  <gpermus@gmail.com>
2977
2978         * Documentation/user/ instrument-notation.itely,
2979         advanced-notation.itely: minor tweaks.
2980
2981         * input/test/script-chart.ly: add item padding.
2982
2983 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2984
2985         * flower/offset.cc: use math.h iso. <cmath>
2986
2987         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
2988         of IE users.
2989
2990         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
2991         (widen-left-stencil-edges): new function. Fix alignment problems
2992         with LaTeX includegraphics.
2993
2994         * lily/text-interface.cc (interpret_markup): use abort().
2995
2996 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2997
2998         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
2999
3000         * lily/tie.cc (get_configuration): update bezier shape as we
3001         change Y positions.
3002         (get_configuration): don't move large ties if we're outside of the
3003         staff.
3004
3005 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3006
3007         * scm/define-markup-commands.scm (strut): swap X and Y dims.
3008         
3009 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3010
3011         * .cvsignore: Add auto-generated configure files and then some.
3012
3013 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3014
3015         * scm/define-grobs.scm (DynamicLineSpanner): Add
3016         X-extent-callback.  Fixes hairpin-slur collision.
3017
3018 2005-08-31  Graham Percival  <gpermus@gmail.com>
3019
3020         * Documentation/user/advanced-notation.itely,
3021         basic-notation.itely: minor changes.
3022
3023 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3024
3025         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
3026         \linebreak between each .eps file if \betweenLilyPondSystem is
3027         undefined. 
3028
3029         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
3030         music): Document the \linebreak
3031
3032         * Documentation/user/lilypond-book.itely,
3033         input/tutorial/lbook-latex-test.tex,
3034         Documentation/user/examples.itely: Remove \usepackage{graphics}
3035
3036 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3037
3038         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
3039
3040         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
3041         compat bugfix.
3042
3043         * scripts/lilypond-book.py (PREAMBLE_LY): define
3044         inside-lilypond-book
3045         (modify_preamble): new function. Insert \RequirePackage{graphics}
3046         when no {graphics found in preamble.  
3047
3048 2005-08030  Graham Percival  <gpermus@gmail.com>
3049
3050         * Documentation/user/basic-notation.itely, global.itely,
3051         tutorial.itely: misc small changes.
3052
3053 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3054
3055         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
3056         VERSION.
3057
3058 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3059
3060         * lily/tie-column.cc (new_directions): put Tie down on center
3061         staff line. 
3062
3063         * lily/script-interface.cc (before_line_breaking): use
3064         Grob::programming_error
3065
3066         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
3067
3068         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
3069         of splitext.
3070
3071 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3072
3073         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
3074
3075 2005-08-29  Werner Lemberg  <wl@gnu.org>
3076
3077         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
3078         the `*.scale.pfa' files to avoid warnings.
3079
3080 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3081
3082         * lily/tempo-performer.cc (process_music): idem.
3083
3084         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
3085
3086 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3087
3088         * Documentation/user/advanced-notation.itely (Text markup): not a
3089         fragment.
3090
3091         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
3092
3093         * lily/staff-performer.cc (initialize): add tempo/name to
3094         audio_staff_
3095
3096
3097 2005-08-26  Graham Percival  <gpermus@gmail.com>
3098
3099         * Documentation/user/advanced.itely: add text-only example.
3100
3101         * Documentation/user/invoking.itely: add index entries for
3102         convert-ly.
3103
3104         * Documentation/user/ tutorial.itely, basic-notation.itely:
3105         small fixes suggested by Steve D.  Thanks!
3106
3107 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3108
3109         * input/regression/markup-bidi-pango.ly: new file.
3110
3111         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
3112         standard. Remove #ifdef. Remove memleak.
3113         (text_stencil): use text_dir to decide how to composite items.
3114         (text_stencil): determine uniform text direction for the entire
3115         string.
3116
3117         * scripts/lilypond-book.py (output_name): remove
3118         latex_filter_cmd. Non-portable to non-Unix systems. 
3119         (get_latex_textwidth): use File.write and os.unlink() instead.
3120
3121         * THANKS: add Vicente & Trevor.
3122
3123         * lily/grob.cc (discretionary_processing): look up origin for
3124         programming_error too. 
3125
3126         * input/regression/tie-broken.ly: new file.
3127
3128         * lily/tie-column.cc (set_chord_outlines): set outline for line
3129         break case too.
3130         
3131 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3132
3133         * lily/pango-font.cc (text_stencil): don't translate glyphs in
3134         unscaled transform, just translate stencils.
3135
3136         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
3137         MIDI.
3138
3139         * scm/define-markup-commands.scm (wordwrap-string): use
3140         text-direction
3141         (wordwrap-stencils): idem.
3142         (line): idem.
3143         (fill-line): idem.
3144         (wordwrap-stencils): translate last line to right for
3145         text-direction = LEFT.
3146
3147         * scm/define-grob-properties.scm (all-user-grob-properties): add
3148         text-direction.
3149
3150 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3151
3152         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
3153         when copying a Lily_parser object.
3154
3155 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3156
3157         * scm/define-markup-commands.scm (null): add null markup.
3158
3159 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3160
3161         * lily/item.cc: Add documentation of center-invisible
3162
3163 2005-08-24  Graham Percival  <gpermus@gmail.com>
3164
3165         * Documentation/user/advanced-notation.itely: add info about
3166         raising text.
3167
3168         * Documentation/user/programming-interface.itely: fix example
3169         involving raised text.
3170
3171 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3172
3173         * lily/beam.cc (print): fix X start/end points of isolated
3174         beamlets.
3175
3176         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
3177
3178         * lily/multi-measure-rest.cc (set_text_rods): new function.
3179
3180         * lily/vertical-align-engraver.cc (process_music): call
3181         Align_interface::set_axis(). This forces #'elements to be ordered,
3182         preventing random vertical reordering of staves.
3183
3184         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
3185         add avoid-slur property. 
3186
3187         * Documentation/user/basic-notation.itely (Measure repeats): add
3188         countPercentRepeats example.
3189
3190         * Documentation/user/advanced-notation.itely (Other text markup
3191         issues): remove remark about normal-font.  We have \normal-text
3192
3193         * input/regression/tie-chord.ly: add note about remaining bugs.
3194
3195         * lily/tie.cc (print): try Tie_column::set_directions () if
3196         control-points not yet defined.
3197
3198 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3199
3200         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
3201         extent. This fixes braces falling out of the EPS bbox.
3202
3203         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
3204         exactly to bbox.
3205
3206 2005-08-23  Graham Percival  <gpermus@gmail.com>
3207
3208         * {various} : change #up->#UP and #down->#DOWN.
3209
3210         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
3211
3212         * Documentation/user/advanced-notation.itely: clarify
3213         what objects handles text on a multimeasure rest.
3214
3215 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3216
3217         * VERSION (PATCH_LEVEL): release 2.7.7
3218
3219 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3220
3221         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
3222
3223         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
3224
3225         * input/regression/*.ly: formatting clean-up. Default layout
3226         before music expression.
3227
3228         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
3229         romanze28-2 example.
3230
3231         * scm/ps-to-png.scm: remove dir-re function.
3232         (make-ps-images): generate page names, instead of globbing them.
3233         This brings down LilyPond memory usage for make web by a factor
3234         10. (backportme?) 
3235
3236         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
3237         don't use glob. With 3000 files, globbing
3238         Documentation/user/out-www/ can take too much time. (backportme?)
3239         
3240         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
3241
3242         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
3243
3244         * input/regression/tie-manual.ly: new file
3245
3246         * input/regression/tie-chord.ly: update.
3247
3248         * flower/include/interval.hh (struct Interval_t): 
3249
3250         * lily/tie.cc (distance): new function 
3251         (height): new function.
3252         (init): new function
3253         (Tie_details): new struct.
3254
3255         * lily/skyline.cc (skyline_height): new function.
3256
3257         * lily/tie-column.cc (set_chord_outlines): new function.
3258         (new_directions): read tie-configuration
3259
3260         * lily/skyline.cc: fix ASCII art.
3261         
3262 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3263
3264         * python/convertrules.py (string_or_scheme): Fix spelling error
3265
3266 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3267         
3268         * lily/tie-column.cc (set_directions): set directions only once.
3269         (add_configuration): new function.
3270
3271         * lily/tie.cc (set_control_points): new function
3272
3273         * lily/tie-column.cc (new_directions): new function.
3274
3275         * ly/music-functions-init.ly: set 'pitch property
3276         iso. trill-pitch. This makes \relative work with \pitchedTrill
3277
3278         * lily/tie.cc (get_configuration): new function. Don't generate
3279         control points, rather, generate configuration.
3280         remove head-pair property.
3281
3282         * lily/include/tie.hh (struct Tie_configuration): new struct.
3283
3284 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
3285
3286         * Documentation/topdocs/NEWS.tely: clarify.
3287
3288 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3289
3290         * lily/tie.cc: remove minimum-length
3291
3292         * scm/define-grob-properties.scm (all-user-grob-properties):
3293         remove staffline-clearance, y-offset 
3294
3295         * input/regression/tie-dots.ly (Module): remove.
3296
3297         * lily/tie.cc (get_control_points): rewrite. Put short ties in
3298         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
3299
3300         * input/regression/tie-single.ly: new file.
3301
3302 2005-08-21  Graham Percival  <gpermus@gmail.com>
3303
3304         * ly/bagpipe.ly: fix compile problem.
3305
3306 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3307
3308         * lily/midi-item.cc (name): new method.
3309
3310         * lily/staff-performer.cc (acknowledge_audio_element): use
3311         signature of baseclass.
3312
3313         * lily/engraver-group.cc (do_announces): move recursion call out
3314         of while loop. 
3315
3316         * lily/drum-note-performer.cc (class Drum_note_performer): use
3317         process_music everywhere.
3318
3319         * ly/performer-init.ly: add default children everywhere.
3320
3321         * lily/paper-book.cc (output): call paper-book-write-midis
3322         directly: always write MIDI, even if no \layout {} block. 
3323
3324 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3325
3326         * VERSION (PACKAGE_NAME): release 2.7.6
3327
3328         * lily/percent-repeat-engraver.cc (try_music): don't print warning
3329         about not being able to handle repeat.
3330
3331 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3332
3333         * Documentation/user/examples.itely (Piano templates):
3334         * lily/include/performer-group.hh: Remove last traces of
3335         Performer_group_performer.  Fixes make web.
3336
3337 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3338
3339         * Documentation/user/examples.itely (Piano templates): change
3340         Engraver_group_engraver -> Engraver_group
3341
3342         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
3343         scm_stand_in_procs is not weak_any.
3344
3345         * lily/volta-bracket.cc (print): don't use strcmp().
3346
3347         * lily/volta-engraver.cc (process_music): use
3348         Text_interface::is_markup() for setting the 'text property of the
3349         volta bracket.
3350
3351         * input/mutopia/claop.py (accents): update syntax to 2.6
3352
3353         * scm/define-context-properties.scm
3354         (all-user-translation-properties): add countPercentRepeats.
3355
3356         * Documentation/user/basic-notation.itely (Measure repeats): add
3357         isolated percent example.
3358
3359 2005-08-18  Graham Percival  <gpermus@gmail.com>
3360
3361         * input/ {various}: change direction #1, #-1 to
3362         #up/#down or \fooUp, \fooDown.
3363
3364         * Documentation/user/music-glossary.tely: #-1 to #down.
3365
3366         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
3367         to #up, #-1 to #down.
3368
3369 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3370
3371         * lily/include/engraver-group.hh: rename.
3372
3373         * lily/include/performer-group.hh: rename.
3374
3375 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3376
3377         * input/test/script-abbreviations.ly: Removed some old LaTeX
3378         left overs.
3379
3380 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3381
3382         * python/convertrules.py (conv): inside-slur -> avoid-slur.
3383         Remove functions.  Remove if 1: constructs, reindent.
3384
3385         * scripts/convert-ly.py (add_version): Add functions from
3386         convertrules.py
3387
3388         * scm/script.scm (default-script-alist):
3389         s/priority/script-priority.  Fixes script stacking.  Backportme.
3390         (Fermata): Very low priority.
3391
3392 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3393
3394         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
3395
3396         * input/regression/slur-script.ly: remove padding tweaks. Add
3397         comment strings.
3398
3399         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
3400         time sigs and related stuff.
3401
3402         * scm/define-grob-properties.scm (all-user-grob-properties): add
3403         @code{} tags to property description.
3404
3405         * lily/include/line-group-group-engraver.hh (Module): remove file.
3406
3407         * python/convertrules.py (conv): add rule for
3408         Engraver_group_engraver -> Engraver_group.
3409
3410         * lily/include/performer-group-performer.hh: analogous.
3411
3412         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
3413
3414         * lily/context-def.cc (instantiate): check for
3415         Engraver_group_engraver and Performer_group_performer not
3416         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
3417  
3418 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3419
3420         * input/les-nereides.ly: Remove three fingering tweaks, update
3421         remaining one.
3422
3423         * input/regression/slur-script-inside.ly: Update, fix doc.
3424
3425         * scm/script.scm: Update to avoid-slur.
3426
3427         * scm/define-grob-properties.scm (avoid-slur): New property.
3428
3429         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
3430         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
3431         outside_slur_callback if avoid-slur != #'inside.
3432
3433         * scm/define-grobs.scm (Fingering, Textscript): No
3434         inside-slur/outside-slur preference.
3435         (DynamicLineSpanner): Always outside slur.
3436
3437         * input/regression/slur-script.ly: More tests.
3438
3439 2005-08-17  Graham Percival  <gpermus@gmail.com>
3440
3441         * Documentation/user/lilypond-book: fix notime entry.
3442
3443         * Documentation/user/advanced-notation.itely: add info on
3444         getting an I rehearsal mark.
3445
3446         * Documentation/user/putting.itely: reinstate "I", re-enforce
3447         the fact that \override numbers are the result of
3448         experimentation and personal taste.
3449
3450         * Documentation/user/invoking.itely: update convert-ly bugs.
3451
3452 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3453
3454         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
3455         to #t.
3456
3457         * lily/timing-translator.cc (initialize): don't initialize timing.
3458
3459         * input/regression/stem-spacing.ly (Module): remove file.
3460
3461         * input/regression/spacing-stick-out.ly: specify Score context for
3462         \override
3463
3464         * input/regression/clefs.ly: remove spurious {}s 
3465
3466 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
3467
3468         * Documentation/topdocs/NEWS.tely,
3469         input/regression/repeat-percent-count.ly: clarify a bit.
3470
3471 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3472
3473         * input/no-notation/display-lily-tests.ly: delete
3474         display-lily-init call.
3475
3476         * ly/music-functions-init.ly (displayLilyMusic): move
3477         display-lily-init call at top level, so that the user should not
3478         have to call it.
3479
3480         * scm/define-music-display-methods.scm (note-name->lily-string):
3481         retrieve note names directly from pitchnames using new function `rassoc'.
3482         (display-lily-init): note names list construction removed.
3483
3484 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3485
3486         * THANKS: spello.
3487
3488         * lily/lily-parser.cc (get_header): copy module, instead of
3489         returning it.
3490
3491         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
3492         counters.
3493
3494         * Documentation/user/basic-notation.itely (Measure repeats): add
3495         links to Counter grobs.
3496
3497         * scm/define-grobs.scm (all-grob-descriptions): add
3498         DoublePercentRepeatCounter
3499         (all-grob-descriptions): add PercentRepeatCounter
3500
3501         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
3502         also create counter grobs.
3503
3504         * lily/separation-item.cc (extremal_break_aligned_grob): don't
3505         return grob without space-alist.
3506
3507         * input/proportional.ly: tune staff-padding.
3508
3509         * input/regression/repeat-percent-count.ly: new file. 
3510
3511 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3512
3513         * input/no-notation/display-lily-tests.ly: moved from
3514         input/regression/ to input/no-notation. Be sure to call
3515         `display-lily-init' before trying to use the display function.
3516
3517 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3518
3519         * scripts/lilypond-book.py (option_definitions): Don't localize
3520         the empty string. Fixes bug when --psfonts was used with
3521         non-English locale.
3522
3523 2005-08-15  Graham Percival  <gpermus@gmail.com>
3524
3525         * lily/tuplet-bracket.cc: simple build fix.
3526
3527         * Documentation/user/putting.itely: use "we" instead of "I".
3528
3529         * Documentation/user/basic-notation.itely: cautionary accidentals
3530         work with naturals, too.
3531
3532 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3533
3534         * lily/tuplet-bracket.cc (calc_position_and_height): add
3535         staff-padding support.
3536
3537         * input/proportional.ly: set staff-padding.
3538         
3539         * VERSION (PATCH_LEVEL): release 2.7.5
3540
3541         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
3542         fixes. Remove tweaks.
3543
3544         * input/regression/tuplet-slope.ly: add a test case.
3545
3546         * lily/tuplet-bracket.cc (calc_position_and_height): revert
3547         erroneous fix. Add spanner bounds to offset array with relative X
3548         positions.
3549
3550         * ly/engraver-init.ly: add Rest_engraver only once.
3551
3552         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
3553         (*parser*) lookup if (*parser*) != #f.
3554
3555 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3556
3557         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
3558         Cut-and paste update.
3559
3560         * input/regression/slur-script.ly: Add example of reverting
3561         inside-slur for fingering.
3562
3563         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
3564         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
3565
3566         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
3567         outside_slur_callback if inside-slur == #f (as opposed to unset).
3568
3569 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3570
3571         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
3572         encoding files are already removed.
3573
3574 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3575
3576         * Documentation/user/advanced-notation.itely (Instrument names):
3577         Document a workaround for instrument names that collide with
3578         system start braces/brackets.
3579
3580 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3581
3582         * lily/rest-collision.cc (do_shift): spello.
3583
3584         * input/proportional.ly: use #'used property. Set break-overshoot
3585         property.
3586
3587         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
3588
3589         * lily/paper-column.cc: add #'used property
3590
3591         * lily/mark-engraver.cc (stop_translation_timestep): set grob
3592         array for staves found.
3593
3594         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
3595         array for stavesFound.
3596
3597         * lily/staff-spacing.cc (next_note_correction): add fixed and
3598         space to calling convention. This fixes spacing of accidentals
3599         after barlines.
3600
3601         * input/regression/spacing-accidental-stretch.ly: add barline -
3602         accidental case.
3603
3604         * scm/framework-ps.scm (page-header): add version number to
3605         creator
3606         (eps-header): idem.
3607
3608         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
3609         
3610 2005-08-13  Graham Percival  <gpermus@gmail.com>
3611
3612         * Documentation/user/global.itely: add "fit as much as
3613         possible onto this page" example (Vertical spacing).
3614
3615 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3616
3617         * *: Nitpick run.
3618
3619         * buildscripts/fixcc.py: Fixes.
3620
3621 2005-08-12  Graham Percival  <gpermus@gmail.com>
3622
3623         * Documentation/user/advanced-notation.itely: add markup
3624         example to Text spanners.
3625
3626 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3627
3628         * Documentation/user/basic-notation.itely (Ties): Add example of
3629         tying a tremolo to a chord. Thanks to Steve Doonan. 
3630
3631         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
3632         properties and move tieMelismaBusy to the list of written
3633         properties. 
3634
3635 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
3636
3637         * po/TODO: suggest to use a dedicated tool like kbabel.
3638
3639         * po/fi.po: update using kbabel.
3640
3641 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3642
3643         * *: Remove obsolete files.  Nitpick run.
3644
3645         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
3646
3647 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3648
3649         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
3650         too.
3651
3652         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
3653
3654         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
3655         whitespace as symbol separator.
3656
3657         * lily/side-position-interface.cc: Add slur-padding.
3658
3659         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
3660         quite a large fix, and it never worked in a stable release; so not
3661         really a regression.
3662
3663         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
3664         Update cut and paste code from Slur_engraver.
3665
3666         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
3667         Add.
3668
3669         * scm/define-grobs.scm (DynamicLineSpanner): Add
3670         dynamic-line-spanner-interface.
3671         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
3672
3673 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3674
3675         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
3676         to_boolean () so that non-set 'inside-slur means false.
3677
3678         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
3679         slur has control-points.  Skip script without direction.  Always
3680         do_shift if script inside slur, even if slur not contained in
3681         script y-extent.  Increment k in loop.
3682
3683 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3684
3685         * scm/define-markup-commands.scm: Improved regexp to search for
3686         EPS bounding boxes and corrected call to ly:warning.
3687
3688 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3689
3690         * Documentation/user/programming-interface.itely (Displaying music
3691         expressions): doc for \displayLilyMusic. Also some precisions in
3692         "Markup construction in Scheme"
3693
3694 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3695
3696         * scm/define-markup-commands.scm (normal-text): Added 2 new
3697         markup commands, \normal-text and \medium (the latter thanks to
3698         Bruce Fairchild). 
3699
3700 2005-08-08  Graham Percival  <gpermus@gmail.com>
3701
3702         * Documentation/user/programming-interface.itely: fix @{ @}.
3703
3704         * scm/define-markup-commands.scm: add linewidth info to
3705         \justify and \wordwrap, add "upright is the opposite of italic".
3706
3707         * Documentation/user/advanced-notation.itely: shaped->shape,
3708         add (cons (markup "foo")) type of example to text markup,
3709         reword multi-measure rests section.
3710
3711         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
3712         comment.  No actual code was touched.
3713
3714         * Documentation/user/invoking.itely: add more info about
3715         \include.  Thanks, Bruce!
3716
3717         * THANKS: add Bruce Fairchild, alphabetise.
3718
3719         * Documentation/user/global.itely: document \score{\header{}}
3720         behavior.
3721
3722         * Documentation/user/basic-notation.itely: reword multi-measure
3723         rest discussion in Rests.
3724
3725 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3726
3727         * Documentation/user/programming-interface.itely (Markup
3728         construction in Scheme): Corrected example and tried to clarify
3729         the implicit \line in the table.
3730
3731 2005-08-07  Graham Percival  <gpermus@gmail.com>
3732
3733         * Documentation/user/instrument-notation.itely: moved
3734         some bagpipe info back into the bagpipe section.  Somehow
3735         it ended up in the "other vocal issues" section?!  :o_O
3736
3737 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3738
3739         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
3740         directories, not paths).
3741
3742 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3743
3744         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
3745         plain emmentaler/aybabtu.  Backportme.
3746
3747         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
3748         missing dir correction.
3749
3750 2005-08-05  Graham Percival  <gperlist@shaw.ca>
3751
3752         * scm/define-markup-commands: fix reversed justify/wordwrap
3753         doc strings.
3754
3755 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
3756
3757         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
3758         lily/gregorian-ligature-engaver.cc,
3759         lily/include/ligature-engraver.hh,
3760         lily/include/coherent-ligature-engraver.hh,
3761         lily/include/gregorian-ligature-engraver.hh: make these classes
3762         truely abstract.  This should fix some internal oddities such as
3763         duplicate as well as dead translator/property declarations, and
3764         also some dead code.
3765
3766         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
3767         bugfix: avoid message "junking empty ligature" on ligature
3768         brackets by collecting dummy grobs.
3769
3770 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3771
3772         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
3773
3774         * input/proportional.ly (staffKind): bugfix.
3775         (staffKind): updates by Trevor Baca.
3776
3777         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
3778         default layout. 
3779
3780         * lily/tuplet-bracket.cc (print): check whether edge-text is a
3781         pair.
3782
3783         * lily/beam.cc (rest_collision_callback): call position_beam() if
3784         necessary.
3785
3786         * VERSION: release 2.7.4
3787
3788         * input/regression/spacing-uniform-stretching.ly: new file.
3789
3790         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
3791
3792         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
3793         contributor.
3794
3795         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
3796
3797         * input/proportional.ly: new file.
3798
3799         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
3800         columns is empty
3801
3802         * lily/tuplet-engraver.cc (finalize): new function. Reset right
3803         bounds to currentCommandColumn for the last step.
3804         (start_translation_timestep): if tupletFullLength is set, set
3805         bound to Paper Column
3806
3807         * input/regression/tuplet-full-length.ly (indent): new file.
3808
3809         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
3810         clique of loose columns, eg. a set of grace notes in strict
3811         notespacing.
3812
3813         * input/regression/spacing-strict-spacing-grace.ly: new file.
3814
3815         * lily/key-signature-interface.cc: change property name to
3816         alteration-alist
3817
3818         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
3819         keyAccidentalOrder
3820
3821         * python/convertrules.py (conv): keyAccidentalOrder ->
3822         keyAlterationOrder
3823
3824         * lily/key-engraver.cc (create_key): always print a cancellation
3825         for going to C-major/A-minor, regardless of printKeyCancellation.
3826         (create_key): remove typecheck for visibility. This fixes key
3827         signature not being printed.
3828
3829         * lily/spacing-determine-loose-columns.cc: new file.
3830
3831         * input/regression/spacing-strict-notespacing.ly: new file.
3832
3833         * lily/spacing-spanner.cc (generate_springs): rename from
3834         do_measure. 
3835         (generate_pair_spacing): new function.
3836         (init, generate_pair_spacing): set between-cols for floating
3837         nonmusical columns.
3838
3839         * lily/spaceable-grob.cc (get_spring): new function. 
3840
3841         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
3842         relative to the right edge of the prefatory matter.
3843
3844         * lily/beam.cc (print): read break-overshoot to determine where to
3845         stop/start broken beams.
3846
3847         * input/regression/spanner-break-overshoot.ly: new file.
3848
3849 2005-08-04  Graham Percival  <gperlist@shaw.ca>
3850
3851         * ly/bagpipe.ly: updated.
3852
3853         * Documentat/user/instrument.itely: un-comment out bagpipe example.
3854
3855 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3856
3857         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
3858         support: now (de)crescs avoid slurs as well.
3859
3860         * Documentation/user/instrument-notation.itely (Bagpipe example):
3861         comment out non-functioning bagpipe example.
3862         (Bagpipe definitions): idem.
3863
3864         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
3865         (Top): add proportionalNotationDuration example.
3866
3867         * input/regression/spacing-proportional.ly: new file.
3868
3869         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
3870         synched to a beam.
3871
3872         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
3873         fixes beams with a single stem (eg. beams across linebreaks.)
3874
3875         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
3876
3877         * flower/rational.cc (operator +): prevent overflow. This fixes
3878         heavily nested tuplets.
3879
3880         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
3881         have to protect even those unlikely to be corrupted data members.  
3882
3883 2005-08-04  Graham Percival  <gperlist@shaw.ca>
3884
3885         * ly/bagpipe.ly: new file.
3886
3887         * THANKS: added Sven Axelsson.
3888
3889 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3890
3891         * lily/spacing-engraver.cc (stop_translation_timestep): directly
3892         copy proportionalNotationDuration into currentMusicalColumn if
3893         set.
3894
3895         * lily/spacing-spanner.cc (musical_column_spacing): if
3896         uniform-stretching set, fixed space is 0.0
3897
3898         * input/regression/spacing-multi-tuplet.ly: show
3899         uniform-stretching property.
3900
3901         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
3902
3903         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
3904         (struct Spacing_options): new struct.
3905
3906         * lily/spacing-basic.cc: new file.
3907
3908         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
3909         delta_t doesn't have to be smaller than shortest_playing_len
3910
3911 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3912
3913         * input/regression/markup-arrows.ly:  new file.
3914
3915         * lily/tuplet-bracket.cc: document new behavior.
3916
3917         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
3918         with line breaks.
3919
3920         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
3921
3922         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
3923         default 
3924
3925         * lily/tuplet-bracket.cc: add edge-text property.
3926         add break-overshoot.
3927         (print): read break-overshoot.
3928         (print): read edge-text, add stencils.
3929
3930         * mf/feta-arrow.mf: new file.
3931
3932         * mf/feta-generic.mf: add feta-arrow.
3933
3934 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3935
3936         * Documentation/user/lilypond-book.itely (An example of a
3937         musicological document): Added flag -o to dvips for people who use
3938         the default setting in teTeX where output is sent to the printer. 
3939
3940         * Documentation/user/global.itely (Vertical spacing): Added
3941         reference to the Axis_group_engraver which documents the *Extent
3942         properties.
3943
3944 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3945
3946         * Documentation/user/basic-notation.itely (Tuplets): add note
3947         about nested tuplets. Remove BUG. 
3948
3949         * input/regression/tuplet-nest.ly: update: remove manual hack. 
3950
3951         * lily/tuplet-bracket.cc (print): use robust_scm2drul
3952         (print): manually call print() for subtuplets.
3953         (calc_position_and_height): add subtuplets to the
3954         support. Vertically shift outer tuplet 
3955
3956         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
3957         remove-first for Lyrics, ChordNames and FiguredBass
3958
3959         * scm/define-grob-properties.scm (all-internal-grob-properties):
3960         use ly:grob-array? iso. grob-list?
3961         (all-internal-grob-properties): add tuplets grob-array.
3962
3963         * lily/tuplet-bracket.cc (add_tuplet_bracket):
3964         new function
3965
3966 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3967
3968         * input/test/time-signature-staff.ly: new file.
3969
3970         * ly/declarations-init.ly (center): escape to Scheme. Fixes
3971         spurious #<Music FingerEvent> errors. Backportme.
3972
3973 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3974
3975         * Documentation/user/programming-interface.itely (Markup
3976         construction in Scheme): Corrected markup syntax in the
3977         translation table.
3978
3979 2005-08-03  Graham Percival  <gperlist@shaw.ca>
3980
3981         * Documentation/user/instrument-notation.itely: small update
3982         to bagpipe notation docs; thanks Sven!
3983
3984         * Documentation/user/basic-notation.itely: add link about trills.
3985
3986 2005-08-02  Graham Percival  <gperlist@shaw.ca>
3987
3988         * Documentation/user/music-glossary: remove accidentally committed
3989         fink patch.
3990
3991 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
3992
3993         * lily/lily-parser.cc (get_header): new function. Enable multiple
3994         \header definitions.
3995
3996         * lily/parser.yy (lilypond_header_body): use get_header.
3997
3998         * ly/init.ly:
3999         * scm/lily-library.scm (print-score-with-defaults): renamed
4000         $globalheader to $defaultheader
4001         
4002         * Documentation/user/global.itely (Creating titles): added short
4003         explanation that multiple headers are useable.
4004
4005
4006 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4007
4008         * lily/module-scheme.cc (LY_DEFINE): new file. 
4009
4010         * Documentation/user/advanced-notation.itely (Font selection): add
4011         doco for make-pango-font-tree.
4012
4013 2005-07-31  Graham Percival  <gperlist@shaw.ca>
4014
4015         * Documentation/user/music-glossary: more languages
4016         for tenuto.
4017
4018         * Docuemntation/user/instrument-notation.itely: minor
4019         update for bagpipe example.
4020
4021 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4022
4023         * input/regression/+.ly (TODO): add some text.
4024
4025 2005-07-28  Graham Percival  <gperlist@shaw.ca>
4026
4027         * Documentation/user/invoking.itely: \score begins with music.
4028
4029         * Documentation/user/ basic-notation.itely,
4030         instrument-notation.itely: minor changes.
4031
4032         * Documentation/user/music-glossary.itely: began tenuto entry.
4033
4034 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4035
4036         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
4037
4038         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
4039
4040 2005-07-27  Graham Percival  <gperlist@shaw.ca>
4041
4042         * Documentation/user/examples.itely: remove bagpipe template.
4043
4044         * Documentation/user/instrument-notation.itely: add bagpipe
4045         section, maybe fix quotes in lyrics.  I hate text encoding.
4046         Clarify chord durations, more bagpipe stuff.
4047
4048 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4049  
4050         * lily/accidental-engraver.cc: formatting fixes.
4051
4052         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
4053         grob-array.
4054
4055         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
4056
4057         * lily/note-column.cc (arpeggio): new function.
4058
4059         * lily/note-spacing.cc (get_spacing): also take arpeggio into
4060         account for spacing.
4061
4062 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
4063
4064         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
4065         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
4066         mingw build.
4067         
4068 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4069
4070         * scm/lily.scm (lilypond-all): clear anonymous modules after
4071         processing files.
4072
4073 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4074
4075         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
4076         SCM_I_CONSP
4077
4078         * VERSION: 2.7.3 released
4079
4080         * Documentation/user/invoking.itely (Invoking lilypond): add
4081         LILYPOND_GC_YIELD documentation.
4082
4083         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
4084         scm_from_real / scm_make_real.
4085
4086         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
4087         higher. This increases memory footprint, but provides overall
4088         speedup of 15 to 20%. 
4089
4090         * lily/include/translator.hh (class Translator): remove
4091         PRECOMPUTED_VIRTUAL everywhere.
4092
4093         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
4094
4095         * lily/context.cc (now_mom): non-recursive now_mom() 
4096
4097         * lily/include/profile.hh: new file.
4098
4099         * lily/profile.cc: new file.
4100
4101         * lily/grob.cc (Grob::Grob): look properties up directly.
4102
4103         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
4104         lookups.
4105
4106         * lily/include/box.hh (class Box): smob Box type.
4107
4108         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
4109
4110         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
4111         protect() and unprotect(). Use throughout.
4112
4113 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4114
4115         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
4116
4117         * scm/define-music-display-methods.scm (markup->lily-string):
4118         markup elements can also be strings (without simple-markup
4119         appended)
4120
4121 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4122
4123         * lily/context.cc (where_defined): also assign value in
4124         where_defined().
4125
4126         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
4127         (curve_coordinate): new function
4128
4129         * lily/simple-spacer.cc (add_columns): only add rods between
4130         column i and begin/end if keep-inside-line is set (this repleces
4131         allow-outside-line as default)
4132
4133 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4134
4135         * lily/tuplet-engraver.cc (start_translation_timestep): only read
4136         tupletSpannerDuration if applicable.
4137
4138         * lily/font-size-engraver.cc (process_music): read fontSize only
4139         once per timestep.
4140
4141         * lily/engraver*cc: use throughout.
4142         
4143         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
4144
4145         * lily/translator.cc (add_acknowledger): new file. Directly jump
4146         into an Engraver::acknowledge_xxx () method based on a grobs
4147         interface-list.
4148
4149         * lily/include/translator-dispatch-list.hh (class
4150         Engraver_dispatch_list): new struct, new file.
4151
4152         * scm/define-context-properties.scm
4153         (all-internal-translation-properties): remove acceptHashTable,
4154         acknowledgeHashTable
4155
4156         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
4157
4158         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
4159         change acknowledgeHashTable to C++ member. 
4160
4161         * lily/rest-collision.cc (do_shift): use extract_grob_set().
4162
4163 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4164
4165         * scm/display-lily.scm: new file. Define a `display-lily-music'
4166         function, that displays the music expression given as an argument,
4167         using LilyPond notation.
4168
4169         * scm/define-music-display-methods.scm: new file. Implementation
4170         of display methods for each music type.
4171
4172         * ly/music-functions-init.ly (displayLilyMusic): new function for
4173         displaying music with LilyPond notation.
4174
4175         * input/regression/display-lily-tests.ly: new regression test file
4176         for `display-lily-music'.
4177
4178         * scm/markup.scm: remove obsolete debugging code (for printing
4179         markups with LilyPond notation).
4180
4181         * scm/define-music-types.scm (music-name-to-property-table):
4182         * scm/clef.scm (supported-clefs): export, in order to be accessible
4183         from the (scm display-lily) module.
4184
4185 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4186
4187         * Documentation/topdocs/NEWS.tely (Top): Typo.
4188
4189 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
4190
4191         * Documentation/index.html.in, Documentation/texinfo.css,
4192           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4193           Documentation/bibliography/index.html.in,
4194           Documentation/bibliography/html-long.bst: revert css-width patch,
4195           it does not work with IE6.
4196
4197 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4198
4199         * Documentation/texinfo.css: revert 760px hack. 
4200
4201         * VERSION: release 2.7.2
4202
4203         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
4204
4205         * Documentation/user/basic-notation.itely (Barnumber check): add
4206         section.
4207
4208         * scm/music-functions.scm (skip-to-last): new function. Show only
4209         last showLastLength part of the \score.
4210
4211         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
4212
4213         * python/convertrules.py (conv): add ly:x-moment rule
4214
4215         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
4216
4217         * Documentation/topdocs/NEWS.tely (Top): add new feature.
4218
4219         * Documentation/user/instrument-notation.itely (Flexibility in
4220         alignment): options in subsections.
4221
4222         * lily/lyric-engraver.cc (process_music): don't typeset text for _
4223         syllable text. Instead, assume that the previous lyric text is a
4224         melismated text.
4225
4226         * Documentation/index.html.in: revert 800x600 change.
4227
4228 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4229
4230         * lily/main.cc (main): Remove invalid handle kludge.
4231
4232         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
4233         (lambda): add gui define.
4234
4235 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4236
4237         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
4238
4239         * Documentation/user/instrument-notation.itely (Musica ficta
4240         accidentals): add section Musica ficta accidentals
4241
4242         * lily/accidental-engraver.cc (make_suggested_accidental): new
4243         function.
4244         (make_standard_accidental): move into new function.
4245         (create_accidental): new function.
4246
4247         * scm/define-grobs.scm (all-grob-descriptions): new Grob
4248         AccidentalSuggestion
4249
4250         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
4251
4252         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
4253         undefined.
4254
4255         * Documentation/user/global.itely (Page formatting): document
4256         horizontalshift.
4257
4258         * scm/page-layout.scm (default-page-music-height):
4259         horizontalshift: new variable, shift all systems by
4260         horizontalshift to the right, to make space for instrument names.
4261
4262         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
4263
4264         * lily/input-scheme.cc (LY_DEFINE): take format commands.
4265
4266 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4267
4268         * lily/note-column.cc (dir): idem.
4269
4270         * lily/spacing-spanner.cc (Module): idem.
4271
4272         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
4273
4274         * lily/include/paper-column.hh (class Paper_column): add
4275         non-static get_rank() member.
4276
4277         * VERSION: release 2.7.1
4278         
4279         * scm/framework-null.scm: new file, used for benchmarking.
4280
4281 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
4282
4283         * Documentation/topdocs/INSTALL.texi, configure.in: fix
4284         version dependencies for fontforge and gs.
4285
4286         * Documentation/index.html.in, Documentation/texinfo.css,
4287         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
4288         Documentation/bibliography/index.html.in, 
4289         Documentation/bibliography/html-long.bst: optimize width of
4290         html for a 800x600 screen (width:760), increases printability
4291         when 'fit to page' is not set and readability in wide screens.
4292
4293         * stepmake/bin/add-html-footer.py: add missing </p>.
4294
4295 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4296
4297         * scm/define-markup-commands.scm (beam): use polygon in beam
4298         command.
4299
4300         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
4301         all acknowledged grobs, and do potentially expensive merge and
4302         write in one go.
4303
4304         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
4305
4306         * configure.in (reloc_b): add --enable-static-gxx to statically
4307         link to libstdc++
4308
4309         * lily/GNUmakefile (static-gxx-libs): new target
4310         static-gxx-libs. Create symlink to libstdc++.a
4311
4312         * lily/new-lyric-combine-music-iterator.cc: rename to
4313         Lyric_combine_music_iterator
4314
4315         * lily/lyric-combine-music-iterator.cc
4316         (Old_lyric_combine_music_iterator): rename to
4317         Old_lyric_combine_music_iterator
4318
4319         * lily/*-engraver.cc (various): remove double use of
4320         PRECOMPUTED_VIRTUAL function: only use
4321         start_translation_timestep() and stop_translation_timestep(), not
4322         both.
4323
4324         * lily/break-substitution.cc (fast_substitute_grob_array): do
4325         fast_substitute_grob_array for all unordered grob_arrays.
4326         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
4327         (substitute_grob_array): optimize.
4328
4329         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
4330
4331         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
4332
4333         * lily/parser.yy: revert $globalheader patch.
4334         
4335         * lily/include/translator.icc
4336         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
4337         Translator methods, without _static helper.
4338  
4339         * lily/grob-smob.cc (derived_mark): rename from
4340         do_derived_mark(). Return void.
4341
4342         * scm/define-context-properties.scm
4343         (all-internal-translation-properties): remove tweakCount/tweakRank.
4344
4345         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
4346         predefined break-visibilities.
4347
4348         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
4349         booleans for break-visibility.
4350
4351         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
4352
4353         * python/convertrules.py (conv): rule for Timing_translator. 
4354
4355         * lily/include/translator.icc: new file. 
4356
4357         * lily/paper-column-engraver.cc (process_music): new
4358         file. Separate Paper_column factory from Score_engraver.
4359
4360         * lily/vertically-spaced-context-engraver.cc: administer
4361         spaceable-staves property of System.
4362
4363         * lily/translator-group-ctors.cc: new file.
4364
4365         * lily/context-property.cc (make_grob_from_properties): construct
4366         the right Grob class programmatically, looking at the class entry
4367         for the meta property.
4368
4369         * lily/break-align-engraver.cc (stop_translation_timestep): call
4370         Break_align_interface::add_element() directly.
4371
4372         * lily/context.cc (measure_position): measure_position() is now a
4373         normal function.
4374
4375         * lily/include/translator.hh (class Translator): rename
4376         process_acknowledged_grobs() to process_acknowledged() and move to
4377         Translator.
4378
4379         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
4380         field for each grob description.
4381
4382         * lily/include/translator-group.hh (class Translator_group):
4383         change to base class. Separate class from Translator. This gets
4384         rid of virtual inheritance for Engravers/Performers.
4385
4386         * lily/staff-performer.cc (class Staff_performer): derive
4387         Staff_performer from Performer, not Performer_group_performer 
4388
4389         * Lily/translator-group.cc (precomputed_recurse_over_translators):
4390         new function.
4391         (precompute_method_bindings): new function. Precompute lists of
4392         Translators, so we only call methods (process_music,
4393         start_translation_timestep, etc.) for Translators needing
4394         it. Also: dispose of pointer-to-member-function calls.
4395
4396         * lily/engraver-group-engraver.cc: remove engraver_each,
4397         recurse_down_engravers ()
4398
4399         * lily/note-head.cc (internal_print): only call
4400         glyph-name-procedure if style != default. 
4401
4402 2005-07-16  Graham Percival  <gperlist@shaw.ca>
4403
4404         * ly/titling-init.ly: add printallheaders option.
4405
4406         * Documentation/user/global.itely: document printallheaders.
4407
4408 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4409
4410         * lily/system.cc (do_derived_mark): don't mark from object_alist_
4411         anymore, but do it centrally.  
4412
4413         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
4414         hammer hack.
4415
4416         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
4417
4418         * scm/output-lib.scm: remove hammer-print-function.
4419
4420         * lily/include/pointer-group-interface.hh (extract_grob_set): new
4421         macro. Declare a Link_array<Grob> and fill it from a grob.
4422         (extract_item_set): idem for item.
4423
4424         * lily/break-substitution.cc: add header.
4425         (fast_substitute_grob_array): rewrite for Grob_arrays.
4426         (substitute_grob_array): idem.
4427
4428         * lily/group-interface.cc (add_thing): remove file.
4429
4430         * flower/include/parray.hh (class Link_array): slice() is const.
4431
4432         * lily/include/grob-array.hh: new file.
4433
4434         * lily/grob-array.cc (spanner): new file.
4435
4436         * lily/beam-quanting.cc (fill): read details property from beam.
4437
4438         * lily/beam.cc: support details property.
4439
4440         * total speedups below: approx 10%.
4441
4442         * lily/include/beam.hh: new struct, softcode beam quanting parameters
4443
4444         * lily/include/grob.hh (class Grob): add interfaces_ member.
4445
4446         * lily/bezier.cc (init_polynomial_cache): new function: cache
4447         binom(3,j) t^j (1-t)^{3-j}
4448         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
4449
4450         * lily/*.cc: substitution throughout.
4451
4452         * lily/grob-property.cc (internal_get_object): new routine.
4453         (internal_set_object): idem. Store grob refrences in separate
4454         alist. This saves processing time, since properties aren't
4455         break-substituted, and the per grob namespace is smaller, both for
4456         grobs and non-grob properties.
4457
4458         * scm/define-grob-properties.scm (all-internal-grob-properties):
4459         remove center-element.
4460
4461         * lily/grob.cc: remove tweak-count, tweak-rank.
4462
4463 2005-07-15  Graham Percival  <gperlist@shaw.ca>
4464
4465         * Documentation/user/lilypond-book.itely: fixes example.
4466
4467 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4468
4469         * Documentation/user/global.itely (Creating titles):    
4470         * Documentation/user/examples.itely (All headers): change the
4471         place of \header in \score blocks (after music block) to make
4472         examples compile (cf. changes on parser.yy on 2005-07-10)
4473
4474 2005-07-13  Graham Percival  <gperlist@shaw.ca>
4475
4476         * python/convertrules.py: add exc -> ecc rule.
4477
4478         * scripts/convert-ly.py: add location of convertrules.py
4479         in a comment.
4480
4481         * Documentation/user/changing-defaults.itely: fix language.
4482
4483 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4484
4485         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
4486
4487 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4488
4489         * scm/output-socket.scm (grob-bbox): don't use inf? 
4490
4491         * flower/include/rational.hh: add operator bool() 
4492
4493         * scm/define-music-types.scm (music-descriptions): remove
4494         internal-class-name properties.
4495
4496         * lily/include/event.hh: remove file.
4497
4498         * lily/include/music-constructor.hh: remove file.
4499
4500         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
4501         in 'types property.
4502
4503         * lily/music.cc (duration_length_callback): new function.
4504
4505         * lily/event.cc: remove file.
4506
4507         * lily/music-constructor.cc: remove file.
4508
4509         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
4510
4511         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
4512         (get_context_key): idem.
4513
4514         * scm/lily.scm (lambda): new option object-keys (default to #f)
4515
4516         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
4517
4518         * scm/output-gnome.scm: remove beam routine.
4519
4520         * scm/output-ps.scm (scm): idem.
4521
4522         * scm/output-svg.scm: remove beam.
4523
4524         * ps/music-drawing-routines.ps: remove draw_beam.
4525
4526         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
4527
4528         * flower/include/guile-compatibility.hh (scm_from_locale_string):
4529         add scm_from_locale_string compatibility glue. 
4530
4531 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
4532
4533         * scripts/lilypond-book.py: Prevent occuring error when
4534         'lilypond-book --output=foo/ somefile.ly' is executed multiple
4535         times and target file shoud be overwritten.  (Error message said
4536         'input file and output file is same'.)
4537
4538 2005-07-13  Graham Percival  <gperlist@shaw.ca>
4539
4540         * input/regression/slur-extreme.ly,
4541         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
4542         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
4543         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
4544         "excentricity" to "eccentricity".
4545
4546         * Documentation/user/converters.itely: fix URL for Noteedit and
4547         Rosegarden.
4548
4549         * THANKS: added Yoshinobu Ishizaki.
4550
4551 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4552
4553         * scm/define-markup-commands.scm (justify-field): add. 
4554
4555         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
4556
4557 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4558
4559         * lily/lookup.cc (filled_box): express filled_box with
4560         round_filled_box
4561
4562         * scm/midi.scm (paper-book-write-midis): new function. Write all
4563         performances in numbered MIDI files.
4564
4565         * lily/performance-scheme.cc (LY_DEFINE): new file.
4566         (LY_DEFINE): new function ly:performance-write.
4567
4568         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
4569         new function.
4570         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
4571
4572         * scm/framework-*.scm: use port arguments throughout.
4573
4574         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
4575
4576         * lily/paper-outputter.cc (Paper_outputter): take port argument.
4577
4578         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
4579
4580         * scm/framework-texstr.scm (output-framework): 
4581
4582         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
4583
4584         * scm/output-lib.scm (tablature-stem-attachment-function):
4585         tablature stem attachment fix. 
4586
4587 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4588
4589         * lily/bezier.cc: hardcode binomial coefficients of order 3.
4590
4591         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
4592
4593         * scm/define-music-types.scm (music-descriptions): don't use
4594         Music_wrapper type.
4595
4596         * lily/paper-column.cc (print): print moment too.
4597
4598         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
4599         remove compatibility cruft.
4600
4601         * lily/parser.yy (score_body): \score can only begin with Music. 
4602
4603         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
4604         make-score. Take music argument only. Move parser interaction to
4605         Scheme.
4606
4607         * scm/lily-library.scm (scorify-music): new function.
4608
4609         * python/lilylib.py (datadir): remove 2.1 compat kludge.
4610         (datadir): remove resource import.
4611         (print_environment): remove get_bbox()
4612         (cp_to_dir): remove pre 1.5.2 compat glue.
4613
4614 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4615
4616         * lily/include/simple-spacer.hh (Module): idem.
4617
4618         * lily/include/spring.hh (struct Spring): store inverse
4619         strength. This prevents division by zero.
4620
4621         * VERSION: release 2.7.0
4622         
4623         * lily/include/music.hh (class Music): remove Music::duration_log()
4624
4625         * lily/stem-engraver.cc (make_stem): take duration log from event.
4626
4627         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
4628
4629 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4630
4631         * scm/lily.scm (ly:load): load autochange.scm
4632
4633         * Documentation/user/tutorial.itely (Running LilyPond for the
4634         first time): remove reference to DVI/TeX
4635
4636         * scm/define-markup-commands.scm (text): add \text markup command.
4637
4638         * configure.in (reloc_b): bump requirement to Python 2.2.
4639
4640         * lily/include/dots.hh (class Dots): make has_interface() static.
4641
4642         * python/convertrules.py (conv): add rule for ly:grob-default-font
4643
4644         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
4645         alphabetical order.
4646
4647         * input/regression/trill-spanner-pitched.ly: new file.
4648
4649         * lily/font-interface-scheme.cc (LY_DEFINE): function
4650         ly:grob-default-font (changed from get-default-font).
4651
4652         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
4653
4654         * lily/note-head.cc (internal_print): if style is not a symbol,
4655         set style to 'default. 
4656         (internal_print): no style suffix if glyph-name-procedure not
4657         set. Default to quarter head.
4658
4659         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
4660
4661         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
4662
4663         * ly/music-functions-init.ly: \pitchedTrill
4664
4665         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
4666
4667         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
4668
4669         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
4670
4671         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
4672
4673         * po/fr.po: update
4674
4675         * po/de.po: update.
4676
4677 2005-07-06  Graham Percival  <gperlist@shaw.ca>
4678
4679         * Documentation/user/changing-defaults.itely: add link
4680         to grob-iterface.
4681
4682         * Documentation/user/advanced-notation.itely: add material
4683         to Setting automatic beam behaviour.  Thanks, Joe!
4684
4685         * Documentation/user/lilypond.itely: change encoding to utf-8.
4686
4687 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4688
4689         * Documentation/user/advanced-notation.itely (Setting automatic
4690         beam behavior): Correct the documentation of
4691         revert-auto-beam-setting (backportme)
4692
4693 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4694
4695         * lily/ly-module.cc (ly_make_anonymous_module): define
4696         %module-public-interface of module. 
4697
4698         * lily/lily-parser.cc (print_smob): allow printing of parser smob
4699         without lexer.
4700
4701 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4702
4703         * input/regression/fret-diagrams.ly: stretch example.
4704
4705 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4706
4707         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
4708         Fodor).
4709
4710 2005-06-30  Graham Percival  <gperlist@shaw.ca>
4711
4712         * Documentation/topdocs/AUTHORS.texi: update personal web address.
4713
4714         * Documentation/user/examples.itely, lilypond-book.itely:
4715         change \RequirePackage to \usepackage.
4716
4717         * Documentation/user/global.itely: document copyright and tagline.
4718
4719 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4720
4721         * Documentation/user/basic-notation.itely (Transpose): remove link
4722         to nonexistent UntransposableMusic.
4723
4724         * scm/output-svg.scm: remove old definitions.
4725
4726         * scripts/lilypond-book.py (do_file): search for kpsewhich before
4727         invoking.
4728
4729         * python/lilylib.py (search_exe_path): new function.
4730
4731 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4732
4733         * python/lilylib.py (mkdir_p): remove setup_environment()
4734         (backportme)
4735
4736         * buildscripts/mutopia-index.py (headertext): trim text.
4737
4738         * Documentation/topdocs/NEWS.tely (Top): refresh.
4739
4740         * scm/define-markup-commands.scm (wordwrap-string): new function:
4741         split string in paras and words.
4742         (wordwrap-markups): new function.
4743         (wordwrap-stencils): new function. 
4744         (justify): use it.
4745         (wordwrap): use it.
4746         (wordwrap-string): use it
4747         (justify-string): use it.
4748
4749         * scm/lily-library.scm (regexp-split): new function.
4750
4751         * scm/define-markup-commands.scm: remove encoded-simple. 
4752         remove font-markup.
4753         (fontsize): remove old version  of fontsize.
4754         (wordwrap): new markup function. Wrap into paragraphs.
4755
4756         * VERSION: Branch lilypond_2_6
4757         (MINOR_VERSION): go to 2.7.0
4758
4759 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4760
4761         * po/zh_TW.po: update from translation project.
4762
4763 2005-06-28  Graham Percival  <gperlist@shaw.ca>
4764
4765         * scm/midi.scm: compile fix.
4766
4767 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4768
4769         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
4770         patch. Now, the tempfile module is loaded too, not only used.
4771
4772 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
4773
4774         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
4775         0.05 - 1.00 to 0.25 - 1.00
4776
4777         * scm/midi.scm: moved the default-instrument-equalizer procedure
4778         to just under the insturment-equalizer-alist it takes as an
4779         argument.
4780
4781 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4782
4783         * Documentation/user/advanced-notation.itely (Font selection):
4784         remove CMR note.
4785
4786         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
4787
4788 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4789
4790         * THANKS: Add UTF-8 marker.
4791
4792         * Documentation/user/point-and-click.itely (http): Update: use
4793         lilypond-invoke-editor.  Fix: instruct to use user.js.
4794
4795 2005-06-27  Graham Percival  <gperlist@shaw.ca>
4796
4797         * ly/titling-init.ly: implements printpagenumber, increases
4798         space between dedication and title (to avoid collisions with
4799         "g" and "q" in dedication), and nicer logic about copyright
4800         and instrument fields being printed on the first page.
4801         Thanks Vincent!
4802
4803         * Documentation/user/global.itely: document printpagenumber.
4804
4805 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4806
4807         * Documentation/topdocs/NEWS.tely: Update to 2.6.
4808
4809 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4810
4811         * THANKS: update to 2.6
4812
4813         * VERSION: 2.6.0 released.
4814
4815 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
4816
4817         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
4818         rule, errorneously removed probably because of misleading comment.
4819
4820 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4821
4822         * python/lilylib.py (datadir): py2exe comments.
4823
4824         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
4825
4826         * configure.in (reloc_b): make fontconfig REQUIRED.
4827
4828 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
4829
4830         * po/fi.po: add latest translations.
4831
4832 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4833
4834         * ChangeLog: recode utf-8
4835
4836         * Documentation/pictures/lilypond.xpm (Module): edited photo as
4837         logo.
4838
4839         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
4840
4841         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
4842
4843         * python/convertrules.py (do_conversion): don't print program_name
4844         from within a module
4845
4846         * configure.in (reloc_b): bump fontforge requirement to 20050624.
4847
4848         * python/convertrules.py (conv): add 2.6.0 dummy rule.
4849
4850 2005-06-23  Graham Percival  <gperlist@shaw.ca>
4851
4852         * Documentation/user/lilypond-book.itely,
4853         Documentation/user/examples.itely: add \RequirePackage{graphics}.
4854
4855         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
4856         fixes baseline-skip.  Thanks Vincent!
4857
4858         * Documentation/user/advanced-notation.itely, global.itely:
4859         moved "Selecting font sizes" to global, since it deals with
4860         notation font size, not text fonts.
4861
4862 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4863
4864         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
4865         to fonts.
4866
4867 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4868
4869         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
4870         workaround since /dev/stdin doesn't work on Cygwin. Using a
4871         temporary file in the current directory since latex doesn't
4872         understand the path name to the default TMP in Cygwin (at least on
4873         win XP).
4874         
4875         * Documentation/user/global.itely (Creating titles): Correct
4876         misprint in example. Thanks to Rob Vlasaty.
4877
4878 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4879
4880         * VERSION (PATCH_LEVEL): release 2.5.32
4881
4882         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
4883         variable in lily module
4884
4885         * scm/framework-ps.scm (output-classic-framework): error message
4886         regarding the classic framework.
4887
4888         * Documentation/user/henle-flat-gray.png (Module): new file.
4889
4890         * Documentation/user/baer-flat-gray.png (Module): new file.
4891
4892         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
4893         whiteout for markups.
4894
4895         * buildscripts/substitute-encoding.py (note_glyph): include _ in
4896         regex too. This fixes change clef appearance in PDF. 
4897
4898         * ttftool/include/*: remove.
4899
4900         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
4901
4902         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
4903
4904         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
4905
4906         * ttftool/*: remove ttftool subdirectory.
4907
4908         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
4909
4910         * lily/ttf.cc (print_header): new file. Convert to type42, using
4911         FreeType to parse the TTF. 
4912
4913         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
4914         and post table may differ. Pass around post_nglyphs as well.
4915
4916 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4917
4918         * ly/music-functions-init.ly (musicMap): new music function
4919         musicMap. 
4920         
4921 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4922
4923         * make/mutopia-rules.make: anti-alias-factor = 2
4924
4925         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
4926         page switch.
4927
4928         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
4929         anti-alias-factor for lilypond-book runs.
4930
4931         * scm/ps-to-png.scm (scale-down-image): new function.
4932         (my-system): new function.
4933         (make-ps-images): blow up GS resolution by anti-alias-factor,
4934         scale down image by anti-alias-factor.  This improves appearance
4935         of bitmaps
4936         (make-ps-images): remove showpage. Fixes spurious empty png at
4937         end.
4938
4939         * scm/framework-ps.scm (write-preamble): downcase filename before
4940         string-matching. Should fix .TTF files (as opposed to ttf files)  
4941
4942         * Documentation/user/tutorial.itely (Running LilyPond for the
4943         first time): separate subsections for windows, macos and unix.  
4944
4945         * Documentation/user/invoking.itely (Updating files with
4946         convert-ly): add MacOS X note.
4947
4948 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4949
4950         * Documentation/user/introduction.itely (Engraving): don't include
4951         file optical-spacing, add directly.
4952
4953         * lily/paper-outputter.cc (file): open file in binary mode. This
4954         fixes OTF embedding on windows.
4955
4956 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4957
4958         * scm/framework-ps.scm (write-preamble): remove debugging output.
4959
4960         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
4961
4962         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
4963         outdir.
4964         (install-fc-cache): install font cache in installation directories.
4965
4966 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4967
4968         * scm/editor.scm (editor-command-template-alist): Use char iso
4969         column, except for Emacs.
4970         (get-editor-command): Substitute char too (Bertalan Fodor).
4971
4972 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4973
4974         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
4975         quoted ~s.  This should fix PNG output on Windows; single quotes
4976         are regular characters on Windows.
4977
4978 2005-06-16  Graham Percival  <gperlist@shaw.ca>
4979
4980         * Documentation/user/basic-notation.itely: include ChoirStaff
4981         in System start delimiters.
4982
4983         * Documentation/user/putting.itely: new doc section on
4984         fixing overlapping notation.
4985
4986 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4987
4988         * Documentation/user/global.itely (Paper size): \paper is in
4989         \book, not \score.
4990
4991         * make/mutopia-rules.make: -ddelete-intermediate-files
4992
4993         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
4994
4995 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4996
4997         * ChangeLog: Recode utf-8.
4998
4999         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
5000         datadir with .py modules.
5001
5002 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
5003
5004         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
5005
5006 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5007
5008         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
5009         
5010         * scm/framework-ps.scm (write-preamble): remove status check.
5011
5012         * Documentation/user/invoking.itely (Updating files with
5013         convert-ly): remove -o option.
5014
5015         * VERSION (PACKAGE_NAME): release 2.5.31
5016
5017         * scm/framework-ps.scm (write-preamble): use ly:system.
5018         (write-preamble): verbosity.
5019
5020         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
5021
5022         * python/convertrules.py: new file. Store conversion rules
5023         separately.
5024
5025 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5026
5027         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
5028
5029 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5030
5031         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
5032         \musicDisplay 
5033
5034         * Documentation/user/instrument-notation.itely (More stanzas): Add
5035         reference to StanzaNumber.
5036
5037 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5038
5039         * THANKS: separate section for website translators.
5040
5041 2005-06-14  Graham Percival  <gperlist@shaw.ca>
5042
5043         * Documentation/topdocs/INSTALL.texi: update vim info;
5044         thanks Simon Bailey!
5045
5046         * Documentation/user/advanced-notation.itely: included
5047         color names.
5048
5049         * Documentation/user/advanced-notation.itely,
5050         Documentation/usr/notation-appendices.itely: moved
5051         color names into an appendix.
5052
5053 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5054         
5055         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
5056
5057         * scm/lily.scm (lambda): initialize program options from here.
5058
5059         * scm/framework-*.scm: add header info.
5060
5061         * lily/main.cc (parse_argv): only set output format to pdf if no
5062         other format specified.
5063
5064         * scm/backend-library.scm (postprocess-output): process
5065         'delete-intermediate-files after running convert-to-*. This fixes
5066         PNG generation when 'delete-intermediate-files is set.
5067         
5068 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5069
5070         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
5071         links on website. 
5072
5073 2005-06-13  Graham Percival  <gperlist@shaw.ca>
5074
5075         * Documentation/topdocs/INSTALL.texi,
5076         Documentation/user/lilypond-book.itely: typos.
5077
5078 2005-06-12  Pal Benko  <benkop@freestart.hu>
5079
5080         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
5081         added between program name and switch; -b changed to -f not
5082         to generate pdf
5083
5084 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5085
5086         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
5087         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
5088
5089         * input/sakura-sakura.ly: add \midi.
5090
5091         * buildscripts/mutopia-index.py (find): use /usr/bin/find
5092         iso. python find. 
5093
5094         * ttftool/test.c (main): cosmetics.
5095
5096         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
5097
5098         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
5099         create a ttf2ps binary.
5100
5101         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
5102
5103         * scm/backend-library.scm (postscript->png): set rename-page-1 to
5104         true.
5105
5106 2005-06-11  Graham Percival <gperlist@shaw.ca>
5107
5108         * Documentation/user/lilypond-book.itely: add warning about
5109         the font warnings in dvips.
5110
5111 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5112
5113         * THANKS: typo
5114
5115         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
5116
5117         * GNUmakefile.in: remove links for .map, .enc
5118         don't fail if out/ doesn't exist yet.
5119
5120 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5121
5122         * ttftool/util.c (surely_read): return nbytes
5123
5124         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
5125
5126         * VERSION (PACKAGE_NAME): release 2.5.30
5127
5128         * flower/string-convert.cc (precision_string): >? fix.
5129
5130         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
5131         (make-ps-images): add verbose -q too.
5132
5133         * lily/default-actions.cc (Module): new file. default
5134         {book,score}-print functions.
5135
5136         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
5137         pass results via parseStringResult, lookup via ly:parser-lookup.  
5138
5139         * lily/lily-parser.cc (Lily_parser): only clone lexer in
5140         constructors.
5141         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
5142         (parse_string): idem.
5143
5144         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
5145
5146         * lily/main.cc (main_with_guile): copy be_verbose_global into
5147         ly_set_option()
5148
5149 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5150
5151         * scm/backend-library.scm (postscript->pdf):
5152         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
5153         verbose mode.  Search for several names of gs executable.
5154
5155 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5156
5157         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
5158         directly. This fixes a massive memory leak, provided you use CVS
5159         GUILE.
5160
5161 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
5162
5163         * ly/property-init.ly: Added tieDashed.
5164
5165         * THANKS: Added some bughunters for 2.5.
5166
5167 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5168
5169         * lily/program-option.cc: add debug-gc option.
5170
5171         * lily/include/lily-guile-macros.hh: don't protect exported module
5172         objects.
5173
5174         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
5175
5176         * scm/backend-library.scm (postscript->pdf): use
5177         delete-intermediate-files iso. running-from-gui? 
5178
5179         * ttftool/util.c (surely_read): robustness. Allow read() to return
5180         less bytes than requested, as per posix standards.
5181
5182         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
5183         program option.
5184
5185         * ttftool/include/ttftool.h ("C"): rename verbosity to
5186         ttf_verbosity. Add to public interface.
5187
5188         * scm/music-functions.scm (unfold-repeats): remove debugging display.
5189
5190         * lily/program-option.cc: rename from scm-option.cc
5191
5192         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
5193         (get_help_string): Print pretty help string.
5194
5195         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
5196         to snippet preamble.
5197
5198         * lily/scm-option.cc: remove command-line-settings option. Fold
5199         all command-line options plus default settings in a generic
5200         interface. 
5201
5202         * flower/getopt-long.cc (table_string): indent 2nd lines of help
5203         texts too.
5204
5205 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5206
5207         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
5208         or EXT_ components non-empty.
5209
5210 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5211
5212         * scm/lily.scm (running-from-gui?): Export.
5213
5214         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
5215         output in .ly source directory.
5216
5217 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5218
5219         * ttftool/util.c (surely_lseek): more verbosity.
5220
5221         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
5222         compile.
5223
5224         * lily/parser.yy (Repeated_music): remove >? 
5225
5226         * scm/backend-library.scm (postscript->pdf): Support for
5227         -dgs-font-load=1
5228
5229         * scm/framework-ps.scm (write-preamble): make font loading
5230         switchable to GS via --define-default gs-font-load=1
5231
5232 2005-06-09  Graham Percival  <gperlist@shaw.ca>
5233
5234         * Documentation/user/global.itely: added \layout docs.
5235
5236 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5237
5238         * lily/lily-parser-scheme.cc: add unistd.h
5239
5240 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5241
5242         * scm/editor.scm: add char argument.
5243
5244         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
5245
5246         * ttftool/util.c (syserror): use errno for better error reporting.
5247
5248         * lily/source-file.cc (get_counts): new function. Calc column,
5249         line and char count in one go.
5250
5251         * lily/binary-source-file.cc (quote_input): rename to quote_input
5252
5253         * lily/input.cc (set): new function.
5254
5255 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5256
5257         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
5258         directory part of file name to search directory.
5259
5260         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
5261         search path and chdir to DIR if --outname=DIR used.
5262
5263         * lily/main.cc (prepend_env_path): Bugfix: Check directory
5264         existence before appending original path.
5265
5266 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5267
5268         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
5269         file" massage.
5270
5271         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
5272         texinfo.tex is always used.
5273         
5274 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5275
5276         * flower/include/axis.hh: rename from axes.hh
5277
5278         * lily/include/text-interface.hh (Module): rename from text-item.hh
5279
5280         * VERSION (PATCH_LEVEL): release 2.5.29
5281
5282         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
5283
5284         * scm/framework-ps.scm (font-file-as-ps-string): new function.
5285         (handle-macfont): new function. Call fondu for Native mac fonts.
5286
5287         * scm/define-markup-commands.scm (fill-line): handle text-widths =
5288         '() case.
5289
5290 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5291
5292         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
5293         multi-page.  Fix .eps regular expression.
5294
5295 2005-06-07  Graham Percival  <gperlist@shaw.ca>
5296
5297         * Documentation/user/putting.itely: add info on modifying templates.
5298
5299         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
5300         misc small changes.
5301
5302 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5303
5304         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
5305
5306         * scripts/lilypond-ps2png.scm
5307
5308         * VERSION (PACKAGE_NAME): release 2.5.28
5309
5310 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5311
5312         * lily/main.cc (prepend_env_path): Do not append /, that does not
5313         work.  Localedir lives in datadir, not in prefix.
5314
5315         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
5316         hack for windows.
5317
5318         * flower/include/file-cookie.hh: Compile fix.
5319
5320 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5321
5322         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
5323
5324         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
5325         system primitives.
5326         (gulp-port): using read-string!/partial. We don't want to read an
5327         entire PS file  (GUILE 1.6 limits strings to 16M) 
5328
5329         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
5330         properties. Add font-interface. 
5331
5332         * scm/define-grob-properties.scm (all-user-grob-properties):
5333         remove old bracket properties.
5334
5335         * scm/x11-color.scm: reformat. 
5336
5337         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
5338         LedgerLineSpanner if new StaffSymbol is found. 
5339
5340         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
5341         staff-symbol for finishing staff. 
5342
5343         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
5344
5345         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
5346         change black to currentColor everywhere. This fixes color support
5347         in SVG.
5348
5349 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
5350
5351         * input/regression/fret-diagrams.ly: new file to test fret diagram
5352         capability
5353
5354         * scm/output-tex.scm: remove white-dot and white-text
5355
5356         * scm/output-ps.scm: remove white-dot and white-text
5357
5358         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
5359         using ly:stencil-in-color instead
5360         (draw-dots) : remove call to white-dot
5361
5362 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5363
5364         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
5365         support.
5366
5367         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
5368
5369         * flower/include/file-cookie.hh: new file. lily_cookie extension 
5370
5371         * flower/file-cookie.cc: new file. lily_cookie extension.
5372         
5373 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5374
5375         * scm/editor.scm (editor-command-template-alist): Add syn
5376         editor (Jaap [de Vos]).
5377
5378 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
5379
5380         * scripts/lilypond-ps2png.scm:
5381         * scm/ps-to-png.scm: New file.
5382
5383         * scm/backend-library.scm (postscript->png): Use it.
5384
5385         * scripts/lilypond-ps-to-png.py: Remove file.
5386
5387         * python/lilylib.py (get_bbox, make_ps_images): Remove.
5388
5389 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5390
5391         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
5392
5393         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
5394         start on grace moment. Fixes autobeam-grace.ly.
5395
5396         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
5397         process anything unless we're at the end of a pending beam. Fixes
5398         syncopated 8ths beamed across a beat.
5399
5400 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5401
5402         * scm/editor.scm (editor-command-template-alist): Start emacs if
5403         emacslient fails.
5404
5405         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
5406
5407         * flower/file-path.cc (is_file, is_dir): Export.
5408
5409         * lily/main.cc (prepend_env_path, set_env_file): Use them.
5410
5411 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5412
5413         * lily/easy-notation.cc: Added include cctype to correct
5414         compilation error.
5415
5416 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5417
5418         * scm/backend-library.scm (postscript->pdf): set resolution to
5419         1200, so bitmap fonts aren't that ugly. 
5420
5421         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
5422
5423         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
5424         parent if we have a notehead. Fixes incorrect offsets when
5425         Paper_column is very wide in the X direction.
5426
5427         * input/regression/font-family-override.ly (Module): new file.
5428
5429         * scm/font.scm (make-pango-font-tree): new function.
5430
5431         * lily/beam.cc (before_line_breaking): remove warning about less
5432         than 2 visible stems. We still get a warning when there is only
5433         one stem.
5434
5435 2005-06-01  Werner Lemberg  <wl@gnu.org>
5436
5437         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
5438         correctly.
5439
5440 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5441
5442         * lily/slur-scoring.cc (generate_avoid_offsets): new
5443         function. Generate avoid offsets once per slur.
5444
5445         * lily/slur.cc (add_extra_encompass): add dependency to
5446         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
5447
5448         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
5449         too. Fixes inf error with added bass notes.
5450
5451         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
5452         argument anymore.
5453
5454         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
5455
5456         * input/tutorial/lbook-latex-test.tex: add line length test.
5457
5458         * scripts/lilypond-book.py (set_default_options): new
5459         function. Call this before dissecting snippets, so linewidth
5460         settings reach the snippets.
5461
5462 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5463
5464         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
5465
5466 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5467
5468         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
5469
5470 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5471
5472         * stepmake/aclocal.m4: More autopackage friendliness.
5473
5474 2005-05-31  Graham Percival  <gperlist@shaw.ca>
5475
5476         * Documentation/index.html.in: remove link to LSR.
5477
5478         * Documentation/user/global.itely: remove duplicate
5479         "dedication" \header{} section.
5480
5481 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5482
5483         * VERSION (PACKAGE_NAME): release 2.5.27.
5484
5485         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
5486         too. Plugs memory leak.
5487
5488         * make/lilypond.fedora.spec.in (Group): remove
5489         lilypond-pdfpc-helper.
5490
5491         * scripts/GNUmakefile (SEXECUTABLES): remove
5492         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
5493
5494         * scm/font.scm (make-century-schoolbook-tree): add Mono as
5495         'typewriter family.
5496
5497         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
5498         memory leak.
5499
5500         * lily/parser.yy (score_body): don't clone Score, that's done in
5501         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
5502
5503         * lily/score-engraver.cc (derived_mark): new function.
5504         (initialize): unprotect Paper_score. This fixes a memory leak.
5505
5506         * lily/score-performer.cc (derived_mark): new function.
5507
5508         * lily/score-translator.cc (get_output): use SCM for get_output() call.
5509
5510         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
5511         spurious warning.
5512
5513         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
5514         serif.
5515
5516 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5517
5518         * configure.in (reloc_b): Add --enable-relocation.
5519
5520 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5521
5522         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
5523
5524         * input/regression/alignment-order.ly: add Staff example.
5525
5526 2005-05-31  John Mandereau   <john.mandereau@free.fr>
5527
5528         * po/fr.po: update.
5529
5530 2005-05-31  Graham Percival  <gperlist@shaw.ca>
5531
5532         * Documentation/index.html.in: add link to LSR.
5533
5534 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5535
5536         * scm/define-stencil-commands.scm (Module): new file. Register all
5537         allowed stencil expression heads in a central place.
5538
5539         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
5540         ly:make-stencil
5541
5542         * lily/stencil-expression.cc (all_stencil_heads): registering
5543         stencil expressions.
5544
5545         * lily/stencil-interpret.cc: new file. Stencil expression
5546         interpreting.
5547
5548         * input/xiao-haizi-guai-guai.ly: move file back.
5549
5550 2005-05-30  Graham Percival  <gperlist@shaw.ca>
5551
5552         * Documentation/user/advanced.itely, converters.itely,
5553         instrument-notation.itely, lilypond-book.itely: misc small
5554         changes.
5555
5556 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
5557
5558         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
5559
5560         * make/lilypond.fedora.spec.in: Fix source url.
5561
5562         * cygwin: Update from mingw patches.
5563
5564         * scm/editor.scm (editor-command-template-alist): Use jedit
5565         -reuseview (Bertalan), add uedit (Patrick Huberts).
5566
5567         * input/xiao-hai-zi-guai-guai.ly: Rename from
5568         xiao-haizi-guai-guai.ly.
5569
5570         * input/*: Reindent, do not use TAB.
5571
5572         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
5573         white background.
5574
5575 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5576
5577         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
5578         numerical overflow error.
5579
5580 2005-05-29 Laura Conrad <lconrad@laymusic.org>
5581         
5582         * abc2ly.py: fix to syntax error in multi-part output.
5583
5584 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5585
5586         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
5587         with disappearing span bars when alignAboveContext is active
5588
5589         * lily/property-iterator.cc (check_grob): use is-grob?
5590         object-property. Fixes crash-key-sig-font-size.ly. 
5591
5592 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5593
5594         * lily/bar-line.cc (print): don't round barlines; this produces
5595         odd aliasing effects in Acroread.
5596
5597         * lily/timing-engraver.cc (process_music): robustness fix.
5598
5599         * lily/context-def.cc (filter_engravers): bugfix.
5600
5601 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5602
5603         * lily/lilypond.rc.in: Add ly-icon.
5604
5605         * lily/GNUmakefile: 
5606         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
5607         rules.
5608
5609 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5610
5611         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
5612
5613         * ps/music-drawing-routines.ps: 
5614
5615         * scm/output-ps.scm: remove draw ez_ball.
5616
5617         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5618         EasyNotation context definition.
5619
5620         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
5621         Text_interface and color for making easy note heads.
5622
5623         * lily/stencil.cc (with_color): new function.
5624
5625         * ps/music-drawing-routines.ps: remove draw_zigzag_line
5626
5627         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
5628         output routine. Zigzag now works in SVG too.
5629
5630         * scm/output-tex.scm (filledbox): idem.
5631
5632         * scm/output-svg.scm (filledbox): idem.
5633
5634         * scm/output-ps.scm (lily-def): remove horizontal-line. 
5635
5636         * lily/lookup.cc (horizontal_line): use draw-line. 
5637
5638         * lily/system-start-delimiter.cc: remove old staff bracket code.
5639
5640         * mf/feta-haak.mf: further tweaks.
5641
5642         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
5643
5644         * mf/feta-generic.mf: include feta-haak.
5645
5646         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
5647
5648         * scm/framework-ps.scm (write-preamble): only load fonts if their
5649         filename is a string. 
5650
5651 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5652
5653         * scm/output-svg.scm (circle): support circle.
5654         (bracket): stub for bracket.
5655
5656         * scripts/lilypond-book.py (main): make sure --psfonts warning is
5657         correct.
5658
5659 2005-05-26  Graham Percival  <gperlist@shaw.ca>
5660
5661         * Documentation/user/lilypond.tely, advanced-notation.itely,
5662         basic-notation.itely, instrument-notation.itely, global.itely,
5663         introduction.itely, tutorial.itely: rearranging, editing,
5664         clean-up.
5665
5666         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
5667         for compiling on FreeBSD.
5668
5669 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5670
5671         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
5672         otf files.
5673
5674         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
5675         bugfixes.
5676
5677         * VERSION: 2.5.26 released.
5678
5679         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
5680
5681 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
5682
5683         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
5684         if printpagenumber is false.
5685
5686 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5687
5688         * lily/font-config.cc (init_fontconfig): comment out FontConfig
5689         cache warning.
5690
5691         * lily/tie.cc (print): support dotted ties.
5692         
5693 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5694
5695         * scm/define-grobs.scm (all-grob-descriptions): switch off
5696         debugging
5697         (all-grob-descriptions): Arpeggio has Y-extent.
5698
5699         * scm/define-music-properties.scm (all-music-properties): document
5700         length-callback and start-callback as "read-only".
5701
5702         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
5703         length-callback after creation. 
5704
5705         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
5706         compressmusic -> compressMusic.
5707
5708         * ly/music-functions-init.ly (oldaddlyrics): idem.
5709
5710         * lily/parser.yy: NewLyricCombineMusic ->
5711         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
5712
5713 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
5714
5715         * ly/Welcome_to_LilyPond.ly: typo.
5716
5717 2005-05-24  Graham Percival  <gperlist@shaw.ca>
5718
5719         * Documentation/user/lilypond.tely: move changing-defaults to be
5720         before global issues.
5721
5722         * Documentation/user/basic-notation.itely: move Transpose section
5723         here from advanced/Other.
5724
5725         * Documentation/user/changing-defaults.itely,
5726         advanced-notation.itely: move Fonts to advanced, edit.
5727
5728 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5729
5730         * lily/parser.yy (bare_int): remove rule.  From now on, we require
5731         # before negative integers.
5732
5733 2005-05-23  Graham Percival  <gperlist@shaw.ca>
5734
5735         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
5736
5737         * Documentation/user/lilypond.tely: change Unified index to
5738         LilyPond index.
5739
5740         * Documentation/user/advanced-notation.itely,
5741         instrument-notation.itely: editing.
5742
5743 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5744
5745         * scm/lily.scm (lilypond-all): Bugfix: return failed.
5746
5747         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
5748
5749 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5750
5751         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
5752         ly:port-move.  Needs to be stderr-specific on mingw.
5753         Run fixcc.
5754
5755 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5756
5757         * lily/general-scheme.cc (ly:port-move): Remove.
5758
5759         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
5760         windows.
5761
5762         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
5763         variables.  This eliminates the need for a gs.bat wrapper, which
5764         opens a console.
5765
5766         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
5767         * scm/lily.scm (running-from-gui?): 
5768         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
5769         artifact of not compiling with -mwindows.
5770
5771         * scm/editor.scm: Define PLATFORM.
5772
5773 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5774
5775         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
5776         can start to cut & paste lilypond-book fragments.  
5777
5778         * scm/define-music-types.scm (music-descriptions): remove
5779         UntransposableMusic
5780
5781 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5782
5783         * scm/output-ps.scm (glyph-string): remove / before CIDs.
5784
5785 2005-05-20  Graham Percival  <gperlist@shaw.ca>
5786
5787         * Documentation/user/instrument-notation.itely: remove *Engraver.
5788
5789         * Documentation/user/advanced-notation.itely: edit, rearrange.
5790
5791 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5792
5793         * scm/output-ps.scm (glyph-string): take cid? argument. Use
5794         findresource iso. findfont for CID CFF fonts.
5795
5796         * VERSION (PACKAGE_NAME): release 2.5.25
5797
5798         * ly/Welcome_to_LilyPond.ly: add  \version
5799
5800 2005-05-20  Graham Percival  <gperlist@shaw.ca>
5801
5802         * Documentation/user/programming-interface.itely: move
5803         \displayMusic into its own section.
5804
5805         * Documentation/user/basic-notation.itely: finish editing.
5806
5807 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5808
5809         * flower/file-path.cc (find): don't throw away file_name.dir, but
5810         append to it. Fixes \include with directories.
5811
5812         * flower/include/file-path.hh (class File_path): don't derive from
5813         Array<String>.
5814
5815         * flower/include/file-name.hh (class File_name): remove to_str0()
5816
5817         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
5818         Hara_kiri_engraver in separate file.
5819
5820         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
5821         translation went wrong. Fixes vertically translated slurs.
5822
5823 2005-05-19  Graham Percival  <gperlist@shaw.ca>
5824
5825         * Documentation/user/basic-notaton.itely: editing.
5826
5827 2005-05-18  Graham Percival  <gperlist@shaw.ca>
5828
5829         * Documentation/user/macros.itexi, basic-notation.itely:
5830         add @commonprop (commonly used properties) macro.
5831
5832 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5833
5834         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
5835
5836         * scripts/lilypond-book.py (invokes_lilypond): new function
5837         (main): only run fontextract if invokes_lilypond() is true.
5838
5839         * lily/function-documentation.cc (ly_add_function_documentation):
5840         duh, use !=
5841
5842         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
5843
5844         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
5845
5846         * scm/lily.scm (running-from-gui?): lowercase Darwin.
5847
5848         * lily/function-documentation.cc (ly_add_function_documentation):
5849         use scm_hash_table_p() for checking.
5850
5851 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5852
5853         * Documentation/user/advanced-notation.itely (Text scripts):
5854         Change nonexisting @internalsref{Text markup} to @ref{Text
5855         markup}.  Change @internalsref{Text script} to
5856         @internalsref{TextScript}.
5857
5858         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
5859
5860 2005-05-17  Graham Percival  <gperlist@shaw.ca>
5861
5862         * Documentation/user/tutorial.itely, basic-notation.itely,
5863         changing-defaults.itely: remove duplicate cindex entries
5864         that appear on the same page.
5865
5866         * scm/define-grobs.scm: change default padding for TextSpanner.
5867
5868         * Documentation/topdocs/AUTHORS.texi: update email address.
5869
5870         * Documentation/user/global.itely: add info about \include.
5871
5872 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5873
5874         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
5875         when running-from-gui.
5876
5877         * scm/editor.scm (get-editor): Add platform defaults.
5878
5879         * scm/backend-library.scm (postscript->pdf): Typo.
5880
5881 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5882
5883         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
5884
5885         * lily/font-config.cc (init_fontconfig): add warning about cache.
5886
5887 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5888
5889         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
5890
5891 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5892
5893         * lily/horizontal-bracket.cc (print): Take care of the direction
5894         property so brackets above the stave point downwards. 
5895
5896         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
5897         for HorizontalBracket so it doesn't end up within the stave.
5898
5899 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5900
5901         * lily/GNUmakefile (default): Typo.
5902
5903         * scm/lily.scm (PLATFORM): Export.
5904
5905         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
5906         load-font-via-GS, ttftool or fopencookie is broken on windows.
5907         
5908         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
5909         -dSAFER, that is broken on windows.
5910
5911 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5912
5913         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
5914         for FlexLexer.h
5915
5916         * scripts/lilypond-invoke-editor.scm: remove stray -
5917
5918 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5919
5920         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
5921         Fixes deprecation warning.
5922
5923         * flower/include/string.icc (to_string): Only inline if
5924         -DSTRING_UTILS_INLINED.
5925
5926         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
5927         name.  Remove windows comment.
5928
5929         * scm/editor.scm (slashify): New function.
5930         (get-editor-command): Use it.
5931         (get-command-template): Do not alter editor command if
5932         environment value includes `%(file)s' magic.
5933
5934         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
5935         (dissect-uri): Use it.
5936         (unquote-uri): Bugfix.
5937
5938 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5939
5940         * scm/framework-ps.scm (write-preamble): add TTF rule.
5941
5942         * Documentation/topdocs/README.texi (Top): remove note about
5943         xdelta.
5944
5945         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
5946         requirement.
5947
5948         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
5949         function. Figure out where FlexLexer.h lives
5950
5951         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
5952         
5953 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5954
5955         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
5956         with Windows root in file name.
5957
5958         * scm/backend-library.scm (ly:system): Only redirect output (using
5959         system and shell, ugh) if /dev/null is writable.
5960
5961         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
5962         windows icon.
5963
5964         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
5965         on Mingw.
5966
5967         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
5968         click.
5969
5970         * flower/file-path.cc (is_dir, is_file): New function.  Actually
5971         use result of stat when available.
5972
5973         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
5974         absolute file name and root.
5975
5976         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
5977
5978         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
5979
5980         * flower/file-name.cc (slashify): Bugfix, do substitute if no
5981         slashes in file name.
5982
5983 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5984
5985         * Documentation/user/preface.itely (Preface): Run
5986         texinfo-all-menus-update.
5987
5988         * scm/editor.scm (get-editor-command): Bugfix: allow full
5989         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
5990
5991         * Documentation/pictures/lilypond-48.xpm: New file.
5992
5993         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
5994
5995         * ly/Welcome_to_LilyPond.ly: New file.
5996
5997         * lily/main.cc (main): Only identify if we have a terminal.
5998
5999         * scm/backend-library.scm (postscript->png)
6000         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
6001         non-/bin/sh).
6002
6003 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
6004
6005         * Documentation/topdocs/AUTHORS.texi: polish, update.
6006
6007 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6008
6009         * Documentation/user/preface.itely (Notes for version 2.6): new
6010         notes for 2.6
6011
6012         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
6013         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
6014         is not fully contained" warnings.
6015
6016         * lily/slur-scoring.cc (get_bound_info): remove warning.
6017
6018         * lily/staff-symbol-engraver.cc (process_music): start initial
6019         spanner in process_music(). This fixes overrides of StaffSymbol
6020         properties.
6021
6022         * scm/framework-pdf.scm (Module): remove.
6023
6024         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
6025
6026         * lily/ambitus-engraver.cc: formatting cleanups.
6027
6028         * mf/feta-solfa.mf (Module): remove.
6029
6030         * ChangeLog: more details about contributions.
6031
6032 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6033
6034         * lily/align-interface.cc (align_elements_to_extents): warn if
6035         called too early. Fixes: disappearing-staff-lines.ly
6036
6037         * VERSION (PACKAGE_NAME): release 2.5.24
6038
6039 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6040
6041         * stepmake/aclocal.m4: Typo.
6042
6043         * flower/string.cc (substitute): Take two strings or two
6044         characters.  Update callers.
6045
6046 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6047
6048         * flower/file-name.cc (File_name): Slashify.
6049
6050         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
6051
6052         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
6053
6054         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
6055
6056         * configure.in (gui_b): Use it.
6057
6058         * lily/lilypond.rc.in: New file.
6059
6060         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
6061
6062 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6063
6064         * Documentation/user/advanced-notation.itely: edit of Text
6065         section; clarify text scripts vs. text markup.
6066
6067 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6068
6069         * lily/multi-measure-rest-engraver.cc
6070         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
6071         separation items on start. Fixes mm rests in start of score.
6072
6073         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
6074         don't access StaffSymbol if not there.
6075         Fixes: crash-staff-symbol-engraver.ly.
6076
6077         * lily/instrument-name-engraver.cc (class
6078         Instrument_name_engraver): data member first_. Create
6079         InstrumentName on start. 
6080
6081 2005-05-12  Graham Percival  <gperlist@shaw.ca>
6082
6083         * Documentation/user/instrument-notation.itely: add guitar
6084         position.
6085
6086         * Documentation/user/introduction.itely,
6087         Documentation/user/lilypond.tely,
6088         Documentation/user/tutorial.itely: begin pruning
6089         unused (duplicated) cindex entries and misc cleanup.
6090
6091 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6092
6093         * input/test/volta-chord-names.ly: Bring the explanation up to
6094         date.
6095
6096 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6097
6098         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
6099         Specify `@documentencoding utf-8' for html, ignore warnings.
6100
6101 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
6102
6103         * THANKS: Added bughunters.
6104
6105 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
6106
6107         * lily/main.cc: update help string for `lilypond -H'.
6108
6109         * po/fi.po: update.
6110         
6111 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6112
6113         * Documentation/user/advanced-notation.itely: minor fixes.
6114
6115 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6116
6117         * scm/editor.scm: New module.
6118
6119         * scm/lily.scm (gui-main): Use it.
6120
6121         * scm/framework-gnome.scm (spawn-editor): Use it.
6122
6123         * scripts/lilypond-invoke-editor.scm: Use it in new script.
6124
6125 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6126
6127         * scm/framework-ps.scm (load-font-via-GS):  new function.
6128
6129         * lily/pango-font.cc (pango_item_string_stencil): add support for
6130         CID keyed font.
6131
6132         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
6133
6134 2005-05-10  Graham Percival  <gperlist@shaw.ca>
6135
6136         * Documentation/user/basic-notation.itely: add @ref.
6137
6138         * Documentation/user/advanced-notation.itely: add example
6139         of 5/8 beaming.
6140
6141 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6142
6143         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
6144
6145         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
6146         going through ps2pdf wrappers.
6147
6148 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
6149
6150         * Documentation/user/instrument-notation.itely: petrucci note
6151         heads: updated docu
6152
6153         * input/regression/note-head-style.ly: updated regression test;
6154         indentation fixes
6155
6156         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
6157         heads as default
6158
6159         * mf/parmesan-heads.mf: minor editing; use musicological names
6160         (rather than optical description) as note head names
6161
6162         * scm/output-lib.scm: complete petrucci heads
6163
6164 2005-05-09  Pal Benko  <benkop@freestart.hu>
6165
6166         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
6167         heads, but bigger)
6168
6169 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6170
6171         * lily/main.cc (main_with_guile): Remove no files check.
6172
6173         * lily/main.cc (ly:usage): Export to Scheme.
6174
6175         * scm/lily.scm (no-files-handler): New function.
6176
6177         * scm/lily.scm (lilypond-main): Use it.
6178
6179         * configure.in (gui_b): Add mbrtowc checking.
6180         Resurrect [utf8/]wchar.h checking.
6181
6182 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6183
6184         * Documentation/user/advanced-notation.itely (Metronome marks):
6185         Add link to the program reference for MetronomeMark
6186
6187         * Documentation/user/lilypond-book.itely (An example of a
6188         musicological document): Correct the example using psfonts 
6189
6190 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
6191
6192         * po/fi.po: update after a lesson how to update entries against
6193         source.
6194         
6195         * po/TODO: document the lesson.
6196
6197 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6198
6199         * configure.in (gui_b): remove wcrtomb checking.
6200
6201         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
6202         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
6203
6204 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6205
6206         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
6207         keep Scheme expressions and strings unmodified when doing the
6208         conversion to postfix notation for slurs and beams. Should
6209         hopefully solve most related conversion problems. 
6210
6211         * Documentation/user/lilypond-book.itely : Clarify and correct how
6212         to call dvips with -h psfonts.
6213
6214 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6215
6216         * Documentation/user/instrument-notation.itely (Entering lyrics):
6217         Typo.  Fixes build.
6218
6219 2005-05-09  Graham Percival  <gperlist@shaw.ca>
6220
6221         * Documentation/user/lilypond-book.itely: document PSFONTS file.
6222
6223         * Documentation/user/lilypond.tely, lilypond-book.itely,
6224         tutorial.itely: change references to 2.5.x to 2.6.x.
6225
6226         * Documentation/user/instrument-notation.itely: clarified \addlyrics
6227         vs \lyricmode.
6228
6229         * Documentation/user/invoking.itely: remove old info about
6230         lilypond-profile.
6231
6232         * Documentation/topdocs/INSTALL.texi: remove old info about
6233         lilypond-profile, add warning about needing international fonts
6234         to build docs.
6235
6236 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6237
6238         * lily/include/grob-info.hh (class Grob_info): make data member
6239         private. Changes throughout.
6240
6241         * input/regression/alignment-order.ly: new file. 
6242
6243         * lily/vertical-align-engraver.cc (acknowledge_grob): read
6244         alignAboveContext and alignBelowContext
6245
6246 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6247
6248         * lily/pfb.cc (LY_DEFINE): add cast.
6249
6250         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
6251         matches .otf
6252         (write-preamble): warn about unknown fonts.
6253
6254         * lily/pfb.cc (Module): new function ly:otf->cff
6255
6256         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
6257         (get_otf_table): new function.
6258
6259 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6260
6261         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
6262         iso. ps2png.
6263
6264 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
6265
6266         * po/fi.po: apply second round of update.
6267
6268 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6269
6270         * scm/x11-color.scm (make-x11-color-handler): don't use
6271         #\sp. Apparently doesn't work on all platforms. 
6272
6273 2005-05-06  Graham Percival  <gperlist@shaw.ca>
6274
6275         * Documentation/user/advanced-notation.itely, putting.itely,
6276         tutorial.itely, global.itely, introduction.itely: really minor fixes.
6277
6278 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6279
6280         * VERSION (PACKAGE_NAME): release 2.5.23
6281
6282 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6283
6284         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
6285         convert to utf-8.
6286
6287         * THANKS: Add translators for this release, convert to utf-8.
6288
6289         * mf/GNUmakefile (MFTRACE_FLAGS):
6290         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
6291         outdir as option (WAS: hardcoded).
6292
6293 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6294
6295         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
6296         finished_span_
6297
6298         * THANKS: add Hans Forbrich.
6299
6300         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6301
6302         * Documentation/user/basic-notation.itely (Staff symbol): document
6303         start/stop staff. Reference to ossia.ly
6304
6305         * input/test/ossia.ly: new example using stop and startStaff.
6306
6307         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
6308         in other words, don't create "|" barline at start of the score.
6309         (start_translation_timestep): don't set whichBar for start of score.
6310
6311         * input/regression/staff-halfway.ly: use new functionality.
6312
6313         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
6314         start and stop staff based on events.
6315
6316         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
6317
6318         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
6319
6320 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6321
6322         * Documentation/user/programming-interface.itely (How markups work
6323         internally ): remove \encoding reference.
6324
6325 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6326
6327         * scripts/convert-ly.py: Attempt to do a smarter update of 
6328         text markups from versions < 1.9.0 with arbitrary nesting.
6329
6330 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6331
6332         * po/fi.po: convert to utf-8, and update.
6333
6334 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6335
6336         * make/lilypond.suse.spec.in: update from suse 2.4 package.
6337
6338         * lily/*.cc: more <? >? to min/max changes
6339
6340         * lily/include/interpretation-context-handle.hh: rename
6341         Interpretation_context_handle to Context_handle.
6342
6343 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
6344
6345         * input/regression/GNUmakefile (local_delete): use `find` together 
6346         with `xargs` to avoid too long argument-lists in cmd line.
6347
6348 2005-05-04  Graham Percival  <gperlist@shaw.ca>
6349
6350         * Documentation/user/introduction.itely: updates "About this manual".
6351
6352         * Documentation/user/advanced-notation.itely,
6353         invoking.itely: minor fixes.
6354
6355 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6356
6357         * COPYING: add font exception. Update FSF address. 
6358
6359         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
6360         should be taken without child context.
6361
6362         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
6363
6364         * scm/define-markup-commands.scm (triangle): new command, as
6365         robust replacement for unicode Delta/Triangle.
6366
6367 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6368
6369         * ps/music-drawing-routines.ps: add fillp argument.
6370
6371         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
6372
6373         * lily/font-config.cc (init_fontconfig): don't add cff/
6374
6375         * VERSION (PACKAGE_NAME): release 2.5.22
6376
6377         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
6378
6379         * lily/grace-engraver.cc (consider_change_grace_settings): use
6380         is_alias(). Fixes problem with CueVoice grace notes. 
6381
6382         * lily/simultaneous-music-iterator.cc (construct_children): call
6383         Music_iterator::quit() for iterators that start out invalid. This
6384         fixes indefinitely continuing contexts.
6385
6386         * buildscripts/substitute-encoding.py: new file
6387
6388         * Documentation/user/basic-notation.itely (Basic polyphony): fix
6389         missing @end 
6390
6391         * scripts/lilypond-book.py (write_if_updated): print file name.
6392
6393         * Documentation/user/basic-notation.itely (Explicitly
6394         instantiating voices): idem.
6395
6396         * Documentation/user/advanced-notation.itely (Text spanners):
6397         remove stray { } 
6398
6399         * lily/context.cc (default_child_context_name): the default child
6400         is now first in accepts_list_.
6401
6402         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6403         \defaultchild to all relevant contexts.  This fixes:
6404         drums-pitch.ly.
6405
6406         (Probably also fixes similar problems with ancient
6407         transcriptions getting CueVoices instead of the desired voices.)
6408  
6409         * lily/context-def.cc (get_default_child): new function.
6410         (get_accepted): place default child in front of list.
6411
6412         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
6413
6414         * lily/include/context-def.hh (struct Context_def): add
6415         default_accept_
6416
6417 2005-05-03  Graham Percival  <gperlist@shaw.ca>
6418
6419         * scm/define-grobs.scm: remove "remove-first" line, since
6420         the absent property is set to #f anyway.
6421
6422         * Documentation/user/basic-notation.itely,
6423         advanced-notation.itely, instrument-notation.itely: minor
6424         fixes.
6425
6426         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
6427
6428         * Documentation/user/advanced-notation.itely,
6429         changing-defaults.itely: consolidate Text stuff in
6430         advanced notation.
6431
6432         * Documentation/user/global.itely: better docs for \header.
6433
6434         * Documentation/user/putting.itely: new chapter; placeholder
6435         for future expansion.
6436
6437         * Documentation/user/examples.itely: moved "suggestions for
6438         writing LP files" section into putting.itely.
6439
6440         * Documentation/user/lilypond.itely: added new chapter,
6441         fixed the short table of contents.
6442
6443 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6444
6445         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
6446         infinity for unfeasible beams.
6447
6448         * make/lilypond.fedora.spec.in (Group): idem.
6449
6450         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
6451
6452         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
6453
6454         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
6455         fonts directly.
6456
6457         * buildscripts/gen-emmentaler-scripts.py (i): idem.
6458
6459         * mf/GNUmakefile: remove all CFF rules.
6460
6461         * scm/framework-ps.scm (ps-embed-cff): reinstate.
6462
6463         * lily/open-type-font-scheme.cc (LY_DEFINE):
6464         new function ly:otf-font-table-data.
6465         (LY_DEFINE): new function otf-font?
6466
6467 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6468
6469         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
6470         ($(outdir)/Fontmap.lily): idem.
6471
6472         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
6473         for PFAEmmentaler-XXX.pfa. 
6474
6475         * Documentation/user/music-glossary.tely (accidental): NL
6476         translation of accidental.
6477
6478 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6479
6480         * flower/include/international.hh: Bugfix: include "string.hh".
6481
6482         * lily/include/mingw-compatibility.hh: New file.
6483
6484         * flower/include/libc-extension.hh (memrev): Rename from strrev.
6485
6486         * configure.in: Search for mingw wcrtomb library.
6487
6488 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6489
6490         * scripts/convert-ly.py: Bug fix
6491
6492         * Documentation/user/changing-defaults.itely (Common tweaks):
6493         Added example where the context has to be specified explicitly
6494         (MetronomeMark). 
6495
6496 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6497
6498         * scripts/lilypond-book.py (ly_options): set timing to #f for
6499         notime option.
6500
6501         * scripts/convert-ly.py (conv): typo.
6502
6503         * flower/*.cc: remove <? and >?
6504         
6505         * lily/*.cc: remove <? and >?
6506
6507         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
6508         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
6509         editor.
6510
6511 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6512
6513         * lily/part-combine-engraver.cc: add space to variable list.
6514
6515 2005-04-30  Graham Percival  <gperlist@shaw.ca>
6516
6517         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
6518         remove-first to false (matches docs)
6519
6520         * Documentation/user/advanced-notation.itely: corrected docs
6521         concerning remove-first.
6522
6523 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6524
6525         * lily/part-combine-engraver.cc: make sure that the relevant
6526         properties are included in the documentation.
6527
6528 2005-04-28  Graham Percival  <gperlist@shaw.ca>
6529
6530         * Documentation/user/lilypond-book.itely: Bernard's docs
6531         for \betweenLilyPondSystem.
6532
6533 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6534
6535         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
6536         remarks.
6537
6538 2005-04-28  Pal Benko  <benkop@freestart.hu>
6539
6540         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
6541         only on vertical lines of flexa shape, and use a constant
6542         thickness value for horizontal lines (patch slightly modified by
6543         Jürgen Reuter)
6544
6545         * lily/include/mensural-ligature.hh: make 2 comments clearer
6546
6547 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
6548
6549         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
6550         to need_extra_horizontal_space; bugfix: use class scope to avoid
6551         global namespace pollution
6552
6553         * Documentation/user/instrument-notation.itely (ligatures): added
6554         comment on possible future syntax change and how to work around
6555
6556         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
6557         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
6558         intervals (fixes agnus dei example)
6559
6560         * Documentation/user/instrument-notation.itely (white mensural
6561         ligatures): selected a more illustrative example
6562
6563 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
6564
6565         * Documentation/index.html.in: specify utf-8 charset in meta content.
6566
6567 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6568
6569         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
6570         empty 2nd page for single page.
6571
6572         * scm/lily.scm: remove p&c definitions.
6573
6574         * po/zh_TW.po (Module): new translation.
6575
6576         * lily/lily-guile.cc (ly_chain_assoc): remove.
6577
6578         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
6579         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
6580
6581 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6582
6583         * lily/beaming-info.cc: remove infinity_i
6584
6585         * scripts/abc2ly.py (out_filename): fix thinko with \version.
6586
6587 2005-04-26  Graham Percival  <gperlist@shaw.ca>
6588
6589         * Documentation/user/basic-notation.itely,
6590         instrument-notation.itely, advanced-notation.itely,
6591         changing-defaults.itely: minor fixes.  Added docs
6592         for colors to advanced-notation.itely.
6593
6594         * Documentation/user/advanced-notation.itely: fixed compile
6595         problem and added Bernard's x11-color doc patch.
6596
6597 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6598
6599         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
6600         alright this time round.
6601
6602 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6603
6604         * Documentation/topdocs/INSTALL.texi (Top): idem.
6605
6606         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
6607
6608         * VERSION (MAJOR_VERSION): release 2.5.21
6609
6610         * scm/output-ps.scm (grob-cause): bugfix.
6611
6612 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6613
6614         * cygwin/*: Update.
6615
6616         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
6617         stuff.
6618
6619         * scm/output-ps.scm (grob-cause): Bugfix.
6620
6621         * scm/lily.scm (ly:load): Remove x11-color.
6622
6623         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
6624         quote executable, fixes getting version from program --with
6625         --options.
6626         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
6627         $ac_exeect.
6628
6629         * Documentation/user/GNUmakefile: Only build music-glossary with
6630         rendered lilypond snippets during web.
6631
6632 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6633
6634         * po/de.po: update.
6635
6636         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
6637
6638 2005-04-22  Laura Conrad <lconrad@laymusic.org>
6639  
6640         * scripts/abc2ly:
6641         second title line append with punctuation dash character;
6642         encode abc2ly python strings in utf-8
6643        
6644 2005-04-21  Laura Conrad <lconrad@laymusic.org>
6645
6646         * scripts/abc2ly fix chords (again)
6647  
6648 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
6649
6650         * scm/x11-color.scm: new file
6651         All x11 color names can be accessed with:
6652         #(x11-color 'ColorName),
6653         #(x11-color "ColorName") or:
6654         #(x11-color "color name")
6655         If the x11 color name is not recognised then it defaults
6656         to black
6657
6658         * scm/lily.scm: amended to call scm/x11-color.scm
6659
6660 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6661
6662         * Documentation/user/invoking.itely (Reporting bugs): comment out
6663         reference to online PNG bug repository.
6664
6665 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6666
6667         * lily/translator-scheme.cc (ly:translator-property): Remove.
6668         Update callers.
6669
6670         * lily/context-scheme.cc (ly:context-now): Move from translator.
6671         Update callers.
6672
6673 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6674
6675         * input/regression/grid-lines.ly (skips): refine example.
6676
6677         * scm/define-context-properties.scm
6678         (all-user-translation-properties): doc autoBeamCheck
6679
6680         * input/regression/grid-lines.ly (Module): new file.
6681
6682         * lily/grid-point-engraver.cc (Module): new file.
6683
6684         * lily/grid-line.cc (Module): new file.
6685
6686         * lily/grid-line-span-engraver.cc (Module): new file.
6687
6688         * lily/grid-line-interface.cc (Module): new file.
6689
6690 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
6691
6692         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
6693         missing parameter, actualy cdr through list.  Actually return a
6694         list with ENTRY removed (was '()).
6695
6696         * scripts/convert-ly.py: Update.  Print warning if file cannot be
6697         opened.
6698         (do_conversion): Fix printing of continuation comma.
6699
6700         * Documentation/user/advanced-notation.itely (Beam formatting):
6701         Remove refbugs about compound time and mixed duration.
6702
6703         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
6704         modulo moments explicitely.
6705
6706         * lily/moment.cc (operator %): New function.
6707
6708         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
6709
6710         * lily/translator-scheme.cc (ly:translator-now,
6711         ly:translator-property): New function.
6712
6713         * scm/auto-beam.scm (default-auto-beam-check): New function.
6714
6715         * lily/auto-beam-engraver.cc (test_moment): Use it.
6716
6717         * flower/rational.cc (operator %): Bugfix.
6718
6719 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
6720
6721         * scripts/abc2ly: Bugfix
6722
6723 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6724
6725         * python/fontextract.py (write_extracted_fonts): bugfix, too many
6726         %'s on EndFont comment.
6727
6728         * lily/ledger-line-spanner.cc: some more words of explanation.
6729
6730 2005-04-20  John Williams <williams@tni.com>  
6731         
6732         * scripts/lilypond-book.py: htmlquote bugfix.
6733         Allow snippets to be given distinct filenames.
6734         Allow the default alt text to be overridden.
6735
6736 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
6737
6738         * ly/performer-init.ly: Bugfix
6739
6740         * THANKS: Added bughunters.
6741
6742 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6743
6744         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
6745
6746         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
6747         position (was: use modulo measure length).
6748
6749         * configure.in (no gui_b): Remove optional gtk+ requirement.
6750
6751 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6752
6753         * Documentation/user/basic-notation.itely (Pitches): add
6754         LedgerLineSpanner.
6755
6756         * lily/dynamic-engraver.cc (process_music): set right bound to
6757         script if present. Else, do not set.
6758         (acknowledge_grob): only set right bound of finished spanner to
6759         note column if no other bound is set.
6760
6761         * python/lilylib.py (make_ps_images): switch back to png16m.
6762         
6763 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6764
6765         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
6766         writing up to date file.  Add dvips usage suggestion.
6767
6768         * scripts/convert-ly.py: Fix error message.
6769         Print usage if no files on command line.
6770         (usage): Add example usage.
6771
6772         * input/test/compound-time.ly: New file.
6773
6774         * input/test/circle.ly: New file.
6775
6776         * Documentation/topdocs/NEWS.tely: Use them.
6777
6778         * input/test/boxed-stencil.ly: Remove \score.
6779
6780         * buildscripts/mf-to-table.py (base): Add .log dependency.
6781
6782         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
6783         pfa's.  Add .log dependency
6784
6785         * scm/define-markup-commands.scm (lower): New command.
6786
6787         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
6788         make it default.
6789
6790 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6791
6792         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
6793         also to finished cresc as right bound. This fixes:
6794         skip-string-decresc.ly
6795
6796         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
6797         relative_coordinate if extent is empty.
6798
6799         * lily/stem.cc (width_callback): determine correct extent if flag
6800         is not there. This fixes slur-no-flag.ly
6801
6802         * lily/grace-engraver.cc (consider_change_grace_settings): new
6803         function.
6804         (initialize): also consider_change_grace_settings() on
6805         initialization. Fixes large grace notes at start of score.
6806
6807         * lily/break-align-interface.cc (do_alignment): don't translate if
6808         total_extent is empty.
6809
6810         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
6811
6812 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6813
6814         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
6815         with slash.
6816
6817 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6818
6819         * stepmake/aclocal.m4: Remove tfm_path.
6820
6821 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6822
6823         * scm/music-functions.scm (markup-expression->make-markup): fix
6824         bug with cons arguments of markup commands.
6825         (music->make-music): fix music expression property list building
6826
6827 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
6828
6829         * aclocal.m4: Massage package names.
6830
6831         * SCons updates.
6832
6833 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6834
6835         * VERSION (PACKAGE_NAME): release 2.5.20
6836
6837         * lily/stem.cc (calc_stem_info): add minimum Y extent of
6838         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
6839
6840         * lily/percent-repeat-engraver.cc (try_music): add measure before
6841         next_moment to future processing moment. Fixes:
6842         percent-repeat-mm-rest.ly
6843         (process_music): don't add moment for 2nd time.
6844
6845         * input/regression/repeat-percent.ly: add mmrests as extra test.
6846
6847         * lily/axis-group-engraver.cc (acknowledge_grob): read
6848         keepAliveInterfaces to decide what to kill.
6849
6850         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
6851         percent-repeat-interface to keepAliveInterfaces. This fixes
6852         percent-repeat-harakiri.
6853
6854 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6855
6856         * SCons updates.
6857
6858 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6859
6860         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
6861
6862         * aclocal.m4: remove --enable-tfm-path configure option
6863
6864         * input/test/ancient-font.ly (lowerStaff): clef name errors.
6865
6866         * scm/backend-library.scm (postscript->png): newline after
6867         finishing command.
6868
6869         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
6870         (LY_DEFINE): ly:paper-score-paper-systems: new function 
6871
6872         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
6873
6874         * lily/score.cc (default_rendering): use Music_output too.
6875
6876         * input/test/chord-names-languages.ly (Module): rename file.
6877
6878         * lily/text-spanner.cc: add bound-padding.
6879
6880         * lily/paper-book.cc (systems): accept Paper_score
6881         iso. Paper_system vector. 
6882
6883         * input/regression/line-arrows.ly: new file.
6884
6885         * lily/paper-score.cc (process): run get_paper_systems() only once.
6886
6887         * lily/line-spanner.cc (line_stencil): add arrows.
6888
6889 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
6890
6891         * lily/line-interface.cc (make_arrow): new function. 
6892         (arrows): idem.
6893
6894 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
6895
6896         * input/test/chord-names-german.ly: update for italian/french
6897         chords.
6898         
6899         * Documentation/user/instrument-notation.itely (Printing chord
6900         names): update.
6901
6902 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6903
6904         * lily/include/paper-score.hh (class Paper_score): remove unused
6905         prototypes.
6906
6907         * lily/book.cc (process): add -COUNT to midi output.
6908
6909         * lily/score.cc (book_rendering): remove outname argument
6910         (book_rendering): return list of Music_outputs. 
6911
6912         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
6913
6914         * lily/book.cc (process): loop over Music_outputs returned from
6915         Score::book_rendering().
6916
6917         * lily/*.cc (width_callback): remove spurious "unused" warnings
6918         for assert (axis==[XY]_AXIS); 
6919
6920         * lily/include/music-output.hh (class Music_output): smobify class.
6921
6922         * lily/include/paper-score.hh (class Paper_score): make members
6923         private.
6924
6925         * lily/performance.cc (process): return #f iso. #<undefined>. This
6926         prevents #<undefined> leaking into GUILE-userspace.
6927
6928 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6929
6930         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
6931
6932 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
6933
6934         * scm/chord-name.scm : support for italian and french
6935         chords names.
6936
6937         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
6938         a space defined by chordPrefixSpacer when the root name is
6939         direclty followed by a prefix.
6940
6941         * ly/engraver-init.ly : chordPrefixSpacer       
6942         * scm/define-context-properties.scm : chordPrefixSpacer
6943         * ly/property-init.ly : italianChords, frenchChords 
6944
6945 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6946
6947         * mf/feta-din.mf: Remove.
6948
6949         * mf/GNUmakefile (fontdir): Bugfix.
6950
6951         * mf/SConstruct: Some updates.
6952
6953         * SConstruct: Require pkg-config.
6954         (test_program): Bugfix for double digit version compares, use
6955         integer (not string-) compare.
6956         Optionally require gs 8.14.
6957
6958         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
6959
6960         * lily/*: s/ifdef HAVE_*/if have/.
6961
6962         * SConstruct (test_lib): New function.  Update pkg-config and some
6963         other requirements.
6964
6965         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
6966         freetype, pangof2t.
6967
6968 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6969
6970         * po/lilypond.pot, ...: Update using bison-CVS.
6971
6972         * python/lilylib.py (make_ps_images): Fixo.
6973
6974 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6975
6976         * python/lilylib.py (make_ps_images): typo.
6977
6978         * configure.in (gui_b): make bison optional.
6979
6980         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
6981
6982 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
6983
6984         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
6985         with one parameter can be defined in a LaTeX file when processed
6986         by lilypond-book this will be evaluated between the systems of
6987         a multi-system score. The parameter is the number of systems processed.
6988
6989 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6990
6991         * python/lilylib.py (make_ps_images): Escape newline.
6992
6993         * Documentation/user/music-glossary.tely: Run
6994         texinfo-all-menus-update.
6995
6996 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6997
6998         * scm/lily-library.scm (old-relative-not-used-message)
6999         (version-not-seen-message): Add input-file-name-location to message.
7000
7001         * lily/parser.yy (lilypond): Add token aliases.
7002
7003         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
7004         not confuse with alteration.
7005         (alteration): Add.
7006
7007 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7008
7009         * python/lilylib.py (make_ps_images): use -dEPSCrop
7010
7011         * VERSION (PACKAGE_NAME): release 2.5.19 
7012
7013         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
7014         only put xrefs in info documentation.
7015
7016         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
7017         .pdf rule to tex-rules.make.
7018
7019         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
7020         from -systems.* output.
7021
7022         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
7023         directly, remove -$(PAGESIZE) target.
7024
7025         * input/test/embedded-postscript.ly: update.
7026
7027 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7028
7029         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
7030
7031         * Documentation/user/changing-defaults.itely (Font selection):
7032         document font-name.
7033
7034         * input/regression/font-name.ly: show Pango fonts for
7035         font-name. Update example. 
7036
7037         * lily/pango-select.cc (properties_to_pango_description): don't
7038         convert symbol font-size to number, but use to lookup.
7039
7040         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
7041
7042         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
7043         (NAME . FILE-NAME) tuples for font descriptions. 
7044         (write-preamble): display BeginFont DSC comments.
7045
7046         * python/fontextract.py (write_extracted_fonts): new file. Extract
7047         font resources from a PS file.
7048
7049         * scripts/lilypond-book.py (option_definitions): --psfonts option.
7050         (Compile_error.process_include): do_file returns chunks.
7051
7052         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
7053
7054         * make/lysdoc-targets.make: .texi is .PRECIOUS
7055
7056         * scripts/lilypond-book.py (write_if_updated): new function.
7057
7058 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7059
7060         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
7061
7062 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7063
7064         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
7065
7066         * input/regression/markup-syntax.ly: remove \score.
7067
7068         * scm/define-markup-commands.scm (draw-circle): add fill argument
7069
7070         * scm/stencil.scm (make-circle-stencil): add fill argument
7071
7072         * ps/music-drawing-routines.ps: add fill argument.
7073
7074         * ly/performer-init.ly: add CueVoice to MIDI too.
7075
7076         * ps/music-drawing-routines.ps: new routine BeginEPSF /
7077         EndEPSF.
7078
7079         * input/regression/markup-eps.ly: new file.
7080
7081         * scm/framework-ps.scm (write-preamble): change order: vars should
7082         be inited before procedures.
7083
7084         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
7085         for EPS files.
7086
7087         * scm/define-markup-commands.scm (epsfile): add epsfile command.
7088
7089 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7090
7091         * configure.in (gui_b): add check for ghostscript 8.15
7092
7093 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7094
7095         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
7096         start of line. Fixes cresc-after-newline.ly
7097
7098         * lily/source-file.cc (file_line_column_string): use get_column().
7099
7100 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7101
7102         * lily/source-file.cc (get_column): utf-8 support for column numbers.
7103
7104 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7105
7106         * lily/*: use message () iso progress_indication () for messages.
7107         Revise/uniformise user messages.
7108
7109         * flower/warn.cc (progress_indication): New function.
7110         (message): Use it.  Fixes newline problems.
7111
7112         * config.make.in (webdir): Sort out install dirs.
7113
7114         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
7115
7116         * python/lilylib.py (command_name): Bugfix.
7117         (make_ps_images):
7118
7119 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
7120
7121         * lily/main.cc: --help says what types of backends are availabe
7122
7123 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7124
7125         Fix ./VERSION dependency, and without need to reconfigure.
7126
7127         * lily/main.cc (setup_paths): Update.
7128
7129         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
7130
7131         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
7132
7133         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
7134         Add \line for some simplistic cases.
7135
7136         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
7137
7138 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7139
7140         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
7141         to compile LY files (useful for adding eg. "-I" args)
7142         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
7143         2Gnome command for gnome backend.
7144         (LilyPond-command-formatgnome): call the 2Gnome command. key
7145         binding: C-c C-g
7146
7147 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7148
7149         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
7150         depend on all PNG images.
7151
7152 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7153
7154         * GNUmakefile.in: Bugfix: also link .map files.
7155
7156 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7157
7158         * scm/music-functions.scm (music->make-music): generate 
7159         a (make-music ...) sexpr from a music expression.
7160         (display-scheme-music): use guile pretty printer to display the
7161         make-music sexpr.
7162
7163 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7164
7165         * ly/engraver-init.ly: reindent.
7166         Add CueVoice.
7167
7168         * scm/music-functions.scm (music-pretty-string): handle moments
7169         too.
7170         (music-pretty-string): only print non-empty lists.
7171         (cue-substitute): create CueVoice context, which has smaller type.
7172
7173         * lily/moment-scheme.cc (LY_DEFINE): new methods
7174         ly:moment-grace-{numerator,denominator}
7175
7176         * lily/context-handle.cc: remove quit() method. 
7177
7178         * lily/font-config.cc (init_fontconfig): be verbose about font path.
7179         (init_fontconfig): success is 0, not !0
7180
7181 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7182
7183         * mf/feta-nummer-code.mf (code): add plus glyph.
7184
7185         * lily/tie.cc (print): idem.
7186
7187         * lily/slur.cc (print): don't use thickness property for
7188         slur shape-thickness.
7189
7190         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
7191         while adding stencils.
7192
7193         * scm/define-markup-commands.scm (with-color): with-color markup
7194         command.
7195         (whiteout): new markup command 
7196         (filled-box): new markup command
7197
7198 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7199
7200         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
7201         test for PDF docs.
7202
7203         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
7204         PFAAybabtu-Regular.  Fixes feta font in PDFs.
7205         
7206         Notes for tetex-3.0 make web:
7207            psclean.map: s/uhv8a/uhvr8a/
7208            config.ps add:
7209                 p +psfonts_t1.map
7210                 p +psclean.map
7211                 p +typeface.map
7212
7213 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7214
7215         * scm/music-functions.scm (music-pretty-string): fix bug with
7216         string argument.
7217
7218 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7219
7220         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
7221
7222 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7223
7224         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
7225         only process options if they're there.
7226         (write_file_map): add version-seen? to snippet-map.ly
7227
7228 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
7229
7230         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
7231         formatting cleanups.
7232
7233         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
7234         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
7235
7236 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7237
7238         * scm/framework-ps.scm (ps-font-command): don't hash, just use
7239         name directly.
7240
7241         * lily/main.cc (setup_paths): either add mf/out to search path or 
7242         fonts/{otf,type1,etc}
7243         
7244         * lily/font-config.cc (init_fontconfig): either add mf/out to
7245         FontConfig or fonts/{otf,type1,etc}
7246
7247         * GNUmakefile.in: don't put mf/ link in share/ dir.
7248
7249         * lily/staff-spacing.cc: move same-direction-correction to
7250         note-spacing-interface
7251
7252         * scm/lily.scm (lilypond-main): use variable argument count for
7253         exception handler.
7254
7255         * lily/font-config.cc (init_fontconfig): add operator pacification
7256         message.
7257
7258         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
7259
7260         * buildscripts/gen-emmentaler-scripts.py (i): generate
7261         PFAEmmentaler as well.
7262
7263         * scm/framework-ps.scm (munge-lily-font-name): new function
7264         (write-preamble): hack: insert PFA equivalent of CFF into
7265         .PS. This makes LilyPond output printable on normal PS printers
7266         again.
7267
7268         * buildscripts/gen-emmentaler-scripts.py (i): generate
7269         PFAEmmentaler.pfa aswell.
7270
7271 2005-04-06  John Williams <williams@tni.com>  
7272         
7273         * scripts/lilypond-book.py: refactor the compose_ly procedure.
7274         
7275 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7276
7277         * scm/page-layout.scm (default-page-make-stencil): always combine
7278         the header stencil, even if empty. This prevents the body text to
7279         reach up to the margins.
7280
7281         * po/rw.po (Module): new file, for Kinyarwanda.
7282
7283         * input/test/spacing-optical.ly (Module): new file.
7284
7285         * lily/staff-spacing.cc: add same-direction-correction
7286
7287 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7288
7289         * Documentation/user/introduction.itely (Engraving): Comment-out
7290         non-existent file.
7291
7292 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7293
7294         * scm/define-grob-properties.scm (all-user-grob-properties): add
7295         same-direction-correction
7296
7297         * VERSION: release 2.5.18
7298
7299 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
7300
7301         * lily/grob.cc (mark_smob): Check pscore->layout_ before
7302         dereferencing.  Fixes make web.
7303
7304         * lily/midi-stream.cc: Handle unwritable midi file.  Include
7305         errno.h.
7306
7307         * Documentation/user/: Fix links.
7308
7309 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7310
7311         * lily/text-interface.cc (Module): rename from text-item.cc
7312
7313         * input/regression/apply-output.ly (texidoc): function naming fix.
7314
7315         * lily/time-signature-performer.cc (derived_mark): new function.
7316
7317         * lily/lily-parser-scheme.cc:  print mapped file name for progress
7318
7319         * scripts/lilypond-book.py (find_linestarts): new function.
7320         (find_toplevel_snippets): keep track of line numbers.
7321
7322         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
7323         all key changes.
7324
7325         * ly/declarations-init.ly (partCombineListener): use
7326         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
7327
7328         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
7329
7330 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
7331
7332         * lily/text-item.cc: Fix link.
7333
7334         * Documentation/user/changing-defaults.itely (Changing defaults):
7335         Fix programs reference links.
7336
7337         * Documentation/user/music-glossary.tely: Convert to utf-8.
7338
7339 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7340
7341         * make/lilypond-vars.make: remove TEXMF from variables.
7342         remove DEB_BUILD pk font variables.
7343         remove GUILE_LOAD_PATH
7344         remove TeX memory vars.
7345
7346 2005-04-04  Werner Lemberg  <wl@gnu.org>
7347
7348         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
7349
7350 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7351
7352         * ps/lilyponddefs.ps: remove reencode-font
7353
7354         * lily/simple-spacer.cc (add_columns): also compare
7355         directly. Column rank doesn't distinguish between broken and
7356         unbroken columns. This fixes large spaces before time sig changes.
7357
7358         * Documentation/user/point-and-click.itely: document ly:set-option.
7359
7360         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
7361         point_and_click_global is set.
7362
7363         * lily/scm-option.cc (LY_DEFINE): add point-and-click
7364         ly:set-option argument.
7365
7366 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7367
7368         * GNUmakefile.in: Include symlinks in webball.
7369
7370         * Documentation/user/GNUmakefile (source-links): Add symlinks to
7371         source dir for split and non-split manuals.
7372
7373         * Documentation/user/*y: Fix @uref/@inputfile links for
7374         split/non-split HTML documents.
7375
7376         * Documentation/user/GNUmakefile (local-WWW): Do not generate
7377         .ps.gz.
7378         
7379 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7380
7381         * GNUmakefile.in: Add newline.
7382
7383 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
7384
7385         * tex/lilyponddefs.tex: use color instead of xcolor
7386         * scm/output-tex.scm: minor editing
7387
7388 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7389
7390         * scm/music-functions.scm (display-scheme-music): pretty printer
7391         for music expressions.
7392
7393 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7394
7395         * buildscripts/install-info-html.sh (index_file): Fix link.
7396
7397 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7398
7399         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
7400
7401         * Documentation/index.html.in: Add size estimates with some big pages.
7402
7403         * Documentation/user/tutorial.itely (Running LilyPond for the
7404         first time): Add/replace some @rglos links.  TODO: add more
7405         @rglos links in tutorial, test non-intrusiveness (.css).
7406
7407         * stepmake/bin/add-html-footer.py (do_file): Remove info's
7408         annoying's indication of referencing external document.
7409
7410         * Documentation/user/GNUmakefile: Split version of glossary too.
7411         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
7412         links, not only for html.
7413
7414         * Documentation/user/introduction.itely: Fix some links for other
7415         than html, do not use `here' as link name.
7416
7417 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7418
7419         * scm/documentation-generate.scm (string-append): Fix @usermanref,
7420         @glossaryref.
7421
7422 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7423
7424         * scm/page-layout.scm (default-page-make-stencil): only add header
7425         if existing and not empty. Fixes spurious programming error.
7426
7427         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
7428
7429 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
7430
7431         * scm/output-tex.scm: implement {re,}setcolor
7432         * tex/lilyponddefs.tex: use color package
7433
7434 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
7435
7436         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
7437         additions to website.
7438
7439         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
7440
7441         * Documentation/user/macros.itexi: Fix @usermanref html links in
7442         split documents: use @inforef.
7443
7444 2005-03-30  Graham Percival  <gperlist@shaw.ca>
7445
7446         * Documentation/user/programming-interface.itely: minor fix.
7447
7448         * Documentation/user/advanced-notation.itely: added info to
7449         Metronome markings.
7450
7451 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7452
7453         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
7454         use box-stencil.  Remove y-padding argument.
7455         (make-stencil-circler): New function.
7456
7457         * buildscripts/lilypond-words.py (F): 
7458         * elisp/SConscript (a): 
7459         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
7460         * vim/SConscript (a): 
7461         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
7462
7463         * lily/general-scheme.cc: Build fix.
7464
7465         * scm/markup.scm:
7466         * input/regression/markup-scheme.ly: 
7467         * input/regression/markup-syntax.ly: Drop 'new-' from name.
7468
7469         * scm/stencil.scm (make-circle-stencil): New function.
7470
7471         * scm/define-markup-commands.scm (draw-circle): Use it.  New
7472         name (was cicle).  Update callers.
7473         (circle): New markup command, similar to box.
7474
7475         * scm/stencil.scm (circle-stencil): New function.
7476
7477 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
7478
7479         * configure.in: Detect libutf8/wchar.h variant.
7480
7481         * stepmake/aclocal.m4: Modify shared size test.
7482
7483 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7484
7485         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
7486
7487 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7488
7489         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
7490         
7491         * VERSION (PACKAGE_NAME):  release 2.5.17
7492
7493 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
7494
7495         * scm/backend-library.scm (postscript->png): Fix comment and png
7496         message.
7497
7498         * GNUmakefile.in (link-tree): Fix locales.
7499
7500 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7501
7502         * lily/stencil-scheme.cc (LY_DEFINE): change to
7503         ly:stencil-aligned-to, non mutating.
7504
7505         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
7506
7507         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
7508
7509         * lily/quote-iterator.cc (derived_mark): call
7510         Music_wrapper_iterator::derived_mark() too.
7511
7512         * lily/grace-engraver.cc (derived_mark): change signature, add
7513         const.
7514
7515 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7516
7517         * SConstruct (symlink): 
7518         * GNUmakefile.in (link-tree): Add scripts to prefix.
7519
7520         * lily/general-scheme.cc (ly:effective-prefix): New function.
7521
7522         * scm/backend-library.scm (postscript->png): Use it.
7523
7524 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7525
7526         * lily/paper-score.cc (process): don't delete grobs after
7527         producing stencils. 
7528
7529         * scm/part-combiner.scm (determine-split-list): switch off
7530         debugging info.
7531
7532         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
7533         if available.
7534
7535         * scm/define-context-properties.scm
7536         (all-user-translation-properties): add stringNumberOrientations.
7537
7538         * lily/new-fingering-engraver.cc (position_scripts): make generic,
7539         so fingering and string-numbers are separately controlled.
7540
7541 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7542
7543         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
7544         not use debugging.
7545
7546 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7547
7548         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
7549
7550         * config.hh.in: add HAVE_FONTCONFIG.
7551
7552         * Documentation/user/instrument-notation.itely (String number
7553         indications): new node.
7554
7555         * input/regression/new-markup-syntax.ly (texidoc): add circle.
7556
7557         * lily/new-fingering-engraver.cc (add_string): new function. 
7558         (acknowledge_grob): accept string-number-event as well.
7559
7560         * scm/define-markup-commands.scm (circle): new markup command.
7561
7562         * scm/output-lib.scm (print-circled-text-callback): new function.
7563
7564         * lily/GNUmakefile: move ifeq after include stepmake.make.
7565
7566 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7567
7568         * config.make.in (HAVE_LIBKPATHSEA_SO):
7569         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
7570
7571         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
7572         add KPATHSEA_LIBS.
7573
7574         * debian/watch: 
7575         * debian/control: Update.
7576
7577 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7578
7579         * input/test/title-markup.ly (spaceTest): remove.
7580
7581         * input/test/embedded-tex.ly (Module): remove.
7582
7583         * input/test/music-box.ly: use 'name property, not ly:music-name.
7584
7585         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
7586
7587         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
7588
7589 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7590
7591         * Documentation/topdocs/INSTALL.texi (Top): Remove information
7592         about xdeltas.  Add information about CVS.
7593
7594         * scm/lily.scm (lilypond-main): Fix invocation of handler,
7595         gracefully handle failed files.
7596
7597         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
7598
7599         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
7600         small fixes.
7601
7602         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
7603         No unnecessarily specific i18n messages.  Remove stray `1'.
7604
7605 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7606
7607         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
7608         documentencoding
7609
7610         * scm/documentation-lib.scm (texi-file-head): set utf-8
7611         documentencoding.
7612
7613         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
7614         Delta, not the Symbol one. 
7615
7616         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
7617         for the .map file.
7618
7619         * Documentation/topdocs/INSTALL.texi (Top): add running
7620         requirement as compilation requirement.
7621
7622 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7623
7624         * buildscripts/mutopia-index.py (headertext): add h1 header and
7625         utf-8 charset meta field.
7626
7627         * input/GNUmakefile: prune example list.
7628
7629         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
7630         options.
7631
7632         * lily/slur-scoring.cc (get_base_attachments): only look at stem
7633         extent for visible stems.
7634
7635         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
7636
7637 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
7638
7639         * Documentation/topdocs/INSTALL.texi (Top): Updates.
7640
7641         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
7642
7643 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7644
7645         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
7646         pass inf/nan into slur scoring.
7647
7648         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
7649         page.
7650
7651         * scripts/abc2ly.py (dump_voices): use alphabet().
7652
7653 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
7654         
7655         * mf/GNUmakefile (depth): use $(FONTFORGE). 
7656
7657 2005-03-27 Matthias Neeracher <neeracher@mac.com>
7658         
7659         * flower/include/virtual-methods.hh: simplify. Patch by
7660
7661 2005-03-25  John Williams <williams@tni.com>  
7662
7663         * scripts/lilypond-book.py (main): add png for HTML too, guess
7664         only if necessary. 
7665
7666 2005-03-25  Graham Percival  <gperlist@shaw.ca>
7667
7668         * Documentation/topdocs/INSTALL.texi: now recommends
7669         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
7670
7671         * Documentation/user/basic-notation.itely,
7672         Documentation/user/tutoria.itely: warn about
7673         only one (phrasing) slur at once.
7674
7675 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
7676
7677         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
7678
7679 2005-03-23  Graham Percival  <gperlist@shaw.ca>
7680
7681         * Documentation/user/basic-notation.itely: fixed info about
7682         ending a (de)cresc.
7683
7684         * Documentation/user/lilypond-book.itely: fixed
7685         lilypond-book filter example and warned about not doing
7686         --filter and --process at the same time.
7687
7688 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7689
7690         * lily/parser.yy (bass_number),
7691         Documentation/user/instrument-notation.itely (Figured bass): 
7692         Add the possibility to use text markup in figured bass. 
7693
7694 2005-03-19  Graham Percival  <gperlist@shaw.ca>
7695
7696         * Documentation/user/global.itely: added info about naming
7697         identifiers and breakbefore.
7698
7699         * Documentation/user/invoking.itely: added info about batch
7700         processing files with convert-ly, removed references to TeX
7701         in the jail section.
7702
7703         * Documentation/user/examples.itely: possibly fixed piano
7704         dynamics.
7705
7706         * Documentation/user/advanced-notation.itely: added info
7707         about removing other types of Staff.
7708
7709         * Documentation/user/instrument-notation.itely: possibly
7710         fixed piano staff line switch.
7711
7712         * Documentation/user/changing-defaults.itely: added info
7713         about using normal font in titles.
7714
7715 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7716
7717         * VERSION (PATCH_LEVEL): release 2.5.16
7718
7719         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
7720         explicitly.
7721
7722 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7723
7724         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
7725         whitespace.
7726
7727         * python/lilylib.py (make_ps_images):
7728         * scm/backend-library.scm (postscript->pdf, postscript->png):
7729         Quote file name.  Use format rather than string-append juggling.
7730
7731 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7732
7733         * python/lilylib.py (make_ps_images): add x to -g argument. 
7734
7735         * lily/key-performer.cc (create_audio_elements): don't use
7736         scm_eval_string. Check for minor 3rd directly.
7737   
7738         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
7739         (sarabandeCelloGlobal): key is D minor, not F major.
7740
7741 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7742
7743         Fix truncated --png output (Peter Danenberg).
7744         
7745         * python/lilylib.py (make_ps_images):
7746         * scripts/ps2png.py (copyright): Grok --papersize option.
7747
7748         * scm/backend-library.scm (postscript->png): Add parameter
7749         PAPERSIZE.  Update callers.
7750
7751         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
7752         Fixes symbol placement.
7753
7754         * lily/spanner.cc: 
7755         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
7756         <libc-extension.hh>).
7757
7758 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7759
7760         * Nitpick run.
7761
7762         * buildscripts/fixcc.py: Update.
7763
7764         Builddir run fixes.
7765
7766         * HACKING (datadir): Add VERSION.
7767
7768         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
7769         higher up.
7770
7771 2005-03-15  Werner Lemberg  <wl@gnu.org>
7772
7773         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
7774         diagonal stem doesn't become thinner.
7775
7776 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7777
7778         * buildscripts/fixcc.py: Fixes (Werner).
7779
7780 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7781
7782         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
7783         Emmentaler/Aybabtu.
7784
7785         * GNUmakefile.in: fix lilypond-words path.
7786
7787         * po/tr.po: update to 2.3.21
7788
7789         * lily/new-fingering-engraver.cc (position_scripts): take priority
7790         from head position.
7791
7792         * input/regression/finger-chords-order.ly (texidoc): new file.
7793
7794 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7795
7796         * make/ly-rules.make: 
7797         * stepmake/aclocal.m4: 
7798         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
7799
7800         * buildscripts/fixcc.py (rules): Leave space after operator.
7801
7802 2005-03-14  Werner Lemberg  <wl@gnu.org>
7803
7804         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
7805         top of the glyph with smooth curve.
7806
7807 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7808
7809         * Documentation/user/global.itely (Page layout): remove
7810         printpagenumber.
7811
7812 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
7813
7814         * input/regression/mensural-ligatures.ly: new file (with examples
7815         compiled by Pal Benko).
7816
7817         * Documentation/user/instrument-notation.itely: Bugfix: yet some
7818         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
7819         musicglyph access.  Many small beautifications in ancient
7820         examples.
7821
7822         * input/test/divisiones.ly: fixed indentation; small
7823         beautifications
7824
7825         * ly/engraver-init.ly: added FIXME comment
7826
7827         * scripts/lilypond-book.py,
7828         Documentation/user/lilypond-book.itely: added music fragment
7829         option "packed" to lilypond-book
7830
7831         * Documentation/user/instrument-notation.itely: Bugfix: added
7832         missing LedgerLineSpanner color setting in several places.  Added
7833         music fragment option "packed" to VaticanaContext example.
7834
7835 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7836
7837         * scm/define-grobs.scm (all-grob-descriptions): switch off
7838         Hyphen_spanner::set_spacing_rods 
7839
7840         * lily/lyric-hyphen.cc (print): add padding between syllable and
7841         hyphen.
7842         (print): shorten hyphen in tight situations (determine using
7843         minimum-length)
7844
7845         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
7846         0.4pt.
7847
7848 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7849
7850         * ly/titling-init.ly (bookTitleMarkup): Refinements.
7851
7852         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
7853         header/footer markings for regression-test.
7854
7855         * scm/backend-library.scm (output-scopes, header-to-file): Move
7856         from framework-tex.scm.
7857
7858         * scm/framework-ps.scm (output-framework)
7859         (output-preview-framework):
7860         * scm/framework-eps.scm (output-classic-framework)
7861         (output-framework): Use it.  Fixes collated files.
7862
7863 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7864
7865         * input/sakura-sakura.ly: 
7866         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
7867
7868         * buildscripts/guile-gnome.sh: Update.
7869
7870         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
7871
7872         * mf/aybabtu.pe.in: Capitalize Aybabtu.
7873
7874 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7875
7876         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
7877         culprit: always exit the loop if we find a rod, even if it has
7878         distance < 0. 
7879
7880         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
7881         algorithm.
7882
7883         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
7884         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
7885
7886         * scm/output-svg.scm (dashed-line): new  function body.
7887         
7888         * GNUmakefile.in: create .htaccess.
7889
7890 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7891
7892         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
7893
7894 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7895
7896         * VERSION (PACKAGE_NAME): release 2.5.15
7897
7898         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
7899
7900         * scm/framework-svg.scm (output-framework): put scaling in
7901         document header. Apply scaling only once.
7902         (output-framework): dump page size in px, not mm. 
7903
7904         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
7905         from font-size.
7906
7907         * lily/paper-outputter-scheme.cc (LY_DEFINE):
7908         ly:outputter-output-scheme, new function.
7909
7910         * scm/output-svg.scm (pango-description-to-svg-font): new function
7911
7912 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7913
7914         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
7915         target.
7916
7917         * input/typography-demo.ly: new file.
7918
7919 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7920
7921         * Documentation/user/global.itely (File structure): Add markup blocks
7922         to toplevel expressions.
7923         (Multiple movements, Creating titles): Add markup blocks.
7924
7925         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
7926         <libc-extension.hh>).
7927
7928         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
7929
7930         * flower
7931         * lily
7932         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
7933
7934 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7935
7936         * lily/accidental.cc: special bboxes for natural. 
7937
7938         * mf/feta-toevallig.mf: make stems heavier.
7939
7940         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
7941         texts as well.
7942
7943         * mf/feta-klef.mf: revise. 
7944
7945         * mf/feta-schrift.mf: make thinning of accent less pronounced.
7946
7947         * mf/feta-klef.mf: add rounded curve at top. 
7948         make thinnib a little heavier.
7949
7950 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7951
7952         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
7953
7954         * buildscripts/fixcc.py: New file.
7955
7956         * input/regression/utf8.ly: Update Debian font description.
7957
7958 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7959
7960         * stepmake/aclocal.m4: Fix test.
7961
7962 2005-03-09  Graham Percival  <gperlist@shaw.ca>
7963
7964         * Documentation/user/invoking.itely: added Sebastino Vigna's
7965         docs for the --jail option.
7966
7967 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7968
7969         * lily/stem.cc (print): only produce stemlets if there are no
7970         noteheads on this stem.
7971
7972         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
7973         don't crash on stemlet (visible stem without heads).
7974
7975         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
7976         unbroken situations. 
7977
7978         * scm/output-lib.scm (center-invisible): new function.
7979
7980         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
7981         wishes to determine loose column space.
7982
7983         * lily/font-config.cc (init_fontconfig): add
7984         fonts/{otf,type1,cff}  to path.
7985
7986         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
7987
7988         * mf/GNUmakefile (Module): install all fonts under otf/
7989
7990         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
7991         replace /fonts/otf/ by /ps/ 
7992
7993         
7994 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7995
7996         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
7997
7998         * lily/book.cc (process): Oops, add score_.header_.
7999
8000         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
8001
8002         * lily/parser.yy: Handle toplevel and book texts as score.
8003
8004         * scm/page-layout.scm (default-page-make-stencil):
8005         Bugfix: (page-properties rename.
8006
8007         * scm/backend-library.scm (ly:system): Typo.
8008
8009 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8010
8011         * stepmake/stepmake/executable-targets.make (installexe): don't
8012         strip installed executables
8013
8014         * lily/font-select.cc (get_font_by_design_size): revert
8015         pango_description_string as well.
8016
8017         * lily/system.cc (set_loose_columns): put loose column just left
8018         of next column.
8019
8020         * lily/include/group-interface.hh (extract_grob_array): rename
8021         from Pointer_group_interface__extract_grobs
8022
8023         * input/regression/ledger-line-minimum.ly (texidoc): new file.
8024
8025         * lily/ledger-line-spanner.cc (set_spacing_rods): new
8026         function. Keep ledgered note heads at a minimum distance.
8027         Introduce minimum-length-fraction
8028         (print): introduce length-fraction property.
8029
8030 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8031
8032         * tex/GNUmakefile: remove latin1.enc rules.
8033
8034 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8035
8036         * scm/titling.scm: Typo.
8037
8038         * input/regression/score-text.ly: Really add.
8039
8040         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
8041
8042 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8043
8044         * lily/open-type-font-scheme.cc:  new file.
8045
8046 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8047
8048         * scm/titling.scm (layout-extract-page-properties): Rename from
8049         page-properties.  Update callers.
8050
8051         * lily/lexer.ll (Lily_lexer):
8052         * lily/parser.yy: Junk lyric_markup state.
8053
8054         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
8055
8056         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
8057         Add texts parameter.
8058
8059 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8060
8061         * lily/lexer.ll (lyric_markup): New mode.
8062         (Lily_lexer::push_lyric_markup_state): New method.
8063         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
8064
8065         * lily/parser.yy (book_body):
8066         (toplevel_expression): Grok \markup texts.
8067
8068         * lily/score-scheme.cc (ly:music-scorify): 
8069         * scm/lily-library.scm (collect-music-for-book): Take texts
8070         parameter.
8071
8072         * lily/score.cc (texts_): New member.
8073
8074         * lily/paper-book.cc (systems): Format score texts.
8075
8076         * score-text.ly: New file.
8077
8078         * ttftool/SConscript:
8079         * kpath-guile/SConscript: New file.
8080
8081         * lily/SConscript:
8082         * SConstruct: Update.
8083
8084 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8085
8086         * VERSION (PACKAGE_NAME): release 2.5.14
8087
8088 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8089
8090         * lily/main.cc: Add dummy xgettext markers.
8091
8092 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8093
8094         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
8095         requirements
8096
8097         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
8098         executable is < 40k
8099
8100         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
8101         hack.
8102
8103 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8104
8105         * flower/libc-extension.cc:
8106         * flower/include/libc-extension.hh: [Open]BSD simply cast
8107         cookie/funopen declarations.
8108
8109         * stepmake/aclocal.m4: Check for libkpathsea.so.
8110
8111         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
8112         dl_kpse_find_file.
8113
8114 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8115
8116         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
8117         (open_library): alternative for static library.
8118
8119 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8120
8121         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
8122
8123         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
8124
8125         Drop run-time dependency on teTeX.
8126
8127         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
8128
8129         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
8130         KPATHSEA_LIBS in LIBS.
8131         (STEPMAKE_DLOPEN): New function.
8132
8133         * lily/font-config.cc (init_fontconfig): Use dir for directory,
8134         not path.
8135
8136         * flower/file-path.cc (directories): Rename from paths, as this
8137         return an array of directories (a single path).
8138
8139 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8140
8141         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
8142
8143         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
8144         new ly:kpathsea-find-file
8145
8146         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
8147
8148         * kpath-guile/GNUmakefile: new file
8149
8150         * buildscripts/gen-emmentaler-scripts.py (i): generate
8151         emmentaler-X.fontname as well.
8152
8153         * buildscripts/ps-embed-cff.py: new script
8154
8155         * scm/lily-library.scm: remove ps-embed-cff.
8156
8157         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
8158         font loading. 
8159
8160         * scm/font.scm (add-music-fonts): load dynamics/numbers through
8161         fontconfig as well.
8162
8163         * lily/font-config.cc (init_fontconfig): add cff/ too.
8164
8165         * ly/generate-embedded-cff.ly: capitalize.
8166
8167         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
8168         so as to register the pango font.
8169
8170         * lily/font-config.cc (init_fontconfig): add
8171         prefix/{otf,type1,mf/out} to fontconfig path.
8172
8173         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
8174         overrides all. 
8175
8176         * configure.in (gui_b): remove ec mftrace check
8177
8178         * config.hh.in: use lilypond-Major.Minor as data directory.
8179
8180         * scm/framework-ps.scm (dump-page): use output-units for landscape.
8181
8182         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
8183         name.
8184
8185 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8186
8187         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
8188         error messages.
8189
8190         * flower/libc-extension.cc:
8191         * flower/include/libc-extension.hh: [Open]BSD fixes for
8192         cookie/funopen declarations.
8193
8194 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8195
8196         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
8197         emmentaler.
8198
8199         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
8200         lcrm10.
8201
8202         * scm/define-markup-commands.scm (fontsize): new markup
8203         command. Also set baseline-skip
8204
8205 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
8206         
8207         * lily/main.cc (do_chroot_jail): paranoia security for webserver
8208         use.
8209
8210 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8211
8212         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
8213
8214         * lily/pdf.cc: remove PDF related files
8215
8216 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8217
8218         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
8219         <hamamatsu@gmx.de>
8220
8221 2005-03-05  Graham Percival  <gperlist@shaw.ca>
8222
8223         * Documentation/user/advanced-notation.itely: first draft
8224         of reorg done.
8225
8226         * Documentation/user/global.itely: fixed (sub)section
8227         bits of MIDI.
8228
8229 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8230
8231         * cygwin/mknetrel (extras): Bufix (Bertalan).
8232
8233         * Documentation/user/basic-notation.itely (Chords): @ref fix.
8234         * Documentation/user/instrument-notation.itely (Introducing chord
8235         names): Compile fix: must have unique name.
8236
8237 2005-03-02  Graham Percival  <gperlist@shaw.ca>
8238
8239         * Documentation/user/instrument-notation.itely: reorg.
8240
8241 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8242
8243         * scm/output-gnome.scm:
8244         * scm/output-svg.scm: Fix font scaling.
8245
8246 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8247
8248         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
8249         what link to use best.
8250
8251         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
8252         * Documentation/user/tutorial.itely (Automatic and manual beams):
8253         Fix @ref.
8254
8255         * lily/tweak-registration.cc (replace_grob_tweak): New function.
8256         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
8257         * scm/framework-gnome.scm (tweak): Use it.
8258
8259 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8260
8261         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
8262
8263         * scm/output-ps.scm (white-text): reinstate white-text
8264
8265 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8266
8267         * scm/output-ps.scm (offset-add): Remove.
8268
8269         * scm/lily-library.scm (offset-flip-y): New function.
8270         * scm/framework-gnome.scm (tweak): Use it.
8271
8272         * scm/output-gnome.scm (grob-cause): Add parameter.
8273
8274         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
8275         * scm/output-ps.scm (url-link): Move.
8276         (white-text): Warn user about brokenness.
8277
8278         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
8279         wrt ghostscript.
8280
8281 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8282
8283         * lily/slash-repeat-engraver.cc (try_music): always make slashes
8284         if body length smaller than measure length.
8285
8286         * scm/define-markup-commands.scm (with-url): oops. use Y extent
8287         for Y.
8288
8289         * ly/titling-init.ly (tagline): put default tagline in \paper
8290
8291 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8292
8293         * lily/kpath.cc: 
8294         * lily/pdf.cc (Pdf_file): Use more generic error messages.
8295
8296         * scm/lily-library.scm (version-not-seen-message): New function.
8297         * ly/init.ly: Use it.
8298
8299         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
8300         breaks as progess.
8301
8302         * scripts/lilypond-book.py (do_process_cmd): Do not lump
8303         whitespace with l10n message.
8304
8305         * scm/framework-tex.scm (convert-to-ps):
8306         (convert-to-dvi): Do not use overly specific l10n messages.
8307
8308         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
8309
8310         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
8311         merge stderr with stdout.  
8312
8313 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8314
8315         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
8316         Neeracher).
8317
8318 2005-02-29  Graham Percival  <gperlist@shaw.ca>
8319
8320         * Documentation/user/instrument-notation.teily: moved
8321         \arpeggio to Basic.
8322
8323         * Documentation/user/advanced-notation.itely: Articulation to
8324         Basic, a bunch of stuff from Basic moved to Advanced.
8325
8326         * Documentation/user/basic.itely: swapped various sections,
8327         reorganized Basic.
8328
8329 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8330
8331         * flower/memory-stream.cc: 
8332         * flower/libc-extension.cc: Remove obsolete #undefs.
8333
8334         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
8335         more carefully.
8336
8337 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8338
8339         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
8340         dependency.
8341
8342         * VERSION (PACKAGE_NAME): release 2.5.13
8343
8344         * GNUmakefile.in (web-ext): don't ship ps.gz
8345
8346         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
8347         stdout
8348
8349 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8350
8351         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
8352         without libintl.  Now it compiles too.
8353
8354 2005-02-28  Graham Percival  <gperlist@shaw.ca>
8355
8356         * Documentation/user/basic-notation.itely,
8357         instument-notation.itely, advanced-notation.itely:
8358         split up contents of notation.itely.
8359
8360         * Documentation/user/notation.itely: file removed.
8361
8362         * Documentation/user/invoking.itely, converters.itely:
8363         moved convert-ly info to invoking.itely.
8364
8365         * Documentation/user/global.itely, changing-defaults.itely,
8366         sound-output.itexi: moved global settings, file layout, and
8367         sound into global.itely.
8368
8369         * Documentation/user/sound-output.itexi: file removed.
8370
8371         * Documentation/user/lilypond.tely: removed links to
8372         notation.itely and sound.itely.
8373
8374 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8375
8376         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
8377
8378         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
8379  
8380         * THANKS: add sponsor.
8381
8382         * scm/define-markup-commands.scm (with-url): new markup command.
8383
8384         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
8385         tagline.
8386         
8387         * scm/output-tex.scm (url-link): stub.
8388
8389         * scm/output-ps.scm (url-link): new function.
8390
8391         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
8392         ly:set-point-and-click
8393
8394 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8395
8396         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
8397         based on pdf-viewer setting.
8398
8399         * scm/framework-ps.scm (write-preamble): Find and set preferred
8400         pdf-viewer.
8401
8402 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8403
8404         * Documentation/user/point-and-click.itely: update for PDF point &
8405         click.
8406
8407         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
8408         editors based on EDITOR setting.
8409
8410 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8411
8412         * scm/*: Oops, more grand 2005 replace bits.
8413
8414 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8415
8416         * ps/music-drawing-routines.ps: new routine: insert PDF mark
8417
8418         * scm/output-ps.scm (grob-cause): point & click support for
8419         PostScript
8420
8421 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8422
8423         * lily/input-scheme.cc (LY_DEFINE): rename to
8424         ly:input-file-line-column
8425
8426 2005-02-26  Graham Percival  <gperlist@shaw.ca>
8427
8428         * Documentation/user/examples.itely: small fix from Steve Doonan.
8429
8430         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
8431
8432         * THANKS: added Yuval Harel.
8433
8434         * Documentation/user/{various}: inserted two spaces after a period.
8435
8436         * Documentation/user/lilypond.tely: added framework for reorg.
8437
8438         * Documentation/user/basic-notation.itely, instrument-notation.itely,
8439         advanced-notation.itely, global.itely: new files, placeholder for
8440         future reorg.
8441
8442 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
8443
8444         * Documentation/user/notation.itely: revamped Polyphony section
8445         
8446 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8447
8448         * Documentation/user/lilypond-book.itely (Music fragment options):
8449         doc fontload.
8450
8451         * Documentation/user/changing-defaults.itely (Text encoding): add
8452         fontload option to utf8 include
8453
8454         * scripts/lilypond-book.py (compose_ly): add fontload option
8455
8456         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
8457         force-eps-font-include option.
8458
8459         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
8460         black triangle
8461
8462         * Documentation/user/invoking.itely (Editor support): remove
8463         lilypond-latex section.
8464
8465         * scripts/lilypond-latex.py (Module): remove script.
8466
8467         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
8468         overwrite .log. 
8469
8470         * lily/main.cc: remove -m, --no-layout
8471
8472         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
8473         to define. We don't want to override fprintf everywhere.
8474
8475 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
8476
8477         * cygwin/lilypond.hint: 
8478         * cygwin/README.in: Update dependencies.
8479
8480         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
8481         Bugfix: do not pollute CPPFLAGS, LIBS.
8482
8483         * cygwin/mknetrel (extras): Cross compile fixes.
8484
8485         * ttftool/util.c: 
8486         * ttftool/ttfps.c: 
8487         * ttftool/ps.c: #include libc-extension.hh
8488
8489         * flower/include/libc-extension.hh:
8490         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
8491         wrapper using funopen.
8492         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
8493         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
8494
8495         * config.hh.in:
8496         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
8497         (AC_CHECK_HEADERS): Add libio.h
8498
8499         * scripts/convert-ly.py: Uniformize, internationalize.
8500         (2.5.2): Remove fatal encoding rule.
8501         (2.5.13): Handle latin1 encoding gracefully.
8502
8503 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
8504
8505         * HACKING: Fix line breaks.
8506
8507 2005-02-23  Werner Lemberg  <wl@gnu.org>
8508
8509         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
8510         contains those two files.
8511
8512 2005-02-21  Werner Lemberg  <wl@gnu.org>
8513
8514         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
8515         to improve overlap removal process.
8516
8517         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
8518         left and right ending.  This ensures better overlapping.
8519         Update all callers.
8520         ("lineprall"): Don't use draw_gridline to get better overlapping.
8521
8522 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8523
8524         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
8525
8526         * Documentation/topdocs/NEWS.tely (Top): oops.
8527
8528 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
8529
8530         * HACKING: new file.
8531
8532         * input/regression/utf8.ly (portuguese): added a portuguese example
8533         to show latin1 accents.
8534
8535 2005-02-21  Pal Benko  <benkop@freestart.hu>
8536
8537         * lily/mensural-ligature-engraver.cc:
8538         * lily/mensural-ligature.cc:
8539         * lily/include/mensural-ligature.hh: new algorithm implemented
8540
8541         * scm/define-grob-properties.scm: join-left killed (add-join may
8542         be used); join-left-amount changed to join-right-amount
8543
8544 2005-02-21  Graham Percival  <gperlist@shaw.ca>
8545
8546         * Documentation/user/notation.itely: small but urgent fix.
8547
8548 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
8549
8550         * lily/duration-scheme.cc: bugfix: correct parameters to
8551         SCM_ASSERT_TYPE.
8552
8553         * THANKS: added Pal.
8554
8555         * Documentation/user/notation.itely: bugfix: unTeXified
8556         $\\backslash$.  Bugfix: yet another glyph renaming victim:
8557         "timesig.*x/y" -> "timesig.*xy".
8558
8559 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8560         
8561         * VERSION (PACKAGE_NAME): release 2.5.12
8562
8563 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8564
8565         * ly/engraver-init.ly: set tieWaitForNote to #t by default
8566
8567         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
8568
8569         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
8570
8571         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
8572
8573 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8574
8575         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
8576         latin1..utf-8.
8577
8578         * input/regression/stanza-number.ly:
8579         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
8580
8581         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
8582
8583 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8584
8585         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
8586         NEWS. Refer to website for older news.  
8587
8588         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
8589         .HTML. This should be done for specific servers only.
8590
8591         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
8592         .ly image examples.
8593
8594         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
8595         in layer 0 too.
8596
8597         * scm/define-context-properties.scm
8598         (all-user-translation-properties): add tieWaitForNote
8599
8600         * scm/define-grobs.scm (all-grob-descriptions): add
8601         Tie_column::before_line_breaking
8602
8603         * lily/tie.cc (get_column_rank): new function
8604
8605         * lily/tie-column.cc (before_line_breaking): new function.
8606         (werner_directions): take into account ties that start on
8607         different columns.  
8608
8609         * lily/score-engraver.cc (set_columns): move add_column() so we
8610         have column rank available.
8611
8612         * lily/tie.cc (get_column_rank): new function.
8613
8614         * input/regression/utf8.ly (japanese): add japanese lyrics.
8615
8616         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
8617
8618         * THANKS: add Steve D
8619
8620         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
8621         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
8622
8623 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
8624
8625         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
8626         to show harmonic notes
8627         * scm/define-markup-commands.scm: in \markup-by-number
8628         "dots-dot" -> "dots.dot" to show dotted notes
8629
8630 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8631
8632         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
8633
8634         * flower/memory-stream.cc (writer): new file.
8635
8636         * configure.in: add endian test.
8637
8638 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
8639
8640         * Documentation/user/examples.itely: small
8641         simplification/beautification
8642
8643         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
8644         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
8645         notation manual.
8646
8647         * lily/mensural-ligature.cc: bugfix: another few victims of the
8648         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
8649
8650         * ly/gregorian-init.ly: commit some experimental code for hi-level
8651         ligature input language lying around here for several months.
8652
8653         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
8654         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
8655
8656         * lily/vaticana-ligature-engraver.cc: bugfix: another few
8657         "x-y-z"->"x.y.s-z" fixes.
8658
8659 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8660
8661         * scm/framework-pdf.scm (scm): new file
8662
8663         * lily/include/pdf.hh (class Pdf_file): new file.
8664
8665         * lily/pdf.cc (write_trailer): new file.
8666
8667 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
8668
8669         * input/regression/color.ly: new file
8670
8671         * lily/stencil.cc (interpret_stencil_expression):
8672         when a color expression is encountered: save current color,
8673         process the rest of the expression, and restore previous color.
8674
8675         * lily/system.cc (get_line): check all grobs for color property and
8676         prepare the stencil scheme expressions for further processing.
8677         Fix layer-loop.
8678
8679         * scm/define-grob-properties.scm: introduce the color property.
8680
8681         * scm/output-lib.scm: color helper functions.
8682
8683         * scm/output-ps.scm: introduce setcolor/resetcolor.
8684
8685 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
8686
8687         * ly/*.ly, input/regression/*.ly: Added missing \version
8688         statements in some files.
8689
8690 2005-02-15  Graham Percival  <gperlist@shaw.ca>
8691
8692         * Documentation/user/notation.itely: minor editing.
8693
8694         * Documentation/user/converters.itely: updated convert-ly bugs.
8695
8696         * Documentation/user/lilypond-book.itely: add info about using
8697         feta characters in latex.
8698
8699 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8700
8701         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
8702
8703 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8704
8705         * scm/define-grob-properties.scm (all-user-grob-properties):
8706         removed 'dashed property.
8707
8708 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8709
8710         * scm/lily.scm (define-safe-public): new macro for defining
8711         variables that can be used in --safe mode. Use it in *.scm
8712         instead of manually setting safe-objects in safe-lily.scm.
8713
8714 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8715         
8716         * lily/slur.cc: Slur-dash patch by Bertalan.
8717
8718         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
8719
8720         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
8721
8722 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8723
8724         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
8725
8726 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8727
8728         * mf/GNUmakefile: teTeX-3.0 install fix.
8729
8730         * Cygwin patch from Bertalan.
8731
8732         * stepmake/stepmake/metafont-rules.make: Remove bashism.
8733
8734 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8735
8736         * GNUmakefile.in: 
8737         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
8738
8739         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
8740         2.0.x compatibility.
8741
8742 2005-02-08  Werner Lemberg  <wl@gnu.org>
8743
8744         * mf/feta-din-code.mf: Format; clean up code.
8745         Replace `---' with `--' plus explicit path directions.
8746         (linethickness#, stafflinethickness#): Remove.
8747         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
8748         ("dynamic s"): Improve shape.
8749         ("dynamic p"): Improve shape.
8750         Replace `draw' with better outline approximation.
8751         ("dynamic r"): Improve shape.
8752         Don't call `fill' and `draw' at the same time.
8753
8754 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
8755
8756         * SConstruct (symlink):
8757         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
8758         build fix: add enc symlink.
8759
8760         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
8761
8762         Support for DESTDIR besides prefix=/foo
8763
8764         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
8765
8766         * stepmake/stepmake/*.make:
8767         * */GNUmakefile:
8768         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
8769
8770         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
8771
8772         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
8773         mawk in fontforge (date) test.
8774
8775 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8776
8777         * scm/font.scm (make-century-schoolbook-tree): add NCS as
8778         font-family=roman. Add Luxi Sans as sans
8779
8780 2005-02-07  Graham Percival  <gperlist@shaw.ca>
8781
8782         * Documentation/user/notation.itely: add warning about
8783         percent repeats and Voice contexts.
8784
8785         * Documentation/user/lilypond-book.itely: clarified the
8786         necessity of dvips -u arguments.
8787
8788 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
8789
8790         * THANKS: Added a bunch of bug hunters.
8791
8792 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8793
8794         * scm/framework-ps.scm (output-preview-framework): bugfix.
8795
8796         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
8797         o/ for chord modifier..
8798
8799         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
8800
8801         * lily/drum-note-performer.cc:  remove unused (thanks Michael
8802         Welsh Duggan). 
8803
8804 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8805
8806         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
8807
8808         * ly/titling-init.ly: Do not also print intstrument in header on
8809         first page.  Do not print page number on first and only page.
8810
8811 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8812
8813         * input/regression/*.ly: remove old-relative everywhere
8814
8815         * lily/music-sequence.cc (simultaneous_relative_callback): do
8816         what-if analysis on copy, not on original. Fixes old-relative
8817         compatibility.
8818
8819         * scm/backend-library.scm (postscript->png): space before
8820         --verbose.
8821         
8822 2005-02-05  Werner Lemberg  <wl@gnu.org>
8823
8824         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
8825         is defined.
8826
8827         * mf/feta-alphabet.mf: Define `staffsize#'.
8828         Include `feta-params.mf'.
8829         s/staffheight/design_size/.
8830
8831         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
8832
8833         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
8834
8835         * mf/feta-nummer-code.mf: Reformatted.
8836         (draw_six): Use outline intersection to avoid a self-intersecting
8837         path.
8838         ("Numeral comma"): Fix serious outline glitches.  This slightly
8839         changes the glyph shape.
8840         ("Numeral dash"): Use `draw_rounded_block'.
8841         ("Numeral dot"): Use `drawdot'.
8842         ("Numeral 1"): Assure identical tangent directions for the
8843         intersection points of paths.  The glyph shape improvement is only
8844         visible at very high magnifications.
8845         ("Numeral 2"): Use `solve' macro to make the lower right part of
8846         the glyph outline touch the x axis exactly.  This changes the
8847         glyph shape.
8848         Minor fixes for better overlap removal support.
8849         ("Numeral 4"): Make lefter corner `rounder'.
8850         ("Numeral 5"): Assure identical tangent directions for the
8851         intersection points of paths.  This improves the glyph shape at
8852         high magnifications.
8853         ("Numeral 7"): Use `solve' macro to make the upper right part of
8854         the glyph outline touch the metrics box exactly.  This changes the
8855         glyph shape.
8856         Avoid corner in the upper left part of the glyph (causing a minor
8857         shape change).
8858
8859         * mf/feta-ital-*.mf: Removed.  Unused.
8860
8861 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8862
8863         * VERSION (PATCH_LEVEL): release 2.5.11
8864
8865         * input/regression/fill-line-test.ly: new file.
8866
8867         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
8868         emmentaler name, eg. emmentaler-23. 
8869
8870 2005-02-04  Christian Hitz  <chhitz@gmx.net>
8871
8872         * scm/scm/define-markup-commands.scm (fill-line): rework for better
8873         alignment with centered texts
8874
8875         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
8876         list of paddings
8877
8878 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8879
8880         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
8881
8882         * lily/note-column.cc (translate_rests): call flush_extent_cache()
8883         of parents when translating rests. Fixes: c-chord-rest.ly 
8884
8885         * lily/include/dimension-cache.hh (struct Dimension_cache): add
8886         dimension_callback_ member.
8887
8888         * lily/grob.cc (flush_extent_cache): new function. Force recompute
8889         of extents.
8890
8891 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
8892
8893         * all but lily/*: The grand 2004/2005 replace.
8894
8895 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8896
8897         * lily/*: add space after ,  
8898
8899         * scm/music-functions.scm (has-request-chord): don't use
8900         ly:music-name anywhere. Fixes <<\\>> notation. 
8901
8902         * scm/define-markup-commands.scm (box): use font-size for
8903         padding. Fixes boxed-rehearsal-marks.ly
8904
8905         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
8906         identifier definition too, so foo = \lyrics { ...   } bar = #1
8907         doesn't complain about "bar" being LYRICS_STRING.
8908
8909         * lily/paper-def.cc (find_pango_font): new routine; Store
8910         pango_fonts in hash tab too. This is necessary for retrieving
8911         Pango_fonts::physical_font_tab() later on.
8912  
8913         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
8914         crash if psname is null.
8915
8916         * lily/lily-guile.cc (ly_hash2alist): new function
8917
8918         * Documentation/user/changing-defaults.itely (Text encoding):
8919         rewrite. 
8920
8921         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
8922         -> font_filename mapping.
8923
8924         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
8925         ly_pango_font_physical_fonts
8926
8927         * scm/framework-ps.scm (supplies-or-needs): extract names from
8928         physical Pango_fonts.
8929
8930         * utf8.ly: new file.
8931
8932 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8933
8934         * Documentation/user/changing-defaults.itely (Page layout): add
8935         doco about systemSeparatorMarkup.
8936
8937         * scm/page-layout.scm (default-page-make-stencil): add-to-page
8938         function.
8939         (default-page-make-stencil): insert system separators.
8940
8941         * scm/define-markup-commands.scm (hcenter): add
8942         (beam): add.
8943
8944 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8945
8946         * scm/output-ps.scm (ez-ball): reinstate ez notation.
8947
8948 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8949
8950         * lily/main.cc: Spell backend consistently.  Sort options.
8951
8952 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8953
8954         * scripts/lilypond-book.py (Module): revert @include.
8955         
8956 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8957
8958         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
8959         Bugfix: @include .tex (not .texi).  Small cleanups.
8960
8961         * stepmake/bin/add-html-footer.py (i18n): New function.
8962
8963 2005-01-31  Werner Lemberg  <wl@gnu.org>
8964
8965         * mf/feta-nummer.mf: Removed.  Unused.
8966
8967 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8968
8969         * lily/ : 2004 -> 2005 s&r
8970
8971         * scm/file-cache.scm (cached-file-contents): add file. Read each
8972         file only once.
8973
8974         * scm/font.scm (add-pango-fonts): change order. Medium weight is
8975         now default.
8976
8977         * VERSION: release 2.5.10
8978         
8979         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
8980
8981         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
8982
8983         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
8984         that both X and Y extents of bbox are non-nil.
8985
8986 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8987
8988         * scm/chord-name.scm (alteration->text-accidental-markup): change
8989         - to . 
8990
8991         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
8992
8993         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
8994
8995         * Documentation/user/invoking.itely (Invoking lilypond): add note
8996         about EPS backend.
8997
8998         * scm/framework-eps.scm: new file: create per-system/per-page EPS
8999         files for inclusion in lilypond-book document.
9000
9001         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
9002
9003         * input/tutorial/lbook-texi-test.texi: new file.
9004
9005         * scm/safe-lily.scm (safe-objects): add
9006         {begin,end}-of-line-(in)?visible as safe.
9007  
9008 2005-01-30  Graham Percival  <gperlist@shaw.ca>
9009
9010         * Documentation/user/changing-defaults.itely: fixed example
9011         of (dynamics).
9012
9013 2005-01-29  Graham Percival  <gperlist@shaw.ca>
9014
9015         * lily/main.cc: fix info about -o=FILE.
9016
9017 2005-01-29  Werner Lemberg  <wl@gnu.org>
9018
9019         * mf/feta-toevallig.mf ("Natural"): Completely changed the
9020         construction to assure smooth transition from straight to curved
9021         lines.
9022
9023 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9024
9025         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
9026         stencils.
9027
9028         * ps/lilyponddefs.ps: add start-page, start-system doesn't
9029         translate to top of page. Fixes alignment problems of
9030         lilypond-generated EPS files.
9031
9032 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9033
9034         * scm/part-combiner.scm (analyse-spanner-states): trigger on
9035         crescendo-end as well, since Decrescendo maybe ended with Stop
9036         Crescendo.). Fixes: partcombine-diminuendo.ly
9037
9038         * scm/script.scm (default-script-alist): swap portato symbols.
9039
9040         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
9041
9042         * lily/paper-outputter-scheme.cc (LY_DEFINE):
9043         ly:outputter-port. New function.
9044
9045         * scm/framework-ps.scm (output-classic-framework): dump a
9046         -systems.texi too
9047         (output-classic-framework): dump multiple systems on an "infinite"
9048         page EPS including fonts. 
9049
9050         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
9051         .eps files for both texi and tex formats. Use PNG coming from
9052         lilypond.
9053         
9054 2005-01-28  Graham Percival  <gperlist@shaw.ca>
9055
9056         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
9057
9058         * scripts/lilypond-latex.py: fix info about -o=FILE.
9059
9060 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9061
9062         * ly/generate-embedded-cff.ly: write .cff.ps files.
9063
9064         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
9065
9066         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
9067         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
9068
9069 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9070
9071         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
9072
9073 2005-01-28  Werner Lemberg  <wl@gnu.org>
9074
9075         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
9076         macros.
9077         (draw_bulb): Improved.
9078
9079         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
9080         metapost bug.
9081         (draw_pedal_P): Use soft_end_penstroke.
9082         (draw_pedal_d): Use soft_start_penstroke.
9083
9084         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
9085         path.
9086         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
9087         doesn't change the glyph shape.
9088
9089         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
9090         changing the shape) to avoid fontforge warnings.
9091
9092         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
9093         soft_end_penstroke and fix glyph shape.
9094
9095 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9096
9097         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
9098
9099 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9100
9101         * scm/define-markup-commands.scm (line): filter out empty stencils
9102         from line command.
9103
9104         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
9105         amount.
9106
9107 2005-01-27  Graham Percival  <gperlist@shaw.ca>
9108
9109         * Documentation/user/notation.itely: added info about what
9110         \voiceFoo does.  Also rewrote warning about marks at
9111         a line break.
9112
9113         * Documentation/user/changing-defaults.itely: added info
9114         about putting dynamics in parenthesis and brackets.
9115
9116 2005-01-27  Werner Lemberg  <wl@gnu.org>
9117
9118         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
9119
9120 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9121
9122         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
9123         portato-direction.ly
9124
9125         * lily/beam.cc (consider_auto_knees): add beam height to
9126         threshold. Fixes: knee-multiple-beam.ly
9127
9128         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
9129         pedal line spanners. Fixes: instrument-center-pedal.ly
9130
9131         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
9132         if encountering barline. Fixes: auto-beam-repeat.ly
9133
9134 2005-01-26  Werner Lemberg  <wl@gnu.org>
9135
9136         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
9137         overlapping.
9138
9139         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
9140         with inflections for the 1/2 sharp glyph.
9141
9142         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
9143         connection between `t' and `r'.
9144         Unify bulb with the rest of `r' to avoid grazing outlines which
9145         confuses the overlap removal algorithm of fontforge.
9146
9147         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
9148         inflections.
9149         (draw_cross): Fix shape to have uniform thickness in corners.
9150
9151         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
9152         to avoid an uneven number of self-intersections; this confuses
9153         fontforge.
9154         Fix a slight bug in the shape at left bottom (which is visible only
9155         at high magnifications).
9156         `Center' the stem horizontally to avoid overlapping.
9157
9158 2005-01-24  Werner Lemberg  <wl@gnu.org>
9159
9160         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
9161         to `asis'.
9162         (fet_begingroup): Save group name in string `feta_group'.
9163         (fet_endgroup): Updated.
9164         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
9165
9166         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
9167
9168         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
9169         in metapost.
9170
9171 2005-01-24  Graham Percival  <gperlist@shaw.ca>
9172
9173         * Documentation/user/notation.itely: really minor editing.
9174
9175 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9176
9177         * Documentation/user/examples.itely: minor editing.
9178
9179         * Documentation/user/changing-defaults.itely: minor editing.
9180
9181         * Documentation/user/notation.itely: clarified info on polyphony
9182         and \addlyrics.
9183
9184 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9185
9186         * scm/output-gnome.scm: 
9187         * scm/output-svg.scm:
9188         * scm/lily-library.scm (font-name-style): Update font name
9189         kludging for fontconfig use.
9190
9191 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
9192
9193         * scm/define-markup-commands.scm: Document right-align and
9194         larger markup commands. Remove "TODO" from the topmost comment
9195         "each markup function should have a doc string." More consistent
9196         use of new-lines.
9197
9198 2005-01-22  Graham Percival  <gperlist@shaw.ca>
9199
9200         * Documentation/user/changing-defaults: removed info about
9201         copyright symbol, since it's likely to change soon.
9202         Added info about betweensystemspace.
9203
9204         * Documentation/user/notation.itely: minor fixes.
9205
9206         * Documentation/user/lilypond.tely,
9207         Documentation/user/music-glossary.tely: changed copyright
9208         date to 2005 instead of 2004.
9209
9210         * input/test/volta-chord-names.ly: added old example back.
9211
9212 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9213
9214         * mf/feta-beugel.mf: use design size 20 (not 15).
9215
9216         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
9217         change name to aybabtu completely
9218
9219 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9220
9221         * buildscripts/gen-emmentaler-scripts.py (outdir): add
9222         design_size to fontname
9223
9224 2005-01-19  Werner Lemberg  <wl@gnu.org>
9225
9226         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
9227         mf/feta-schrift.mf: s/p/pat/ if a path variable.
9228
9229         * mf/feta-autometric.mf (set_char_box): Add code which emits
9230         specials for mf2pt1 if run with metapost.
9231         (to_bp): New macro for mf2pt1.
9232
9233 2005-01-18  Graham Percival  <gperlist@shaw.ca>
9234
9235         * Documentation/user/changing-defaults: added info on
9236         creating a copyright symbol.
9237
9238 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9239
9240         * VERSION: release 2.5.9
9241         
9242 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
9243
9244         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
9245
9246         * Documentation/user/notation.itely: Document
9247         score-override-auto-beam-setting Fix documentation for
9248         revert-auto-beam-setting.
9249
9250 2005-01-18  Werner Lemberg  <wl@gnu.org>
9251
9252         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
9253         (procset): New function to define a procset resource.
9254         (ps-embed-pfa): New function to define a font resource.
9255         (setup): New function to define a `Setup' environment.
9256         (preamble): Use new functions.
9257
9258         * ps/lilypond.defs (init-lilypond-parameters): New function to
9259         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
9260
9261 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9262
9263         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
9264
9265 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
9266
9267         * scm/define-markup-commands.scm: Change number->markletter-string
9268         to take two arguments (vector number). Add number->mark-alphabet-vector
9269         and markalphabet markup command.
9270
9271         * scm/translation-functions.scm: Add format-mark-box-alphabet,
9272         format-mark-alphabet, format-mark-box-barnumbers and
9273         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
9274
9275 2005-01-17  Graham Percival  <gperlist@shaw.ca>
9276
9277         * Documentation/user/examples.itely: add SATB automatic piano
9278         reduction template.
9279
9280         * Documentation/user/notation.itely: added info about changing
9281         partcombine texts.  Also adds examples of alternate lyrics.
9282
9283         * Documentation/user/changing-defaults.itely: added warning
9284         about \RemoveEmptyStaffContext overriding previous changes.
9285
9286 2005-01-17  Werner Lemberg  <wl@gnu.org>
9287
9288         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
9289         feta-alphabet*.
9290
9291 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9292
9293         * python/lilylib.py (make_ps_images): don't do final showpage for
9294         multi-page documents.
9295         
9296         * VERSION (MY_PATCH_LEVEL): release 2.5.8
9297
9298 2005-01-16  Graham Percival  <gperlist@shaw.ca>
9299
9300         * Documentation/user/lilypond.tely: changed order of appendices;
9301         unified index should be last.
9302
9303         * Documentation/user/notation.itely: add example of key signatures
9304         and info about Staff.printKeyCancellation.
9305
9306 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9307
9308         * lily/include/repeated-music.hh (class Repeated_music): change
9309         into "namespace" class.
9310
9311         * lily/event.cc: remove Key_change_event.
9312
9313         * lily/include/transposed-music.hh (class Transposed_music): remove.
9314
9315         * lily/transposed-music.cc: remove
9316
9317         * lily/include/relative-music.hh: remove.
9318
9319         * lily/include/music-sequence.hh (struct Music_sequence): change
9320         into "namespace" class.
9321
9322         * lily/untransposable-music.cc (Module): remove
9323
9324         * lily/include/un-relativable-music.hh (Module): remove
9325
9326         * lily/include/untransposable-music.hh (Module): remove
9327
9328         * lily/include/music-list.hh (Module): remove file
9329
9330         * lily/un-relativable-music.cc: remove file.
9331
9332 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9333
9334         * lily/parser.yy: Compile fix.
9335
9336 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9337
9338         * lily/include/music.hh (class Music): unvirtualize transpose().
9339
9340         * lily/sequential-music.cc: remove file.
9341
9342         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
9343
9344         * lily/slur-scoring.cc (get_best_curve): only switch on
9345         DEBUG_SLUR_SCORING for non NDEBUG builds.
9346
9347         * lily/include/music.hh (class Music): replace Music::start_mom()
9348         by start-callback property
9349
9350         * lily/include/grace-music.hh: remove file. 
9351
9352         * lily/stem.cc (height): robustness fix.
9353
9354         * lily/time-scaled-music.cc: remove file.
9355
9356         * lily/include/music.hh (class Music): include SCM init argument.
9357         (class Music): replace Music::get_length() virtual by
9358         length-callback property everywhere.
9359
9360         * scripts/convert-ly.py (conv): add  # to \property scalar value.
9361
9362         * mf/GNUmakefile: don't install *list.ly
9363
9364 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9365
9366         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
9367
9368 2005-01-12  Werner Lemberg  <wl@gnu.org>
9369
9370         This patch addresses the following problems in the feta sources
9371         files which contribute to the fetaXX fonts.
9372
9373         . Many fixes for rasterization at low resolutions (consistent use of
9374           `vround' and `hround', integer shift values for paths, applying
9375           `eps' for mirrored paths, use of `define_whole_pixels' and
9376           friends, etc.) -- while this probably looks like a waste of time
9377           it has revealed deficiencies in some glyph shapes.  See comment at
9378           the end of feta-params.mf how vertical symmetry is achieved.
9379
9380         . The `---' operator has been replaced everywhere with `--'; this
9381           both improves and considerably reduces the font size after
9382           conversion with mf2pt1.
9383
9384         These change aren't explicitly mentioned below since virtually all
9385         glyphs are affected.
9386
9387         Other notable differences:
9388
9389         . Glyphs from feta-accordion.mf now have charboxes around the
9390           outline.
9391
9392         . Fixed incorrect charbox for `accDot'.
9393
9394         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
9395
9396         . Fixed position of the bow in the `upprall' glyph and its siblings.
9397
9398         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
9399           dependent on the staff line thickness to avoid touching the middle
9400           staff line at smaller sizes.
9401
9402         . Largely extended output for feta-testXX: Where useful, glyphs
9403         are shown both between and on staff lines.
9404
9405
9406         * mf/feta-params.mf (staff_space_rounded,
9407         stafflinethickness_rounded, linethickness_rounded,
9408         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
9409         Update all code which uses them where appropriate.
9410         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
9411         New variables used to control rasterization at low resolutions.  Set
9412         to zero if feta code is processed with metapost.
9413
9414         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
9415         (draw_rounded_block, draw_square_block): Updated to use `--' only.
9416         (flare_path): Updated.
9417         Make it work with `filldraw' (but only circular pens).
9418         (hfloor, vfloor, hceiling, vceiling): New macros.
9419
9420         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
9421         Use `draw' again in mf mode to have good pixel dropout control.
9422         Fix intersection points of horizontal lines with circle.
9423         ("accDot"): Fix parameters for set_char_box.
9424         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
9425         control.
9426
9427         * mf/feta-banier.mf: Updated.
9428
9429         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
9430         testing.
9431         (undraw_inside_ellipse): Remove `center' argument.  Update all
9432         callers.
9433         (draw_brevis): New macro, called by "Brevis notehead".
9434         (draw_whole_triangle_head): New macro, called by "Whole
9435         trianglehead".
9436         (draw_small_triangle_head): Use `filldraw'.
9437
9438         * mf/feta-eindelijk.mf: Remove useless global group.
9439         Updated.
9440
9441         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
9442         `filldraw'.
9443
9444         * mf/feta-pendaal.mf: Updated.
9445
9446         * mf/feta-puntje.mf: Updated.
9447
9448         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
9449         less points.
9450         ("Flageolet"): Use `draw' again in mf mode to have good pixel
9451         dropout control.
9452         ("Varied Coda"): Use `draw_block'.
9453         (draw_comma): Fix typo.
9454         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
9455         pixel dropout control.
9456
9457         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
9458         position of bow.
9459
9460         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
9461         sizes.
9462
9463         * mf/feta-toevallig.mf (remember_pic): New variable, used for
9464         testing.
9465         (draw_meta_sharp): Much simplified.
9466         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
9467
9468         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
9469
9470 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9471
9472         * Documentation/user/notation.itely (Ancient rests): Fix typo
9473         (thanks Anthony)
9474
9475 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9476
9477         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
9478
9479         * lily/main.cc (setup_paths): Add cff.
9480
9481         * mf/GNUmakefile (foe): Include actual target %.cff.
9482         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
9483
9484 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9485
9486         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
9487         suffix for main_input_b_.
9488
9489         * scm/music-functions.scm (toplevel-music-functions):
9490         precompute music lengths for music expressions.  
9491
9492 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9493
9494         * lily/include/input.hh (class Input): new `end_' slot for end of
9495         input. Renamed defined_str0_ to start_.
9496
9497         * lily/input.cc (Input): Add Input::Input (Input const &) and
9498         remove Input::Input (Source_file*, char const *). Use the new
9499         slots.
9500         (set_location): method used by bison to propagate input
9501         locations (YYLLOC_DEFAULT).
9502         (end_line_number, end_column_number, step_forward): new methods
9503         
9504         * lily/input-scheme.cc (ly:input-both-locations): new function,
9505         similar to ly:input-location, but also return the end line and
9506         column.
9507
9508         * lily/include/includable-lexer.hh: 
9509         * lily/includable-lexer.cc: 
9510         * lily/include/lily-lexer.hh (class Lily_lexer): 
9511         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
9512         Includable_lexer to Lily_lexer, in order to update lexloc (the
9513         yylloc), a new slot of Lily_lexer.
9514         (here_input, LexerError): simplify by using the lexloc slot (aka
9515         yylloc)
9516
9517         * lily/lexer.ll: #define yylloc to use input locations (it may
9518         be useless here?). Fixed the #embedded_scm rule (step the location
9519         forward in order to skip the sharp sign before parsing the scheme
9520         expression)
9521
9522         * lily/include/lily-parser.hh (class Lily_parser): 
9523         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
9524         here_input()
9525         (parser_error): overload for more precise locations of errors.
9526
9527         * lily/parser.yy (YYLTYPE): set location type to Input
9528         (YYLLOC_DEFAULT): use Input::set_location()
9529         (yylex): add the YYLTYPE* location parameter.
9530         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
9531         Give an Input parameter to THIS->parser-error() for more accurate
9532         messages.
9533
9534 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9535
9536         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
9537
9538         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
9539         on BEAMQUANTING for non-NDEBUG builds.
9540
9541         * lily/stem.cc (head_count): performance: avoid String::String()
9542         inside oft called function.
9543
9544 2005-01-09  Graham Percival  <gperlist@shaw.ca>
9545
9546         * Documentation/user/examles.itely: attempted fix for broken
9547         string quartet template.
9548
9549         * Documentation/user/notation.itely: remove unnecessary broken
9550         link.
9551
9552 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9553
9554         * VERSION (PACKAGE_NAME): release 2.5.7
9555
9556 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9557
9558         * config.make.in (METAFONT): Append -progname=mf, fixes use with
9559         mf-nowin for teTeX-3.0.  Backportme.
9560
9561         * scm/output-svg.scm (utf8-string): New function.
9562
9563         * scm/output-gnome.scm (utf8-string): New function.
9564         (otf-name-mangling): Remove.
9565
9566         * lily/pango-font.cc (Pango_font): Use font string iso font
9567         filename for utf8-text.
9568
9569         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
9570         name.
9571
9572 2005-01-08  Graham Percival  <gperlist@shaw.ca>
9573
9574         * Documentation/user/notation.itely: add info about
9575         Staff.extraNatural = ##f in Pitches section.  Also
9576         fixed some minor issues in the Vocal music section.
9577
9578 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9579
9580         * scm/output-ps.scm (white-text): comment out Helvetica font,
9581         which is broken for my GS install.
9582
9583         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
9584         which provides a tighter bbox.
9585
9586         * scm/define-grobs.scm (all-grob-descriptions): remove all
9587         extra-offsets from definitions.
9588
9589 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
9590
9591         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
9592         add tuning for 4-string bass and some common 4/5-string banjo
9593         tunings.  New function (four-string-banjo) turns a 5-string tuning
9594         into a 4-string tuning.  New function
9595         (fret-number-tablature-format-banjo) computes correct fret numbers
9596         on 5-string banjos.
9597
9598         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
9599         Add beam correction to TabVoice.
9600
9601         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
9602         using bold font; makes tabs more readable.
9603
9604 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9605
9606         * lily/font-select.cc (get_font_by_design_size): don't make
9607         Modified_font_metric; this causes trouble, since we don't know the
9608         font magnification from inside Pango_font::text_stencil()
9609
9610         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
9611
9612         * Documentation/user/notation.itely (The Lyrics context): comment out
9613         broken {Small ensembles} link.
9614
9615         * scm/framework-svg.scm (output-framework): change calling convention.
9616
9617         * lily/object-key-dumper-scheme.cc: new file.
9618
9619         * lily/object-key-undumper-scheme.cc: new file.
9620
9621         * lily/tweak-registration-scheme.cc: new file.
9622
9623         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
9624
9625         * Documentation/user/examples.itely (String quartet): uncomment
9626         broken example.
9627
9628         * lily/font-config.cc: new file.
9629
9630 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9631
9632         * scm/output-svg.scm: 
9633         * scm/output-gnome.scm: s/bigcheese/emmentaler.
9634
9635         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
9636
9637 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9638
9639         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
9640         Add headers.
9641
9642         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
9643
9644 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9645
9646         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
9647
9648         * lily/include/main.hh: lose _b hungarian suffixes for global
9649         variables.
9650
9651         * lily/include/lily-guile-macros.hh: new file.
9652
9653         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
9654
9655         * lily/general-scheme.cc: new file. 
9656
9657         * lily/font-select.cc (get_font_by_design_size): retrieve
9658         PangoFont for (designsize . "pango-descr") entries.
9659
9660         * lily/lily-parser-scheme.cc: new file.
9661
9662         * lily/output-def-scheme.cc: new file.
9663
9664         * lily/paper-book-scheme.cc: new file.
9665
9666         * lily/duration-scheme.cc (LY_DEFINE): new file.
9667
9668         * lily/pitch-scheme.cc:  new file.
9669
9670         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
9671
9672 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9673
9674         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
9675
9676 2005-01-06  Graham Percival  <gperlist@shaw.ca>
9677
9678         * Documentation/user/notation.itely: minor editing.
9679
9680         * Documentation/user/changing-defaults: minor editing.
9681
9682         * Documentation/user/examples.itely: add template for
9683         string quartet part extraction; demonstrates tag.
9684
9685 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
9686
9687         * Documentation/user/notation.itely: documents
9688         format-mark-box-letters and format-mark-box-numbers
9689
9690         * scm/define-context-properties.scm: change comment.
9691
9692 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9693
9694         * scm/framework-ps.scm (output-classic-framework): new function:
9695         dump systems as separate .eps files (without fonts) and write a
9696         single collecting .tex file.
9697
9698 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9699
9700         * Documentation/user/notation.itely (Setting simple songs):
9701         Correct several errors in the equivalent formulation of
9702         \addlyrics. 
9703         (The Lyrics context): Corrected link to the SATB example.
9704
9705 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9706
9707         * scm/lily.scm (completize-formats): new function
9708         (postprocess-output): new function
9709
9710         * lily/paper-book.cc (classic_output): change calling
9711         convention. Give basename as first argument. 
9712         remove Paper_book::post_processing().
9713
9714         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
9715
9716 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9717
9718         * lily/paper-outputter.cc (LY_DEFINE): new function
9719         ly:outputter-close.
9720
9721         * lily/main.cc: change --format,-f to --backend,-b
9722
9723         * lily/include/main.hh: rename format to backend.
9724
9725         * scm/translation-functions.scm (format-mark-box-numbers): add.
9726         patch by Erlend Aasland
9727
9728 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9729
9730         * lily/pango-font.cc (text_stencil): dump string as
9731         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
9732
9733 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9734
9735         * configure.in (gui_b): Remove handy developer-only
9736         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
9737         CVS source installations (but break other non-default but correct
9738         PKG_CONFIG_PATH setups), as this is no longer developer-only.
9739
9740         * SConstruct: 
9741         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
9742         compatibility (backportme).
9743
9744         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
9745
9746 2005-01-03  Werner Lemberg  <wl@gnu.org>
9747
9748         Prepare glyph shapes for mf2pt1 conversion.
9749
9750         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
9751         (accDiscant, accFreebase, accStdbase): Replace `draw' with
9752         `penstroke'.
9753         (accDot): Use `drawdot'.
9754         (accBayanbase): Replace `draw' with `draw_gridline'.
9755         (print_penpos): Moved to feta-macros.mf.
9756         (accOldEE): Replace `filldraw' with `penstroke'.
9757         Replace `draw' with `penstroke' and `drawdot'.
9758
9759         * mf/feta-banier.mf: Code clean-up.
9760         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
9761         `fill'.
9762
9763         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
9764
9765         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
9766         paremeter to control drawing of labels.  Update all callers.
9767
9768         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
9769         (new_bulb): Return a bulb as a single path.  To do that, it now
9770         takes some more parameters.  Updated all callers.
9771         (draw_gclef): Major clean-up.  `draw' has been replaced with
9772         `penstroke', unnecessary outlines have been removed.
9773         Remove (unused) gnome-canvas code.
9774
9775         * mf/feta-macros.mf (print_penpos): New macro (from
9776         feta-accordion.mf).
9777         Other minor fixes.
9778
9779         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
9780         ("Pedal dot"): Use `drawdot'.
9781         (draw_pedal_P): Add parameter to control drawing of labels.  Update
9782         all callers.
9783         Fix shape at top.
9784         (draw_pedal_e): Add parameter to control drawing of labels.  Update
9785         all callers.
9786         (draw_pedal_d): Add parameter to control drawing of labels.  Update
9787         all callers.
9788         Revert drawing direction.
9789
9790         * mf/feta-schrift.mf (draw_fermata): Use single path.
9791         (draw_short_fermata): Replace `filldraw' with `fill'.
9792         (draw_long_fermata, draw_very_long_fermata): Replace calls to
9793         `draw_rounded_block' with a single path.
9794         ("Thumb"): Draw full circle instead of mirroring segments.
9795         (draw_accent): New macro.
9796         ("> accent", "espr"): Use it.
9797         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
9798         ("open (unstopped)"): Draw full circle instead of mirroring
9799         segments.
9800         (draw_vee): Removed.
9801         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
9802         ("Downbow"): Replace calls to `draw_rounded_block' with a single
9803         path.
9804         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
9805         partial pieces drawn with `fill' -- these do still overlap with the
9806         stem of the `t' but just once, not multiple times so that fontforge
9807         can handle it gracefully.
9808         Change other parts of the glyph so that fontforge's overlapping
9809         algorithm reliably works.
9810         (draw_heel): Replace `draw' with `fill'.
9811         (draw_toe): Use `draw_accent' instead of `draw_vee'.
9812         ("Flageolet"): Replace `draw' with `penstroke'.
9813         ("Segno"): Replace `filldraw' with `penstroke'.
9814         Replace `draw' with `drawdot'.
9815         ("Coda"): Replace `fill' with `penstroke', using a single path.
9816         ("Varied Coda"): Use less overlapping paths.
9817         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
9818         single path.
9819
9820         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
9821         group to better control the `labels' command.
9822         Rename argument to `offset' and use it actually.  Update all
9823         callers.
9824         Replace `filldraw' with `fill'.
9825         ("mordent", "prallmordent", "upmordent", "downmordent",
9826         "lineprall"): Replace `draw' with `draw_gridline'.
9827         ("upprall", "downprall"): Replace `draw' with `fill'.
9828
9829         * mf/feta-timesig.mf: Formatting.
9830
9831         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
9832         to...
9833         ("Flat"): Here.
9834         (draw_paren): Move code to draw labels to...
9835         ("Right Parenthesis"): Here.
9836
9837 2005-01-02  Graham Percival <gperlist@shaw.ca>
9838
9839         * Documentation/user/notation.itely: add example of \setTextDecresc
9840         and \setTextDim.
9841
9842 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
9843
9844         * scm/define-markup-commands.scm :  fix glyph-strings of
9845         accidentals and \note-by-number
9846
9847 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9848
9849         * VERSION: 2.5.6 released.
9850         
9851         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
9852
9853         * input/regression/new-markup-scheme.ly: oops. font-family=music
9854         -> font-encoding fetaMusic.  
9855
9856         * lily/main.cc: put default to PS.
9857
9858         * lily/tfm.cc: idem.
9859
9860         * lily/afm.cc: idem.
9861
9862         * lily/include/modified-font-metric.hh (struct
9863         Modified_font_metric): remove coding_scheme() method.
9864
9865         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
9866
9867         * scripts/convert-ly.py (conv): crash on encountering \encoding.
9868
9869         * input/les-nereides.ly: convert to utf8
9870
9871         * lily/modified-font-metric.cc (text_dimension): idem.
9872
9873         * lily/parser.yy (TODO): idem.
9874
9875         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
9876
9877         * lily/lexer.ll: remove encoding
9878
9879         * scm/framework-ps.scm (output-variables): separately scale the
9880         page to mm 
9881
9882         * lily/pango-font.cc (Pango_font): fix scaling.
9883
9884         * lily/font-metric.cc (design_size): design_size returns a
9885         dimension now as well.
9886
9887 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9888
9889         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
9890         brace generation. 
9891
9892         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
9893
9894 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9895
9896         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
9897         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
9898
9899 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9900
9901         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
9902         in first run as well.
9903
9904         * scm/paper.scm (layout-set-staff-size): use text-font-size in
9905         dimension less points (ie. 12 = 12 point)
9906
9907         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
9908
9909         * lily/all-font-metrics.cc (find_pango_font): set description_
9910
9911         * lily/pango-font.cc (text_stencil): export size as well.
9912         (text_stencil): fix scaling and extents box.
9913
9914 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9915
9916         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
9917
9918         * Documentation/user/invoking.itely (Invoking lilypond): document
9919         texstr
9920
9921         * scripts/convert-ly.py (conv): add ancient rules.
9922
9923         * scm/clef.scm (c0-pitch-alist): replace - with .
9924
9925         * scripts/lilypond-book.py (process_snippets): add texstr support.
9926
9927         * scm/framework-texstr.scm (header): change extension to .textmetrics
9928
9929         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
9930         -f tex.
9931
9932         * lily/text-metrics.cc: new file.
9933         (try_load_text_metrics): new function
9934
9935         * lily/include/text-metrics.hh: new file.
9936
9937 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9938
9939         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
9940         ly_scheme_function to ly_lily_module_constant.
9941
9942         * lily/modified-font-metric.cc (text_dimension): try
9943         lookup_tex_text_dimension() first.
9944
9945         * lily/tfm.cc: new function ly:load-text-dimensions
9946
9947 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * scm/output-texstr.scm (text): use \lilygetmetrics
9950
9951         * scm/framework-texstr.scm (header): dump in new format.
9952
9953         * tex/lilypond-tex-metrics: new file.
9954         
9955 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9956
9957         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
9958         mapping.
9959         (index_to_charcode): New method.
9960
9961         * scm/output-ps.scm (glyph-string): 
9962         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
9963
9964 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9965
9966         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
9967         implement fully, need FONT to get to charcode.
9968
9969         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
9970
9971         * scm: Cleanups.
9972
9973         * Documentation/user/changing-defaults.itely: Fix internalsrefs
9974         {Tunable context properties},
9975         {All layout objects},
9976         {Music definitions}.
9977
9978 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9979
9980         * VERSION: release 2.5.5
9981         
9982         * lily/main.cc: use TeX as default output format.
9983
9984         * flower/file-path.cc (find): try to open directly as well, so we
9985         find absolute path files. 
9986
9987         * lily/pango-select.cc: new file.
9988
9989         * scm/framework-ps.scm: remove all encoding code. 
9990         load pfb/pfa for PangoFont too.
9991         
9992         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
9993
9994 2004-12-22  Werner Lemberg  <wl@gnu.org>
9995
9996         Prepare glyph shapes for mf2pt1 conversion.
9997
9998         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
9999
10000         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
10001         (define_triangle_shape): Use it to replace `draw' with `fill' and
10002         `unfill'.  Update all callers.
10003         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
10004         (draw_cross): Ditto.
10005         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
10006         Use penrazor for better conversion with mf2pt1.
10007         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
10008         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
10009         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
10010         draw_la_head, draw_ti_head): Replace `filldraw' with
10011         `fill'.  Update all callers.
10012
10013 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10014
10015         * lily/paper-book.cc (output): revert: only allow a single output
10016         format.
10017
10018         * lily/include/pango-font.hh: new file.
10019
10020         * lily/pango-font.cc: new file.
10021
10022         * lily/font-metric.cc (text_stencil): new routine
10023
10024         * lily/all-font-metrics.cc (find_pango_font): new routine.
10025
10026         * lily/include/font-metric.hh (struct Font_metric): add
10027         text_stencil()
10028
10029         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
10030
10031 2004-12-22  Werner Lemberg  <wl@gnu.org>
10032
10033         Prepare glyph shapes for mf2pt1 conversion.
10034
10035         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
10036
10037         * mf/feta-toevallig.mf: Formatting.
10038         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
10039         ("Natural"): Fix paths to allow better postprocessing.
10040         (draw_meta_flat): Use `z3l' as additional point in path to get
10041         better conversion with mf2pt1.
10042         Other minor cleanups.
10043         ("3/4 Flat"): Add auxiliary points and modify path to replace
10044         `draw' with `fill'.
10045         ("Double Sharp"): Mirror path segments instead of picture elements
10046         to get a single outline.
10047         Modify path to replace `filldraw' with `fill'.
10048
10049 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10050
10051         * input/test/unfold-all-repeats.ly: added file back.
10052
10053         * Documentation/user/notation.itely,
10054         Documentation/user/programming-interface.itely
10055         Documentation/user/changing-defaults.itely: fixed misc broken
10056         links to input/test/ files.
10057
10058 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10059
10060         * tex/texinfo.tex: Update.  We should not be distributing this,
10061         but since we do, use latest version.
10062
10063         * Documentation/user/macros.itexi: Comment-out \fetaflat,
10064         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
10065         macros for feta glyphs.
10066
10067 2004-12-22  Graham Percival  <gperlist@shaw.ca>
10068
10069         * Documentation/user/changing-defaults.itely: fix index for set.
10070
10071         * Documentation/user/converters.itely: added convert-ly bugs list
10072         from CVS.
10073
10074 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10075
10076         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
10077         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
10078         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
10079         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
10080
10081         * mf/GNUmakefile (pfa_warning): Use less broken check.
10082
10083         * python/lilylib.py (setup_environment): Remove cruft from
10084         GS_FONTPATH.
10085
10086         * configure.in: Bump mftrace requirement to 1.1.1.
10087
10088 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10089
10090         * scm/output-svg.scm (beam): Use polygon.
10091
10092         * scm/lily-library.scm: Bugfix.
10093
10094         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
10095
10096         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
10097
10098 2004-12-19  Werner Lemberg  <wl@gnu.org>
10099
10100         Prepare glyph shapes for mf2pt1 conversion.
10101
10102         * mf/feta-eindelijk: Some formatting.
10103         (multi_rest_x, multi_beam_height): Removed.  Unused.
10104         ("Quarter rest"): Use `intersectiontimes' to create a single
10105         outline.
10106         (rest_crook): Removed.  Unused.
10107         (draw_rest_bulb): Return path (without filling).  Update callers.
10108         Simplified.
10109         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
10110         "128th rest"): Simplify `pat'.
10111         Create single outline.
10112
10113 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10114
10115         * mf/GNUmakefile (ALL_GEN_FILES):
10116         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
10117
10118         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
10119         function.
10120
10121 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10122
10123         * scm/output-texstr.scm (placebox): add routine
10124
10125         * VERSION (PACKAGE_NAME): release 2.5.4
10126
10127         * scm/framework-texstr.scm (output-framework): new file.  
10128
10129         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
10130         processing.
10131
10132         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
10133
10134         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
10135         rule.
10136
10137         * configure.in (gui_b): bump mftrace requirement to 1.1.0
10138
10139         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
10140
10141         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
10142
10143 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10144
10145         * scm/framework-svg.scm (dump-page): Implement landscape.
10146
10147 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10148
10149         * lily/main.cc (setup_paths): Add svg to search path.
10150
10151         * scm/output-svg.scm:
10152         * scm/framework-svg.scm: Add pageSet.  Update.
10153         (dump-fonts): New function.
10154         (output-framework): Use it.
10155
10156         * mf/GNUmakefile: 
10157         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
10158
10159 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10160
10161         * tex/lilyponddefs.tex: comment out new ifpdf code.
10162
10163 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10164
10165         * GNUmakefile.in: 
10166         * SConstruct (symlink): Replace afm by otf.
10167
10168         * scm/framework-gnome.scm (gnome-main): Remove invocation of
10169         ly:pango-add-afm-decoder.
10170
10171         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
10172
10173 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10174
10175         * scm/output-ps.scm (new-text): don't access t glyph for getting
10176         space dimension.
10177
10178         * ly/init.ly: warn about \version
10179
10180         * lily/lexer.ll: set version-seen?
10181
10182 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10183
10184         * scm/output-svg.scm (string->entities): Update.
10185
10186 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10187
10188         * lily/main.cc (setup_paths): replace afm by otf for path. 
10189
10190         * lily/pangofc-afm-decoder.cc: remove.
10191
10192         * lily/include/pangofc-afm-decoder.hh: remove.
10193
10194         * scm/framework-scm.scm (output-framework): new file.
10195
10196         * mf/GNUmakefile: remove SAUTER_FONTS.
10197         remove SVG/sodipodi hacks.
10198
10199         * scm/lily-library.scm (stderr): move stderr.
10200
10201         * mf/GNUmakefile: remove AFM support.
10202
10203         * buildscripts/mf-to-table.py (base): remove AFM support.
10204
10205         * lily/open-type-font.cc (design_size): use design_size
10206
10207 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
10208
10209         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
10210
10211 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10212
10213         * mf/GNUmakefile: Generate combined aybabtu info.
10214         * mf/aybabtu.pe.in (i): Load it.
10215
10216         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
10217         are not symbols.
10218
10219         * lily/include/open-type-font.hh (count): New method.
10220
10221         * mf/aybabtu.pe.in: Typo.
10222
10223         * Documentation/user/out/lilypond-internals.nexi (Scheme
10224         functions): Typo.
10225
10226         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
10227
10228 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10229
10230         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
10231         subfonts.
10232
10233         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
10234
10235         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
10236         (tex-font-command-raw): new function.
10237
10238         * lily/include/virtual-font-metric.hh (Module): remove file
10239
10240         * lily/virtual-font-metric.cc (Module): remove file.
10241         
10242
10243         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
10244         (get_indexed_char): read bbox from lily table if present.
10245
10246 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10247
10248         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
10249         aybabtu.subfonts
10250
10251         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
10252         global glyphname. Enables more than 64 glyphs in the OTF.
10253
10254 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10255
10256         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
10257         braces.
10258
10259         * lily/open-type-font.cc (design_size): Use 12 as default for
10260         design size.
10261
10262         * mf/aybabtu.pe.in: New file.  Merge all our braces.
10263
10264         * mf/GNUmakefile: Generate aybabtu.
10265
10266         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
10267
10268 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10269
10270         * scm/lily-library.scm (char->unicode-index): Remove.
10271
10272         * scm/output-gnome.scm (text): Bugfix for plain string input.
10273         Updates.
10274
10275         * scm/output-svg.scm (svg-font): Add weight to font selection.
10276
10277 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10278
10279         * Documentation/topdocs/INSTALL.texi (Top): Point to
10280         buildscripts/out/clean-fonts instead of
10281         buildscripts/clean-fonts.sh. 
10282
10283 2004-12-13  Graham Percival  <gperlist@shaw.ca>
10284
10285         * input/regression/figured-bass.ly: attempt to clarify text.
10286
10287         * Documentation/user/notation.tely: add cindex for tag, attempt to
10288         add figured bass example.
10289
10290         * Documentation/user/changing-defaults: basic editing.
10291
10292 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10293
10294         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
10295
10296         * lily/open-type-font.cc (LY_DEFINE): new function
10297         ly:font-sub-fonts
10298
10299         * lily/include/font-metric.hh (struct Font_metric): new method
10300         sub_fonts()
10301
10302         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
10303         . with - in add.stem.
10304         
10305 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10306
10307         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
10308         and fetaDynamic.
10309
10310         * lily/rest.cc (glyph_name): Change - to . .
10311
10312         * scm/output-gnome.scm (text): Hello world, again.
10313
10314         * scm/output-svg.scm (named-glyph): New function.  Hello world!
10315
10316         * lily/modified-font-metric.cc (index_to_charcode): New method.
10317
10318         * lily/include/font-metric.hh (index_to_charcode): New function.
10319
10320         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
10321         new function.
10322         (ly:font-glyph-to-index): Remove.
10323
10324 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10325
10326         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
10327
10328         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
10329
10330         * lily/open-type-font.cc (load_scheme_table): new function
10331
10332         * lily/dots.cc (print): replace - 
10333
10334         * lily/open-type-font.cc (attachment_point): new function.
10335         (load_table): read LILC table
10336
10337         * buildscripts/gen-bigcheese-scripts.py (Module): new
10338         file. Generate FF scripts.
10339
10340         * mf/feta-din10.mf: idem.
10341
10342         * mf/feta-nummer10.mf: remove mf files.
10343
10344         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
10345
10346 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10347
10348         * lily/lily-guile.cc: Use scm_from_locale_stringn.
10349
10350         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
10351         compatibility.
10352
10353 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10354
10355         * lily/open-type-font.cc (get_indexed_char): scale metrics by
10356         design-size and units_per_EM.
10357
10358         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
10359
10360 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10361
10362         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
10363         does not crash fontforge.
10364
10365         * scm/lily-library.scm (char->unicode-index): Hack to map onto
10366         PUA.
10367
10368 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10369
10370         * scm/framework-ps.scm (ps-embed-cff): new function.
10371
10372         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
10373
10374 2004-12-12  Werner Lemberg  <wl@gnu.org>
10375
10376         * mf/bigcheese.pe.in: Add PUA mapping.
10377         Don't create Type 42 but bare CFF font.
10378
10379 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10380
10381         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
10382         within canvas boundaries.
10383
10384         * mf/merge.pe.in: Set font names, version, license GPL.
10385
10386         * make/substitute.make: Add FONTFORGE.
10387
10388         * config.make.in (FONTFORGE): Add.
10389
10390         * configure.in (gui_b): Use PATH_PROG for fontforge.
10391
10392 2004-12-11  Graham Percival  <gperlist@shaw.ca>
10393
10394         * scm/define-markup-commands.scm: add baseline-skip to info
10395         about \column.
10396
10397 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10398
10399         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
10400
10401         * scm/output-gnome.scm (named-glyph): Use it.
10402
10403         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
10404
10405         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
10406         (upper_string, lower_string, reverse_string): Remove.
10407
10408         * configure.in (fontforge): Reinstate version check.
10409
10410         * ly/engraver-init.ly: Fix clef glyph names.
10411
10412         * lily/time-signature.cc (special_time_signature): Fix fraction
10413         glyph names.
10414
10415 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10416
10417         * mf/merge.pe: new file.
10418
10419         * lily/freetype.cc: new file.
10420
10421         * lily/include/open-type-font.hh (class Open_type_font): new file.
10422
10423         * lily/include/freetype.hh: new file.
10424
10425         * lily/open-type-font.cc: new file.
10426
10427         * lily/all-font-metrics.cc (find_otf): new function.
10428
10429 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10430
10431         * lily/time-signature.cc (special_time_signature): Fix.
10432
10433         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
10434         GTK2 before checking for pango.  Fixes -fgnome.
10435
10436         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
10437         Scheme name.
10438
10439         * scm/define-markup-commands.scm:
10440         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
10441
10442         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
10443
10444         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
10445         date versions.  Fixes configure.
10446         (STEPMAKE_CHECK_VERSION): Support optional actual program version
10447         argument.
10448
10449 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10450
10451         * buildscripts/mf-to-table.py (write_ps_encoding): write real
10452         names in .enc
10453
10454         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
10455
10456 2004-12-09  Graham Percival  <gperlist@shaw.ca>
10457
10458         * Documentation/user/changing-defaults.itely: add info about
10459         make-dynamic-script
10460
10461         * Documentation/user/notation.itely: add link in dynamics to
10462         section about make-dynamic-script.
10463
10464 2004-12-09  Christian hitz  <chhitz@gmx.net>
10465
10466         * lily/lily-guile.cc: change MACOS_X to __APPLE__
10467
10468 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10469
10470         * buildscripts/mf-to-table.py (parse_logfile): use . for
10471         concatting name and group.
10472         (parse_logfile): use M for Minus (negative.)
10473
10474         * lily/include/type-swallow-translator.hh
10475         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
10476
10477         * lily/*.cc: cosmetics around = sign.
10478
10479         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
10480         lyric spacing on the penultimate column.
10481
10482 2004-12-05  Christian Hitz  <chhitz@gmx.net>
10483
10484         * configure.in:
10485         * lily/accidental-placement.cc:
10486         * lily/bar-line.cc:
10487         * lily/beam-concave.cc:
10488         * lily/beam-quanting.cc:
10489         * lily/beam.cc:
10490         * lily/bezier-bow.cc:
10491         * lily/bezier.cc:
10492         * lily/break-align-interface.cc:
10493         * lily/custos.cc:
10494         * lily/dimension-cache.cc:
10495         * lily/dot-column.cc:
10496         * lily/font-metric.cc:
10497         * lily/font-select.cc:
10498         * lily/gourlay-breaking.cc:
10499         * lily/grob-property.cc:
10500         * lily/grob.cc:
10501         * lily/lily-guile.cc:
10502         * lily/line-spanner.cc:
10503         * lily/lookup.cc:
10504         * lily/lyric-extender.cc:
10505         * lily/lyric-hyphen.cc:
10506         * lily/mensural-ligature.cc:
10507         * lily/midi-def.cc:
10508         * lily/misc.cc:
10509         * lily/note-collision.cc:
10510         * lily/note-column.cc:
10511         * lily/note-head.cc:
10512         * lily/paper-outputter.cc:
10513         * lily/percent-repeat-item.cc:
10514         * lily/rest-collision.cc:
10515         * lily/side-position-interface.cc:
10516         * lily/simple-spacer.cc:
10517         * lily/slur-configuration.cc:
10518         * lily/slur-scoring.cc:
10519         * lily/slur.cc:
10520         * lily/spaceable-grob.cc:
10521         * lily/spacing-spanner.cc:
10522         * lily/spanner.cc:
10523         * lily/staff-symbol-referencer.cc:
10524         * lily/stem.cc:
10525         * lily/stencil.cc:
10526         * lily/system-start-delimiter.cc:
10527         * lily/system.cc:
10528         * lily/text-item.cc:
10529         * lily/tie.cc:
10530         * lily/tuplet-bracket.cc:
10531         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
10532         <cmath> beacause isinf/isnan is undefined in <cmath>
10533
10534 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10535
10536         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
10537
10538 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10539
10540         * VERSION: release 2.5.3
10541         
10542 2004-11-29  Arno Waschk <arno@arnowaschk.de>
10543
10544         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
10545
10546 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10547
10548         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
10549
10550         * lily/note-head.cc (internal_print): always try the "s" head if
10551         u/d not found.
10552
10553         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
10554
10555 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10556
10557         * mf/parmesan-heads.mf (overdone_heads): typos.
10558
10559 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10560
10561         * lily/parser.yy (markup): in markups, { .. } without command
10562         before are also flattened, ie \line must be explicitely used.
10563
10564         * Documentation/user/changing-defaults.itely:
10565         * Documentation/user/notation.itely: 
10566         * input/wilhelmus.ly: 
10567         * input/regression/instrument-name-markup.ly: 
10568         * input/regression/markup-score.ly: 
10569         * input/regression/new-markup-scheme.ly: 
10570         * input/regression/new-markup-syntax.ly: 
10571         * input/test/coriolan-margin.ly: use \line in markups where
10572         appropriate
10573         
10574 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10575
10576         * scm/new-markup.scm (map-markup-command-list): helper function
10577         used in parser.yy to map markup commands on a markup list.
10578
10579         * lily/parser.yy: get rid off < > in markups by treating { } as
10580         real lists.
10581
10582         * lily/lexer.ll: remove < > from markup lexer mode.
10583
10584         * scripts/convert-ly.py (conv): add rule for converting 
10585         \markup < > to \markup { }
10586
10587         * ly/titling-init.ly: 
10588         * input/test/coriolan-margin.ly: 
10589         * input/regression/new-markup-syntax.ly: 
10590         * input/regression/new-markup-scheme.ly: 
10591         * input/regression/multi-measure-rest-text.ly: 
10592         * input/regression/markup-stack.ly: 
10593         * input/regression/markup-score.ly: 
10594         * input/regression/instrument-name-markup.ly: 
10595         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
10596         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
10597         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
10598         * input/wilhelmus.ly: 
10599         * Documentation/user/notation.itely: 
10600         * Documentation/user/music-glossary.tely: 
10601         * Documentation/user/changing-defaults.itely: change < > to { } in
10602         markups
10603
10604 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10605
10606         * lily/accidental-placement.cc (position_accidentals): shortcut if
10607         no accidentals to place.
10608
10609 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10610
10611         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
10612         typo s/ly:dimension ?/ly:dimension?/
10613
10614         * input/regression/lily-in-scheme.ly: 
10615         * input/regression/music-function.ly: 
10616         * ly/spanners-init.ly (assertBeamSlope): 
10617         * scm/music-functions.scm (def-grace-function): add the paper
10618         argument to music function definitions.
10619
10620 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10621
10622         * lily/moment.cc (LY_DEFINE):
10623         ly:moment-main-{denominator,numberator}, new function.
10624
10625         * lily/score-engraver.cc (typeset_all): assign to column on basis
10626         of axis-group-parent-X setting.
10627
10628         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
10629         add_element() on basis of axis-group-parent-Y setting.
10630
10631         * lily/grob.cc: add axis-group-parent-{XY} properties.
10632
10633         * input/regression/spacing-stick-out.ly: new file.
10634
10635         * lily/simple-spacer.cc (add_columns): use binary search for
10636         setting column rods. Changes O(n^2) to O(n log(n)) for
10637         constructing spacing problem from columns.
10638         (add_columns): read allow-outside-line to make sure no texts stick
10639         out.
10640         (solve): Simple_spacer::is_active() only determines
10641         satisfies_constraints_ for non-ragged typesetting.
10642
10643         * lily/simultaneous-music.cc (to_relative_octave): only set
10644         old_relative_used if return pitch actually changed.
10645
10646         * scm/define-context-properties.scm
10647         (all-user-translation-properties): change to match implementation.
10648
10649         * python/lilylib.py: Replace re.match by re.search and adds "-c
10650         showpage" to the gs command line (Johannes Schindelin)
10651
10652         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
10653         before processing. Prevents crash when inf is in the extent.
10654
10655         * scm/define-markup-commands.scm (note-by-number): add "s" to
10656         "noteheads-" glyphname.
10657  
10658         * lily/parser.yy (Generic_prefix_music): supply parser argument to
10659         music function as well.
10660         
10661 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10662
10663         * VERSION: release 2.5.2
10664
10665         * Documentation/user/changing-defaults.itely (Creating titles):
10666         add breakbefore variable.
10667
10668         * lily/paper-book.cc (set_system_penalty): new function. Set
10669         penalty_ based on breakBefore setting
10670
10671         * lily/context-specced-music-iterator.cc (construct_children):
10672         interpret special context id $uniqueContextId 
10673
10674         * lily/context.cc (create_unique_context): new method. Move
10675         creation of unique (\new) contexts into interpreting phase. This
10676         makes
10677
10678           foo= \new Staff ..
10679           << \foo \foo >>
10680
10681         produce 2 staves.
10682         
10683
10684         * scm/define-music-properties.scm (all-music-properties): add
10685         quoted-voice-direction
10686
10687         * ly/music-functions-init.ly: killCues function.
10688
10689         * scm/music-functions.scm (cue-substitute): move creation of voice
10690         contexts further to the back. 
10691
10692 2004-11-25  Werner Lemberg  <wl@gnu.org>
10693
10694         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
10695         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
10696
10697 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
10698
10699         * buildscripts/guile-gnome.sh: Fixed typo.
10700
10701 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10702
10703         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
10704
10705         * scripts/abc2ly.py (dump_slyrics): add ord(). 
10706
10707         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
10708         to regular engraver. 
10709
10710 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10711
10712         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
10713
10714 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10715
10716         * scm/define-markup-commands.scm (fill-line): Typo.
10717
10718         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
10719         and newer.
10720
10721 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
10722
10723         * ly/dynamic-scripts-init.ly: Fixed typo.
10724
10725 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10726
10727         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
10728         note-head, to have different attachment points for up and down.
10729
10730         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
10731
10732         * mf/feta-generic.mf (else): remove solfa.
10733
10734         * mf/feta-bolletjes.mf (tishape): remove unicode test.
10735
10736         * scm/define-context-properties.scm
10737         (all-user-translation-properties): add shapeNoteStyles property.
10738
10739         * lily/shape-note-heads-engraver.cc (process_music): new file.
10740
10741         * lily/event.cc (transpose): call Event::transpose() for
10742         transposing the tonic.
10743
10744 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10745
10746         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
10747         Unicode/OpenType and AFM.
10748
10749         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
10750
10751 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10752
10753         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
10754
10755         * lily/context.cc (Context): unprotect key from ctor.
10756
10757         * scm/stencil.scm (stack-lines): return empty-stencil if argument
10758         is '()
10759         (stack-stencils): idem.
10760
10761         * Documentation/user/changing-defaults.itely (Creating titles):
10762         document new title layout options.
10763
10764         * lily/parser.yy (lilypond_header_body): copy previous
10765         $globalheader if present.
10766
10767         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
10768         ly:module-copy
10769         
10770         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
10771
10772         * scm/titling.scm: remove old titling functions
10773
10774         * lily/stencil.cc (translate): remove absolute dimension.
10775
10776         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
10777         via markup.
10778
10779         * scm/page-layout.scm (marked-up-headfoot): create header/footer
10780         field from user-supplied markup
10781
10782         * scm/define-markup-commands.scm (on-the-fly): new markup
10783         command. Enter SCM markup procedure directly in Scheme.
10784         (fromproperty): new markup command. Read markup from props argument.
10785
10786         * scm/titling.scm (marked-up-title): create title via
10787         user-specified markup. 
10788
10789         * scm/define-markup-commands.scm (column): remove empty stencils
10790         from column.
10791
10792         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
10793         not have side-effect of creating variable stub.
10794
10795         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
10796
10797 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10798
10799         * scm/encoding.scm (coding-alist): 
10800         * scm/font.scm (add-ec-fonts):
10801         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
10802         Extended-TeX-Font-Encoding---Latin.
10803
10804         * lily/side-position-interface.cc (general_side_position): Add
10805         actual offset to error message (avoid constant error messages).
10806
10807         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
10808         block.
10809
10810         * lily/font-select.cc (select_encoded_font)
10811         (get_font_by_mag_step, get_font_by_design_size): 
10812         * lily/modified-font-metric.cc (Modified_font_metric): 
10813         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
10814
10815         * scm/encoding.scm (coding-alist): Add fetaDynamic.
10816         (read-encoding-file): Bugfix: do not require space after bracket.
10817
10818         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
10819         these do not exist.
10820
10821 2004-11-20  Graham Percival  <gperlist@shaw.ca>
10822
10823         * Documentation/user/notation.itely: added info about typesetting
10824         boxed bar numbers.
10825
10826 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10827
10828         * flower/interval.cc (T_to_string): gcc4 fixes.
10829
10830         * scm/define-markup-commands.scm (fill-line): use
10831         stack-stencils. This fixes problems with putting already centered
10832         stencils in a line.
10833
10834         * VERSION: release 2.5.1
10835
10836         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
10837
10838 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10839
10840         * input/example-[1-3].ly: simplify.
10841
10842         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
10843
10844         * scm/output-ps.scm (new-text): new function. Use glyphshow to
10845         show glyphs.
10846
10847         * scm/encoding.scm (decode-byte-string): new function.
10848
10849         * scripts/convert-ly.py (conv): add warning about
10850         set-global-staff-size.
10851
10852         * Doxyfile: add. 
10853
10854         * scripts/convert-ly.py (conv): add raggedlastbottom rule
10855         (conv): warn for TextSpanner split.
10856         (conv): warn for textheight.
10857
10858 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
10859
10860         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
10861         building the documentation, info with images are installed.
10862         (final-install): Fix description.  Mention sourcing of login
10863         scripts (instead of running).
10864
10865 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10866
10867         * Debian lmodern support.  Note that LilyPond will issue warnings
10868         
10869             no such encoding: "FontSpecific"
10870
10871           The font selection mechanism wants to get the encoding from the
10872           font itself, but the idea of lmodern is that it is usable with
10873           different encodings, ie, Lily should get the encoding from the
10874           font tree, rather than the font itself.  This would require some
10875           more work.
10876         
10877         * configure.in: Test for and accept lmodern if EC fonts not found.
10878
10879         * scm/framework-tex.scm (font-load-command): TeX font name
10880         mangling for latin1 encoded cork-lm fonts.
10881         (convert-to-ps): Load lm.map if available.
10882
10883         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
10884         available.
10885
10886         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
10887
10888         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
10889         available.
10890
10891         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
10892         path for absolute file name, that is silly.
10893
10894         * lily/score-engraver.cc (initialize): 
10895
10896         * Documentation/user/GNUmakefile (local-install-info): Invoke
10897         install-info --remove first.
10898
10899         * #include cleanup (Andreas Scherer).
10900
10901 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
10902
10903         * input/test/script-abbreviations.ly: fix typos.
10904
10905 2004-11-17  Werner Lemberg  <wl@gnu.org>
10906
10907         * python/lilylib.py (options_help_str): Support pretty-printing of
10908         newlines in fourth element of option description.
10909
10910         * scripts/lilypond-book.py (option_definitions): Use new lilylib
10911         feature.
10912         Sort options.
10913
10914         * Documentation/user/lilypond-book.itely: Finish update.
10915
10916 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10917
10918         * Documentation/user/macros.itexi: Add comment about \command.
10919
10920         * Documentation/user/lilypond.tely:
10921         * Documentation/user/lilypond-book.itely: Fix names of lilypond
10922         and lilypond-book nodes, so that `info lilypond' visits the manual
10923         at top level, and `info lilypond-book' visits the lilypond-book
10924         section.
10925
10926         * Documentation/user/GNUmakefile (local-install-info): Fix rules
10927         and packager messages.
10928
10929         * lily/pangofc-afm-decoder.cc: Update test.
10930
10931 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10932
10933         * scm/lily-library.scm (char->unicode-index): New function.
10934
10935         * scm/output-gnome.scm: 
10936         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
10937
10938         * Proper naming of file name throughout; s/filename/file[-_]name/.
10939
10940         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
10941
10942         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
10943
10944 2004-11-16  Werner Lemberg  <wl@gnu.org>
10945
10946         * scripts/lilypond-book.py: The Lord has commanded me to use only
10947         tabs for indentation.  Your humble servant obeys.
10948
10949 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10950
10951         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
10952         including font, if LilyPond-feta font is only feta font in path.
10953
10954         * scm/output-gnome.scm (text): Revert to file name of font if font
10955         has no name.  Fixes ec font selection.
10956         (char): Bugfix: do not utf8 twice.  Fixes clefs.
10957
10958         * scm/framework-svg.scm:
10959         * scm/output-svg.scm: New file.  TODO: figure out how to
10960         do character by index in font.
10961
10962         * scm/output-sodipodi.scm: Remove.
10963
10964         * scm/output-ps.scm (stem): Remove.
10965
10966 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10967
10968         * scm/output-gnome.scm (beam): New function.
10969         (slur): Round corners.
10970         (round-filled-box): Round corners.
10971
10972 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10973
10974         * scm/output-gnome.scm (beam): add function.
10975         (draw-line): new routine.
10976         (dashed-line): stub; call draw-line
10977         (polygon): new routine.
10978
10979 2004-11-15  Werner Lemberg  <wl@gnu.org>
10980
10981         * Documentation/user/lilypond-book.itely: Revise section on
10982         lilypond-book options.
10983         Other minor fixes.
10984
10985         * scripts/lilypond-book.py: Change indentation to 4.
10986         Minor formatting.
10987
10988 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10989
10990         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
10991         grobs that have tweaks specced.
10992         
10993 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
10994
10995         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
10996
10997 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10998
10999         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
11000         actual char #, not 0 based index.
11001
11002         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
11003
11004         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
11005         Warning: do make -C mf clean.
11006
11007         * lily/context-property.cc: Compile fix.
11008
11009         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
11010         Grok ec-fonts, braces and dynamics.
11011
11012         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
11013
11014 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11015
11016         * lily/include/tweak-registration.hh: new file.
11017
11018         * lily/tweak-registration.cc: new file.
11019
11020         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
11021         saving tweaks.
11022
11023         * scm/output-gnome.scm (text): comment dribble.
11024
11025 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11026
11027         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
11028
11029         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
11030         path-def before using.  Fixes muchtomany slurs in wrong places
11031         bug.
11032
11033 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11034
11035         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
11036
11037         * lily/include/object-key-undumper.hh (Module): new file.
11038
11039         * lily/object-key-undumper.cc (Module): New file. Deserialize
11040         keys. SCM bindings
11041
11042         * lily/object-key-dumper.cc (Object_key_dumper): idem.
11043         Provide SCM bindings.
11044
11045         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
11046         new file. Serialize object keys.
11047         
11048         * lily/object-key.cc (dump): new function.
11049         (as_scheme): new virtual function
11050         (undump): new function
11051         (undumpers): new table.
11052
11053         * lily/include/global-context.hh (Context): take \score key upon init.
11054
11055         * lily/object-key-dumper.cc (serialize_key): new file.
11056
11057         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
11058
11059         * lily/lily-lexer.cc: remove \quote.
11060
11061         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
11062
11063         * lily/context.cc (Context): take key argument in ctor.
11064         (create_context): new function
11065
11066         * lily/grob.cc (Grob): take key argument in ctor.  
11067
11068         * lily/lilypond-key.cc (do_compare): new file.
11069
11070         * lily/object-key.cc (Object_key): new file.
11071
11072         * lily/include/object-key.hh (class Object_key): new file.
11073
11074         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
11075
11076 2004-11-13  Graham Percival  <gperlist@shaw.ca>
11077
11078         * Documentation/user/lilypond-book.itely: add small warning about
11079         noindent default in lilypond-book.
11080
11081         * Documentation/user/converters.itely: add examples for convert-ly.
11082
11083         * Documentation/user/examples.itely: change version string in templates
11084         to 2.4.0.
11085
11086 2004-11-12  Karl Hammar  <karl@aspodata.se>
11087
11088         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
11089         cmdline, use xargs instead (backportme)
11090
11091 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
11092         
11093         * Documentation/user/: Numerous fixes in the user manual.
11094
11095 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11096
11097         * lily/parser.yy (re_rhythmed_music): search music expression for
11098         context-id, surround by \new Voice if not found. Fixes:
11099         addlyrics-second-staff.ly
11100
11101         * VERSION: 2.5.0 released.
11102         
11103 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11104
11105         * Documentation/index.html.in: Fix url to one big page.  (backportme)
11106
11107         * Documentation/user/GNUmakefile: Separate rules for split and
11108         unsplit html documents.  Remove perl massaging.  (backportme)
11109
11110 2004-11-11  Graham Percival  <gperlist@shaw.ca>
11111
11112         * Documentation/user/lilypond-book.itely: add short warning about
11113         \lilypond{} in LaTeX docs.
11114
11115 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11116
11117         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
11118         found.  (backportme)
11119
11120         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
11121         version requirement.  (backportme)
11122
11123         * configure.in: Be explicit about old versions of
11124         ec-fonts-mtraced.  (backportme)
11125
11126         * lily/context-selector.cc (set_tweaks): New function.
11127         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
11128         web with -DTWEAK.
11129
11130         * Documentation/user/introduction.itely (Automated engraving):
11131         Remove fragment option.  Fixes web.
11132
11133         * lily/context-property.cc (make_item_from_properties):
11134         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
11135         #ifdef.
11136
11137         * scm/define-context-properties.scm
11138         (all-internal-translation-properties): Add tweakRank and tweakCount.
11139
11140         * lily/grob.cc: 
11141         * scm/define-grob-properties.scm (all-internal-grob-properties):
11142         Add tweak-rank and tweak-count.
11143
11144 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11145
11146         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
11147         New function.
11148         (text): Use them.
11149
11150         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
11151         animated/opaque grob dragging tweaks.
11152
11153         * buildscripts/guile-gnome.sh: Update.
11154
11155 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11156
11157         * scm/define-grobs.scm (all-grob-descriptions): Added
11158         line-interface to the LigatureBracket object.
11159
11160 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11161
11162         * scm/framework-gnome.scm (item-event): Support non-animated mouse
11163         dragging tweaks.
11164
11165         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
11166
11167         * lily/context-selector.cc (store_context): New function.
11168
11169         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
11170         (store_grob): New function.
11171         (identify_grob): Add Moment parameter.
11172
11173         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
11174         exists.
11175
11176         * scm/framework-gnome.scm (save-tweaks): Write as alist.
11177
11178 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11179
11180         * scm/framework-gnome.scm (item-event): Print grob id.
11181         (save-tweaks): New function.
11182         (tweak): New funtion.
11183         (item-event): Use it, bound to arrow keys.
11184
11185         * lily/context-property.cc (make_item_from_properties): Register grob.
11186         * lily/context.cc (add_context): Register context.
11187
11188         * lily/include/context-selector.hh:
11189         * lily/include/grob-selector.hh:
11190         * lily/context-selector.cc:
11191         * lily/grob-selector.cc: New file.
11192
11193 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11194
11195         * lily/slur.cc: add 'positions to interface
11196
11197         * lily/main.cc: reinstate PS as standard output format. 
11198
11199         * scm/framework-tex.scm (output-preview-framework): print systems
11200         up to first non title system.
11201
11202         * lily/grace-engraver.cc (start_translation_timestep): split
11203         scm_cadddr
11204         
11205 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11206
11207         * lily/quote-iterator.cc (Module): remove old quote-iterator
11208
11209         * scm/define-music-types.scm (music-descriptions): move
11210         NewQuoteMusic over QuoteMusic
11211
11212         * Documentation/user/notation.itely (Formatting cue notes): use
11213         \cueDuring.
11214
11215         * lily/new-quote-iterator.cc (quote_ok): new function.
11216
11217         * input/regression/quote-cue-during.ly: new file.
11218
11219         * input/regression/quote-grace.ly: new file.
11220
11221         * scm/define-context-properties.scm (Module): change definition of
11222         graceSettings
11223
11224         * lily/context-property.cc (Module): rename from
11225         translator-property.cc
11226
11227         * lily/context.cc (context_name_symbol): new function
11228
11229         * lily/grace-engraver.cc: new file. Set properties for grobs based
11230         on the grace-ness of now_moment().
11231
11232         * scm/music-functions.scm (add-grace-property): use list
11233         iso. vector for graceSettings
11234         remove set-{start,stop}-grace-properties. 
11235
11236         * lily/new-quote-iterator.cc (construct_children): set
11237         quote_outlet_ if no quoted-context-{id,type} specified.
11238
11239         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
11240
11241         * lily/parser.yy (command_element): remove \quote.
11242
11243         * ly/music-functions-init.ly (location): add quoteDuring music
11244         function. 
11245
11246         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
11247         optional semicolon. (backportme)
11248
11249 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11250
11251         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
11252         need to link to GUILE et al.
11253
11254 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11255
11256         * scm/define-music-properties.scm (all-music-properties): add
11257         quoted-context-type, quoted-context-id.
11258
11259         * scm/lily.scm (type-check-list): new function.
11260         
11261         * scm/lily-library.scm: new file. Generic library routines.
11262
11263         * lily/parser.yy (Generic_prefix_music): move typechecking out of
11264         parser.
11265
11266         * ly/music-functions-init.ly: add quoteDuring function.
11267
11268         * lily/include/music-iterator.hh (class Music_iterator): rename
11269         set_translator -> set_context
11270
11271         * lily/parser.yy (Generic_prefix_music_scm): add
11272         MUSIC_FUNCTION_SCM_SCM_MUSIC
11273
11274         * scm/lily.scm (sanitize-command-option): new function. (backportme)
11275
11276         * scm/framework-tex.scm (header): sanitize TeX paper size.
11277         (backportme)
11278
11279 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11280
11281         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
11282
11283         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
11284
11285         * scm/framework-tex.scm (font-load-command): Use T1 if no
11286         font-encoding set.  (backportme)
11287
11288         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
11289         exists before converting.  (backportme)
11290
11291         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
11292         exists before converting.  (backportme)
11293         (convert-to-ps): Remove .ps file if it exists before
11294         converting.  (backportme)
11295
11296         * lily/lexer.ll: Remove extra progress newline, use present tense.
11297
11298         * scm/paper.scm (paper-alist): public.
11299         * scm/framework-tex.scm (convert-to-ps):
11300         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
11301         command line.
11302
11303 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11304
11305         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
11306
11307         * lily/recording-group-engraver.cc (derived_mark): mark
11308         now_events_. (backportme)
11309
11310 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11311
11312         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
11313
11314         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
11315         invoking latex. (backportme.)
11316
11317         * lily/stem.cc (off_callback): center stems for all rest stems.
11318
11319 2004-11-05  Werner Lemberg  <wl@gnu.org>
11320
11321         * Documentation/user/lilypond.tely: Add more guidelines for writing
11322         lilypond texinfo documents.
11323
11324 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
11325
11326         * Documentation/index.html.in: remove <hr>.
11327
11328         * THANKS: change 2.3 to 2.4.
11329
11330 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
11331
11332         * scm/output-gnome.scm: More fontconfig comment.
11333
11334 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
11335
11336         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
11337         <package> directory in $(builddir)/share according with
11338         PACKAGE_NAME defined in the VERSION file.
11339
11340 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11341
11342         * lily/beam.cc (rest_collision_callback): use local beam
11343         multiplicity.
11344
11345         * input/regression/stem-stemlet.ly: new file.
11346
11347         * lily/stem.cc (add_head): store rests as well.
11348
11349         * scm/define-grob-properties.scm (all-user-grob-properties): add
11350         stemlet-length
11351
11352         * lily/stem.cc: store rests as well.
11353         
11354         * input/regression/new-slur.ly: mention forcing.
11355
11356 2004-11-04  Werner Lemberg  <wl@gnu.org>
11357
11358         * Documentation/user/*: A new round of layout fixes and document
11359         structure cleanup.
11360
11361 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
11362
11363         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
11364
11365 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
11366
11367         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
11368
11369 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11370
11371         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
11372
11373         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
11374
11375         * lily/main.cc (main): Invoke identify.
11376
11377         * scm/lily.scm (postscript->pdf): Remove progress newline.
11378         Write progress to stderr.
11379
11380         * lily/paper-book.cc (output): Remove progress newline.
11381
11382         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
11383         gettext on user messages, and remove whitespace.
11384
11385         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
11386
11387         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
11388         argv[0] (Thomas Scharkowski).
11389
11390         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
11391         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
11392         for ec-fonts-mtraced.
11393
11394         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
11395         --srcdir build (Bertalan).
11396
11397         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
11398         headers and library too (Laura Conrad).
11399
11400         * Documentation/topdocs/INSTALL.texi (Top): Mention development
11401         package for guile too (Laura Conrad).
11402
11403         * lily/main.cc (usage): Typo.
11404
11405 2004-11-02  Werner Lemberg  <wl@gnu.org>
11406
11407         * Documentation/user/notation.ly: More fixes to improve appearance.
11408
11409         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
11410         better output for multicolumn tables.
11411
11412 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11413
11414         * lily/main.cc (dir_info): Fixed typo in the printouts.
11415
11416 2004-11-01  Werner Lemberg  <wl@gnu.org>
11417
11418         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
11419         of output.
11420         Set `per_line' to 2; replace hard-coded value with it.
11421
11422         * Documentation/user/*: Many fixes to improve appearance of
11423         printed manual.
11424
11425 2004-11-01  Werner Lemberg  <wl@gnu.org>
11426
11427         * Documentation/user/changing-defaults.itely,
11428         Documentation/user/notation.ly,
11429         Documentation/user/programming-interface.itely: Use @/.
11430         Fix formatting of some lilypond snippets and tables.
11431
11432         * scripts/lilypond-book.py (compose_ly): Provide useful default
11433         for LINEWIDTH in `override'.
11434
11435 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11436
11437         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
11438
11439 2004-10-31  Werner Lemberg  <wl@gnu.org>
11440
11441         Resetting @exampleindent to `5' gives ugly results with texinfo's
11442         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
11443         (if not quoting) to change @exampleindent only locally.
11444
11445         * scripts/lilypond-book.py (NOQUOTE): New variable.
11446         (output) [LATEX]: Remove AFTER and BEFORE.
11447         [TEXINFO]: Remove AFTER and BEFORE.
11448         Fix QUOTE and VERBATIM pattern.
11449         Add NOQUOTE pattern.
11450         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
11451         and BEFORE.
11452         [output_texinfo]: Use NOQUOTE.
11453
11454 2004-10-31  Graham Percival  <gperlist@shaw.ca>
11455
11456         * Documentation/user/changing-defaults.itely: clarify paper
11457         size commands with correct info.
11458
11459         * Documentation/user/lilypond-book.itely: add more docs for
11460         filename extensions.
11461
11462 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11463
11464         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
11465         (PATCH_LEVEL): start 2.5.0.
11466
11467 #Local variables:
11468 #coding: utf-8
11469 #End:
11470