]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
5d13354cb73ba4fa2257f945677245d354584230
[lilypond.git] / ChangeLog
1 2005-01-03  Werner Lemberg  <wl@gnu.org>
2
3         Prepare glyph shapes for mf2pt1 conversion.
4
5         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
6         (accDiscant, accFreebase, accStdbase): Replace `draw' with
7         `penstroke'.
8         (accDot): Use `drawdot'.
9         (accBayanbase): Replace `draw' with `draw_gridline'.
10         (print_penpos): Moved to feta-macros.mf.
11         (accOldEE): Replace `filldraw' with `penstroke'.
12         Replace `draw' with `penstroke' and `drawdot'.
13
14         * mf/feta-banier.mf: Code clean-up.
15         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
16         `fill'.
17
18         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
19
20         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
21         paremeter to control drawing of labels.  Update all callers.
22
23         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
24         (new_bulb): Return a bulb as a single path.  To do that, it now
25         takes some more parameters.  Updated all callers.
26         (draw_gclef): Major clean-up.  `draw' has been replaced with
27         `penstroke', unnecessary outlines have been removed.
28         Remove (unused) gnome-canvas code.
29
30         * mf/feta-macros.mf (print_penpos): New macro (from
31         feta-accordion.mf).
32         Other minor fixes.
33
34         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
35         ("Pedal dot"): Use `drawdot'.
36         (draw_pedal_P): Add parameter to control drawing of labels.  Update
37         all callers.
38         Fix shape at top.
39         (draw_pedal_e): Add parameter to control drawing of labels.  Update
40         all callers.
41         (draw_pedal_d): Add parameter to control drawing of labels.  Update
42         all callers.
43         Revert drawing direction.
44
45         * mf/feta-schrift.mf (draw_fermata): Use single path.
46         (draw_short_fermata): Replace `filldraw' with `fill'.
47         (draw_long_fermata, draw_very_long_fermata): Replace calls to
48         `draw_rounded_block' with a single path.
49         ("Thumb"): Draw full circle instead of mirroring segments.
50         (draw_accent): New macro.
51         ("> accent", "espr"): Use it.
52         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
53         ("open (unstopped)"): Draw full circle instead of mirroring
54         segments.
55         (draw_vee): Removed.
56         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
57         ("Downbow"): Replace calls to `draw_rounded_block' with a single
58         path.
59         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
60         partial pieces drawn with `fill' -- these do still overlap with the
61         stem of the `t' but just once, not multiple times so that fontforge
62         can handle it gracefully.
63         Change other parts of the glyph so that fontforge's overlapping
64         algorithm reliably works.
65         (draw_heel): Replace `draw' with `fill'.
66         (draw_toe): Use `draw_accent' instead of `draw_vee'.
67         ("Flageolet"): Replace `draw' with `penstroke'.
68         ("Segno"): Replace `filldraw' with `penstroke'.
69         Replace `draw' with `drawdot'.
70         ("Coda"): Replace `fill' with `penstroke', using a single path.
71         ("Varied Coda"): Use less overlapping paths.
72         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
73         single path.
74
75         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
76         group to better control the `labels' command.
77         Rename argument to `offset' and use it actually.  Update all
78         callers.
79         Replace `filldraw' with `fill'.
80         ("mordent", "prallmordent", "upmordent", "downmordent",
81         "lineprall"): Replace `draw' with `draw_gridline'.
82         ("upprall", "downprall"): Replace `draw' with `fill'.
83
84         * mf/feta-timesig.mf: Formatting.
85
86         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
87         to...
88         ("Flat"): Here.
89         (draw_paren): Move code to draw labels to...
90         ("Right Parenthesis"): Here.
91
92 2005-01-02  Graham Percival <gperlist@shaw.ca>
93
94         * Documentation/user/notation.itely: add example of \setTextDecresc
95         and \setTextDim.
96
97 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
98
99         * scm/define-markup-commands.scm :  fix glyph-strings of
100         accidentals and \note-by-number
101         
102 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
103
104         * VERSION: 2.5.6 released.
105         
106         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
107
108         * input/regression/new-markup-scheme.ly: oops. font-family=music
109         -> font-encoding fetaMusic.  
110
111         * lily/main.cc: put default to PS.
112
113         * lily/tfm.cc: idem.
114
115         * lily/afm.cc: idem.
116
117         * lily/include/modified-font-metric.hh (struct
118         Modified_font_metric): remove coding_scheme() method.
119
120         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
121
122         * scripts/convert-ly.py (conv): crash on encountering \encoding.
123
124         * input/les-nereides.ly: convert to utf8
125
126         * lily/modified-font-metric.cc (text_dimension): idem.
127
128         * lily/parser.yy (TODO): idem.
129
130         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
131
132         * lily/lexer.ll: remove encoding
133
134         * scm/framework-ps.scm (output-variables): separately scale the
135         page to mm 
136
137         * lily/pango-font.cc (Pango_font): fix scaling.
138
139         * lily/font-metric.cc (design_size): design_size returns a
140         dimension now as well.
141
142 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
143
144         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
145         brace generation. 
146
147         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
148
149 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
150
151         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
152         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
153
154 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
155
156         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
157         in first run as well.
158
159         * scm/paper.scm (layout-set-staff-size): use text-font-size in
160         dimension less points (ie. 12 = 12 point)
161
162         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
163
164         * lily/all-font-metrics.cc (find_pango_font): set description_
165
166         * lily/pango-font.cc (text_stencil): export size as well.
167         (text_stencil): fix scaling and extents box.
168
169 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
170
171         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
172
173         * Documentation/user/invoking.itely (Invoking lilypond): document
174         texstr
175
176         * scripts/convert-ly.py (conv): add ancient rules.
177
178         * scm/clef.scm (c0-pitch-alist): replace - with .
179
180         * scripts/lilypond-book.py (process_snippets): add texstr support.
181
182         * scm/framework-texstr.scm (header): change extension to .textmetrics
183
184         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
185         -f tex.
186
187         * lily/text-metrics.cc: new file.
188         (try_load_text_metrics): new function
189
190         * lily/include/text-metrics.hh: new file.
191
192 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
193
194         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
195         ly_scheme_function to ly_lily_module_constant.
196
197         * lily/modified-font-metric.cc (text_dimension): try
198         lookup_tex_text_dimension() first.
199
200         * lily/tfm.cc: new function ly:load-text-dimensions
201
202 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
203
204         * scm/output-texstr.scm (text): use \lilygetmetrics
205
206         * scm/framework-texstr.scm (header): dump in new format.
207
208         * tex/lilypond-tex-metrics: new file.
209         
210 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
211
212         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
213         mapping.
214         (index_to_charcode): New method.
215
216         * scm/output-ps.scm (glyph-string): 
217         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
218
219 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
220
221         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
222         implement fully, need FONT to get to charcode.
223
224         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
225
226         * scm: Cleanups.
227
228         * Documentation/user/changing-defaults.itely: Fix internalsrefs
229         {Tunable context properties},
230         {All layout objects},
231         {Music definitions}.
232
233 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
234
235         * VERSION: release 2.5.5
236         
237         * lily/main.cc: use TeX as default output format.
238
239         * flower/file-path.cc (find): try to open directly as well, so we
240         find absolute path files. 
241
242         * lily/pango-select.cc: new file.
243
244         * scm/framework-ps.scm: remove all encoding code. 
245         load pfb/pfa for PangoFont too.
246         
247         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
248
249 2004-12-22  Werner Lemberg  <wl@gnu.org>
250
251         Prepare glyph shapes for mf2pt1 conversion.
252
253         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
254
255         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
256         (define_triangle_shape): Use it to replace `draw' with `fill' and
257         `unfill'.  Update all callers.
258         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
259         (draw_cross): Ditto.
260         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
261         Use penrazor for better conversion with mf2pt1.
262         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
263         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
264         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
265         draw_la_head, draw_ti_head): Replace `filldraw' with
266         `fill'.  Update all callers.
267
268 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
269
270         * lily/paper-book.cc (output): revert: only allow a single output
271         format.
272
273         * lily/include/pango-font.hh: new file.
274
275         * lily/pango-font.cc: new file.
276
277         * lily/font-metric.cc (text_stencil): new routine
278
279         * lily/all-font-metrics.cc (find_pango_font): new routine.
280
281         * lily/include/font-metric.hh (struct Font_metric): add
282         text_stencil()
283
284         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
285
286 2004-12-22  Werner Lemberg  <wl@gnu.org>
287
288         Prepare glyph shapes for mf2pt1 conversion.
289
290         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
291
292         * mf/feta-toevallig.mf: Formatting.
293         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
294         ("Natural"): Fix paths to allow better postprocessing.
295         (draw_meta_flat): Use `z3l' as additional point in path to get
296         better conversion with mf2pt1.
297         Other minor cleanups.
298         ("3/4 Flat"): Add auxiliary points and modify path to replace
299         `draw' with `fill'.
300         ("Double Sharp"): Mirror path segments instead of picture elements
301         to get a single outline.
302         Modify path to replace `filldraw' with `fill'.
303
304 2004-12-22  Graham Percival  <gperlist@shaw.ca>
305
306         * input/test/unfold-all-repeats.ly: added file back.
307
308         * Documentation/user/notation.itely,
309         Documentation/user/programming-interface.itely
310         Documentation/user/changing-defaults.itely: fixed misc broken
311         links to input/test/ files.
312
313 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
314
315         * tex/texinfo.tex: Update.  We should not be distributing this,
316         but since we do, use latest version.
317
318         * Documentation/user/macros.itexi: Comment-out \fetaflat,
319         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
320         macros for feta glyphs.
321
322 2004-12-22  Graham Percival  <gperlist@shaw.ca>
323
324         * Documentation/user/changing-defaults.itely: fix index for set.
325
326         * Documentation/user/converters.itely: added convert-ly bugs list
327         from CVS.
328
329 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
330
331         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
332         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
333         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
334         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
335
336         * mf/GNUmakefile (pfa_warning): Use less broken check.
337
338         * python/lilylib.py (setup_environment): Remove cruft from
339         GS_FONTPATH.
340
341         * configure.in: Bump mftrace requirement to 1.1.1.
342
343 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
344
345         * scm/output-svg.scm (beam): Use polygon.
346
347         * scm/lily-library.scm: Bugfix.
348
349         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
350
351         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
352
353 2004-12-19  Werner Lemberg  <wl@gnu.org>
354
355         Prepare glyph shapes for mf2pt1 conversion.
356
357         * mf/feta-eindelijk: Some formatting.
358         (multi_rest_x, multi_beam_height): Removed.  Unused.
359         ("Quarter rest"): Use `intersectiontimes' to create a single
360         outline.
361         (rest_crook): Removed.  Unused.
362         (draw_rest_bulb): Return path (wihtout filling).  Update callers.
363         Simplified.
364         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
365         "128th rest"): Simplify `pat'.
366         Create single outline.
367
368 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
369
370         * mf/GNUmakefile (ALL_GEN_FILES):
371         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
372
373         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
374         function.
375
376 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
377
378         * scm/output-texstr.scm (placebox): add routine
379
380         * VERSION (PACKAGE_NAME): release 2.5.4
381
382         * scm/framework-texstr.scm (output-framework): new file.  
383
384         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
385         processing.
386
387         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
388
389         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
390         rule.
391
392         * configure.in (gui_b): bump mftrace requirement to 1.1.0
393
394         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
395
396         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
397
398 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
399
400         * scm/framework-svg.scm (dump-page): Implement landscape.
401
402 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
403
404         * lily/main.cc (setup_paths): Add svg to search path.
405
406         * scm/output-svg.scm:
407         * scm/framework-svg.scm: Add pageSet.  Update.
408         (dump-fonts): New function.
409         (output-framework): Use it.
410
411         * mf/GNUmakefile: 
412         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
413
414 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
415
416         * tex/lilyponddefs.tex: comment out new ifpdf code.
417
418 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
419
420         * GNUmakefile.in: 
421         * SConstruct (symlink): Replace afm by otf.
422
423         * scm/framework-gnome.scm (gnome-main): Remove invocation of
424         ly:pango-add-afm-decoder.
425
426         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
427
428 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
429
430         * scm/output-ps.scm (new-text): don't access t glyph for getting
431         space dimension.
432
433         * ly/init.ly: warn about \version
434
435         * lily/lexer.ll: set version-seen?
436
437 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
438
439         * scm/output-svg.scm (string->entities): Update.
440
441 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
442
443         * lily/main.cc (setup_paths): replace afm by otf for path. 
444
445         * lily/pangofc-afm-decoder.cc: remove.
446
447         * lily/include/pangofc-afm-decoder.hh: remove.
448
449         * scm/framework-scm.scm (output-framework): new file.
450
451         * mf/GNUmakefile: remove SAUTER_FONTS.
452         remove SVG/sodipodi hacks.
453
454         * scm/lily-library.scm (stderr): move stderr.
455
456         * mf/GNUmakefile: remove AFM support.
457
458         * buildscripts/mf-to-table.py (base): remove AFM support.
459
460         * lily/open-type-font.cc (design_size): use design_size
461
462 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
463
464         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
465
466 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
467
468         * mf/GNUmakefile: Generate combined aybabtu info.
469         * mf/aybabtu.pe.in (i): Load it.
470
471         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
472         are not symbols.
473
474         * lily/include/open-type-font.hh (count): New method.
475
476         * mf/aybabtu.pe.in: Typo.
477
478         * Documentation/user/out/lilypond-internals.nexi (Scheme
479         functions): Typo.
480
481         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
482
483 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
484
485         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
486         subfonts.
487
488         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
489
490         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
491         (tex-font-command-raw): new function.
492
493         * lily/include/virtual-font-metric.hh (Module): remove file
494
495         * lily/virtual-font-metric.cc (Module): remove file.
496         
497
498         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
499         (get_indexed_char): read bbox from lily table if present.
500
501 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
502
503         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
504         aybabtu.subfonts
505
506         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
507         global glyphname. Enables more than 64 glyphs in the OTF.
508
509 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
510
511         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
512         braces.
513
514         * lily/open-type-font.cc (design_size): Use 12 as default for
515         design size.
516
517         * mf/aybabtu.pe.in: New file.  Merge all our braces.
518
519         * mf/GNUmakefile: Generate aybabtu.
520
521         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
522
523 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
524
525         * scm/lily-library.scm (char->unicode-index): Remove.
526
527         * scm/output-gnome.scm (text): Bugfix for plain string input.
528         Updates.
529
530         * scm/output-svg.scm (svg-font): Add weight to font selection.
531
532 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
533
534         * Documentation/topdocs/INSTALL.texi (Top): Point to
535         buildscripts/out/clean-fonts instead of
536         buildscripts/clean-fonts.sh. 
537
538 2004-12-13  Graham Percival  <gperlist@shaw.ca>
539
540         * input/regression/figured-bass.ly: attempt to clarify text.
541
542         * Documentation/user/notation.tely: add cindex for tag, attempt to
543         add figured bass example.
544
545         * Documentation/user/changing-defaults: basic editing.
546
547 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
548
549         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
550
551         * lily/open-type-font.cc (LY_DEFINE): new function
552         ly:font-sub-fonts
553
554         * lily/include/font-metric.hh (struct Font_metric): new method
555         sub_fonts()
556
557         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
558         . with - in add.stem.
559         
560 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
561
562         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
563         and fetaDynamic.
564
565         * lily/rest.cc (glyph_name): Change - to . .
566
567         * scm/output-gnome.scm (text): Hello world, again.
568
569         * scm/output-svg.scm (named-glyph): New function.  Hello world!
570
571         * lily/modified-font-metric.cc (index_to_charcode): New method.
572
573         * lily/include/font-metric.hh (index_to_charcode): New function.
574
575         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
576         new function.
577         (ly:font-glyph-to-index): Remove.
578
579 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
580
581         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
582
583         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
584
585         * lily/open-type-font.cc (load_scheme_table): new function
586
587         * lily/dots.cc (print): replace - 
588
589         * lily/open-type-font.cc (attachment_point): new function.
590         (load_table): read LILC table
591
592         * buildscripts/gen-bigcheese-scripts.py (Module): new
593         file. Generate FF scripts.
594
595         * mf/feta-din10.mf: idem.
596
597         * mf/feta-nummer10.mf: remove mf files.
598
599         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
600
601 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
602
603         * lily/lily-guile.cc: Use scm_from_locale_stringn.
604
605         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
606         compatibility.
607
608 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
609
610         * lily/open-type-font.cc (get_indexed_char): scale metrics by
611         design-size and units_per_EM.
612
613         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
614
615 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
616
617         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
618         does not crash fontforge.
619
620         * scm/lily-library.scm (char->unicode-index): Hack to map onto
621         PUA.
622
623 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
624
625         * scm/framework-ps.scm (ps-embed-cff): new function.
626
627         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
628
629 2004-12-12  Werner Lemberg  <wl@gnu.org>
630
631         * mf/bigcheese.pe.in: Add PUA mapping.
632         Don't create Type 42 but bare CFF font.
633
634 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
635
636         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
637         within canvas boundaries.
638
639         * mf/merge.pe.in: Set font names, version, license GPL.
640
641         * make/substitute.make: Add FONTFORGE.
642
643         * config.make.in (FONTFORGE): Add.
644
645         * configure.in (gui_b): Use PATH_PROG for fontforge.
646
647 2004-12-11  Graham Percival  <gperlist@shaw.ca>
648
649         * scm/define-markup-commands.scm: add baseline-skip to info
650         about \column.
651
652 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
653
654         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
655
656         * scm/output-gnome.scm (named-glyph): Use it.
657
658         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
659
660         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
661         (upper_string, lower_string, reverse_string): Remove.
662
663         * configure.in (fontforge): Reinstate version check.
664
665         * ly/engraver-init.ly: Fix clef glyph names.
666
667         * lily/time-signature.cc (special_time_signature): Fix fraction
668         glyph names.
669
670 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
671
672         * mf/merge.pe: new file.
673
674         * lily/freetype.cc: new file.
675
676         * lily/include/open-type-font.hh (class Open_type_font): new file.
677
678         * lily/include/freetype.hh: new file.
679
680         * lily/open-type-font.cc: new file.
681
682         * lily/all-font-metrics.cc (find_otf): new function.
683
684 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
685
686         * lily/time-signature.cc (special_time_signature): Fix.
687
688         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
689         GTK2 before checking for pango.  Fixes -fgnome.
690
691         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
692         Scheme name.
693
694         * scm/define-markup-commands.scm:
695         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
696
697         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
698
699         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
700         date versions.  Fixes configure.
701         (STEPMAKE_CHECK_VERSION): Support optional actual program version
702         argument.
703
704 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
705
706         * buildscripts/mf-to-table.py (write_ps_encoding): write real
707         names in .enc
708
709         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
710
711 2004-12-09  Graham Percival  <gperlist@shaw.ca>
712
713         * Documentation/user/changing-defaults.itely: add info about
714         make-dynamic-script
715
716         * Documentation/user/notation.itely: add link in dynamics to
717         section about make-dynamic-script.
718
719 2004-12-09  Christian hitz  <chhitz@gmx.net>
720
721         * lily/lily-guile.cc: change MACOS_X to __APPLE__
722
723 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
724
725         * buildscripts/mf-to-table.py (parse_logfile): use . for
726         concatting name and group.
727         (parse_logfile): use M for Minus (negative.)
728
729         * lily/include/type-swallow-translator.hh
730         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
731
732         * lily/*.cc: cosmetics around = sign.
733
734         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
735         lyric spacing on the penultimate column.
736
737 2004-12-05  Christian Hitz  <chhitz@gmx.net>
738
739         * configure.in:
740         * lily/accidental-placement.cc:
741         * lily/bar-line.cc:
742         * lily/beam-concave.cc:
743         * lily/beam-quanting.cc:
744         * lily/beam.cc:
745         * lily/bezier-bow.cc:
746         * lily/bezier.cc:
747         * lily/break-align-interface.cc:
748         * lily/custos.cc:
749         * lily/dimension-cache.cc:
750         * lily/dot-column.cc:
751         * lily/font-metric.cc:
752         * lily/font-select.cc:
753         * lily/gourlay-breaking.cc:
754         * lily/grob-property.cc:
755         * lily/grob.cc:
756         * lily/lily-guile.cc:
757         * lily/line-spanner.cc:
758         * lily/lookup.cc:
759         * lily/lyric-extender.cc:
760         * lily/lyric-hyphen.cc:
761         * lily/mensural-ligature.cc:
762         * lily/midi-def.cc:
763         * lily/misc.cc:
764         * lily/note-collision.cc:
765         * lily/note-column.cc:
766         * lily/note-head.cc:
767         * lily/paper-outputter.cc:
768         * lily/percent-repeat-item.cc:
769         * lily/rest-collision.cc:
770         * lily/side-position-interface.cc:
771         * lily/simple-spacer.cc:
772         * lily/slur-configuration.cc:
773         * lily/slur-scoring.cc:
774         * lily/slur.cc:
775         * lily/spaceable-grob.cc:
776         * lily/spacing-spanner.cc:
777         * lily/spanner.cc:
778         * lily/staff-symbol-referencer.cc:
779         * lily/stem.cc:
780         * lily/stencil.cc:
781         * lily/system-start-delimiter.cc:
782         * lily/system.cc:
783         * lily/text-item.cc:
784         * lily/tie.cc:
785         * lily/tuplet-bracket.cc:
786         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
787         <cmath> beacause isinf/isnan is undefined in <cmath>
788
789 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
790
791         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
792
793 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
794
795         * VERSION: release 2.5.3
796         
797 2004-11-29  Arno Waschk <arno@arnowaschk.de>
798
799         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
800
801 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
802
803         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
804
805         * lily/note-head.cc (internal_print): always try the "s" head if
806         u/d not found.
807
808         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
809
810 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
811
812         * mf/parmesan-heads.mf (overdone_heads): typos.
813
814 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
815
816         * lily/parser.yy (markup): in markups, { .. } without command
817         before are also flattened, ie \line must be explicitely used.
818
819         * Documentation/user/changing-defaults.itely:
820         * Documentation/user/notation.itely: 
821         * input/wilhelmus.ly: 
822         * input/regression/instrument-name-markup.ly: 
823         * input/regression/markup-score.ly: 
824         * input/regression/new-markup-scheme.ly: 
825         * input/regression/new-markup-syntax.ly: 
826         * input/test/coriolan-margin.ly: use \line in markups where
827         appropriate
828         
829 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
830
831         * scm/new-markup.scm (map-markup-command-list): helper function
832         used in parser.yy to map markup commands on a markup list.
833
834         * lily/parser.yy: get rid off < > in markups by treating { } as
835         real lists.
836
837         * lily/lexer.ll: remove < > from markup lexer mode.
838
839         * scripts/convert-ly.py (conv): add rule for converting 
840         \markup < > to \markup { }
841
842         * ly/titling-init.ly: 
843         * input/test/coriolan-margin.ly: 
844         * input/regression/new-markup-syntax.ly: 
845         * input/regression/new-markup-scheme.ly: 
846         * input/regression/multi-measure-rest-text.ly: 
847         * input/regression/markup-stack.ly: 
848         * input/regression/markup-score.ly: 
849         * input/regression/instrument-name-markup.ly: 
850         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
851         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
852         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
853         * input/wilhelmus.ly: 
854         * Documentation/user/notation.itely: 
855         * Documentation/user/music-glossary.tely: 
856         * Documentation/user/changing-defaults.itely: change < > to { } in
857         markups
858
859 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
860
861         * lily/accidental-placement.cc (position_accidentals): shortcut if
862         no accidentals to place.
863
864 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
865
866         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
867         typo s/ly:dimension ?/ly:dimension?/
868
869         * input/regression/lily-in-scheme.ly: 
870         * input/regression/music-function.ly: 
871         * ly/spanners-init.ly (assertBeamSlope): 
872         * scm/music-functions.scm (def-grace-function): add the paper
873         argument to music function definitions.
874
875 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
876
877         * lily/moment.cc (LY_DEFINE):
878         ly:moment-main-{denominator,numberator}, new function.
879
880         * lily/score-engraver.cc (typeset_all): assign to column on basis
881         of axis-group-parent-X setting.
882
883         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
884         add_element() on basis of axis-group-parent-Y setting.
885
886         * lily/grob.cc: add axis-group-parent-{XY} properties.
887
888         * input/regression/spacing-stick-out.ly: new file.
889
890         * lily/simple-spacer.cc (add_columns): use binary search for
891         setting column rods. Changes O(n^2) to O(n log(n)) for
892         constructing spacing problem from columns.
893         (add_columns): read allow-outside-line to make sure no texts stick
894         out.
895         (solve): Simple_spacer::is_active() only determines
896         satisfies_constraints_ for non-ragged typesetting.
897
898         * lily/simultaneous-music.cc (to_relative_octave): only set
899         old_relative_used if return pitch actually changed.
900
901         * scm/define-context-properties.scm
902         (all-user-translation-properties): change to match implementation.
903
904         * python/lilylib.py: Replace re.match by re.search and adds "-c
905         showpage" to the gs command line (Johannes Schindelin)
906
907         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
908         before processing. Prevents crash when inf is in the extent.
909
910         * scm/define-markup-commands.scm (note-by-number): add "s" to
911         "noteheads-" glyphname.
912  
913         * lily/parser.yy (Generic_prefix_music): supply parser argument to
914         music function as well.
915         
916 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
917
918         * VERSION: release 2.5.2
919
920         * Documentation/user/changing-defaults.itely (Creating titles):
921         add breakbefore variable.
922
923         * lily/paper-book.cc (set_system_penalty): new function. Set
924         penalty_ based on breakBefore setting
925
926         * lily/context-specced-music-iterator.cc (construct_children):
927         interpret special context id $uniqueContextId 
928
929         * lily/context.cc (create_unique_context): new method. Move
930         creation of unique (\new) contexts into interpreting phase. This
931         makes
932
933           foo= \new Staff ..
934           << \foo \foo >>
935
936         produce 2 staves.
937         
938
939         * scm/define-music-properties.scm (all-music-properties): add
940         quoted-voice-direction
941
942         * ly/music-functions-init.ly: killCues function.
943
944         * scm/music-functions.scm (cue-substitute): move creation of voice
945         contexts further to the back. 
946
947 2004-11-25  Werner Lemberg  <wl@gnu.org>
948
949         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
950         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
951
952 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
953
954         * buildscripts/guile-gnome.sh: Fixed typo.
955
956 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
957
958         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
959
960         * scripts/abc2ly.py (dump_slyrics): add ord(). 
961
962         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
963         to regular engraver. 
964
965 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
966
967         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
968
969 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
970
971         * scm/define-markup-commands.scm (fill-line): Typo.
972
973         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
974         and newer.
975
976 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
977
978         * ly/dynamic-scripts-init.ly: Fixed typo.
979
980 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
981
982         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
983         note-head, to have different attachment points for up and down.
984
985         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
986
987         * mf/feta-generic.mf (else): remove solfa.
988
989         * mf/feta-bolletjes.mf (tishape): remove unicode test.
990
991         * scm/define-context-properties.scm
992         (all-user-translation-properties): add shapeNoteStyles property.
993
994         * lily/shape-note-heads-engraver.cc (process_music): new file.
995
996         * lily/event.cc (transpose): call Event::transpose() for
997         transposing the tonic.
998
999 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1000
1001         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
1002         Unicode/OpenType and AFM.
1003
1004         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
1005
1006 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1007
1008         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
1009
1010         * lily/context.cc (Context): unprotect key from ctor.
1011
1012         * scm/stencil.scm (stack-lines): return empty-stencil if argument
1013         is '()
1014         (stack-stencils): idem.
1015
1016         * Documentation/user/changing-defaults.itely (Creating titles):
1017         document new title layout options.
1018
1019         * lily/parser.yy (lilypond_header_body): copy previous
1020         $globalheader if present.
1021
1022         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
1023         ly:module-copy
1024         
1025         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
1026
1027         * scm/titling.scm: remove old titling functions
1028
1029         * lily/stencil.cc (translate): remove absolute dimension.
1030
1031         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
1032         via markup.
1033
1034         * scm/page-layout.scm (marked-up-headfoot): create header/footer
1035         field from user-supplied markup
1036
1037         * scm/define-markup-commands.scm (on-the-fly): new markup
1038         command. Enter SCM markup procedure directly in Scheme.
1039         (fromproperty): new markup command. Read markup from props argument.
1040
1041         * scm/titling.scm (marked-up-title): create title via
1042         user-specified markup. 
1043
1044         * scm/define-markup-commands.scm (column): remove empty stencils
1045         from column.
1046
1047         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
1048         not have side-effect of creating variable stub.
1049
1050         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
1051
1052 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1053
1054         * scm/encoding.scm (coding-alist): 
1055         * scm/font.scm (add-ec-fonts):
1056         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
1057         Extended-TeX-Font-Encoding---Latin.
1058
1059         * lily/side-position-interface.cc (general_side_position): Add
1060         actual offset to error message (avoid constant error messages).
1061
1062         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
1063         block.
1064
1065         * lily/font-select.cc (select_encoded_font)
1066         (get_font_by_mag_step, get_font_by_design_size): 
1067         * lily/modified-font-metric.cc (Modified_font_metric): 
1068         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
1069
1070         * scm/encoding.scm (coding-alist): Add fetaDynamic.
1071         (read-encoding-file): Bugfix: do not require space after bracket.
1072
1073         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
1074         these do not exist.
1075
1076 2004-11-20  Graham Percival  <gperlist@shaw.ca>
1077
1078         * Documentation/user/notation.itely: added info about typesetting
1079         boxed bar numbers.
1080
1081 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1082
1083         * flower/interval.cc (T_to_string): gcc4 fixes.
1084
1085         * scm/define-markup-commands.scm (fill-line): use
1086         stack-stencils. This fixes problems with putting already centered
1087         stencils in a line.
1088
1089         * VERSION: release 2.5.1
1090
1091         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
1092
1093 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1094
1095         * input/example-[1-3].ly: simplify.
1096
1097         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
1098
1099         * scm/output-ps.scm (new-text): new function. Use glyphshow to
1100         show glyphs.
1101
1102         * scm/encoding.scm (decode-byte-string): new function.
1103
1104         * scripts/convert-ly.py (conv): add warning about
1105         set-global-staff-size.
1106
1107         * Doxyfile: add. 
1108
1109         * scripts/convert-ly.py (conv): add raggedlastbottom rule
1110         (conv): warn for TextSpanner split.
1111         (conv): warn for textheight.
1112
1113 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
1114
1115         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
1116         building the documentation, info with images are installed.
1117         (final-install): Fix description.  Mention sourcing of login
1118         scripts (instead of running).
1119
1120 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1121
1122         * Debian lmodern support.  Note that LilyPond will issue warnings
1123         
1124             no such encoding: "FontSpecific"
1125
1126           The font selection mechanism wants to get the encoding from the
1127           font itself, but the idea of lmodern is that it is usable with
1128           different encodings, ie, Lily should get the encoding from the
1129           font tree, rather than the font itself.  This would require some
1130           more work.
1131         
1132         * configure.in: Test for and accept lmodern if EC fonts not found.
1133
1134         * scm/framework-tex.scm (font-load-command): TeX font name
1135         mangling for latin1 encoded cork-lm fonts.
1136         (convert-to-ps): Load lm.map if available.
1137
1138         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
1139         available.
1140
1141         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
1142
1143         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
1144         available.
1145
1146         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
1147         path for absolute file name, that is silly.
1148
1149         * lily/score-engraver.cc (initialize): 
1150
1151         * Documentation/user/GNUmakefile (local-install-info): Invoke
1152         install-info --remove first.
1153
1154         * #include cleanup (Andreas Scherer).
1155
1156 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
1157
1158         * input/test/script-abbreviations.ly: fix typos.
1159
1160 2004-11-17  Werner Lemberg  <wl@gnu.org>
1161
1162         * python/lilylib.py (options_help_str): Support pretty-printing of
1163         newlines in fourth element of option description.
1164
1165         * scripts/lilypond-book.py (option_definitions): Use new lilylib
1166         feature.
1167         Sort options.
1168
1169         * Documentation/user/lilypond-book.itely: Finish update.
1170
1171 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1172
1173         * Documentation/user/macros.itexi: Add comment about \command.
1174
1175         * Documentation/user/lilypond.tely:
1176         * Documentation/user/lilypond-book.itely: Fix names of lilypond
1177         and lilypond-book nodes, so that `info lilypond' visits the manual
1178         at top level, and `info lilypond-book' visits the lilypond-book
1179         section.
1180
1181         * Documentation/user/GNUmakefile (local-install-info): Fix rules
1182         and packager messages.
1183
1184         * lily/pangofc-afm-decoder.cc: Update test.
1185
1186 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1187
1188         * scm/lily-library.scm (char->unicode-index): New function.
1189
1190         * scm/output-gnome.scm: 
1191         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
1192
1193         * Proper naming of file name throughout; s/filename/file[-_]name/.
1194
1195         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
1196
1197         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
1198
1199 2004-11-16  Werner Lemberg  <wl@gnu.org>
1200
1201         * scripts/lilypond-book.py: The Lord has commanded me to use only
1202         tabs for indentation.  Your humble servant obeys.
1203
1204 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1205
1206         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
1207         including font, if LilyPond-feta font is only feta font in path.
1208
1209         * scm/output-gnome.scm (text): Revert to file name of font if font
1210         has no name.  Fixes ec font selection.
1211         (char): Bugfix: do not utf8 twice.  Fixes clefs.
1212
1213         * scm/framework-svg.scm:
1214         * scm/output-svg.scm: New file.  TODO: figure out how to
1215         do character by index in font.
1216
1217         * scm/output-sodipodi.scm: Remove.
1218
1219         * scm/output-ps.scm (stem): Remove.
1220
1221 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1222
1223         * scm/output-gnome.scm (beam): New function.
1224         (slur): Round corners.
1225         (round-filled-box): Round corners.
1226
1227 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1228
1229         * scm/output-gnome.scm (beam): add function.
1230         (draw-line): new routine.
1231         (dashed-line): stub; call draw-line
1232         (polygon): new routine.
1233
1234 2004-11-15  Werner Lemberg  <wl@gnu.org>
1235
1236         * Documentation/user/lilypond-book.itely: Revise section on
1237         lilypond-book options.
1238         Other minor fixes.
1239
1240         * scripts/lilypond-book.py: Change indentation to 4.
1241         Minor formatting.
1242
1243 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1244
1245         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
1246         grobs that have tweaks specced.
1247         
1248 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
1249
1250         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
1251
1252 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1253
1254         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
1255         actual char #, not 0 based index.
1256
1257         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
1258
1259         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
1260         Warning: do make -C mf clean.
1261
1262         * lily/context-property.cc: Compile fix.
1263
1264         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
1265         Grok ec-fonts, braces and dynamics.
1266
1267         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
1268
1269 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1270
1271         * lily/include/tweak-registration.hh: new file.
1272
1273         * lily/tweak-registration.cc: new file.
1274
1275         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
1276         saving tweaks.
1277
1278         * scm/output-gnome.scm (text): comment dribble.
1279
1280 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1281
1282         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
1283
1284         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
1285         path-def before using.  Fixes muchtomany slurs in wrong places
1286         bug.
1287
1288 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1289
1290         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
1291
1292         * lily/include/object-key-undumper.hh (Module): new file.
1293
1294         * lily/object-key-undumper.cc (Module): New file. Deserialize
1295         keys. SCM bindings
1296
1297         * lily/object-key-dumper.cc (Object_key_dumper): idem.
1298         Provide SCM bindings.
1299
1300         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
1301         new file. Serialize object keys.
1302         
1303         * lily/object-key.cc (dump): new function.
1304         (as_scheme): new virtual function
1305         (undump): new function
1306         (undumpers): new table.
1307
1308         * lily/include/global-context.hh (Context): take \score key upon init.
1309
1310         * lily/object-key-dumper.cc (serialize_key): new file.
1311
1312         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
1313
1314         * lily/lily-lexer.cc: remove \quote.
1315
1316         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
1317
1318         * lily/context.cc (Context): take key argument in ctor.
1319         (create_context): new function
1320
1321         * lily/grob.cc (Grob): take key argument in ctor.  
1322
1323         * lily/lilypond-key.cc (do_compare): new file.
1324
1325         * lily/object-key.cc (Object_key): new file.
1326
1327         * lily/include/object-key.hh (class Object_key): new file.
1328
1329         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
1330
1331 2004-11-13  Graham Percival  <gperlist@shaw.ca>
1332
1333         * Documentation/user/lilypond-book.itely: add small warning about
1334         noindent default in lilypond-book.
1335
1336         * Documentation/user/converters.itely: add examples for convert-ly.
1337
1338         * Documentation/user/examples.itely: change version string in templates
1339         to 2.4.0.
1340
1341 2004-11-12  Karl Hammar  <karl@aspodata.se>
1342
1343         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
1344         cmdline, use xargs instead (backportme)
1345
1346 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
1347         
1348         * Documentation/user/: Numerous fixes in the user manual.
1349
1350 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1351
1352         * lily/parser.yy (re_rhythmed_music): search music expression for
1353         context-id, surround by \new Voice if not found. Fixes:
1354         addlyrics-second-staff.ly
1355
1356         * VERSION: 2.5.0 released.
1357         
1358 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1359
1360         * Documentation/index.html.in: Fix url to one big page.  (backportme)
1361
1362         * Documentation/user/GNUmakefile: Separate rules for split and
1363         unsplit html documents.  Remove perl massaging.  (backportme)
1364
1365 2004-11-11  Graham Percival  <gperlist@shaw.ca>
1366
1367         * Documentation/user/lilypond-book.itely: add short warning about
1368         \lilypond{} in LaTeX docs.
1369
1370 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1371
1372         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
1373         found.  (backportme)
1374
1375         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
1376         version requirement.  (backportme)
1377
1378         * configure.in: Be explicit about old versions of
1379         ec-fonts-mtraced.  (backportme)
1380
1381         * lily/context-selector.cc (set_tweaks): New function.
1382         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
1383         web with -DTWEAK.
1384
1385         * Documentation/user/introduction.itely (Automated engraving):
1386         Remove fragment option.  Fixes web.
1387
1388         * lily/context-property.cc (make_item_from_properties):
1389         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
1390         #ifdef.
1391
1392         * scm/define-context-properties.scm
1393         (all-internal-translation-properties): Add tweakRank and tweakCount.
1394
1395         * lily/grob.cc: 
1396         * scm/define-grob-properties.scm (all-internal-grob-properties):
1397         Add tweak-rank and tweak-count.
1398
1399 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1400
1401         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
1402         New function.
1403         (text): Use them.
1404
1405         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
1406         animated/opaque grob dragging tweaks.
1407
1408         * buildscripts/guile-gnome.sh: Update.
1409
1410 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1411
1412         * scm/define-grobs.scm (all-grob-descriptions): Added
1413         line-interface to the LigatureBracket object.
1414
1415 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1416
1417         * scm/framework-gnome.scm (item-event): Support non-animated mouse
1418         dragging tweaks.
1419
1420         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
1421
1422         * lily/context-selector.cc (store_context): New function.
1423
1424         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
1425         (store_grob): New function.
1426         (identify_grob): Add Moment parameter.
1427
1428         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
1429         exists.
1430
1431         * scm/framework-gnome.scm (save-tweaks): Write as alist.
1432
1433 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1434
1435         * scm/framework-gnome.scm (item-event): Print grob id.
1436         (save-tweaks): New function.
1437         (tweak): New funtion.
1438         (item-event): Use it, bound to arrow keys.
1439
1440         * lily/context-property.cc (make_item_from_properties): Register grob.
1441         * lily/context.cc (add_context): Register context.
1442
1443         * lily/include/context-selector.hh:
1444         * lily/include/grob-selector.hh:
1445         * lily/context-selector.cc:
1446         * lily/grob-selector.cc: New file.
1447
1448 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1449
1450         * lily/slur.cc: add 'positions to interface
1451
1452         * lily/main.cc: reinstate PS as standard output format. 
1453
1454         * scm/framework-tex.scm (output-preview-framework): print systems
1455         up to first non title system.
1456
1457         * lily/grace-engraver.cc (start_translation_timestep): split
1458         scm_cadddr
1459         
1460 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1461
1462         * lily/quote-iterator.cc (Module): remove old quote-iterator
1463
1464         * scm/define-music-types.scm (music-descriptions): move
1465         NewQuoteMusic over QuoteMusic
1466
1467         * Documentation/user/notation.itely (Formatting cue notes): use
1468         \cueDuring.
1469
1470         * lily/new-quote-iterator.cc (quote_ok): new function.
1471
1472         * input/regression/quote-cue-during.ly: new file.
1473
1474         * input/regression/quote-grace.ly: new file.
1475
1476         * scm/define-context-properties.scm (Module): change definition of
1477         graceSettings
1478
1479         * lily/context-property.cc (Module): rename from
1480         translator-property.cc
1481
1482         * lily/context.cc (context_name_symbol): new function
1483
1484         * lily/grace-engraver.cc: new file. Set properties for grobs based
1485         on the grace-ness of now_moment().
1486
1487         * scm/music-functions.scm (add-grace-property): use list
1488         iso. vector for graceSettings
1489         remove set-{start,stop}-grace-properties. 
1490
1491         * lily/new-quote-iterator.cc (construct_children): set
1492         quote_outlet_ if no quoted-context-{id,type} specified.
1493
1494         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
1495
1496         * lily/parser.yy (command_element): remove \quote.
1497
1498         * ly/music-functions-init.ly (location): add quoteDuring music
1499         function. 
1500
1501         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
1502         optional semicolon. (backportme)
1503
1504 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1505
1506         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
1507         need to link to GUILE et al.
1508
1509 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1510
1511         * scm/define-music-properties.scm (all-music-properties): add
1512         quoted-context-type, quoted-context-id.
1513
1514         * scm/lily.scm (type-check-list): new function.
1515         
1516         * scm/lily-library.scm: new file. Generic library routines.
1517
1518         * lily/parser.yy (Generic_prefix_music): move typechecking out of
1519         parser.
1520
1521         * ly/music-functions-init.ly: add quoteDuring function.
1522
1523         * lily/include/music-iterator.hh (class Music_iterator): rename
1524         set_translator -> set_context
1525
1526         * lily/parser.yy (Generic_prefix_music_scm): add
1527         MUSIC_FUNCTION_SCM_SCM_MUSIC
1528
1529         * scm/lily.scm (sanitize-command-option): new function. (backportme)
1530
1531         * scm/framework-tex.scm (header): sanitize TeX paper size.
1532         (backportme)
1533
1534 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1535
1536         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
1537
1538         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
1539
1540         * scm/framework-tex.scm (font-load-command): Use T1 if no
1541         font-encoding set.  (backportme)
1542
1543         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
1544         exists before converting.  (backportme)
1545
1546         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
1547         exists before converting.  (backportme)
1548         (convert-to-ps): Remove .ps file if it exists before
1549         converting.  (backportme)
1550
1551         * lily/lexer.ll: Remove extra progress newline, use present tense.
1552
1553         * scm/paper.scm (paper-alist): public.
1554         * scm/framework-tex.scm (convert-to-ps):
1555         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
1556         command line.
1557
1558 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1559
1560         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
1561
1562         * lily/recording-group-engraver.cc (derived_mark): mark
1563         now_events_. (backportme)
1564
1565 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1566
1567         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
1568
1569         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
1570         invoking latex. (backportme.)
1571
1572         * lily/stem.cc (off_callback): center stems for all rest stems.
1573
1574 2004-11-05  Werner Lemberg  <wl@gnu.org>
1575
1576         * Documentation/user/lilypond.tely: Add more guidelines for writing
1577         lilypond texinfo documents.
1578
1579 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
1580
1581         * Documentation/index.html.in: remove <hr>.
1582
1583         * THANKS: change 2.3 to 2.4.
1584
1585 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
1586
1587         * scm/output-gnome.scm: More fontconfig comment.
1588
1589 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
1590
1591         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
1592         <package> directory in $(builddir)/share according with
1593         PACKAGE_NAME defined in the VERSION file.
1594
1595 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1596
1597         * lily/beam.cc (rest_collision_callback): use local beam
1598         multiplicity.
1599
1600         * input/regression/stem-stemlet.ly: new file.
1601
1602         * lily/stem.cc (add_head): store rests as well.
1603
1604         * scm/define-grob-properties.scm (all-user-grob-properties): add
1605         stemlet-length
1606
1607         * lily/stem.cc: store rests as well.
1608         
1609         * input/regression/new-slur.ly: mention forcing.
1610
1611 2004-11-04  Werner Lemberg  <wl@gnu.org>
1612
1613         * Documentation/user/*: A new round of layout fixes and document
1614         structure cleanup.
1615
1616 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
1617
1618         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
1619
1620 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1621
1622         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
1623
1624 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1625
1626         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
1627
1628         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
1629
1630         * lily/main.cc (main): Invoke identify.
1631
1632         * scm/lily.scm (postscript->pdf): Remove progress newline.
1633         Write progress to stderr.
1634
1635         * lily/paper-book.cc (output): Remove progress newline.
1636
1637         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
1638         gettext on user messages, and remove whitespace.
1639
1640         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
1641
1642         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
1643         argv[0] (Thomas Scharkowski).
1644
1645         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
1646         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
1647         for ec-fonts-mtraced.
1648
1649         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
1650         --srcdir build (Bertalan).
1651
1652         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
1653         headers and library too (Laura Conrad).
1654
1655         * Documentation/topdocs/INSTALL.texi (Top): Mention development
1656         package for guile too (Laura Conrad).
1657
1658         * lily/main.cc (usage): Typo.
1659
1660 2004-11-02  Werner Lemberg  <wl@gnu.org>
1661
1662         * Documentation/user/notation.ly: More fixes to improve appearance.
1663
1664         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
1665         better output for multicolumn tables.
1666
1667 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1668
1669         * lily/main.cc (dir_info): Fixed typo in the printouts.
1670
1671 2004-11-01  Werner Lemberg  <wl@gnu.org>
1672
1673         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
1674         of output.
1675         Set `per_line' to 2; replace hard-coded value with it.
1676
1677         * Documentation/user/*: Many fixes to improve appearance of
1678         printed manual.
1679
1680 2004-11-01  Werner Lemberg  <wl@gnu.org>
1681
1682         * Documentation/user/changing-defaults.itely,
1683         Documentation/user/notation.ly,
1684         Documentation/user/programming-interface.itely: Use @/.
1685         Fix formatting of some lilypond snippets and tables.
1686
1687         * scripts/lilypond-book.py (compose_ly): Provide useful default
1688         for LINEWIDTH in `override'.
1689
1690 2004-10-31  Graham Percival  <gperlist@shaw.ca>
1691
1692         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
1693
1694 2004-10-31  Werner Lemberg  <wl@gnu.org>
1695
1696         Resetting @exampleindent to `5' gives ugly results with texinfo's
1697         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
1698         (if not quoting) to change @exampleindent only locally.
1699
1700         * scripts/lilypond-book.py (NOQUOTE): New variable.
1701         (output) [LATEX]: Remove AFTER and BEFORE.
1702         [TEXINFO]: Remove AFTER and BEFORE.
1703         Fix QUOTE and VERBATIM pattern.
1704         Add NOQUOTE pattern.
1705         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
1706         and BEFORE.
1707         [output_texinfo]: Use NOQUOTE.
1708
1709 2004-10-31  Graham Percival  <gperlist@shaw.ca>
1710
1711         * Documentation/user/changing-defaults.itely: clarify paper
1712         size commands with correct info.
1713
1714         * Documentation/user/lilypond-book.itely: add more docs for
1715         filename extensions.
1716
1717 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1718
1719         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
1720         (PATCH_LEVEL): start 2.5.0.
1721
1722 2004-10-30  Graham Percival  <gperlist@shaw.ca>
1723
1724         * Documentation/user/notation.itely: add warning about bar numbers
1725         in multistaff music, add warning about quoting grace notes.
1726
1727         * Documentation/user/changing-defaults.itely: clarify paper size commands,
1728         add missing subsubtitle entry to Creating titles.
1729
1730         * Documentation/user/tutorial.itely: change 3.0 references to 2.4.
1731
1732 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1733
1734         * scripts/convert-ly.py (conv): fixed \context Foo = mixedCaps
1735         case.
1736         (conv): add dummy 2.4.0 conversion rule.
1737
1738         * Documentation/user/lilypond.tely: add @finalout.
1739
1740         * lily/slur-scoring.cc (enumerate_attachments): use stem_extent_
1741         for attaching, fixes slur/stem left attachment of
1742         downslur/downstem.
1743
1744         * lily/quote-iterator.cc (process): use <= for comparisons. Fixes
1745         quote problem if for last note of quoted sequence. 
1746
1747         * input/regression/part-combine-text.ly (comm): add expect strings.
1748
1749 2004-10-30  Werner Lemberg  <wl@gnu.org>
1750
1751         * Documentation/user/examples.itely: Improved layout.
1752
1753         * Documentation/invoking.itely: Use `@/' to insert breakpoints.
1754
1755         * Documentation/macros.itexi (@inputfileref) [@tex]: Use `@/'.
1756
1757         * Documentation/notation.itely: Use `@/'.
1758         Other layout fixes.
1759
1760 2004-10-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1761
1762         * lily/part-combine-iterator.cc (unisono): examine last_playing_
1763         (not state_), this fixes a2 printing after chord.
1764
1765         * input/regression/no-staff.ly: fix octave, revise syntax.
1766
1767         * input/regression/lyrics-bar.ly (texidoc): fixes.
1768
1769         * input/regression/beam-dir-functions.ly (Module): remove from regtest
1770
1771         * input/regression/accidentals.ly (Module): remove from regtest.
1772
1773         * lily/parser.yy (Prefix_composite_music): 
1774         oops. Chords should be unrelativable, not bass figures untransposable.
1775
1776         * VERSION: 2.3.26 released.
1777         
1778         * lily/completion-note-heads-engraver.cc (try_music): only return
1779         something when is_first_ is true. Fixes lyrics with completion_heads. 
1780
1781         * make/lilypond-vars.make: add scripts/out/ to PATH, to find ps2png. 
1782
1783         * scm/lily.scm (ly:system): new function. Catches uninstalled
1784         ps2png.
1785
1786 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1787
1788         * Documentation/user/notation.itely: remove
1789         @hyphenatedinternalsref.
1790
1791 2004-10-29  Werner Lemberg  <wl@gnu.org>
1792
1793         * scm/framework-tex.scm (dump-line): Fix dimensions for \lybox.
1794
1795         * scripts/lilypond-book.py (no_options): New dictionary.
1796         (simple_options): New list.
1797         (ly_options): Remove NOINDENT and EXAMPLEINDENT patterns.
1798         (compose_ly): Use `no_options' and `simple_options'.
1799         Fix logic of option handling.
1800         Handle `linewidth' option without parameter.
1801
1802 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1803
1804         * lily/lookup.cc (triangle): use (0, interval.length()) for X
1805         extent, since the stencil is translated later on.
1806
1807         * lily/ledger-line-spanner.cc (print): swap linear_combination
1808         arguments, effectively shortens ledger line. 
1809
1810         * Documentation/user/GNUmakefile
1811         ($(outdir)/lilypond/lilypond.html): use find to remove files.
1812
1813         * lily/main.cc: --no-pages option.
1814
1815 2004-10-28  Carl Sorensen  <carldsorensen@comcast.net>
1816
1817         * Documentation/user/notation.itely (Fret diagrams): add extra
1818         notes to example to avoid collisions between fret diagrams.
1819
1820 2004-10-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1821
1822         * Documentation/user/notation.itely (Automatic note splitting):
1823         note about lyrics. 
1824
1825         * Documentation/user/converters.itely (Invoking convert-ly): note
1826         about version numbers. 
1827
1828         * scripts/abc2ly.py (dump_score): revise lyric dumping
1829
1830         * scripts/mup2ly.py (pre_processor_commands): always open file.
1831
1832         * scripts/etf2ly.py (Frame.calculate): always close \grace.
1833         (Etf_file.dump): add \version
1834
1835         * VERSION: 2.3.25 released.
1836
1837         * lily/scm-option.cc: add 'resolution to ly:get-option argument
1838         list.
1839
1840 2004-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1841
1842         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-origin
1843
1844 2004-10-28  Werner Lemberg  <wl@gnu.org>
1845
1846         * Documentation/user/music-glossary.tely: More fixes to improve
1847         appearance with DVI output.
1848
1849         * scripts/lilypond-book.py (compose_ly): Use 0.4in for
1850         EXAMPLEINDENT.  This is the maximum value for quotation environments
1851         used in `texinfo.tex' -- many warnings in lilypond.dvi are now gone.
1852
1853 2004-10-27  Werner Lemberg  <wl@gnu.org>
1854
1855         * Documentation/user/music-glossary.tely: Revised.
1856
1857 2004-10-26  Carl Sorensen  <carldsorensen@comcast.net>
1858
1859         * input/test/fret-diagram.ly: insert breaks, remove raggedright to
1860         improve fret diagram spacing in printed output.
1861
1862         * Documentation/user/notation.itely (Fret diagrams): Remove raggedright
1863         from options for the example so fret-diagrams won't overlap
1864         one another.
1865
1866 2004-10-26  Werner Lemberg  <wl@gnu.org>
1867
1868         * scripts/lilypond-book.py: Some additional formatting for
1869         orthogonality.
1870         (ly_options) [*]: Format strings.
1871         [RAGGEDRIGHT]: Don't set `indent'.  This is now properly handled
1872         by `compose_ly'.
1873         (output) [LATEX][OUTPUT]: Format string and simplify.
1874         (PREAMBLE_LY, FRAGMENT_LY): Format string.
1875         (classic_lilypond_book_compatibility): Take key/value pair as
1876         parameter.
1877         Return key/value pair.
1878         (compose_ly): Rewritten, taking the snippet type as third parameter. 
1879         The default values are now set more sensible, and a `linewidth'
1880         option is no longer overwritten under some circumstances.
1881
1882         * Documentation/user/music-glossary.tely: Replace all accented
1883         character macros with latin-1 codes.
1884
1885 2004-10-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1886
1887         * lily/music-function.cc (ly_make_music_function): when an
1888         argument predicate is markup?, the signature keyword becomes
1889         "markup" iso "scm".
1890
1891         * lily/lexer.ll (music_function_type): new MUSIC_FUNCTION_*MARKUP*
1892         tokens, for functions which signatures contain "markup".
1893
1894         * lily/parser.yy (Generic_prefix_music_scm): add treatment for new
1895         MUSIC_FUNCTION_*MARKUP* tokens.
1896
1897 2004-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1898
1899         * input/regression/lyrics-bar.ly: Make StaffGroup accept the new
1900         Lyrics context.
1901
1902 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1903
1904         * python/lilylib.py (make_ps_images): return list of output files.
1905
1906         * lily/simple-spacer.cc (LY_DEFINE): for ragged, we can end with
1907         all springs tight, and still satisfy the constraints.
1908
1909 2004-10-25  Werner Lemberg  <wl@gnu.org>
1910
1911         * scripts/lilypond-book.py: s/option-sep/option_sep/.
1912         (format_res) [LATEX, TEXINFO]: Skip whitespace before comma also.
1913         (snippet_res): Fix regexps and make them ignore whitespace properly.
1914         (compose_ly): Use `re.split' instead of `string.split' to remove
1915         surrounding whitespace.
1916         Some formatting to get more consistency.
1917
1918 2004-10-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1919
1920         * VERSION: 2.3.24
1921         
1922         * scm/define-context-properties.scm
1923         (all-user-translation-properties): add verticallySpacedContexts.
1924
1925         * scm/define-grob-interfaces.scm (vertically-spaceable-interface):
1926         add interface
1927
1928         * scm/define-grob-properties.scm (all-internal-grob-properties):
1929         add spaceable-staves
1930
1931         * scm/define-grobs.scm (all-grob-descriptions): set
1932         vertically-spaceable-interface for VerticalAxisGroup and
1933         RemoveEmptyVerticalGroup
1934
1935         * lily/system.cc (get_line): determine staff_refpoints_
1936         using spaceable-staves.
1937
1938         * lily/score-engraver.cc (acknowledge_grob): ack
1939         vertically-spaceable-interface and verticallySpacedContexts to
1940         set spaceable-staves.
1941
1942         * input/regression/new-slur.ly: add slur under 16th subbeam case.
1943
1944         * lily/slur-scoring.cc (fill): init has_same_beam_ before use.
1945
1946 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1947
1948         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): tune
1949         minimumVerticalExtent tweaks. 
1950  
1951         * mf/feta-schrift.mf: include size of thumb appendix in
1952         bbox. Fixes: c-thumb-notehead.ly  
1953
1954         * THANKS: add Meisters to the Development team.
1955
1956         * scm/framework-tex.scm (convert-to-dvi): redirect output to
1957         /dev/null for non-verbose.
1958
1959         * Documentation/user/invoking.itely (Invoking lilypond): add note
1960         about resource usage.
1961
1962         * tex/GNUmakefile (TEX_FILES): add texinfo.cnf
1963
1964         * stepmake/stepmake/texinfo-vars.make (MAKEINFO): add
1965         --enable-encoding
1966
1967         * Documentation/user/lilypond.tely: add -*- coding: latin-1 -*- everywhere. 
1968
1969         * Documentation/user/changing-defaults.itely (Text encoding):
1970         change to latin1.
1971
1972         * Documentation/user/lilypond.tely: add language and encoding.
1973
1974         * scm/define-grobs.scm (all-grob-descriptions): add
1975         line-interface.
1976
1977         * configure.in (PKG_CONFIG_PATH): bump makeinfo version to 4.7
1978
1979         * input/test/ossia.ly: font sizes for ossia.
1980
1981         * scripts/convert-ly.py (conv): \context Foo = NOTENAME
1982         -> \context Foo = "NOTENAME".
1983
1984         * lily/main.cc (determine_output_options): fix ordering.
1985
1986 2004-10-24  Erik Sandberg  <ersa9195@student.uu.se>
1987
1988         * THANKS: Added bughunters for 2.3.
1989
1990 2004-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1991
1992         * Documentation/user/macros.itexi: use findex functions/internals
1993         objects.
1994
1995         * scm/documentation-generate.scm (string-append): add syncodeindex
1996
1997         * Documentation/user/tutorial.itely (A lead sheet): use \chords
1998         for tutoring chord names.
1999  
2000         * Documentation/user/lilypond.tely: remove @authors.
2001
2002 2004-10-23  Werner Lemberg  <wl@gnu.org>
2003
2004         * scm/framework-tex.scm (dump-page): Add width to \lybox call.
2005         Remove first two parameters of \lybox.
2006         Don't emit \vbox around \lybox.
2007         (dump-line): Add width to \lybox call.
2008         Remove first two parameters of \lybox.
2009
2010         * tex/lilyponddefs.tex (\topalign, \leftalign): Removed.
2011         (\lyitem): Updated.
2012         (\lybox): Only take three parameters.
2013         Create box which has zero depth, only height.
2014         Center box vertically along the x-height of current font.
2015
2016 2004-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2017
2018         * VERSION (PACKAGE_NAME): release 2.3.23
2019
2020         * scm/framework-tex.scm (convert-to-ps): add -E if filename
2021         contains .preview.
2022
2023 2004-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2024
2025         * lily/lyric-extender.cc (print): only run to right-bound if
2026         broken. This fixes input/regression/lyric-extender.ly
2027
2028         * input/regression/beamed-chord.ly: removed.
2029
2030         * Documentation/user/macros.itexi: add \global to definitions for
2031         feta macros.
2032
2033         * po/fr.po: updated po file.
2034
2035         * po/de.po: updated po file.
2036
2037 2004-10-22  Werner Lemberg  <wl@gnu.org>
2038
2039         * tex/lilyponddefs.tex (\lilypondend): Undo change from 2004-10-20.
2040
2041 2004-10-21  Werner Lemberg  <wl@gnu.org>
2042
2043         * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex
2044         (\lilypondexperimentalfeatures): Removed.
2045
2046 2004-10-20  Jürgen Reuter  <reuter@ipd.uka.de>
2047
2048         * Documentation/user/notation.itely: fixed 2 typos
2049
2050 2004-10-20  Werner Lemberg  <wl@gnu.org>
2051
2052         * scm/framework-tex.scm (header-end): Don't set \outputscale.
2053         (dump-line): Produce prettier output.
2054
2055         * tex/lilyponddefs.tex: Comment all macros extensively.
2056         (\lilypondstart): Set \outputscale.
2057         Define \lilypondpagebreak and \lilypondnopagebreak here.
2058         Don't test for positive \lilypondpaperlinewidth -- this is always
2059         positive in the normal case (LilyPond produces bad output otherwise
2060         so we can safely ignore negative or zero values).
2061         (\lilypondend): Remove useless test for \lilypondbook.
2062         (\fetasixteen, \fetafont, \fetachar): Removed, unused.  We also
2063         don't input `feta20.tex'.
2064
2065 2004-10-19  Graham Percival  <gperlist@shaw.ca>
2066
2067         * Documentation/user/examples.itely: added texidoc lilypond-book
2068         template.
2069
2070 2004-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2071
2072         * cygwin/lilypond.hint: Update.
2073
2074 2004-10-18  Carl Sorensen  <carldsorensen@comcast.net>
2075
2076         * Documentation/user/notation.itely (Fret diagrams): Add documentation
2077         for fret diagram markups to user manual
2078
2079         * scm/fret-diagrams.scm (fret-diagram-terse): Fix mistake in internal
2080         documentation for fret-diagram-terse
2081
2082         * Documentation/user/notation.itely: Added section on fret diagrams.
2083
2084 2004-10-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2085
2086         * scripts/convert-ly.py (usage): Fix --help description.  Apply
2087         range also for --show-rules.
2088
2089 2004-10-18  Werner Lemberg  <wl@gnu.org>
2090
2091         * scripts/lilypond-book.py (Snippet, Include_snippet)
2092         [replacement_text]: Use group `match'.
2093
2094 2004-10-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2095
2096         * Documentation/user/macros.itexi: Use @ref instead of @inforef
2097         for html.  Apparently, ``you should'' in texinfo documentation is
2098         merely a guideline that can safely be ignored.
2099
2100         * elisp/lilypond-init.el (auto-mode-alist): Add .ily to
2101         auto-mode-alist.
2102
2103         * input/test/engraver-example.ily: 
2104         * input/regression/allfontstyle.ily: Rename, update users.
2105
2106 2004-10-16  Graham Percival  <gperlist@shaw.ca>
2107
2108         * Documentation/user/lilypond-book.itely: add more details about
2109         building .lytex files.
2110
2111         * Documentation/user/examples.itely: added piano-lyrics template
2112
2113         * input/template/piano-4-voices.ly, piano-lyrics.ly: remove.
2114
2115         * input/GNUmakefile: remove "templates" from build subdirs.
2116
2117         * input/template: removed.
2118
2119 2004-10-16  Werner Lemberg  <wl@gnu.org>
2120
2121         * scripts/lilypond-book.py (snippet_res): Define group `match'
2122         everywhere.
2123         Accept more spaces between commands and its arguments and options.
2124         Fix some regexps.
2125         (output): Remove some newlines in string values and suppress spaces
2126         in output.
2127         (output_texinfo): Output `output_print_filename' only if not empty.
2128         (Lilypond_snippet)[find_toplevel_snippets]: Use group `match'.
2129
2130 2004-10-16  Werner Lemberg  <wl@gnu.org>
2131
2132         * scm/framework-tex.scm (font-load-command, define-fonts): Protect
2133         some TeX line ends with `%' to avoid additional horizontal space in
2134         output.
2135
2136         * scripts/lilypond-book.py: Unexpand spaces to tabs.
2137         (snippet_res): Use `x' modifier to represent regular expressions
2138         in a friendlier way.
2139         Fix `lilypond_block' for LaTeX to accept `%\end{lilypond}'.
2140         (find_toplevel_snippets): Don't use indices from match group 0,
2141         which is the whole pattern space, but group 1.
2142
2143 2004-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2144
2145         * flower/include/direction.hh (enum Direction): add
2146         DIRECTION_LIMIT
2147
2148 2004-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2149
2150         * po/fr.po: new po file.
2151
2152 2004-10-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2153
2154         * Documentation/user/macros.itexi: Do not construct external
2155         references using @uref.  That results in broken links.
2156
2157         * lily/slur.cc (outside_slur_callback): Use int in for loop;
2158         avoids g++-3.4.1 enum beature.
2159
2160 2004-10-13  Graham Percival  <gperlist@shaw.ca>
2161
2162         * Documentation/user/examples.itely: added lilypond-book template.
2163
2164         * Documentation/user/lilypond-book.itely: added filename extension
2165         page.
2166
2167 2004-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2168
2169         * debian/rules (binary-indep): Link images for info.
2170
2171         * elisp/lilypond-mode.el (LilyPond-command): Set XEDITOR.  Cool
2172         feature nicked from jEdit.
2173
2174 2004-10-12  Pedro Kroger  <kroeger@pedrokroeger.net>
2175
2176         * Documentation/user/introduction.itely: Minor corrections.
2177
2178         * Documentation/user/notation.itely: Minor corrections.
2179
2180         * Documentation/user/tutorial.itely: Minor corrections.
2181
2182 2004-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2183
2184         * scm/framework-ps.scm (page-header): Fix Layout renaming bug.
2185
2186         * scm/*.scm:
2187         * ly/paper-defaults.ly: Use papersizename only.
2188
2189 2004-10-11  Werner Lemberg  <wl@gnu.org>
2190
2191         * tex/lilyponddefs.tex (\lyitem): Don't use \topalign to make
2192         \raise work with positive values.
2193
2194 2004-10-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2195
2196         * Documentation/user/notation.itely (Multi measure rests): Update
2197         the docs corresponding to the implementation change from 2004-10-08.
2198
2199 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2200
2201         * VERSION (MY_PATCH_LEVEL): release 2.3.22
2202
2203         * scm/part-combiner.scm (determine-split-list): reinstate
2204         playing+resting case. 
2205
2206         * Documentation/user/invoking.itely (Reporting bugs): rename.
2207
2208         * lily/lexer.ll (Lily_lexer): bump version req to 2.3.22.
2209
2210         * lily/parser.yy (Prefix_composite_music): change no-transposition
2211         for mode_changing_head to figures too.
2212
2213         * lily/phrasing-slur-engraver.cc (acknowledge_grob): do something
2214         with normal slurs too.
2215         
2216         * lily/slur-scoring.cc (move_away_from_staffline): new function.
2217         (get_base_attachments): move away attachment point for breaks
2218         similar to attachment points on slurs (staffline collision, and
2219         half a space of padding)
2220
2221         * scm/page-layout.scm (ly:optimal-page-breaks): don't compute
2222         force twice.
2223
2224         * lily/simple-spacer.cc (LY_DEFINE): if line too long in ragged
2225         mode, return #f.        
2226
2227         * scm/page-layout.scm (ly:optimal-page-breaks): set force = 0.0
2228         for last page if raggedlast. 
2229
2230         * lily/parser.yy (Prefix_composite_music): untransposable is for
2231         FiguredBass, not ChordNames
2232
2233 2004-10-10  Jan Nieuwenhuizen  <janneke@gnu.org>
2234
2235         * scm/framework-tex.scm: Merge fix.
2236
2237 2004-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
2238
2239         The grand \paper -> \layout, \bookpaper -> \paper renaming.
2240
2241 2004-10-10  Graham Percival  <gperlist@shaw.ca>
2242
2243         * Documentation/user/notation.itely: add raggedright to a whole
2244         bunch of places.
2245
2246 2004-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2247
2248         * scm/paper.scm (set-paper-dimension-variables): new
2249         function. Define dimension-variables explicitly in \paper too.
2250         This allows overriding linewidth inside \score { \paper { } }
2251         blocks
2252  
2253         * scm/framework-tex.scm (convert-to-ps): invoke dvips with -t
2254         landscape.
2255         (header): add landscape and papersize options.
2256
2257 2004-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2258
2259         * lily/*.cc: use robust_scm2moment() where appropriate.
2260
2261         * lily/moment.cc (robust_scm2moment): new function.
2262
2263         * scm/titling.scm (default-score-title): remove caps for piece.
2264
2265         * VERSION: 2.3.21 released.
2266         
2267         * lily/include/slur-scoring.hh (struct Slur_score_state): new file
2268
2269         * lily/include/slur-configuration.hh (class Slur_configuration):
2270         new file.
2271
2272         * lily/slur-configuration.cc: new file. move scoring functions
2273         into Slur_configuration.
2274
2275         * lily/slur-scoring.cc (Slur_score_state): change static functions
2276         to methods of Slur_score_state.
2277
2278         * lily/bezier-bow.cc (Message): 
2279
2280         * flower/include/interval-set.hh (Message): new file.
2281
2282         * flower/interval-set.cc (Message): new file.
2283
2284 2004-10-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2285
2286         * lily/multi-measure-rest-engraver.cc (process_music): always
2287         generate MultiMeasureRestNumbers.
2288
2289         * SConstruct (txt_files): switch of make dist
2290
2291         * lily/bezier-bow.cc (get_slur_indent_height): change recipe to
2292         make sure that (indent < len / 3). This fixes progerror-max_h.ly
2293
2294         * lily/multi-measure-rest-engraver.cc (process_music): make
2295         MultiMeasureRestNumber too.
2296
2297 2004-10-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2298
2299         * Documentation/user/notation.itely (Bar lines): Added a note that
2300         defaultBarType is to be changed in the Timing context.
2301
2302 2004-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2303
2304         * lily/include/guile-compatibility.hh: add file.
2305
2306         * scm/framework-tex.scm (convert-to-dvi): use max of current
2307         extra_mem_top and 1M.
2308
2309         * lily/kpath.cc (LY_DEFINE): ly_kpathsea_expand_variable. New
2310         function.
2311
2312 2004-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2313
2314         * scm/framework-tex.scm (convert-to-dvi): set extra_mem_top to 1M.
2315  
2316 2004-10-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2317
2318         * lily/slur-scoring.cc (struct Slur_score_state): add
2319         has_same_beam_, edge_has_beams_, is_broken_ bools.
2320         (get_base_attachments): simpler Y attachment determination for
2321         broken slurs.
2322
2323 2004-10-04  Jan Nieuwenhuizen  <janneke@gnu.org>
2324
2325         * buildscripts/texi2omf.py: Add hashbang.  Starting the script in
2326         bash without that is quite interesting.  Add xml and some omf
2327         keys.
2328
2329 2004-10-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2330
2331         * Documentation/user/macros.itexi: Add xml macros.
2332
2333         * Documentation/user/GNUmakefile (extra-local-help): Add xml rules.
2334
2335         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): Fix location.
2336
2337 2004-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2338
2339         * lily/break-substitution.cc (substitute_mutable_property_alist):
2340         only put property back into value if != SCM_UNDEFINED
2341
2342         * lily/lyric-extender.cc (print): don't take common refpoint of
2343         null object if right_text isn't there.
2344  
2345         * lily/slur-scoring.cc (struct Slur_score_state): new
2346         struct. Collect scoring function arguments.
2347         (struct Slur_score_state): add musical_dy_
2348         (get_extra_encompass_infos): new function. Split off state
2349         computations.
2350
2351         * scm/part-combiner.scm (determine-split-list): remove playing1
2352         and playing2.
2353
2354 2004-10-02  Graham Percival  <gperlist@shaw.ca>
2355
2356         * Documentation/index.html.in: remove link to templates.
2357
2358         * Documentation/user/notation.itely: more small fixes.
2359
2360 2004-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2361
2362         * lily/timing-engraver.cc (process_music): move setting
2363         measure-length. This fixes spacing-whole-rest.ly
2364
2365         * VERSION (PACKAGE_NAME): release 2.3.20
2366         
2367         * input/regression/quote-transposition.ly: update example
2368
2369         * scm/define-music-properties.scm (all-music-properties): change
2370         meaning of instrumentTransposition.  It is now the pitch played
2371         that sounds as middle C. This means that instrumentTransposition
2372         can be \transposed. 
2373         Fixes: transpose-quote.ly
2374
2375         * lily/parser.yy (command_element): reverse setting of
2376         instrumentTransposition
2377
2378         * lily/pitch.cc (pitch_interval): rename.
2379
2380         * lily/recording-group-engraver.cc (stop_translation_timestep):
2381         remove macrameing of accumulator and set_car/cdr.
2382         Fixes: transposition-quote.ly
2383
2384         * lily/music.cc (transpose): fold Event::transpose() in.
2385
2386         * lily/event.cc: remove Transpose. 
2387
2388         * lily/recording-group-engraver.cc: cleanup.
2389
2390         * ly/music-functions-init.ly (displayMusic): add function.
2391
2392         * make/lilypond.fedora.spec.in: rename file.
2393
2394         * lily/lily-lexer.cc (mark_smob): don't use ly_cdr() for getting
2395         to-be-marked objects. Use SCM_CELL_WORD_1 instead. 
2396
2397         * Documentation/user/changing-defaults.itely (Changing context
2398         properties on the fly): typo.
2399
2400         * lily/slur.cc (outside_slur_callback): try three sample points
2401         for determining collisions. This fixes: slur-script.ly.
2402
2403 2004-09-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2404
2405         * scripts/lilypond-book.py (ext2format): Add latex as Latex.
2406
2407 2004-10-01  Graham Percival  <gperlist@shaw.ca>
2408
2409         * Documentation/user/notation.itely: more small fixes.
2410
2411         * Documentation/user/examples.itely: make new sections.
2412
2413         * input/test/bar-lines.ly: improve output, fix bug.
2414
2415         * Documentation/user/changing-defaults.itely: small fixes.
2416
2417 2004-10-01  Werner Lemberg  <wl@gnu.org>
2418
2419         * tex/lilyponddefs.tex (\lilypondECencoding): New command to handle
2420         T1 encoding in texinfo mode.
2421         (\lilypondstart): Use it.
2422         (\lilypondloop, \lilyponditerate): Removed.  Unused.
2423
2424 2004-09-30  Werner Lemberg  <wl@gnu.org>
2425
2426         * tex/lilyponddefs.tex (\lilypondstart): Define
2427         \lilypondfontencoding for both texinfo and latex mode.
2428
2429         * scm/framework-tex.scm (font-load-command): Use
2430         \lilypondfontencoding.
2431
2432 2004-09-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2433
2434         * scm/framework-tex.scm (dump-page): take with-extents?
2435         argument. If true, output Y extents. Used for lilypond-book
2436         documents.
2437
2438         * scripts/lilypond-book.py (PREAMBLE_LY): set dump-extents for
2439         \bookpaper.
2440
2441         * lily/slur.cc (outside_slur_callback): epsilon-delta management
2442         for slur edges. Fixes: progerror-no-bezier-intersection.ly
2443  
2444         * scm/framework-tex.scm (dump-page): put stencil height in dumped
2445         page.
2446
2447 2004-09-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2448
2449         * Documentation/user/notation.itely (Multi measure rests):
2450         Improved example.
2451
2452 2004-09-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2453
2454         * lily/auto-beam-engraver.cc (test_moment): robustify.
2455
2456 2004-09-28  Werner Lemberg  <wl@gnu.org>
2457
2458         * scm/framework-tex.scm (font-load-command): Define proper font
2459         macro which sets font encoding if available.
2460         (define-fonts): Define \lilypondpaperinputencoding, to be taken
2461         from the \bookpaper block.
2462
2463         * tex/lilyponddefs.tex (\lilypondstart): Use
2464         \lilypondpaperinputencoding for global input encoding.
2465
2466 2004-09-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2467
2468         * lily/score.cc (Score): oops. Copy error_found_ too.
2469
2470 2004-09-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2471
2472         * stepmake/stepmake/texinfo-rules.make: 
2473         * Documentation/GNUmakefile: --srcdir build fixes.
2474
2475         * input/test/coriolan-margin.ly: Put papersize settings in \bookpaper.
2476
2477         * Documentation/user/latex-lilypond-example.latex:
2478         * Documentation/user/latex-example.latex: Fix compile errors.
2479         Still buggy, need more love.
2480
2481 2004-09-27  Werner Lemberg  <wl@gnu.org>
2482
2483         * tex/lilyponddefs.tex (\lilypondstart): Use \frenchspacing.
2484
2485 2004-09-26  Juergen Reuter  <reuter@ipd.uka.de>
2486
2487         * Documentation/user/examples.itely: removed \midi block to
2488         simplify the example
2489
2490         * Documentation/user/notation.itely: Removed superfluous
2491         TextSpanner tweakings (is already done by engraver-init.ly).
2492         Documented bug: vertical alignment of articulations.
2493
2494         * Documentation/user/notation.itely, ly/engraver-init.ly
2495         (VaticanaVoice, GregorianTranscriptionVoice): Bugfix: TextSpanner
2496         padding.
2497
2498         * Documentation/user/notation.itely, ly/engraver-init.ly: moved
2499         docu about TextSpanner padding bug from manual to engraver.ly
2500         (since it's workarounded and hence not user-visible any more)
2501
2502 2004-09-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2503
2504         * VERSION: release 2.3.19
2505
2506 2004-09-26  Graham Percival  <gperlist@shaw.ca>
2507
2508         * ly/property-init.ly: fix bug in displaying ledger lines while
2509         \hideNotes is on.
2510
2511         * Documentation/user/notation.itely: more editing.
2512
2513         * Documentation/user/examples.itely: add piano-dynamics template.
2514
2515         * input/template/piano-dynamics.ly: remove.
2516
2517         * Documentation/user/sound-output.itexi: more editing
2518
2519 2004-09-25  Graham Percival  <gperlist@shaw.ca>
2520
2521         * Documentation/user/notation.itely: more editing.
2522
2523 2004-09-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2524
2525         * scm/ly-from-scheme.scm (read-lily-expression): use ~s in format
2526         instead of ~a, to get #{ #"foo" #} actually printed to #"foo".
2527
2528 2004-09-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2529
2530         * lily/hairpin.cc (print): check columns of bounds, not bounds
2531         themselves.
2532         (print): robustify bound-padding lookup.
2533
2534         * lily/*: ly_c[ad]+r -> scm_XXX , ly_c_pair_p -> scm_is_pair.
2535
2536         * scripts/lilypond-book.py (Compile_error.process_include): catch
2537         Compile_error exception, and remove output .texi.
2538
2539         * scm/define-music-properties.scm (all-music-properties): add
2540         error-found
2541
2542         * lily/parser.yy (Music_list): add error-found to music with errors.
2543
2544         * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors.
2545
2546         * lily/book.cc (process): ignore books with errors
2547
2548         * lily/include/score.hh (class Score): add error_found_ member.
2549
2550         * lily/drum-note-engraver.cc (try_music): idem.
2551
2552         * lily/note-heads-engraver.cc: remove start-playing-event.
2553
2554         * lily/part-combine-iterator.cc (Part_combine_iterator): use
2555         BusyPlayingEvent to determine which voice was active last.
2556         (unisono): use last active to where to get unisono information
2557         from. This fixes: partcombine-rest.ly (again).
2558
2559         * scm/part-combiner.scm (determine-split-list): cleanups
2560
2561 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2562
2563         * input/regression/lyric-extender.ly: simplify.
2564         complexify.
2565
2566         * lily/lyric-extender.cc (print): use it to determine size of
2567         extender. Remove Lyric_extender::is_visible().
2568
2569         * lily/extender-engraver.cc (acknowledge_grob): store lyric in
2570         next property.
2571
2572         * lily/lyric-engraver.cc: remove get_current_rest().
2573         
2574 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2575
2576         * input/regression/lyric-extender.ly: Fix and add test.
2577
2578         * lily/extender-engraver.cc (stop_translation_timestep): Oops, typo.
2579
2580 2004-09-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2581
2582         * lily/note-head.cc: remove Note_head::extent.
2583
2584 2004-09-23  Graham Percival  <gperlist@shaw.ca>
2585
2586         * Documentation/user/tutorial.itely: do manual style 2-space
2587         indents in examples
2588
2589         * Documentation/user/notation.itely: more editing.
2590
2591 2004-09-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2592
2593         * lily/lyric-engraver.cc (get_current_rest): New function.
2594
2595         * lily/extender-engraver.cc (stop_translation_timestep): Use it:
2596         stop at rest.
2597
2598         * lily/lyric-extender.cc (print): Fix crash (Russ Ross).
2599
2600         * lily/slur-scoring.cc (get_bezier): Fix for broken beziers.
2601
2602 2004-09-23  Juergen Reuter  <reuter@ipd.uka.de>
2603
2604         * Documentation/user/examples.itely (Small ensembles): added
2605         example for transcription of mensural music
2606
2607         * Documentation/user/notation.itely (The Lyrics context): fixed broken
2608         link to SATB vocal score
2609
2610         * Documentation/user/notation.itely (System start delimiters):
2611         fixed typo: GrandStaff->StaffGroup
2612
2613         * Documentation/user/notation.itely (Ancient articulations):
2614         removed obsolete comment on \episem bug
2615
2616 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2617
2618         * scm/framework-tex.scm (output-preview-framework): Fix invocation
2619         of header.
2620
2621 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2622
2623         * lily/dynamic-engraver.cc (acknowledge_grob): attach hairpin
2624         start to note-column.
2625
2626         * lily/hairpin.cc (print): check text-interface, to attach to
2627         dynamic texts.  
2628
2629         * lily/include/text-item.hh (class Text_interface): rename
2630         Text_item -> Text_interface
2631
2632         * lily/piano-pedal-bracket.cc (print): robustify.
2633
2634 2004-09-22  Pedro Kroger  <kroeger@pedrokroeger.net>
2635
2636         * scm/paper.scm (set-paper-dimensions): add printfirstpagenumber.
2637
2638         * scm/page-layout.scm (plain-header): if printfirstpagenumber is
2639         true will print the page number in the first page.
2640
2641         * Documentation/user/changing-defaults.itely: Document
2642         printfirstpagenumber.
2643
2644 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2645
2646         * lily/phrasing-slur-engraver.cc (acknowledge_grob): avoid more
2647         objects.
2648
2649         * lily/beam-concave.cc (calc_concaveness): take absolute value of
2650         dy for scaling. This fixes various downbeams.
2651         
2652
2653         * lily/beam-quanting.cc (best_quant_score_idx): 
2654
2655 2004-09-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2656
2657         * scm/framework-tex.scm (header-to-file): Fix.
2658
2659 2004-09-22  Werner Lemberg  <wl@gnu.org>
2660
2661         * lily/parser.yy <score_body>: Fix typo.
2662
2663 2004-09-22  Graham Percival  <gperlist@shaw.ca>
2664
2665         * Documentation/user/tutorial.itely: modified a "future planning"
2666         comment.
2667
2668         * Documentation/user/notation.itely: more editing.
2669
2670 2004-09-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2671
2672         * scm/define-markup-commands.scm (note-by-number): read font-size
2673         to determine stem length. Fixes: markup-note.ly
2674
2675 2004-09-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2676
2677         * lily/slur.cc (outside_slur_callback): read #'padding for
2678         slur-padding. Fixes: slur-script.ly
2679
2680         * lily/parser.yy (score_body): disallow \bookpaper in \score.
2681
2682 2004-09-21  Juergen Reuter  <reuter@ipd.uka.de>
2683
2684         * Documentation/user/notation.itely (ancient flags): documented
2685         flags-related known bugs
2686
2687         * lily/include/ligature-engraver.hh: added comment about why and
2688         how of (non-)use of abstract virtual methods
2689
2690         * ly/engraver-init.ly (VaticanaVoice,
2691         GregorianTranscriptionVoice): bugfix (workaround): TextSpanner:
2692         unset dash-fraction property in order to get solid lines
2693
2694         * ly/engraver-init.ly (MensuralStaff): fixed bad comment
2695
2696 2004-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2697
2698         * scripts/convert-ly.py (ly): Corrected replacement of \scriptBoth
2699
2700 2004-09-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2701
2702         * lily/parse-scm.cc (internal_ly_parse_scm): Eval in module, not
2703         in function.
2704
2705         * scm/framework-tex.scm (convert-to-dvi): Use nonstopmode.  Set
2706         openout_any=p.  Throughout: progress to stderr, translate user
2707         messages.
2708
2709         * scm/output-gnome.scm: Fix font dir description.
2710
2711 2004-09-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2712
2713         * input/test/mensural-ligatures.ly (voice): move linethickness
2714         settings to bookpaper.
2715
2716         * lily/simple-spacer.cc (Module): use force to stretch to 
2717         line length as force measure for ragged spacing.
2718         
2719         * lily/lily-parser.cc (get_paper): don't set parent for \paper
2720         blocks in the parser. This eliminates ordering dependency for
2721         \bookpaper and \paper
2722
2723         * ly/part-paper-init.ly: remove file.
2724
2725         * lily/includable-lexer.cc (new_input): elucidate message.
2726
2727         * VERSION: 2.3.18 released.
2728         
2729 2004-09-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2730
2731         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: 
2732         * input/mutopia/R.Schumann/romanze-op28-2.ly:
2733         * input/mutopia/F.Schubert/standchen.ly: Remove obsolete
2734         #'Slur.attachment setting.
2735
2736         * elisp/lilypond-mode.el (LilyPond-command-alist): Use -ftex,
2737         friendlier for point and click.
2738
2739 2004-09-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2740
2741         * ly/init.ly: reverse collected scores.
2742
2743         * scm/page-layout.scm (ly:optimal-page-breaks): use non-ragged
2744         layout to determine force.
2745         
2746 2004-09-18  Werner Lemberg  <wl@gnu.org>
2747
2748         * ly/engraver-init.ly <Score> [quotedEventTypes]: Add tuplets and
2749         ties.
2750
2751         * ly/declarations-init.ly (escapedBiggerSymbol,
2752         escapedSmallerSymbol): Fix typos.
2753
2754         * scripts/convert-ly.py: s/removeTag/removeWithTag/.
2755
2756 2004-09-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2757
2758         * input/{input,regression}/*.ly: run convert-ly
2759
2760         * VERSION: release 2.3.17
2761
2762         * lily/slur-scoring.cc (enumerate_attachments): make stem_extent a
2763         little wider for attachment calculation. This prevents stem and
2764         slur touching.
2765
2766         * lily/parser.yy (direction_less_char): soft code \< \> \! \( \) (
2767         ) 
2768
2769         * input/regression/tie.ly (texidoc): cleanup.
2770
2771         * ly/declarations-init.ly (tildeSymbol): soft-code meaning of [ ]
2772         and ~
2773
2774         * lily/slur-scoring.cc (score_extra_encompass): check if extra
2775         objects are on boundary column. 
2776
2777         * lily/main.cc (parse_argv): process --tex too.
2778
2779         * ly/music-functions-init.ly (keepWithTag): add music functions
2780         keepWithTag and removeWithTag.
2781
2782         * lily/quote-iterator.cc (Quote_iterator): init transposed_musics_.
2783
2784         * lily/accidental-engraver.cc (recent_enough): interpret laziness
2785         = #t. This fixes no-reset accidental-style.
2786
2787         * input/regression/accidental-piano.ly (Module): new file.
2788
2789         * lily/lily-guile.cc (LY_DEFINE): ly_assoc_get: new function.
2790
2791 2004-09-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2792
2793         * lily/slur-scoring.cc (score_extra_encompass): widen X extent of
2794         extra encompass.
2795         (score_extra_encompass): use Y coordinate of attachment if X
2796         attachment falls in extra encompass X extent.
2797
2798         * buildscripts/guile-gnome.sh (SLIB_PATH): add SLIB_PATH to
2799         GUILE_LOAD_PATH
2800
2801 2004-09-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2802
2803         * scm/output-gnome.scm: Small fixes.
2804
2805         * buildscripts/guile-gnome.sh: Getting close to 2.6.0 release.
2806
2807 2004-09-16  Juergen Reuter  <reuter@ipd.uka.de>
2808
2809         * Documentation/user/notation.itely (Ancient flags): Removed
2810         documentation on adjust-if-on-staffline (this property was removed
2811         by Han-Wen).
2812
2813         * Documentation/user/notation.itely (Ancient notation): Minor
2814         cleanups and fixes.  Renamed "Vaticana style contexts" ->
2815         "Gregorian Chant contexts".  Added section "Mensural contexts".
2816         Added section "Ancient articulations".
2817
2818         * ly/engraver-init.ly: Added "MensuralVoice" and "MensuralStaff".
2819
2820 2004-09-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2821
2822         * buildscripts/guile-gnome.sh: Add missing bit.
2823
2824 2004-09-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2825
2826         * buildscripts/guile-gnome.sh (LD_LIBRARY_PATH): new script.
2827
2828         * lily/slur-scoring.cc (get_y_attachment_range): set end point
2829         using base_attachment.
2830
2831         * scm/page-layout.scm (default-page-make-stencil): whoops. Add
2832         page header back.
2833
2834         * scm/documentation-generate.scm (top-node): move version to top
2835         node.
2836
2837         * lily/ledger-line-spanner.cc: add ledgered-interface, with
2838         property no-ledgers.
2839
2840 2004-09-16  Heikki Junes  <hjunes@cc.hut.fi>
2841
2842         * Documentation/user/{changing-defaults,examples,invoking,
2843         tutorial}.itely: Expand 's to is.
2844
2845         * Documentation/user/notation.itely: Capitalize only first letter.
2846
2847         * Documentation/user/programming-interface.itely: Capitalize Scheme.
2848
2849         * Documentation/user/lilypond-book.itely: use @refbugs.
2850
2851         * THANKS: sort.
2852
2853         * input/mutopia/F.Schubert/morgenlied.ly,
2854         input/mutopia/J.S.Bach/baerenreiter-sarabande.ly,
2855         input/mutopia/R.Schumann/romanze-op28-2.ly: Add lifetime and full
2856         name.
2857
2858 2004-09-15  Juergen Reuter  <reuter@ipd.uka.de>
2859
2860         * mf/parmesan-heads.mf: bugfixes: (i) removed duplicate
2861         lneomensural char entry; (ii) fixed mensural/neomensural naming
2862         clash typo; (iii) lneomensural char: fixed stem attachment point.
2863         WARNING: FONT CHANGED!
2864
2865 2004-09-15  Graham Percival  <gperlist@shaw.ca>
2866
2867         * Documentation/user/introduction.itely: update \stemBoth to
2868         \stemNeutral.
2869
2870         * Documentation/user/notation.itely: more editing of the manual.
2871
2872 2004-09-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2873
2874         * lily/slur-scoring.cc (score_edges): add exp(slope*dir*leftright)
2875         factor in edge attraction. This reflects that the left edge may
2876         have a larger gap for an ascending up-slur.
2877         (get_base_attachments): copy bound Y from right bound, if there is
2878         only one note-column after the line break.
2879
2880 2004-09-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2881
2882         * buildscripts/guile-gnome.sh: Update with tarball [pre]releases.
2883
2884 2004-09-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2885
2886         * lily/phrasing-slur-engraver.cc (process_music): Create
2887         PhrasingSlur instead of Slur.
2888
2889         * Documentation/user/changing-defaults.itely (Defining new
2890         contexts): Fixed misprinted context name.
2891
2892 2004-09-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2893
2894         * ly/property-init.ly (hideStaffSwitch): remove turnOff.
2895
2896         * scripts/convert-ly.py (conv): change Both to Neutral in property
2897         settings.
2898
2899         * ly/engraver-init.ly: increase extent of Staff. 
2900
2901 2004-09-13  Graham Percival  <gperlist@shaw.ca>
2902
2903         * scm/script.scm: change behaviour of slur and accent.
2904
2905         * Documentation/user/music-glossary.tely: de-gender a few entires.
2906
2907         * Documentation/user/introduction.itely: de-gender a few sentences.
2908
2909 2004-09-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2910
2911         * input/regression/rehearsal-mark-number.ly: Reuse the existing
2912         formatting routine when adding boxed numbers. Makes it easier to
2913         extrapolate how to do for boxed letters.
2914
2915 2004-09-12  Graham Percival  <gperlist@shaw.ca>
2916
2917         * Documentation/user/notation.itely: fixed Time Signature numbers bug.
2918
2919         * Documentation/user/invoking.itexi: updated the "reporting bugs"
2920         section.
2921
2922 2004-09-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2923
2924         * scm/define-grobs.scm (all-grob-descriptions): longer
2925         ideallengths for stems in higher order beams.
2926
2927         * Documentation/user/changing-defaults.itely (Page layout):
2928         document them.
2929
2930         * scm/page-layout.scm (ly:optimal-page-breaks): use new parameters
2931         to get sane spaces for titles.
2932
2933         * ly/book-paper-defaults.ly: new parameters aftertitlespace,
2934         beforetitlespace, betweentitlespace.
2935
2936         * input/regression/beam-quant-standard.ly (primeSixteenths): add
2937         16th notes.
2938
2939         * lily/beam.cc (set_minimum_dy): new function. Round non-zero
2940         small slope up to smallest quant. This prevents small slopes from
2941         getting rounded to zero.
2942
2943         * lily/beam-quanting.cc (quanting): don't allow dy_mus slopes that
2944         are smaller than the smallest quant.
2945
2946         * input/tutorial/brahms*.ly: remove.
2947
2948         * input/*: update all .ly files.
2949          
2950         * ly/a4-init.ly (vsize): remove papersize init files.
2951
2952         * scripts/convert-ly.py (conv): add conversion.
2953
2954         * lily/parser.yy: change mode changing commands to XXXmode,
2955         eg. drummode.
2956         (mode_changing_head): group mode changes.
2957         (mode_changing_head_with_context): new commands: create context as
2958         well as change mode.
2959
2960         * input/regression/system-overstrike.ly: new file.
2961
2962         * scm/page-layout.scm (ly:optimal-page-breaks): add
2963         betweensystempadding also to fixed distance for the spring.
2964  
2965         * scm/define-grobs.scm (all-grob-descriptions): fix order of
2966         key-cancellation.
2967
2968         * input/regression/beam-concave-damped.ly: new file.
2969
2970         * lily/beam-concave.cc: new file, with new routines for concave
2971         decisions. There are now two types of concaveness: 1. a sharp
2972         logic decision forcing a beam horizontal, and 2. a number that
2973         measures how concave beams are that are not caught by 1.
2974
2975         This fixes: morgenlied.ly and input/regression/beam-concave.ly
2976         
2977         * lily/new-fingering-engraver.cc (stop_translation_timestep): new
2978         property: add-stem-support
2979
2980 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
2981
2982         * lily/slur-scoring.cc (get_bound_info): only do
2983         broken trend at the end of the line.
2984
2985         * VERSION (PACKAGE_NAME): release 2.3.16.
2986
2987         * input/regression/phrasing-slur.ly (Module): remove (duplicate
2988         with phrasing-slur-slur-avoid.ly)
2989
2990         * lily/slur-scoring.cc (struct Extra_collision_info): collect
2991         parameters for extra offset.
2992         (get_bezier): add slurs mid-points for curve determination
2993         (score_extra_encompass): add slur end points for scoring.
2994
2995 2004-09-11  Matthias Neeracher  <neeracher@mac.com>
2996
2997         * scm/framework-ps.scm (reencode-font): Handling font scaling
2998         and reencoding differently to work around a bug in gs 8.30 and
2999         earlier.
3000         Update callers.
3001
3002 2004-09-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3003
3004         * lily/slur-scoring.cc (broken_trend_y): always take use vdir
3005         extent index of other system. Fixes slurs across line breaks.
3006
3007         * lily/tuplet-engraver.cc (start_translation_timestep): use
3008         Tuplet_description::stop_ for determining when to stop producing
3009         tuplet brackets. This fixes: tuplet-overwrite.ly
3010
3011         * lily/*-engraver.cc: remove all Protected_scm objects to fix GC
3012         errors with GUILE 1.7 CVS.
3013
3014         * lily/translator.cc (derived_mark): new function.
3015
3016         * lily/slur-scoring.cc (score_encompass): new penalty type:
3017         variance penalty demerits slurs where one head/stem is much
3018         closer to the slur than average.
3019
3020         * lily/tuplet-bracket.cc (print): use robust_relative_extent
3021         iso. extent()
3022         (calc_position_and_height): use robust_relative_extent(). This
3023         fixes a couple of programming_errors
3024
3025         * input/regression/part-combine-mmrest-after-solo.ly (Module): new
3026         file.
3027
3028         * lily/part-combine-iterator.cc (unisono): bugfix for the case
3029         that voice-2 plays solo, and voice-1 has an mmrest that starts
3030         earlier. In that case, we switch to voice-2, so we catch the
3031         mmrest of voice-2. This fixes: partcombine-rest.ly.
3032  
3033 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3034
3035         * scm/define-grob-properties.scm (all-internal-grob-properties):
3036         add adjacent-hairpins property.
3037
3038         * lily/hairpin.cc: lengthen hairpin if space is available.
3039
3040         * input/regression/dynamics-hairpin-length.ly (Module): new file.
3041
3042 2004-09-10  Graham Percival  <gperlist@shaw.ca>
3043
3044         * Documentation/user/notation.itely: small fixes to docs.
3045
3046 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3047         
3048         * VERSION (PACKAGE_NAME): release 2.3.15
3049
3050         * make/lilypond.redhat.spec.in (Requires): bump requirement for
3051         ec-fonts-mftraced
3052
3053         * mf/GNUmakefile (SAUTER_FONTS): remove ecb10. This is provided by
3054         the latest ec-fonts-mftraced package.
3055
3056         * scm/define-context-properties.scm
3057         (all-internal-translation-properties): add property. Remove
3058         definition of quotes property.
3059
3060         * Documentation/user/notation.itely (Quoting other voices):
3061         document it
3062
3063         * lily/quote-iterator.cc (moment_less): add quotedEventTypes
3064         property, to determine what events are processed in \quote.
3065
3066 2004-09-10  Juergen Reuter  <reuter@ipd.uka.de>
3067
3068         * (many files): removed most occurrences of underscore ("_")
3069         from font characters; made font character naming more
3070         consistent
3071
3072         * input/test/gregorian-scripts.ly: fixed another victim of grand
3073         replacement operations
3074
3075         * lily/vaticana-ligature-engraver.cc: caught some more "_"
3076         inconsistencies
3077
3078         * input/puer-fragment.ly: bugfix: lyrics hyphen: syntax update
3079
3080 2004-09-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3081
3082         * Documentation/user/changing-defaults.itely (Paper size): doc
3083         landscape
3084         
3085
3086         * scm/framework-ps.scm (eps-header): bugfixes. 
3087
3088         * scm/titling.scm (default-score-title): remove opus from the
3089         \score title.
3090
3091 2004-09-08  Pedro Kroger  <kroeger@pedrokroeger.net>
3092
3093         * scripts/convert-ly.py (program_name): changed to sys.argv[0]
3094
3095         * scripts/abc2ly.py (program_name): changed to sys.argv[0]
3096
3097         * scripts/etf2ly.py (program_name): changed to sys.argv[0]
3098
3099         * scripts/lilypond-book.py (program_name): changed to sys.argv[0]
3100
3101         * scripts/lilypond-latex.py (program_name): changed to sys.argv[0]
3102
3103         * scripts/midi2ly.py (program_name): changed to sys.argv[0]
3104
3105         * scripts/mup2ly.py (program_name): changed to sys.argv[0]
3106
3107         * scripts/ps2png.py (program_name): changed to sys.argv[0]
3108
3109 2004-09-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3110
3111         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Increment
3112         character position.  Huh?
3113
3114         * scm/output-gnome.scm (placebox): Shield affine-relative.
3115
3116         * buildscripts/guile-gnome.sh: Update.  Do not use GUILE CVS,
3117         cater for system's pango 1.5.1.
3118
3119         * input/regression/new-slur.ly: Add ugly slur from scsii-sarabande.
3120
3121         * scm/slur.scm: Tweak.
3122
3123 2004-09-08  Graham Percival  <gperlist@shaw.ca>
3124
3125         * Documentation/user/{first couple of chapters}: more editing.
3126
3127 2004-09-07  Graham Percival  <gperlist@shaw.ca>
3128
3129         * Documentation/topdocs/AUTHORS.texi, THANKS: add/modify my name
3130         and summary.
3131
3132         * Documentation/user/{first couple of chapters}: the big "Graham's
3133         moved to a new city, his friends haven't arrived, and he has no
3134         internet access" patch.  Numerous editorial and stylistic changes
3135         to the manual.
3136
3137 2004-09-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3138
3139         * scm/framework-ps.scm (output-framework): handle landscape settings.
3140
3141         * ps/lilyponddefs.ps: cleanup.
3142
3143 2004-09-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3144
3145         * scm/define-grobs.scm (all-grob-descriptions): unset
3146         threshold. This fixes morgenlied. 
3147
3148         * scm/page-layout.scm (ly:optimal-page-breaks): whoops. Thinko in
3149         rod calculation.
3150
3151         * lily/system.cc (get_line): don't take piano-pedal & dynamic line
3152         spanners into account for staff-extents.
3153
3154         * lily/ottava-bracket.cc (print): take common refpoint of dots
3155         into account as well.
3156
3157 2004-09-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3158
3159         * lily/lookup.cc (triangle): translate by interval.
3160
3161         * VERSION (PACKAGE_NAME): release 2.3.14
3162
3163         * Documentation/user/changing-defaults.itely (Page layout): add
3164         betweensystempadding
3165
3166         * scm/page-layout.scm (ly:optimal-page-breaks): typo.
3167
3168         * input/regression/quote-cyclic.ly (Module): new file.
3169
3170         * scm/lily.scm (print): add function.
3171
3172         * scm/music-functions.scm (quote-substitute): new
3173         function. Substitute \quote when putting music into \score.
3174
3175         * input/regression/key-signature-cancellation.ly (Module): new file.
3176
3177         * lily/*.cc: more ly_scm2 -> scm_to converions.
3178
3179         * lily/key-signature-interface.cc (print): take position
3180         difference into account when spacing naturals.
3181
3182         * lily/key-engraver.cc (create_key): create KeyCancellation grob
3183         separately, so the cancellation can be put before the staff-bar
3184
3185         * scm/define-grobs.scm (all-grob-descriptions): add a
3186         KeyCancellation grob.
3187
3188         * lily/tuplet-engraver.cc (struct Tuplet_description): new
3189         struct. Use to clean-up Tuplet_engraver
3190
3191 2004-09-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3192
3193         * lily/*: ly_scm2int -> scm_to_int
3194         ly_scm2double -> scm_to_double
3195
3196         * lily/include/lily-guile.hh (scm_from_double): more compat glue.
3197
3198 2004-09-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3199
3200         * lily/simple-spacer.cc (LY_DEFINE): return something sensible for
3201         0 springs
3202
3203         * lily/system.cc (post_processing): 
3204
3205         * scm/page-layout.scm (ly:optimal-page-breaks): implement uniform
3206         density for vertical spacing by means of force penalty.
3207         
3208         * scm/paper.scm (paper-set-staff-size): add betweensystemspace as
3209         dimension-variables
3210
3211         * Documentation/user/changing-defaults.itely (Page layout): add
3212         betweensystemspace variable.
3213
3214         * ly/book-paper-defaults.ly: set betweensystemspace: 20 mm
3215
3216         * scm/page-layout.scm (space-systems): new function. Use spring
3217         and rod approach for vertically spacing systems.
3218
3219         * ly/engraver-init.ly: tune down minimumVerticalExtent.
3220
3221         * scm/define-grobs.scm (all-grob-descriptions): set threshold for
3222         vertical alignment.
3223
3224         * lily/slur-engraver.cc (process_music): add warning for slur.
3225
3226 2004-09-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3227
3228         * lily/include/lily-guile.hh (scm_is_number): add scm_is_number
3229
3230         * lily/simple-spacer.cc (LY_DEFINE): ly_solve_spring_rod_problem:
3231         export spacing routine to SCM.
3232
3233         * lily/include/simple-spacer.hh (struct Simple_spacer_wrapper):
3234         new class, separate Grobs from interface.
3235
3236 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3237
3238         * lily/include/lily-guile.hh: compatibility glue for 1.6
3239
3240         * lily/*.cc (acknowledge_grob): ly_string_p -> scm_is_string.
3241
3242         * lily/lily-guile.cc: remove ly_scm2str0.
3243
3244 2004-09-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3245
3246         * Documentation/user/macros.itexi: Use @inforef iso @uref for
3247         external references.  Fixes HTML cross references with makeinfo 4.7.
3248
3249 2004-09-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3250
3251         * lily/include/simple-spacer.hh (struct Simple_spacer): remove
3252         expand_only option.
3253
3254 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3255
3256         * lily/system.cc (get_line): add System stencil to exprs. Fixes
3257         system-extents.ly.
3258
3259         * ly/engraver-init.ly: decrease minimumVerticalExtent to (-5,5).
3260
3261         * scm/define-grobs.scm (all-grob-descriptions): decrease padding
3262         for MultiMeasureRestNumber
3263
3264         * VERSION (PACKAGE_NAME): release 2.3.13
3265
3266 2004-08-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3267
3268         * lily/context-scheme.cc (LY_DEFINE): ly:context-grob-definition
3269         takes two arguments.
3270
3271 2004-08-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3272
3273         * input/regression/slur-stem-broken.ly: remove.
3274
3275         * lily/slur.cc: add quant-score.
3276
3277         * input/regression/slur-staccato.ly (texidoc): remove
3278
3279         * make/lilypond.redhat.spec.in (Group): remove musedata2ly
3280
3281 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3282
3283         * lily/include/bezier-bow.hh: remove.
3284
3285         * lily/slur-bezier-bow.cc (Module): remove.
3286
3287         * lily/include/slur.hh (Module): remove.
3288
3289         * lily/slur.cc: remove
3290
3291         * input/test/slur-beautiful.ly (Module): remove
3292
3293         * input/test/slur-attachment-override.ly (Module): remove
3294
3295         * lily/slur-quanting.cc (after_line_breaking): only do scoring
3296         when less than 4 control-points.
3297
3298         * lily/key-signature-interface.cc: add style.
3299
3300         * Documentation/user/notation.itely (Automatic staff changes):
3301         document new behavior.
3302
3303         * input/regression/slur-extreme.ly: new file.
3304
3305         * ly/engraver-init.ly (Score): set bassStaffProperties to \clef
3306         bass. Obviates \clef bass in the bass staff, when using \autochange 
3307
3308         * lily/auto-change-iterator.cc (construct_children): instantiate
3309         up/down Staff, create Voice on up staff initially. Obviates
3310         explicit instantiation of up/down contexts for \autochange. 
3311
3312         * lily/slur-quanting.cc (get_bezier): new functionality, blow up
3313         slur depending on extents of note heads.
3314         
3315 2004-08-28  Graham Percival  <gperlist@shaw.ca>
3316
3317         * Documentation/user/tutorial.itely: minor editing.
3318
3319         * Documentation/user/examples.itely: tiny editing.
3320
3321 2004-08-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3322
3323         * lily/slur-quanting.cc (init_score_param): read scoring
3324         parameters from slur-details property
3325
3326         * scm/define-grobs.scm (all-grob-descriptions): add inside-slur to
3327         Accidental
3328
3329         * Documentation/user/advanced.itely: removed.
3330
3331         * Documentation/user/programming-interface.itely (How markups work
3332         internally): new subsection.
3333
3334         * Documentation/user/converters.itely (Invoking abc2ly): remove
3335         musedata2ly.
3336
3337 2004-08-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3338
3339         * Documentation/user/point-and-click.texi (Point and click): new file.
3340         put point & click in appendix.
3341         
3342         * Documentation/user/changing-defaults.itely (Vertical spacing):
3343         corrections
3344
3345 2004-08-27  Graham Percival  <gperlist@shaw.ca>
3346
3347         * Documentation/user/introduction.itely: add note about the
3348         "example templates" section of the manual, and remove link to
3349         input/template/
3350
3351 2004-08-27  Juergen Reuter   <reuter@ipd.uka.de>
3352
3353         * Documentation/user/lilypond-book.itely: fix parse error: @LaTeX
3354         -> La@TeX
3355
3356         * mf/parmesan-heads.mf: draw_diamond_head: fixed pen width; added
3357         missing lneo_mensural head; editorial cleanups
3358
3359         * lily/mensural-ligature.cc: added more comments
3360
3361 2004-08-26  Graham Percival  <gperlist@shaw.ca>
3362
3363         * Documentation/user/examples.itely: second, third, fourth, and fifth
3364         sections added.
3365
3366         * input/template/{various}: removed files included in examples.itely.
3367
3368 2004-08-26  Juergen Reuter   <reuter@ipd.uka.de>
3369
3370         * lily/stem.cc: bugfix: adjust-if-on-staffline: use
3371         Stem::stem_end_position instead of broken
3372         Staff_symbol_referencer::get_position
3373
3374 2004-08-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3375
3376         * debian/changelog: debian patch by Anthony Fok.
3377
3378         * lily/stem.cc (flag): bugfix for mensural flags (thanks Juergen!)
3379
3380         * lily/slur-engraver.cc (try_music): ignore slurs_. Otherwise we
3381         get spurious messages with skipTypesetting on.
3382
3383 2004-08-25  Graham Percival   <gperlist@shaw.ca>
3384
3385         * Documentation/user/lilypond-book.itely: slight clean-up.
3386
3387         * Documentation/user/examples.itely: began section.
3388
3389 2004-08-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3390
3391         * lily/script-interface.cc: add slur property.
3392
3393         * lily/slur-quanting.cc (score_extra_encompass): avoid other slurs
3394         too.
3395
3396         * input/regression/phrasing-slur-slur-avoid.ly: new file.
3397
3398         * lily/ottava-bracket.cc (print): always start from right edge of
3399         a broken bound. This fixes ottava-clef.ps 
3400
3401 2004-08-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3402
3403         * input/regression/slur-script-inside.ly: new file.
3404
3405         * lily/new-slur.cc (outside_slur_callback): new function, to make
3406         scripts avoid slurs 
3407
3408         * lily/slur-engraver.cc (finalize): 
3409
3410         * lily/script-interface.cc: add inside-slur property.
3411
3412         * lily/slur-engraver.cc (finalize): read inside-slur property.
3413
3414         * scm/lily.scm (postscript->png): use ~a iso. ~s in progress
3415         message.
3416
3417         * ly/property-init.ly (unHideNotes): hide accidentals at staff
3418         level. Fixes: hideNotes-accidental.ly
3419
3420 2004-08-23  Pedro Kroger  <kroeger@pedrokroeger.net>
3421
3422         * scm/page-layout.scm (plain-header): fix bug that print page
3423         number in the first page if firstpagenumber was different than 1.
3424
3425 2004-08-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3426
3427         * scm/framework-ps.scm (define-fonts): use UPCASE for Bluesky
3428         fonts. Fixes triangle markup for chords.
3429
3430         * lily/slur-quanting.cc (score_extra_encompass): make score depend
3431         on distance. This fixes slur-tenuto.ly and slur-tie.ly
3432  
3433         * flower/include/interval.hh (T>): add distance() function
3434
3435         * lily/ottava-bracket.cc (print): add dots to extent. Fixes
3436         octaviation-dot.ly 
3437
3438         * lily/context-scheme.cc: ly_context_grob_definition: new function.
3439
3440         * VERSION (MY_PATCH_LEVEL): release 2.3.12
3441
3442         * lily/new-slur.cc (add_column): remove set_interface()
3443
3444 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3445
3446         * input/regression/slur-double.ly: new file. 
3447
3448         * lily/slur-engraver.cc: add doubleSlurs property
3449
3450         * scm/fret-diagrams.scm (label-fret): use cond instead of case for
3451         symbols.
3452
3453         * Documentation/user/notation.itely (Easy Notation note heads):
3454         revise notation Chapter.
3455
3456         * ly/music-functions-init.ly (makecluster): add makeClusters music
3457         function.
3458
3459         * lily/part-combine-engraver.cc: rename soloADue ->
3460         printPartCombineTexts
3461
3462         * scripts/convert-ly.py (conv): junk script{Up|Down|Both}.
3463
3464         * lily/horizontal-bracket.cc (print): use
3465         Tuplet_bracket::make_bracket, so it supports bracket-flare,
3466         edge-eight and shorten-pair.
3467
3468 2004-08-22  Pedro Kroger  <kroeger@pedrokroeger.net>
3469
3470         * Documentation/user/changing-defaults.itely (Page layout):
3471         description of firstpagenumber. Moved @refbugs about rightmargin
3472         to the end of the section (it was looking like the documentation
3473         after the refbugs was part of the bug comment).
3474
3475         * scm/framework-ps.scm (output-framework): set the first
3476         postscript page number to firstpagenumber
3477
3478         * scm/page-layout.scm (ly:optimal-page-breaks): print the first
3479         page number according to firstpagenumber
3480
3481         * scm/paper.scm (set-paper-dimensions): added firstpagenumber
3482         parameter
3483
3484 2004-08-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3485
3486         * lily/slur-engraver.cc (class Slur_engraver): simplify: remove
3487         nested slurs. 
3488
3489         * scripts/convert-ly.py (lilypond_version_re_str): handle
3490         \version "bar" % "foo"
3491
3492         * lily/completion-note-heads-engraver.cc (process_music): set
3493         duration-log before announcing object.
3494         
3495         * lily/staff-symbol.cc (print): subtract thickness from staff line
3496         length
3497
3498         * lily/parser.yy (book_body): disallow { ..music.. } inside \book
3499         
3500 2004-08-21  Carl Sorensen  <carldsorensen@comcast.net>
3501
3502         * scm/stencil.scm: remove fontify-text and fontify-text-white
3503
3504 2004-08-21  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3505
3506         * scm/part-combiner.scm: skip name string. Fixes segfault problem.
3507
3508         * Documentation/user/sound-output.texi (Sound): new file. Move all
3509         MIDI related information.
3510
3511 2004-08-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3512
3513         * lily/script-engraver.cc (acknowledge_grob): only take into
3514         account note heads with a music cause. Fixes ambitus-accent.ly
3515
3516         * scm/define-markup-commands.scm (finger): set encoding to
3517         fetaNumber.
3518
3519 2004-08-20  Erik Sandberg <ersa9195@student.uu.se>
3520
3521         * scripts/convert-ly.py: typo
3522
3523 2004-08-19  Carl Sorensen  <carldsorensen@comcast.net>
3524
3525         * scm/fret-diagrams.scm: Eliminate use of fontify-text; make 
3526         font calls for diagrams based on paper and props
3527
3528 2004-08-19  Graham Percival <gperlist@shaw.ca>
3529
3530         * scripts/convert-ly.py: add \newpage -> \pageBreak rule.
3531
3532 2004-08-19  Erik Sandberg <ersa9195@student.uu.se>
3533
3534         * ly/spanners-init.ly: Correct meanings of setTextDecresc/Dim,
3535         added setHairpinDecresc/Dim
3536
3537 2004-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3538
3539         * lily/include/lily-guile.hh: Cosmetics.
3540
3541 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3542
3543         * input/regression/fermata-rest-position.ly: new file
3544
3545         * ly/property-init.ly (hideNotes): remove \setMmRestFermata
3546
3547         * scripts/convert-ly.py (conv): add rule for \setMmRestFermata
3548
3549 2004-08-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3550
3551         * scm/framework-tex.scm (output-preview-framework) 
3552         (output-classic-framework): 
3553         * scm/framework-ps.scm (output-preview-framework):
3554         s/ly:paper-book-lines/ly:paper-book-systems/g
3555
3556         * scm/fret-diagrams.scm (ss-font-encoding):
3557         s/my-font-encoding/ss-font-encoding
3558
3559 2004-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3560
3561         * scm/music-functions.scm (direction-polyphonic-grobs): Set
3562         direction also on fingerings.
3563
3564         * lily/clef-engraver.cc: Add forceClef to list of read properties.
3565
3566 2004-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3567
3568         * po/nl.po: Some updates.
3569
3570         * scm/lily.scm (_): New function.
3571         (postscript->pdf, postscript->png, lilypond-main)
3572         (postscript->pdf): Use it.  Write messages to stderr.
3573
3574         * stepmake/stepmake/po-targets.make (ALL_PO_SOURCES): Add SCM_FILES.
3575
3576         * scm/GNUmakefile (XGETTEXT_FLAGS): Set language to Lisp.
3577         xgettext does not recognise scheme yet.  Patch submitted.
3578
3579         * lily/scm-option.cc (LY_DEFINE):
3580         * lily/main.cc: The program is now called lilypond (WAS:
3581         lilypond-bin).
3582
3583         * lily/rest-collision.cc (do_shift): Uniformise two too many rests
3584         messages.
3585
3586         * lily/include/paper-book.hh
3587         * lily/include/paper-system.hh: Finish renaming of paper-line to
3588         system.  Fix users.
3589
3590 2004-08-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3591
3592         * scm/documentation-generate.scm (string-append): add version.
3593
3594         * scm/define-markup-commands.scm (box): add box-padding and
3595         thickness props for the box command.
3596  
3597         * Documentation/user/changing-defaults.itely (Text encoding):
3598         elucidate use of \encoding for \header strings.
3599
3600         * lily/parser.yy (lyric_element): use \encoding for lyrics strings.
3601
3602         * lily/score.cc (LY_DEFINE): check if length of music > 0. Fixes:
3603         staff-change.ly
3604
3605         * lily/output-def.cc (assign_context_def): use set_variable().
3606
3607         * lily/text-item.cc (interpret_string): accept string input
3608         encoding too.
3609
3610         * scm/encoding.scm (read-encoding-file): print warning when file
3611         can't be found.
3612
3613         * tex/latin1.enc: remove.
3614
3615         * tex/GNUmakefile ($(outdir)/latin1.enc): create latin1 from GS.
3616
3617         * lily/rod.cc (columnize): robustness fix. Don't crash for
3618         nil span points. Fixes: appoggiatura-segfault.ly
3619         (add_to_cols): extra robustness fix.
3620
3621 2004-08-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3622
3623         * lily/text-item.cc (interpret_string): use lookup_variable() to
3624         fidn inputencoding. Now, \paper inherits inputencoding from
3625         \bookpaper.
3626
3627         * lily/script-engraver.cc (stop_translation_timestep): remove slur
3628         collision kludge.
3629
3630         * lily/dynamic-engraver.cc (typeset_all): remove slur collision
3631         kludge.
3632
3633 2004-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3634
3635         * lily/main.cc (parse_argv): Bugfix: handle 'p'.  Add warning.
3636
3637 2004-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3638
3639         * lily/spanner.cc (spanned_rank_iv): Bugfix.
3640
3641         * lily.scm: Mark un-internationlised user messages (with FIXME).
3642
3643         * lily/include/modified-font-metric.hh (struct
3644         Modified_font_metric): New file.  (WAS: incorrectly named
3645         scaled-font-metric.hh ?)
3646
3647         * lily/include/scaled-font-metric.hh: Remove.
3648
3649         * lily/text-item.cc (interpret_string): Identify and document
3650         input-encoding problem.
3651
3652         * lily/paper-book.cc (pages): Do not use `paper' as variable name
3653         for a Bookpaper.
3654
3655         * tex/latin1.enc: Replace /minus with /hyphen.
3656
3657         * scm/encoding.scm: For latin1 (input-)encoding, use
3658         latin1.  (Cork.enc is NOT latin1 -- see man latin1).
3659
3660         * ly/book-paper-defaults.ly: Add a comment about suspicious TeX
3661         inputencoding.
3662
3663 2004-08-12  Heikki Junes  <hjunes@cc.hut.fi>
3664
3665         * Documentation/topdocs/INSTALL.html: fixes.
3666
3667 2004-08-12  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
3668
3669         * buildscripts/builder.py: Fix for scons CVS.
3670
3671 2004-08-11  Heikki Junes  <hjunes@cc.hut.fi>
3672
3673         * Documentation/user/notation.itely,
3674         Documentation/topdocs/NEWS.texi, input/test/ambitus-mixed.ly,
3675         input/test/ambitus-mixed.ly: fix plurals:
3676         english: ambit, pl. ambits; latin: ambitus, pl. ambitus.
3677
3678 2004-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3679
3680         * lily/dynamic-engraver.cc (typeset_all):
3681         * lily/script-engraver.cc (stop_translation_timestep): Handle
3682         collisions with new-slur.
3683
3684 2004-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
3685
3686         * scm/define-grobs.scm (all-grob-descriptions): Add
3687         new-slur-interface.
3688
3689 2004-08-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3690
3691         * elisp/lilypond-mode.el (LilyPond-command-alist): LilyPond now
3692         produces .PS
3693
3694 2004-08-09  Carl Sorensen  <carldsorensen@comcast.net>
3695
3696         * scm/define-grob-properties.scm (all-user-grob-properties): fix
3697         definition of number-type
3698
3699 2004-08-08  Carl Sorensen  <carldsorensen@comcast.net>
3700
3701         * scm/fret-diagrams.scm : change sans-serif font encoding from 
3702         TeX-text to ec (uses ecss fonts instead of cmss fonts)
3703
3704         * scm/define-grob-interfaces.scm (fret-diagram-interface): add
3705         number-type and label-dir
3706
3707         * scm/define-grob-properties.scm: add number-type and label-dir
3708
3709         * scm/fret-diagrams.scm (label-fret): allow fret label to be on either
3710         left or right.  Allow choice of upper-case roman, lower-case roman, or
3711         arabic numerals in fret label
3712
3713 2004-08-04  Werner Lemberg  <wl@gnu.org>
3714
3715         * lily/slur-quanting.cc: Include libc-extension.hh.
3716         s/round/my_round/.
3717         * ly/engraver-init.ly (VaticanaVoice, GregorianTranscriptionVoice):
3718         s/autobeaming/autoBeaming/.
3719
3720 2004-08-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3721
3722         * VERSION: 2.3.11 released.
3723
3724         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): reinstate
3725         renameinput.
3726
3727 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3728
3729         * lily/lookup.cc (round_filled_box): remove warnings about blot
3730         diameter.
3731
3732         * scm/paper.scm (paper-set-staff-size): make linethickness more
3733         easily tunable.
3734
3735         * lily/parser.yy (new_lyrics): \addlyrics -> \oldaddlyrics,
3736         \newlyrics -> \addlyrics
3737
3738         * lily/text-spanner.cc (print): use it.
3739
3740         * lily/dynamic-text-spanner.cc (print): use it.
3741
3742         * lily/grob.cc (robust_relative_extent): new function.
3743
3744         * scripts/lilypond-book.py (main): add -f tex as default process.
3745
3746         * lily/text-spanner.cc (print): only take linear_combination of
3747         nonempty interval.
3748         
3749
3750 2004-08-02  Pedro Kroger  <kroeger@pedrokroeger.net>
3751
3752         * scm/page-layout.scm (default-page-make-stencil): If leftmargin
3753         isn't specified by the user in \bookpaper center the music in the
3754         page.
3755
3756 2004-08-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3757
3758         * Fix some problems after the renaming of my-lily -> lily
3759
3760 2004-08-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3761
3762         * lily/lily-parser.cc (parse_string): don't overwrite keytable_.
3763
3764         * lily/slur-quanting.cc (enumerate_attachments): apply center on
3765         stem-X in more cases. 
3766
3767         * lily/stem.cc (dim_callback): solve todo.
3768
3769 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3770
3771         * input/test/README: new file.
3772
3773         * lily/lily-parser.cc: rename my-lily* files.
3774
3775         * lily/my-lily-parser.cc (LY_DEFINE): plug memory leak: unprotect
3776         parser.
3777
3778         * lily/include/my-lily-lexer.hh (class Lily_lexer): smobify lexer.
3779
3780         * lily/include/my-lily-parser.hh: rename My_lily -> Lily
3781
3782         * make/mutopia-targets.make (local-WWW): don't make ps.gz
3783         examples. They take a huge amount of space.
3784
3785         * Documentation/user/GNUmakefile: fix symlinks.
3786
3787         * VERSION: 2.3.10 released.
3788         
3789         * input/test/lyrics-skip-notes.ly: remove
3790
3791         * input/test/stem-cross-staff.ly (noFlag): fold into manual
3792
3793         * input/test/{spacing-2,staff-space,tablature,textscript}.ly:
3794         remove.
3795
3796 2004-08-01  Heikki Junes  <hanwen@xs4all.nl>
3797
3798         * Documentation/user/{changing-defaults,notation,tutorial}.itely:
3799         fixes.
3800
3801 2004-08-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3802
3803         * input/regression/beam-dir-functions.ly: move from test/
3804
3805         * Documentation/user/notation.itely (Feathered beams): new node.
3806
3807         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3808         new node
3809
3810         * input/regression/lyric-hyphen-retain.ly: move to regression.
3811
3812         * input/regression/harmonic.ly: fold into manual
3813         
3814         * input/test/{hshift,move-accidentals,crescendi,feathered-beam,
3815         stem-length,chord-names-no-inversions}.ly: remove
3816         
3817         * input/test/tie-cross-voice.ly: move to regression.
3818
3819         * Documentation/user/notation.itely (Running trills): new node.
3820
3821         * scm/define-grobs.scm (all-grob-descriptions): new grob TrillSpanner
3822
3823         * scm/define-music-types.scm (music-descriptions): add TrillSpanEvent
3824
3825         * lily/trill-spanner-engraver.cc: new file.
3826
3827         * input/regression/trill-spanner.ly: new file.
3828
3829         * input/test/timing.ly: fold into manual.
3830
3831         * input/test/time.ly: remove
3832
3833         * input/test/trill.ly: remove
3834         
3835         * input/test/time-signature-double.ly: fold into manual
3836
3837         * input/test/separate-staccato.ly: remove
3838
3839         * input/test/spanner-after-break-tweak.ly: fold into manual.
3840
3841         * input/test/script-priority.ly: fold into manual.
3842
3843         * input/test/scheme-interactions.ly: remove.
3844         
3845         * input/test/unfold-all-repeats.ly (mel),
3846         input/test/repeat.ly,input/test/repeat-shorter-bracket.ly,
3847         input/test/polymetric-differing-notes.ly input/test/polymetric.ly:
3848         fold into manual.
3849
3850         * input/regression/no-staff.ly: move from input/test/
3851
3852         * input/regression/markup-score.ly: move from input/test/
3853
3854         * input/test/lyrics-melisma-faster.ly: fold into manual
3855         
3856         * input/test/lyrics-melisma-variants.ly: fold into manual
3857
3858         * Documentation/user/notation.itely (Popular music): new node. 
3859
3860         * input/test/gourlay.ly: remove
3861         
3862         * input/test/improv.ly: fold into manual.
3863
3864         * input/test/figured-bass-alternate.ly (fl): remove
3865
3866         * lily/dynamic-text-spanner.cc (print): new file.
3867
3868         * scm/define-grobs.scm (all-grob-descriptions): add DynamicTextSpanner
3869
3870         * lily/engraver-group-engraver.cc (do_announces): reorder logic:
3871         keep recursing into children in case a parent context inserts a
3872         grob into a child context.
3873
3874         * lily/dynamic-engraver.cc (acknowledge_grob): add accidentals to
3875         
3876 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3877
3878         * scm/define-markup-commands.scm (postscript): new markup command
3879         \postscript
3880
3881         * Documentation/user/notation.itely (Formatting cue notes): new
3882         section.
3883
3884         * input/test/clef-end-of-line.ly: fold into manual.
3885
3886         * input/test/scales-greek.ly: remove.
3887
3888         * input/test/chords-without-melody.ly: fold into manual.
3889
3890         * input/test/cadenza-skip.ly: remove.
3891
3892         * input/test/clef-8-syntax.ly: remove.
3893
3894         * input/test/clef-manual-control.ly: move into manual.
3895
3896         * Documentation/user/notation.itely (Aligning to cadenzas): fold
3897         in cadenza-skip.ly
3898
3899         * mf/parmesan*.mf: change neo_mensural to neomensural.
3900
3901         * input/test/trills.ly: remove.
3902
3903         * input/test/transposition.ly: remove.
3904
3905         * input/test/to-xml.ly: move to no-notation.
3906
3907         * buildscripts/lilypond-profile.sh: change zsh bomb to warning.
3908
3909         * lily/ledger-line-spanner.cc (print): use staff variable, not
3910         me. Fixes ledger lines on differently sized staves.
3911
3912         * input/test/rhythm-excercise.ly: remove file.
3913
3914         * lily/stem.cc (dim_callback): only do something if visible. Fixes
3915         spurious flag not found warning for 128th rest.
3916
3917         * input/regression/rest-dot-position.ly: new file.
3918         
3919         * input/test/rest-dot-positions.ly: remove
3920
3921         * lily/staff-symbol-referencer.cc (get_position): emergency
3922         fallback: use coordinate * 2.
3923
3924         * input/no-notation/midi-scales.ly: move from test/
3925
3926         * scm/define-markup-commands.scm (score): remove debugging code.
3927
3928         * input/test/incipit.ly (violin): remove. 
3929
3930         * lily/system-start-delimiter.cc (print): only draw system
3931         delimiter to staves that reach up to left bound of the delimiter.
3932
3933         * input/no-notation/embedded-scm.ly: move from test/
3934
3935         * input/test/follow-voice.ly: remove
3936
3937         * input/no-notation/dynamic-absolute-volume.ly: move from test/.
3938
3939         * input/test/drarn*: remove
3940         
3941         * input/test/count-systems.ly: remove.
3942
3943         * lily/bar-line.cc (compound_barline): fix : for staff without
3944         lines.
3945
3946         * lily/accidental.cc (print): use music_font_alist_chain(). This
3947         fixes smaller cautionaries.
3948
3949         * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
3950         encoding for accidental.
3951
3952         * Documentation/user/notation.itely (Educational use): new section
3953
3954         * input/test/*.ly: clean up directory: move examples into manual
3955         or regtest.
3956         
3957
3958         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.log): add
3959         mode as well. This fixes resolution errors.
3960
3961 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3962
3963         * scm/lily.scm (postscript->png): show commands for --verbose.
3964
3965         * flower/include/getopt-long.hh: opps. short option should be
3966         char, not int.
3967
3968         * Documentation/user/GNUmakefile: use symlinks to save space.
3969
3970         * VERSION: 2.3.9 released.
3971
3972         * scripts/convert-ly.py (conv): remove \lyrics from \lyricsto.
3973
3974         * ly/gregorian-init.ly (neumeDemoPaper): remove duplication from
3975         manual.
3976
3977         * Documentation/user/tutorial.itely (Integrating text and music):
3978         remove \score and \notes from manual.
3979
3980         * lily/my-lily-lexer.cc (My_lily_lexer): really switch on note
3981         mode in the beginning.
3982
3983 2004-07-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3984
3985         * Documentation/user/changing-defaults.itely (Horizontal spacing):
3986         Correct the documentation of the spacing parameters. 
3987
3988         * Documentation/user/tutorial.itely (Integrating text and music), 
3989         Documentation/user/lilypond-book.itely (Integrating LaTeX and
3990         music): Document that you need to add the map file ec-mftrace.map
3991         in the dvips command.   
3992
3993 2004-07-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
3994
3995         * lily/score-engraver.cc (initialize): abort if ecrm10.pfa not
3996         found.
3997
3998         * lily/text-item.cc (interpret_string): insert encoding setting
3999         here
4000
4001         * scm/framework-ps.scm (ps-font-command): remove feta/parmesan
4002         encoding kludge.
4003
4004         * Documentation/user/changing-defaults.itely (Text encoding): node
4005         on encoding.
4006
4007         * lily/lyric-engraver.cc (try_music): remove superfluous check.
4008
4009         * lily/book-paper-def.cc (find_scaled_font): remove default
4010         encoding, because it messes up font loading for feta and
4011         parmesan. Encoding should only be specified for running texts.
4012
4013         * lily/modified-font-metric.cc (text_dimension): support coding
4014         scheme ""
4015         
4016 2004-07-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4017
4018         * lily/tie-engraver.cc (stop_translation_timestep): remember tie
4019         definition, so \override works as expected.
4020
4021         * lily/measure-grouping-engraver.cc: clarify
4022
4023 2004-07-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4024
4025         * lily/parser.yy (context_def_mod): remove \consistsend
4026
4027         * lily/context-def.cc (instantiate): use Translator::must_be_last
4028         to determine engraver order.
4029
4030         * lily/translator.cc (must_be_last): new function
4031
4032         * scripts/convert-ly.py (conv): rule.
4033
4034         * lily/bar-line.cc (print): return '() for height == 0.0 too.
4035
4036 2004-07-27  Heikki Junes  <hjunes@cc.hut.fi>
4037
4038         * input/regression/{stanza-number,volta-multi-staff}.ly: fix docs.
4039  
4040 2004-07-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4041
4042         * lily/include/lily-guile.hh (scm_is_int): compat glue.
4043
4044 2004-07-25  Pedro Kroger  <kroeger@pedrokroeger.net>
4045
4046         * input/regression/page-layout.ly: new file.
4047
4048         * scm/paper.scm (set-paper-dimensions): Preliminary support for
4049         left and right margins.
4050
4051         * Documentation/user/changing-defaults.itely (Page layout):
4052         Explain the leftmargin option.
4053
4054 2004-07-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4055
4056         * input/test/lyrics-melisma-variants.ly (texidoc): new file.
4057
4058         * input/test/lyrics-melisma-faster.ly: new file.
4059
4060         * lily/new-lyric-combine-music-iterator.cc (find_voice): allow
4061         change of melody by setting associatedVoice.
4062
4063         * lily/parser.yy (re_rhythmed_music): \lyricsto implies lyrics mode.
4064
4065         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): don't copy
4066         file contents, rather \include them, so default linewidth is set.
4067         (ly_options): make BOOKPAPER set of options. Move linewidth
4068         settings there.
4069
4070         * Documentation/user/examples.itely: new file. Templates are to be
4071         moved here.
4072
4073         * Documentation/user/programming-interface.itely: move chapter.
4074
4075         * scm/document-markup.scm (doc-markup-function): add @code
4076
4077         * stepmake/stepmake/texinfo-rules.make: remove chmod.
4078
4079 2004-07-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4080
4081         * scm/page-layout.scm (plain-header): add printpagenumber boolean
4082         to bookpaper.
4083
4084         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4085         $(outdir)/%.ly $(outdir)/%.ps): do all targets from lilypond binary.
4086
4087         * scripts/lilypond-latex.py (run_dvips): remove -bin everywhere.
4088
4089         * lily/GNUmakefile (NAME): create lilypond, not lilypond-bin 
4090
4091         * scripts/lilypond-latex.py: move from lilypond.py
4092
4093         * make/lilypond-vars.make: centralize LILYPOND_BOOK_FLAGS setting.
4094         (LILYPOND_BOOK_FLAGS): use -f tex for lilypond-book.
4095
4096         * scm/lily.scm (postscript->png): new function
4097         (postscript->pdf): new function
4098
4099         * lily/paper-book.cc (post_processing): call
4100         convert-to-{dvi,ps,png,pdf}
4101
4102         * scripts/ps2png.py (option_definitions): new file.
4103
4104         * lily/paper-book.cc (output): call output-preview-framework
4105         (post_processing): new function. Do PDF/PNG conversion.
4106
4107         * lily/paper-outputter.cc (close): new function.
4108
4109         * scm/framework-ps.scm (convert-to-pdf): new function. Call
4110         ps2pdf.
4111         (output-preview-framework): new function. Generate a preview .ps
4112         
4113
4114 2004-07-23  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4115
4116         * VERSION: release 2.3.8
4117         
4118         * lily/note-head.cc: remove ledger line handling.
4119
4120         * lily/ambitus.cc (print): strip away accidental / note head code,
4121         and associated properties.
4122
4123         * lily/ambitus-engraver.cc (create_ambitus): change name to
4124         AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for
4125         other ambitus parts.
4126         (create_ambitus): group grobs in Ambitus grouping object. 
4127
4128         * lily/include/pitch-interval.hh (Pitch>): new file.
4129
4130         * lily/pitch-interval.cc (add_point): new file.
4131
4132         * lily/ledger-line-engraver.cc: new file.
4133
4134         * lily/ledger-line-spanner.cc (print): new file. Set limits to
4135         ledger line length to avoid clashes.
4136
4137 2004-07-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4138
4139         * Documentation/user/invoking.itexi (Invoking lilypond): remove
4140         deprecated options
4141
4142 2004-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4143
4144         * SConstruct: Use only code files for TAGS.  Change GO_FAST_BUTTON
4145         to command line option: fast=1 (default on).
4146
4147         * SConstruct[GO_FAST_BUTTON]: implement tips from Andreas Roach.
4148         This brings SCons run-time on up-to-date tree down from 48s with
4149         only checksums, to 34s without 2day checksums, to 14s (make needs
4150         4 seconds).
4151         (subdirs)[GO_FAST_BUTTON]: Try to read all subdirs only when
4152         necessary.
4153
4154 2004-07-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4155
4156         * lily/slur-quanting.cc (score_extra_encompass): add  break ;
4157         (score_extra_encompass): process scripts at edges too, by checking
4158         control points directly. 
4159
4160 2004-07-20  Jan Nieuwenhuizen  <janneke@gnu.org>
4161
4162         * po/nl.po: Update.
4163
4164         * lily/main.cc: Fix ly:option-usage help.
4165
4166         * input/regression/slur-script.ly: More collision tests.
4167
4168         * GNUmakefile.in (EXTRA_DIST_FILES): Add SConstruct.
4169
4170 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4171
4172         * VERSION: release 2.3.7
4173
4174         * stepmake/generic-vars.make (EXTRA_DIST_FILES): dist SConscript
4175         files.
4176
4177         * Documentation/user/notation.itely (Slurs): document ^ and _ for
4178         slurs.
4179
4180         * input/regression/slur-script.ly: new file.
4181
4182         * lily/accidental-engraver.cc (process_acknowledged_grobs):
4183         make accidental appear to come from note head engraver.
4184
4185         * lily/slur-quanting.cc: new file.
4186         (score_extra_encompass): new function. Avoid scripts and
4187         accidentals
4188
4189 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4190
4191         * lily/include/lily-guile.hh: Remove guile-1.4 compatibility.
4192         This greatly reduces the number of files that get recompiled
4193         after touching config.hh.
4194
4195         * config.hh.in: Remove GUILE_*_VERSION.
4196
4197         * lily/new-slur.cc: Resolve conflicts.
4198
4199         * lily/stem-engraver.cc (make_stem): New method.
4200
4201         * lily/include/script-interface.hh:
4202         * lily/script-interface.cc: New file.
4203
4204         * lily/include/script.hh:
4205         * lily/script.cc: Remove.
4206
4207         * lily/music.cc (duration_log): New method.
4208
4209         * lily/script.cc (struct Skript): Remove.
4210
4211         * lily/new-slur.cc (get_base_attachments): Try at articulations.
4212         Lots of coding cleanups (Stom).
4213
4214 2004-07-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4215
4216         * lily/new-slur.cc (avoid_staff_line): new function: avoid
4217         collisions with staff lines.
4218
4219         * lily/my-lily-parser.cc (LY_DEFINE): add directory of argument to
4220         global_path
4221
4222         * scm/define-grobs.scm (all-grob-descriptions): set ratio
4223         .25. This flattens short slurs.
4224
4225         * lily/new-slur.cc (enumerate_attachments): move X of attachment
4226         points for tilted slurs.
4227
4228         * input/regression/slur-tilt.ly: new file.
4229
4230         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): shorten
4231         stems of 16th graces too.
4232
4233         * lily/beam-quanting.cc (score_forbidden_quants): make forbidden
4234         quant penalty dependent on how much the line is in the gap.
4235
4236         * input/regression/grace-stem-length.ly: new file.
4237
4238         * lily/beam-quanting.cc (score_forbidden_quants): remove
4239         interquant check. The penalty of 1000 is much too harsh, and the
4240         inter case should be caught by check-staff-line-in-gap check.
4241
4242         * lily/scm-option.cc: move debug-beam to \paper.
4243
4244         * scripts/lilypond-book.py (Lilypond_snippet.write_ly): create
4245         .txt files to appease makeinfo.
4246
4247         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly:
4248         remove texttagline.
4249         
4250         * lily/new-slur.cc: cleanup, split in functions.
4251
4252         * lily/parser.yy (chord_body_element): allow octave-check = inside
4253         chord body. 
4254
4255         * lily/new-slur.cc (score_encompass): variable head-distance penalty.
4256
4257         * lily/stem.cc (height): call Beam::after_line_breaking().
4258
4259         * lily/rest-collision.cc (force_shift_callback): only call shift
4260         for columns containing rests.
4261
4262         * lily/new-slur.cc (print): use debug-slur-quanting paper var.
4263
4264         * input/regression/font-postscript.ly: invoke afm2tfm. 
4265
4266 2004-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4267
4268         * mf/SConscript: Build map files.
4269
4270         * SConstruct: Rename $out to out-www in web.
4271
4272 2004-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4273
4274         * SConstruct (web_kluts): Have make web build in out-www.  Not.
4275
4276 2004-07-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4277
4278         * Documentation/user/music-glossary.tely (Top): add fragment to
4279         pertinent @lilypond entries.
4280
4281         * scm/define-grobs.scm: switch on new-slur by default.
4282
4283         * lily/scm-option.cc: symbol != string.
4284
4285         * lily/new-slur.cc (set_end_points): handle broken slurs. Doesn't
4286         really work yet.
4287         (set_end_points): make X coord of attachment dependent on  Y.
4288         (score_encompass): add edges too.
4289
4290 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4291
4292         * lily/stem.cc (get_beaming): new function.
4293
4294         * scripts/lilypond-book.py (compose_ly): make fragment mandatory
4295         for fragment snippets. This fixes inclusion of toplevel-music
4296         examples (such as new-slur.ly)
4297  
4298 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4299
4300         * scripts/lilypond-book.py: Remove second import of stat.
4301
4302         * More SCons cleanups.
4303
4304         * Documentation/bibliography/computer-notation.bib (note): Remove
4305         extraneous closing brace.
4306
4307 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4308
4309         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): fix
4310         stat calls.
4311
4312         * Documentation/bibliography/SConscript (bibs): failed try to get
4313         bib2html find html-long.bst.
4314
4315         * buildscripts/bib2html.py (stat): fail if bibtex fails.
4316
4317         * make/stepmake.make: use usescons for using scons. 
4318
4319 2004-07-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4320
4321         * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): Check
4322         for lilypondend.  Import stat (huh?).
4323
4324 2004-07-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4325
4326         * make/mutopia-vars.make ($(addprefix $(outdir)/,$(LYM4_FILES):
4327         bypass dvi. 
4328
4329         * input/regression/font-postscript.ly: new file. 
4330
4331         * scm/framework-ps.scm (load-fonts): load pfb files too.
4332
4333         * lily/pfb.cc (pfb2pfa): new file.
4334
4335 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4336
4337         * scripts/lilypond-book.py (PREAMBLE_LY): set
4338         toplevel-music-handler too.
4339
4340 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4341
4342         * SConstruct (symlink): Add dvips and music-drawing-routines.ps.
4343         (web_path): Fixes for webball.  Install fixes, add DESTDIR option.
4344
4345         * lily/slur.cc: Add quant-score to interface.  Fixes web build.
4346
4347         * python/SConscript:
4348         * python/vim:
4349         * input/mutopia/*SConscript: New file.
4350
4351         * input/mutopia/W.A.Mozart/: Use .ily suffix for includes.
4352
4353         * scm/define-grobs.scm (all-grob-descriptions): Use ,Slur::height,
4354         fixes web build.
4355
4356         * make/stepmake.make (scons): re-route to SCONS if user has been
4357         running scons in this tree.
4358
4359         * SConstruct (config_vars): Add CPPDEFINES.
4360         (env): Set checksums type to "content".
4361         (save_config_cache): Do not exit after configuring when using
4362         checksums (the default) instead of timestamps.
4363
4364 2004-07-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4365
4366         * SConstruct: Further development.
4367
4368         * input/test/SConscript: 
4369         * input/template/SConscript: 
4370         * input/regression/SConscript: 
4371         * Documentation/bibliography/SConscript:
4372         * Documentation/bibliography/index.html.in: New file.
4373
4374         * Documentation/bibliography/GNUmakefile (local-WWW): Remove index
4375         generation.
4376
4377         * buildscripts/builder.py: Add new builders.
4378
4379         * make/stepmake.make: 
4380         * stepmake/stepmake/*.make: 
4381         * configure.in:
4382         * lily/*:
4383         * flower*: Use config.hh (Was config.h).
4384
4385         * scm/encoding.scm (get-coding): Print friendly error message when
4386         no encoding is found, rather than crashing.
4387
4388 2004-07-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4389
4390         * lily/new-slur.cc (score_slopes): strong sloping score only when
4391         stems point in same dir. 
4392
4393 2004-07-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4394
4395         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): bugfix
4396         for beam start.
4397
4398         * lily/parser.yy (context_prop_spec): check grob name for
4399         alphanumericness..
4400
4401         * lily/lyric-engraver.cc: creates LyricText objects
4402
4403 2004-07-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4404
4405         * lily/include/lily-guile.hh (scm_from_int): add scm_from_int glue.
4406
4407 2004-07-13  Jan Nieuwenhuizen  <janneke@gnu.org>
4408
4409         * SConstruct: Configure only pristine build tree or on user
4410         request.  Cleanups.  Add Documentation/topdocs to subdirs.
4411         Use checksums instead of timestamps.
4412         (CheckYYCurrentBuffer): Return result.
4413
4414         * Documentation/topdocs/SConscript: New file.
4415
4416 2004-07-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4417
4418         * lily/staff-symbol-referencer.cc (on_staffline): bugfix 
4419
4420         * lily/scm-hash.cc (get): SCM_MAKINUM is deprecated. Use
4421         scm_from_int instead.
4422
4423 2004-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
4424
4425         * SConstruct: Updates.  Add targets: tar, dist, release.
4426
4427 2004-07-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4428
4429         * input/mutopia-header.ly: Generate output.
4430
4431         * SConstruct:
4432         * buildscripts/builder.py:
4433         * Documentation/user/SConscript: SCons fixes.
4434
4435 2004-07-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4436
4437         * lily/new-slur.cc (class New_slur): new file. Score based slur
4438         computations.
4439
4440 2004-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4441
4442         * mf/SConscript: Remove Builders.
4443
4444         * buildscripts/builder.py: Add LilyPond, Abc2ly and MF builders.
4445
4446         * input/SConscript: 
4447         * Documentation/user/SConscript: New file.
4448
4449 2004-07-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4450
4451         * Documentation/topdocs/NEWS.texi (Top): add note about new
4452         emacs electric-|
4453
4454         * scm/*.scm: adapt ly:warn calls.
4455
4456         * lily/lily-guile.cc (LY_DEFINE): use format on ly:warn arguments.
4457
4458         * lily/repeat-acknowledge-engraver.cc (process_music): look at
4459         main timing, not grace timing. Fixes volta-repeat-grace.
4460
4461         * lily/kpath.cc (LY_DEFINE): ly:kpathsea-expand-path, new function
4462         remove ly:kpathsea-gulp-file.
4463
4464         * scm/translation-functions.scm (format-metronome-markup): make
4465         note smaller, align to bottom.
4466
4467         * scm/define-grobs.scm (all-grob-descriptions): metronome fixes.
4468
4469         * lily/metronome-engraver.cc (stop_translation_timestep): attach
4470         metronome to musical column. Don't ack time sigs or bar lines.
4471
4472 2004-07-10  Heikki Junes  <hjunes@cc.hut.fi>
4473
4474         * THANKS: sort, add David. Kristof contributed code, he is a
4475         contributor.
4476
4477 2004-07-09  David Svoboda      <svoboda@cmu.edu>
4478
4479         * elisp/lilypond-mode.el,
4480         * elisp/lilypond-what-beat.el: Added LilyPond-what-beat function to
4481         count beats between last measure stop | and point in emacs.
4482         
4483 2004-07-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4484
4485         * tex/GNUmakefile (TEX_FILES): don't dist
4486         music-drawing-routines.ps, latin1.enc 
4487
4488         * scripts/lilypond.py (include_path): remove --no-lily, --no-ps ,
4489         --no-pdf, --pdftex
4490         (copyright): add --latex option
4491         (ic_p.make_include_option): use direct PS as default.
4492
4493         * scm/beam.scm (check-slope-callbacks): check sign of slope. 
4494
4495         * input/regression/beam-concave.ly (rossFourBeams): add cases from
4496         Ross
4497
4498         * scm/script.scm (default-script-alist): marcato should follow
4499         into staff
4500         
4501 2004-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4502
4503         * buildscripts/builder.py:
4504         
4505         * Documentation/SConscript (outdir): New file.  Add *list.ly
4506         dependencies.  Fixes PDF doc build.
4507
4508 2004-07-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4509
4510         * SConstruct: Add Tar target (incomplete), fix install issues, fix
4511         run from build-dir.
4512
4513         * ly/SConscript:
4514         * scm/SConscript: New file.
4515
4516         * lily/main.cc (dir_info): Print variables in sh format.
4517
4518         * lily/includable-lexer.cc: Use #if iso #ifdef for HAVE_ tests.
4519
4520         * mf/SConscript: Update multiple target rules.
4521
4522         * SConstruct (assert_version): Add.
4523
4524 2004-07-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4525
4526         * SConstruct (key): add HAVE_FLEXLEXER_YY_CURRENT_BUFFER check.
4527
4528 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4529
4530         * buildscripts/mf-to-table.py: Do not try to open ''.
4531
4532         * mf/SConscript: New file.
4533
4534 2004-07-06  Carl Sorensen  <carldsorensen@comcast.net>
4535
4536         * scm/fret-diagrams.scm : Convert many properties to constants,
4537         reducing the pollution of the property namespace.
4538
4539         * scm/define-grob-properties.scm (all-user-grob-properties): Reduce
4540         unnecessary properties for fret-diagram
4541
4542         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add symbols
4543         for interface
4544
4545 2004-07-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4546
4547         * SConstruct: Update.
4548
4549 2004-07-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4550
4551         * input/regression/beam-quant-standard.ly (seconds): print desired
4552         quants when failing.
4553
4554 2004-07-06  Jan Nieuwenhuizen  <janneke@gnu.org>
4555
4556         * SConstruct:
4557         * flower/SConscript:
4558         * lily/SConscript: New file.
4559
4560 2004-07-05  Carl Sorensen  <carldsorensen@comcast.net>
4561
4562         * scm/define-grob-properties.scm (all-user-grob-properties): Add
4563         descriptions for all fret-diagram properties.
4564
4565         * scm/define-grob-interfaces.scm (fret-diagram-interface): Add
4566         fret-diagram interface code
4567
4568 2004-07-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4569
4570         * ly/book-paper-defaults.ly: set default encoding to ec.
4571
4572         * buildscripts/guile-gnome.sh (OPT): only compile pango if not
4573         installed.
4574
4575         * tex/latin1.enc: new file, from a2ps. 
4576
4577 2004-07-06  Heikki Junes  <hjunes@cc.hut.fi>
4578
4579         * stepmake/bin/add-html-footer.py: use <div> instead of <table>,
4580         add a faint, green border line.
4581
4582         * Documentation/index.html.in: drop <table>, add a faint border line.
4583
4584 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4585
4586         * scm/font.scm (add-cmr-fonts): upright caps is eccc.
4587
4588         * Documentation/GNUmakefile (README_TOP_FILES): add THANKS.txt.
4589
4590 2004-07-02  Carl Sorensen  <carldsorensen@comcast.net>
4591
4592         * scm/output-ps.scm (white-text): Add scale paramter to allow scaling
4593
4594         * scm/output-tex.scm (white-text): Add scale parameter to allow font
4595         scaling
4596
4597         * scm/stencil.scm (fontify-text-white) : Adjust to better center,
4598         properly scale white text
4599
4600         * scm/fret-diagrams.scm (make-fret-diagram): change default dot
4601         position for numbered dots so dot will touch fret.
4602         (various routines): move to font-metric interface, rather than
4603         name, size interface.  Clean up comments.
4604
4605         * ps/music-drawing-routines.ps: (/draw_white_text)  Adjust font
4606         size and offset to better center white text.
4607
4608 2004-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4609
4610         * ChangeLog: Remove pre-2.1 changes.
4611
4612         * Documentation/misc/ChangeLog-2.1: New file.
4613
4614         * stepmake/bin/release.py: Cleanup.  Add release marker if missing
4615         from ChangeLog.
4616
4617 2004-07-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4618
4619         * input/test/chords-below-volta-bracket.ly,
4620         input/test/no-key-at-end-of-line.ly: New example files (FAQs)
4621
4622 2004-07-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4623
4624         * VERSION: release 2.3.6
4625
4626         * input/regression/beam-quant-standard.ly: new file: test standard
4627         beam quants.
4628
4629         * scm/beam.scm (check-quant-callbacks): new function
4630         (check-beam-quant): new function: check whether current beam
4631         quants match argument.
4632
4633         * lily/beam-quanting.cc (score_forbidden_quants): fix problem with
4634         forbidden quant for sitting (upstem)/hanging (downstem) on outer
4635         staffline line.
4636
4637 2004-07-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4638
4639         * lily/parser.yy (Generic_prefix_music_scm): add (scm,scm) music
4640         functions.
4641
4642         * lily/note-collision.cc (do_shifts): align colliding notes to
4643         their leftmost note.
4644
4645         * input/regression/collision-alignment.ly: new file.
4646
4647         * ly/init.ly: don't print gc stats.
4648
4649         * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): add
4650         extra newline
4651
4652         * scm/define-grobs.scm (all-grob-descriptions): use (0 . 0) not #f
4653         for dimensions. This fixes ottava-remove-empty-staff.ly
4654
4655         * input/regression/lyrics-tenor-clef.ly: new file.
4656
4657         * lily/axis-group-engraver.cc (process_acknowledged_grobs): catch
4658         cyclic parents when two axis-group-engravers are
4659         present. Fixes: crash-axis-group-engraver.ly. 
4660         
4661         * input/test/volta-chord-names.ly: new file.
4662
4663         * scm/define-context-properties.scm
4664         (all-user-translation-properties): change voltaOnThisStaff
4665         definition. 
4666
4667         * lily/volta-engraver.cc (stop_translation_timestep): set bounds
4668         if necessary.
4669
4670         * lily/volta-bracket.cc (print): handle volta brackets without
4671         bars. 
4672
4673 2004-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4674
4675         * scripts/abc2ly.py (try_parse_chord_delims): Bugfix: update to
4676         2.0 chord syntax.  Ouch.  (thanks Dave Phillips).
4677
4678 2004-07-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4679
4680         * scm/output-gnome.scm: updated instructions for running gnome
4681         backend
4682
4683 2004-06-29  Carl Sorensen  <carldsorensen@attbi.net>
4684
4685         * scm/fret-diagrams.scm (draw-dots): default values for dot size
4686         and dot-position now depend on finger-code value; in-dot makes
4687         dots larger and centered.
4688         (draw-barre): added straight-barre indicator option
4689         (draw-dots): made fontify-text-white work.
4690
4691         * music-drawing-routines.ps: added /draw_white_text
4692
4693         * scm/output-tex.scm:  added white-text
4694
4695         * scm/output-ps.scm:  added white-text
4696
4697         * scm/lily.scm (ly:all-stencil-expressions): Added white-text to 
4698         list of stencil expressions
4699
4700         * scm/stencil.scm: Added fontify-text-white
4701
4702 2004-06-29  Heikki Junes  <hjunes@cc.hut.fi>
4703
4704         * input/regression/+.ly: use @unnumbered section.
4705
4706 2004-06-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4707
4708         * elisp/lilypond-mode.el (LilyPond-guile): set current module to
4709         (*anonymous-ly-0*) iso. (*anonymous-ly-1*)
4710
4711 2004-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
4712
4713         * buildscripts/guile-gnome.sh (PATH): GUILE CVS is still fubarred.
4714
4715 2004-06-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4716
4717         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
4718         was causing an error. (was not actually commited in 2004-06-20)
4719
4720         * input/regression/lily-in-scheme.ly (withPaddingC): does not
4721         breaks anymore
4722
4723 2004-06-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4724
4725         * VERSION: 2.3.5 released.
4726         
4727         * lily/my-lily-parser.cc (parse_string): switch module too.
4728
4729 2004-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
4730
4731         * Documentation/topdocs/INSTALL.texi (Top): Add guile, python and
4732         ec-fonts-mftraced to running requirements.
4733
4734 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4735
4736         * lily/my-lily-lexer.cc (My_lily_lexer): copy scopes so temporary
4737         assignments don't reach the original file.
4738
4739         * lily/my-lily-parser.cc (My_lily_parser): only copy lexer if it
4740         exists
4741
4742 2004-06-22  Jan Nieuwenhuizen  <janneke@gnu.org>
4743
4744         * scm/output-gnome.scm: 
4745         * buildscripts/guile-gnome.sh: Update wrt fixed GUILE CVS.
4746
4747         * debian/: Apply Debian patch (Anthony Fok).
4748
4749 2004-06-22  Heikki Junes   <hjunes@cc.hut.fi>
4750
4751         * Documentation/user/music-glossary.tely: fix titling; @top is already
4752         an @unnumbered @chapter.
4753
4754 2004-06-22  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4755
4756         * debian/GNUmakefile (EXTRA_DIST_FILES):
4757         (CONF_FILES): update file list.
4758
4759         * lily/stencil.cc (interpret_stencil_expression): bugfix.
4760
4761 2004-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
4762
4763         * debian/: Remove cruft (requested Anthony Fok.)
4764
4765         * buildscripts/guile-gnome.sh: Build without gcc libtool version
4766         juggling.
4767
4768         * scm/framework-gnome.scm: Cleanups.  Resurrect +/- canvas scaling.
4769         Add popup menu with grob properties.
4770
4771         * lily/grob-scheme.cc (ly:grob-properties):
4772         (ly:grob-basic-properties): New function.
4773
4774         * lily/stencil.cc (interpret_stencil_expression): Comment-out
4775         "no-origin" call.  Fixes -fps output.
4776
4777         * scm/output-ps.scm (no-origin): Add dummy implementation.
4778
4779         * scm/output-gnome.scm (define-origin): Remove
4780         (grob-cause): Add.
4781
4782         * scm/output-ps.scm (scm):
4783         * scm/output-tex.scm (scm): Remove define-origin from exports list.
4784         (define-origin): Remove.
4785
4786         * scm/output-gnome.scm (define-origin): 
4787
4788         * scm/lily.scm (ly:all-output-backend-commands): Remove
4789         define-origin.  Add grob-cause.
4790
4791 2004-06-21  Heikki Junes   <hjunes@cc.hut.fi>
4792
4793         * buildscripts/lilypond-words.py: add ly/portugues.ly.
4794
4795 2004-06-20  Heikki Junes   <hjunes@cc.hut.fi>
4796
4797         * Documentation/user/GNUmakefile:
4798         * stepmake/stepmake/texinfo-rules: add Cascading Style Sheet using
4799         --include-css=.../texinfo.css; command includes css into the html.
4800
4801         * Documentation/texinfo.css: add file.
4802         define <hr> as black and thin.            
4803
4804 2004-06-20  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4805
4806         * lily/stencil.cc (interpret_stencil_expression): add grob-cause
4807         stencil expression. Junk define-origin.
4808
4809         * lily/my-lily-parser.cc (parse_string): init parser variable when
4810         lexer_ is set, ie. in parse_string and parse_file.
4811
4812         * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes
4813         ly:score-bookify.
4814
4815         * scm/lily.scm (collect-scores-for-book): new function.
4816
4817         * ly/init.ly: print collected scores/musics.
4818
4819         * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser
4820         scope, not in lily module.
4821
4822         * lily/book.cc (LY_DEFINE): ly:make-book. New function.
4823
4824         * configure.in (PKG_CONFIG_PATH): add --enable-gui flag, and
4825         encapsulate gtk/pango tests.
4826
4827         * po/tr.po: Turkish translation.
4828
4829 2004-06-20  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4830
4831         * input/regression/lily-in-scheme.ly: regression test for #{
4832         ... #} syntax
4833
4834         * scm/ly-from-scheme.scm (read-lily-expression): #$( ... )
4835         was causing an error.
4836
4837         * Documentation/user/programming-interface.itely (Using LilyPond
4838         syntax inside Scheme): documentation for #{ ... #} syntax.
4839
4840 2004-06-19  Heikki Junes  <hjunes@cc.hut.fi> 
4841
4842         * Documentation/index.html.in: use black thin <hr>.
4843
4844         * buildscripts/mutopia-index.py: use thin black <hr>.
4845
4846 2004-06-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4847
4848         * scm/fret-diagrams.scm: Use UNIX style line endings.
4849         (fret-diagram-verbose): A couple of @{VAR} and an closing itemize
4850         typo.  Fixes compile.
4851
4852         * scm/output-ps.scm (white-dot): Remove second incarnation.
4853
4854         * scm/lily.scm (ly:all-stencil-expressions): Add white-dot.
4855
4856 2004-06-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4857
4858         * scripts/lilypond.py (ic_p.make_include_option): set error_p for
4859         single file error.
4860
4861         * lily/bar-line.cc (compound_barline): add support for unbroken ||:
4862
4863 2004-06-17  Carl Sorensen (carl_sorensen@byu.edu)
4864
4865         * scm/fret-diagrams.scm: added fret-diagram-terse interface;
4866         remove size as argument to fret-diagram interface;
4867         improved white-circle dots for fret;
4868         improved top-fret thick line/
4869
4870         * scm/output-ps.scm: added white-dot function
4871
4872         * scm/output-tex.scm: added white-dot function
4873
4874         * tex/music-drawing-routines.ps: added draw_white_dot function
4875
4876         * ps/music-drawing-routines.ps: added draw_white_dot function
4877
4878         * input/test/fret-diagram.ly: examples to show multiple
4879         functions and multiple interfaces
4880
4881 2004-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4882
4883         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph) 
4884         (pango_fc_afm_get_charset): Update iaw Pango CVS update.
4885
4886         * buildscripts/guile-gnome.sh: Add pango to recipe.  Resolve
4887         conflict.  Have I told you lately how much I love autotools?
4888
4889 2004-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4890
4891         * lily/lily-guile.cc: 
4892         * lily/pangofc-afm-decoder.cc:
4893         * lily/include/pangofc-afm-decoder.hh: Use #if HAVE_* iso #ifdef.
4894         Fixes build without Pango CVS.  Use "pangofc-afm-decoder.hh".
4895
4896         * Documentation/topdocs/NEWS.texi (Top): Mention GNOME backend for
4897         developers.
4898
4899         * lily/paper-outputter.cc (file): New method.
4900         (dump_string): Use it.
4901
4902         * scm/output-gnome.scm: Update with pango CVS info, lilylib
4903         musing.
4904
4905         * lily/accidental-engraver.cc: Bugfix: (do not sort lines if one
4906         of them has a comma :-).
4907
4908         * scm/framework-gnome.scm: Add pango decoders.
4909
4910         * lily/include/pangofc-afm-decoder.hh: 
4911         * lily/pangofc-afm-decoder.cc: New file.
4912
4913         * lily/lily-guile.cc (ly:pango-add-afm-decoder): New function.
4914
4915         * configure.in: Check for pango.
4916
4917         * stepmake/aclocal.m4 (PKG_CHECK_MODULES): New function (from
4918         autoconf).
4919         (STEPMAKE_GTK2, STEPMAKE_PANGO): New function.
4920
4921         * config.make.in (USER_CFLAGS, USER_LDLAGS): Update.
4922
4923 2004-06-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4924
4925         * Documentation/user/tutorial.itely (Integrating text and music):
4926         fix grammar & punctuation.
4927
4928 2004-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4929
4930         * lily/: Stray janitorial cleanups.
4931
4932         * scm/lily.scm (ly:all-stencil-expressions):
4933         * scm/lily.scm (ly:all-output-backend-commands): New function.
4934
4935         * scm/safe-lily.scm (safe-objects): Add them.
4936
4937         * scm/framework-gnome.scm (<gnome-outputter>): New class.
4938
4939         * scm/output-gnome.scm: Move non-stencil evaluators to framework.
4940
4941 2004-06-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4942
4943         * buildscripts/guile-gnome.sh: Pick-up user-installed pango.
4944
4945 2004-06-15  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4946
4947         * scm/page-layout.scm (default-page-make-stencil): add
4948         raggedbottom, raggedlastbottom.
4949
4950         * Documentation/user/changing-defaults.itely (Page layout): add doc.
4951
4952         * scm/framework-tex.scm (define-fonts): fix export of
4953         papersize.
4954
4955         * lily/paper-book.cc (classic_output): strip suffixes from
4956         framework functions.
4957
4958         * lily/tuplet-bracket.cc (before_line_breaking): do not return
4959         SCM_UNDEFINED to Scheme.
4960
4961 2004-06-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
4962
4963         * lily/book.cc: remove Book::to_stencil().
4964         (process): whoops. Score::book_rendering returns vector, not list.
4965
4966         * scripts/convert-ly.py (conv): remove \notes.
4967         apply to input examples.
4968
4969         * lily/paper-outputter.cc (output_stencil): don't use
4970         smobify_self() but self_scm()
4971
4972         * lily/include/ly-smobs.icc (IMPLEMENT_SMOBS): don't return SCM
4973         from smobify_self().
4974
4975         * lily/paper-book.cc (output): load framework module
4976         scm_c_resolve_module().
4977
4978         * python/lilylib.py (exit): exit with argument i.
4979
4980 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4981
4982         * scm/framework-gnome.scm (output-framework-gnome): Try loading
4983         gnome modules from non-toplevel.
4984
4985         * lily/ly-module.cc (ly:import-module): Export to ly:.
4986
4987         * lily/paper-score.cc (process): Do not show progress newline.
4988
4989         * lily/paper-book.cc (output, classic_output): Show progess
4990         newline after score.
4991
4992 2004-06-14  Heikki Junes <hjunes@cc.hut.fi>
4993
4994         * buildscripts/lilypond-words.py: add ly/vlaams.ly
4995
4996 2004-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
4997
4998         * lily/score.cc (ly:run-translator): Do not crash on empty music
4999         list.
5000
5001         * lily/book.cc (process): Do not render score when systems is empty.
5002
5003         * input/simple-song.ly: Down one octave.
5004
5005         * scm/output-gnome.scm: Remove script again; re-add modules fix
5006         (CVS conflict resolve?)
5007
5008         * lily/stencil.cc (ly:interpret-stencil): Was:
5009         interpret_stencil_expression.
5010
5011 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5012
5013         * buildscripts/guile-gnome.sh: New file.
5014
5015         * scm/output-gnome.scm: White background, better window size, sane
5016         canvas size.  Cleanups.
5017
5018 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5019
5020         * VERSION: release 2.3.4
5021
5022         * Documentation/user/invoking.itexi (Invoking the lilypond
5023         binary): document --safe.
5024
5025         * scm/output-gnome.scm: set PATH in script.
5026
5027         * scm/page-layout.scm (default-page-make-stencil): don't stretch
5028         if there is too few systems on a page.
5029
5030         * lily/parser.yy (relative_music): start at middle C without pitch
5031         argument.
5032
5033         * Documentation/user/changing-defaults.itely (Page layout): new node.
5034         (Paper size): rename node
5035         (Page breaking): new node.
5036         (Titling): move from invoking.
5037         (File structure): new node.
5038
5039         * lily/parser.yy (score_body): allow \header and music anywhere in
5040         \score body.
5041
5042 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5043
5044         * scm/lily.scm (ly:load): Remove page-breaking.scm.
5045
5046 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5047
5048         * lily/include/paper-system.hh: move cc/hh file from paper-line.*
5049
5050         * lily/include/paper-line.hh: rename to Paper_system.
5051
5052         * lily/include/paper-book.hh: doc class.
5053
5054         * lily/paper-book.cc (c_ragged_page_breaks): remove functions. 
5055
5056         * scm/page-layout.scm (plain-footer): add tagline/copyright. 
5057         (plain-header): add instrument-name.
5058         (default-page-make-stencil): bugfixes.
5059
5060         * lily/parser.yy (book_body): allow \header anywhere in \book{}
5061
5062         * lily/paper-book.cc: remove copyright & tagline. Remove
5063         interactions with Page
5064
5065         * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking
5066         here, 
5067         (default-page-make-stencil): new function
5068         (default-page-music-height): new function
5069         (page-headfoot): new function
5070         (ly:optimal-page-breaks): generate stencils directly from here
5071
5072         * scm/titling.scm: new file, group titling functions
5073
5074 2004-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5075
5076         * scm/output-gnome.scm: Handle multiple pages.
5077
5078         * scm/framework-gnome.scm: Do not load output-gnome.
5079         (framework-gnome): Invoke output-gnome::header and
5080         output-gnome::end-output as faked stencils.  Fixes experimental
5081         gnome output.
5082
5083 2004-06-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5084
5085         * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo):
5086         octavation compatibility fixes. Backportme. 
5087
5088         * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull
5089         pages.
5090         (ly:optimal-page-breaks): combine-penalties: no shortcut for
5091         negative. Now we handle negative penalties (ie. \pageBreak)
5092         correctly.
5093
5094         * lily/system.cc (get_line): extract page-penalty from the left
5095         bound.
5096
5097         * scm/fret-diagrams.scm (fret-diagram): use @table for documentation
5098
5099 2004-06-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5100
5101         * scm/framework-ps.scm: don't load output-XXX from framework-XXX
5102
5103 2004-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5104
5105         * scm/output-gnome.scm: Update script.  Move development to
5106         lilypond_2_3_2 branch for now.
5107
5108 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5109
5110         * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
5111         negative penalties.
5112         cleanups.
5113
5114         * Documentation/user/changing-defaults.itely (Creating contexts):
5115         index entries
5116
5117         * scm/page-breaking.scm (ly:optimal-page-breaks): new
5118         file. Rewrite function. 
5119
5120         * lily/paper-book.cc (pages): new interface: page-breaking returns
5121         list of line-list.
5122
5123         * lily/page.cc (Page): take lines argument.
5124
5125         * scm/document-translation.scm (all-engravers-doc): link to user man
5126
5127         * scm/page-layout.scm (ly:optimal-page-breaks): use penalty
5128         iso. score.
5129
5130         * Documentation/user/notation.itely (Relative octaves): typo.
5131
5132         * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function.
5133
5134 2004-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5135
5136         * scm/output-gnome.scm: Update build script.
5137
5138 2004-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
5139
5140         * scm/output-gnome.scm: Add font scaling.  Attempt to resurrect
5141         gnome backend.
5142
5143         * scm/framework-gnome.scm: New file.
5144
5145         * scm/lily.scm: Use it.
5146
5147         * lily/paper-outputter.cc: Janitorial cleanups.
5148         (ly:outputter-dump-string): Remove unreachable statement.
5149
5150         * scm/framework-ps.scm: Add header.  Janitorial cleanups.
5151         (ice-9): Bugfix: Add srfi-1.
5152
5153         * scm/framework-tex.scm: Add header.  Janitorial cleanups.
5154
5155 2004-06-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5156
5157         * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning
5158         in do_quit()
5159
5160 2004-06-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5161
5162         * ly/book-paper-defaults.ly: set optimal-page-breaks as default
5163
5164 2004-06-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5165
5166         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5167         override of Beam::position-callbacks. Why would grace beams not be
5168         quantized? Fixes: weird-stem-size-grace. 
5169
5170         * lily/new-lyric-combine-music-iterator.cc (find_voice): issue
5171         warning only once. Backportme.
5172
5173         * lily/accidental-engraver.cc (number_accidentals_from_sig):
5174         bugfix, 2nd try. Backportme.
5175
5176         * ly/vlaams.ly: new file. (Thanks Hendrik Maryns)
5177
5178 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5179
5180         * Documentation/user/notation.itely (Instrument transpositions):
5181         Correct the name of the instrumentTransposition property.
5182
5183 2004-06-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5184
5185         * scm/output-ps.scm (ps-font-command): fix parmesan coding too.
5186
5187 2004-06-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5188
5189         * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample
5190         and postLilyPondExample are called when defined.
5191
5192 2004-06-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5193
5194         * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names.
5195         This fixes setting notenames with `\include "nederlands.ly" '
5196
5197         * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names:
5198         new function.
5199
5200 2004-06-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5201
5202         * scm/page-layout.scm: don't do piece, it should be in score-title
5203         only.
5204
5205         * lily/lexer.ll: lex \score separately.
5206
5207         * lily/paper-book.cc: junk stencil2line.
5208
5209         * lily/paper-line.cc (Paper_line): construct from Stencil
5210         directly. No futzing with the dimensions.
5211
5212         * lily/include/paper-line.hh (class Paper_line): 
5213
5214         * lily/stencil.cc (interpret_stencil_expression): combine-stencil
5215         takes arbitrary number of arguments.
5216
5217         * input/test/markup-score.ly (tuning): simplify example. 
5218
5219 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5220
5221         * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. 
5222
5223         * scm/define-markup-commands.scm (score): define score-markup
5224
5225         * lily/parser.yy (markup): use score-markup.
5226
5227         * lily/score.cc: add ly:score? 
5228
5229 2004-05-30  Carl Sorensen <carl_sorensen@byu.edu>
5230
5231         * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified
5232         fret-parse-string so it prepares for calls to fret-diagram-verbose
5233         Changed display constants to props so they are available for
5234         \override.
5235
5236 2004-05-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5237
5238         * VERSION: release 2.3.3
5239
5240         * stepmake/stepmake/generic-vars.make: unset LANG.
5241
5242         * input/regression/tuplet-nest.ly: bugfix.
5243
5244         * lily/tie-performer.cc (stop_translation_timestep): reset
5245         ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly
5246
5247         * lily/chord-tremolo-engraver.cc (stop_translation_timestep):
5248         clear repeat_ directly after setting stem_tremolo_. Fixes:
5249         tremolo-repeat.ly
5250
5251         * input/regression/span-bar-break.ly: new file.
5252
5253         * scm/define-grobs.scm (all-grob-descriptions): remove
5254         break-visibility from SpanBar. Fixes: piano-repeat.ly
5255
5256 2004-05-30  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5257
5258         * python/lilylib.py (make_ps_images): only compute bbox when needed.
5259
5260         * scripts/lilypond-book.py (process_snippets): use lily -f ps
5261         files for generating pngs. (failed experiment)
5262
5263         * scm/framework-ps.scm (output-classic-framework-ps): dump EPS
5264         file with PFA fonts included.
5265
5266         * lily/score.cc (default_rendering): put header in too.
5267
5268         * lily/paper-line.cc (LY_DEFINE): change function to
5269         ly:paper-line-extent
5270
5271         * scm/page-layout.scm (default-book-title): only add lines for
5272         non-nil fields.
5273         (default-score-title): idem.
5274
5275         * lily/my-lily-parser.cc (parse_string): delete lexer after use.
5276
5277         * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable.
5278
5279         * lily/include/paper-book.hh (class Paper_book): remove height_
5280         member.
5281
5282         * input/test/coriolan-margin.ly (texidoc): remove latex macros.
5283
5284         * lily/ly-module.cc (LY_DEFINE): bugfix.
5285
5286         * lily/paper-book.cc (book_title): separate function for the book
5287         title.
5288
5289         * scm/page-layout.scm (default-book-title): only account for
5290         markup fields.
5291
5292         * scm/framework-ps.scm: new file. Move high level interface from
5293         output-ps.scm
5294
5295         * scm/music-functions.scm (def-grace-function): move macros from
5296         ly/music-functions-init.ly
5297
5298         * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to
5299         framework-tex.scm
5300
5301         * scm/framework-tex.scm (dump-line): new file. High level
5302         interface for output (pages, systems, header). 
5303
5304         * lily/include/page.hh (class Page): add is_last_ field.
5305
5306         * lily/paper-outputter.cc (print_smob): smobify Paper_outputter.
5307
5308         * lily/paper-book.cc (split_string): new function
5309         (output): output multiple formats, i.e. --format=ps,tex
5310
5311         * scm/output-ps.scm (output-scopes): dump variables directly.
5312         (define-fonts): rewrite for new interface
5313
5314         * ps/lilyponddefs.ps: remove lilypondpaper redefinitions.
5315
5316         * lily/paper-outputter.cc (Paper_outputter): take format argument.
5317
5318         * lily/main.cc (parse_argv): don't set extension for output.
5319
5320         * lily/clef-engraver.cc (create_clef): remove
5321         Staff_symbol_referencer::set_position() call. 
5322
5323 2004-05-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5324
5325         * ly/music-functions-init.ly (addlyrics): set the 'origin property
5326         with the location argument in music function definitions.
5327
5328 2004-05-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5329
5330         * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item ->
5331         staffsymbol dependency.
5332
5333         * lily/include/grob.hh (class Grob): live () -> is_live (). Small
5334         cleanups.
5335
5336         * lily/book.cc (process): return Paper_book
5337         (to_stencil): use Book::process().
5338
5339         * lily/include/my-lily-parser.hh (class My_lily_parser): remove
5340         header_ field. Store in $globalheader
5341
5342         * lily/parser.yy (book_body): book header is initted to
5343         $globalheader.
5344
5345
5346 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5347
5348         * input/test/fill-a4.ly: removed.
5349
5350         * lily/parser.yy (output_def): push scope of parent_ Output_def
5351         too.
5352
5353 2004-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5354
5355         * scm/output-gnome.scm: Update info.
5356
5357 2004-05-28  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5358
5359         * lily/book-paper-def.cc: collapse Book_output_def to Output_def.
5360
5361         * scm/lily.scm (ly:modules-lookup): handle empty list, and more
5362         than 1 module.
5363
5364         * lily/include/ly-module.hh (ly_use_module): rename is_module to
5365         ly_c_module_p.
5366
5367         * scm/page-layout.scm (default-book-title): move Scheme titling
5368         functions to here.
5369
5370         * lily/parser.yy (book_paper_block): remove scope too.
5371
5372         * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext
5373
5374         * lily/rest.cc: add direction to rest properties.
5375
5376         * lily/include/output-def.hh: new file, move from
5377         music-output-def.hh
5378
5379 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5380
5381         * scm/output-gnome.scm: Describe feta-cork hack.
5382
5383 2004-05-27  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5384
5385         * lily/include/book-paper-def.hh: derive from Output_def 
5386
5387         * lily/include/paper-def.hh: move all functionality out of class.
5388         Junk header.
5389
5390         * lily/include/music-output-def.hh: rename Music_output_def to
5391         Output_def.
5392
5393         * input/wilhelmus.ly: only set space for Paper formatting. 
5394
5395         * lily/include/midi-def.hh: remove file, remove class.
5396         Move functions to Music-output-def.
5397
5398         * lily/music-output-def.cc (Music_output_def): remove separate
5399         translator table. Lookup translators in scope directly. This
5400         obviates Context suffix for context identifiers, i.e.
5401
5402         \context {
5403           \Staff
5404           .. 
5405           }
5406
5407
5408         will work.
5409
5410
5411         * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3.
5412
5413         * Documentation/user/changing-defaults.itely (Horizontal spacing):
5414         document spacing override hack.
5415
5416 2004-05-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5417
5418         * scm/output-gnome.scm: Add C-q, C-w keybindings.  Update
5419         installation info.  Support point-and-click.  Add +/- zoom
5420         keybindings.
5421
5422 2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5423
5424         * VERSION: 2.3.2 released
5425
5426         * lily/parser.yy (book_body): set default bookpaper.
5427
5428         * scm/output-tex.scm (header): kludge: hard code linewidth. 
5429
5430         * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
5431
5432 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5433
5434         * lily/score.cc (default_rendering): scale outputdef before
5435         starting.
5436
5437 2004-05-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5438
5439         * scm/fret-diagrams.scm: Add header.
5440
5441         * scm/output-gnome.scm: Hello world :-)
5442
5443 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5444
5445         * scripts/lilypond.py (run_dvips): only add papersize if present.
5446
5447         * lily/accidental-engraver.cc (update_local_key_signature): new
5448         function, fold code from initialize() and process_music().
5449         (update_local_key_signature): use deep copy. This fixes one
5450         problem from custom-key-signatures.ly.
5451         (number_accidentals_from_sig): tighter check for
5452         accidental-too-old.
5453
5454         * ly/engraver-init.ly: remove localKeySignature
5455         definition from ChoirStaff, StaffGroup, Score.
5456
5457         * lily/percent-repeat-engraver.cc (try_music): add moments for
5458         barlines too. Fixes: skipbars-percent-repeat.ly.
5459
5460 2004-05-24  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5461
5462         * lily/context-def.cc (filter_performers): don't go to cdrloc if
5463         skipping last pair. Fixes: crash-bar-number.
5464
5465         * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl
5466         D. Sorensen)
5467
5468         * input/test/fret-diagram.ly: new file.
5469
5470         * scm/paper.scm (paper-set-staff-size): scale linewidth too.
5471         (scale-paper): divide by scale.
5472
5473 2004-05-19  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5474
5475         * lily/rest-collision.cc (do_shift): also do nothing for the (0,2)
5476         case.
5477
5478 2004-05-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5479
5480         * scm/stencil.scm (fontify-text): reinstate function
5481
5482         * tex/lily-ps-defs.tex: remove lilypondblotdiam def.
5483
5484         * lily/book-paper-def.cc (Book_paper_def): add copy ctor.
5485
5486         * lily/parser.yy (book_paper_head): \bookpaper {} 
5487
5488         * python/midi.c: remove config.h
5489
5490 2004-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5491
5492         * scm/output-gnome.scm: Update.
5493
5494 2004-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5495
5496         * scm/output-gnome.scm: New file.
5497
5498         * lily/include/book-paper-def.hh: Add.  Janitorial fixes.
5499
5500 2004-05-17  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5501
5502         * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef
5503         (find_scaled_font): move from Paper_def
5504
5505 2004-05-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5506
5507         * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup
5508         (LY_DEFINE): add SCM_ASSERT_TYPE everywhere.
5509
5510         * po/fr.po: update po.
5511
5512         * lily/include/book-paper-def.hh (class Book_paper_def): new file.
5513
5514         * lily/book-paper-def.cc (print_smob): new file.
5515
5516 2004-05-16  Heikki Junes <hjunes@cc.hut.fi>
5517
5518         * buildscripts/lilypond-words.py: search words also from
5519         music-functions-init.ly.
5520
5521 2004-05-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5522
5523         * ly/music-functions-init.ly (def-music-function): new helper
5524         macro for defining music functions. \addlyrics \appoggiatura
5525         \acciaccatura \grace \partcombine \autochange \applycontext
5526         \applyoutput and \breathe are now defined here thanks to it.
5527
5528         * lily/parser.yy: 
5529         * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura
5530         \grace \partcombine \autochange \applycontext \applyoutput and
5531         \breathe keywords removed from the parser.
5532
5533         * lily/parser.yy: 
5534         * lily/music-function.cc (ly_make_music_function): 
5535         * lily/lexer.ll (music_function_type): added a case for 0-arg
5536         music functions.
5537
5538 2004-05-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5539
5540         * scm/ly-from-scheme.scm (read-lily-expression):  A variable
5541         refering to a music expression can be used in lily-inside-scheme:
5542         #{ $music #}
5543
5544         * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser
5545         and ly:parser-define, and change ly:parser-parse-string in order
5546         to make #{ $music #} work.
5547
5548         * scm/new-markup.scm (compile-markup-expression): when an argument
5549         is a string, use `make-simple-markup'.
5550
5551 2004-05-14  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5552
5553         * lily/parser.yy (My_lily_lexer): bugfix; op should be tag.  
5554
5555 2004-05-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5556
5557         * scripts/convert-ly.py (FatalConversionError.func): handle + in
5558         font-size. (backportme)
5559
5560 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5561
5562         * lily/paper-outputter.cc (output_stencil): dump font definitions
5563         before each stencil.
5564
5565         * lily/include/paper-book.hh (struct Score_lines): new
5566         struct. Collect info per Paper-score.
5567
5568         * lily/include/page.hh (class Page): to_stencil() returns Stencil
5569         everywhere.
5570
5571         * lily/stencil.cc (find_expression_fonts): new function
5572
5573         * lily/paper-outputter.cc (output_stencil): use
5574         interpret_stencil_expr
5575
5576         * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function.
5577         (interpret_stencil_expr): new function. Generic stencil
5578         interpretation.
5579
5580         * lily/paper-def.cc (find_scaled_font): divide lookup
5581         magnification by outpuscale for non-virtual fontmetrics. This
5582         fixes ludicrously long font definitions for text
5583         fonts. (backportme)
5584
5585         * lily/score-engraver.cc: remove
5586         {Engraver,Score_engraver}::typeset_grob(), remove all calls.
5587
5588 2004-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5589
5590         * input/test/markup-score.ly: Remove \notes.
5591
5592         * lily/parser.yy (book_body): Grok Composite_music and \header.
5593         (markup): Push NOTES mode before score_block.
5594
5595         * VERSION: release 2.3.1
5596
5597         * mf/feta-klef.mf: 
5598         * mf/feta-bolletjes.mf: Oops.  Comment-out canvast test code.
5599
5600         * Documentation/user/programming-interface.itely: Use @emph (was:
5601         @em).
5602
5603         * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error.
5604
5605 2004-05-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5606
5607         * scm/output-tex.scm (output-tex-string): tighten safe security.
5608
5609         * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option
5610
5611         * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define
5612         allowed ly functions.
5613
5614         * lily/ly-module.cc (ly_module_define): only define variable if
5615         bound.
5616         (ly_make_anonymous_module): take safe option.
5617
5618 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5619
5620         * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY.
5621
5622 2004-05-08  Jan Nieuwenhuizen  <janneke@gnu.org>
5623
5624         * input/regression/newaddlyrics.ly: Fix.
5625
5626         * Documentation/user/tutorial.itely: Use \newlyrics, remove most
5627         \score \notes.
5628
5629 2004-05-08  Heikki Junes <hjunes@cc.hut.fi>
5630
5631         * Documentation/user/music-glossary.tely ([k-z]): last fixes.
5632
5633 2004-05-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5634
5635         * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. )
5636
5637         * lily/paper-line.cc (Paper_line): don't store list of stencils,
5638         but convert to single Stencil immediately.
5639
5640         * lily/paper-book.cc (title): don't return Stencil* but Stencil.
5641
5642 2004-05-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5643
5644         * scm/output-sodipodi.scm: Resurrect sodipodi output.
5645
5646 2004-05-07  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
5647
5648         * elisp/lilypond-mode.el: Changed the way defaults are created for
5649         LilyPond-command-master.  LilyPond-mode will now check the
5650         timestamps of the files to see which command has to run next.
5651
5652 2004-05-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5653
5654         * scm/bass-figure.scm (format-bass-figure): don't set
5655         number-markup for strings. This fixes string in bass
5656         figure. (backportme)
5657
5658         * lily/parser.yy (bass_number): insert number-markup into figure
5659         definition.
5660
5661         * scm/define-music-properties.scm (all-music-properties): make
5662         'figure a markup.
5663
5664         * scripts/convert-ly.py (conv): \apply -> \applymusic
5665
5666 2004-05-06  Kristof Bastiaensen  <kristof.bastiaensen@vleeuwen.org>
5667
5668         * elisp/lilypond-mode.el: changed the order of some commands
5669         ("Midi" after "2Midi"), use the user-defined
5670         LilyPond-command-default as default instead of "LilyPond"
5671
5672         * elisp/lilypond-mode.el: added a LilyPond-master-file variable,
5673         to set the master file for the next command.
5674
5675         * elisp/lilypond-font-lock.el: replaced font-lock-warning-face
5676         with font-lock-reference-face.
5677
5678 2004-05-07  Heikki Junes <hjunes@cc.hut.fi>
5679
5680         * Documentation/user/music-glossary.tely ([ab]*): small fixes.
5681
5682         * Documentation/user/music-glossary.tely ([c-l]*): more fixes.
5683
5684 2004-05-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5685
5686         * ly/music-functions-init.ly (TODO): new file.
5687
5688         * lily/parser.yy (Generic_prefix_music_scm): add more
5689         music_function symbols.
5690         (Prefix_composite_music): change \apply to music-function   
5691
5692         * lily/include/music-function.hh: rename to music-function
5693
5694 2004-05-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5695
5696         * lily/music-head.cc (LY_DEFINE): change order of args.
5697
5698         * input/regression/music-head.ly (texidoc): new file.
5699
5700         * lily/parser.yy (Generic_prefix_music): allow generic
5701         music-transformation functions. 
5702
5703         * lily/include/music-head.hh (is_music_head): new file.
5704
5705         * lily/music-head.cc (get_music_head_transform): new file.
5706
5707 2004-05-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5708
5709         * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for
5710         empty extent. This fixes ottava brackets on rests. (backportme)
5711
5712         * make/lilypond.redhat.spec.in (Group): ln png files for info.
5713
5714         * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix.
5715
5716         * cygwin/lily-wins.py: update for the lily-wins.py script.
5717
5718 2004-05-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5719
5720         * lily/score-engraver.cc (typeset_all): switch off unbound spanner
5721         code. This will obviate typeset_grob () in the future.  The effect
5722         of this is that improperly written spanner handling will result in
5723         invalid spanner bounds.
5724         (announce_grob): add to elems_ from here
5725         (typeset_grob): comment out.  
5726
5727         * lily/include/engraver.hh (make_spanner): new calling interface
5728         for make_{item,spanner}. This obviates most calls to
5729         announce_grob().
5730
5731         * scm/music-functions.scm (set-accidental-style): use GrandStaff
5732         iso. PianoStaff for piano styles.
5733
5734 2004-05-03  Heikki Junes <hjunes@cc.hut.fi>
5735
5736         * Documentation/user/music-glossary.tely: add segno after d.s.
5737
5738 2004-05-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5739
5740         * lily/include/audio-column.hh: remove unused variables.
5741         (patch by Michael Welsh Duggan)
5742
5743         * flower/include/axes.hh (other_axis): inline Axes function
5744         (thanks to David Brandon).
5745
5746 2004-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5747
5748         * cygwin/mknetrel: Install image links (backportme).
5749
5750         * Documentation/user/GNUmakefile (local-install-info): Activate
5751         actual installing of image links (backportme).
5752
5753 2004-04-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5754
5755         * Documentation/user/notation.itely (Measure repeats): Removed
5756         unnecessary (and confusing) \context Voice{.
5757
5758 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5759
5760         * Documentation/topdocs/NEWS.texi: Mention use of \score as markup.
5761
5762         * lily/page.cc (Page): Do not use ly_scheme_function for
5763         volatile/configurable variables (FIXME: better name).
5764
5765         * lily/music-output-def.cc (c_lookup_variable): Rename (WAS:
5766         get_scmvar).
5767
5768 2004-04-29  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5769
5770         * scripts/convert-ly.py (FatalConversionError.subst): use
5771         \transposition.
5772
5773 2004-04-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5774
5775         * lily/include/page.hh (class Page): Declare left_margin ().
5776
5777         * lily/page.cc: Remove paper var caching.
5778
5779 2004-04-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5780
5781         * Documentation/user/music-glossary.tely: Add name to @top node.
5782         Remove comment from @table definitions (workaround for makinfo
5783         bug).
5784
5785         * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was:
5786         ly:stencil-get-expr).  Update callers.
5787         (ly:stencil-align-to!):  Return stencil too.
5788
5789         * lily/paper-outputter.cc (output_page): Bugfix.  Use page
5790         stencil.  Remove looped line-based page output.
5791         (output_line): Use line stencil.  Remove looped stencil-based line
5792         output.
5793
5794         * lily/page.cc (ly:page-paper-lines): New function.
5795
5796         * input/test/markup-score.ly: New file.
5797
5798         * scm/define-markup-commands.scm (stencil): New markup.
5799
5800         * lily/book.cc (to_stencil): New method.
5801
5802         * lily/parser.yy (markup): Use it to grok \score.
5803
5804 2004-04-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5805
5806         * lily/stencil.cc (expr): Rename (was: get_expr).  Update callers.
5807
5808         * lily/paper-book.cc (pages): Change signature.  Update callers.
5809
5810         * lily/include/page.hh:
5811         * lily/page.cc: New file.
5812
5813         * lily/paper-line.cc (to_stencil): New method.
5814
5815         * lily/paper-outputter.cc (output_stencil): New method.
5816
5817         * lily/paper-outputter.cc (output_line): Use them.
5818
5819         * lily/warn.cc: Remove.
5820
5821         * lily/my-lily-parser.cc (distill_inname): Remove.
5822
5823         * flower/include/file-name.hh: 
5824         * flower/file-name.cc: New file.  Update users.
5825
5826         * flower/file-path.cc [CYGWIN]: Junk testing code.  Remove Path.
5827         (find): New method of same name.
5828
5829         * lily/my-lily-parser.cc (ly:parse-file): Use it.
5830
5831         * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix:
5832         constant error message.
5833
5834 2004-04-27  Heikki Junes <hjunes@cc.hut.fi>
5835
5836         * input/test/{blank-notes.ly,staff-container.ly}: typos.
5837
5838 2004-04-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5839
5840         * Documentation/user/music-glossary.tely: @table @strong' replaced
5841         by `@table @samp @c @strong'.  This fixes invalid makeinfo output
5842         (backportme).
5843
5844 2004-04-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5845
5846         * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading.
5847
5848         * scm/ly-from-scheme.scm: New file. Introduce a new syntax:
5849         #{ lily music expression #} that returns an equivalent scheme
5850         music expression by parsing the string.
5851
5852 2004-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5853
5854         * lily/my-lily-parser.cc:
5855         * lily/my-lily-lexer.cc: Another step towards parsing ly code from
5856         SCM string (foo.ly/toto.scm support).
5857
5858 2004-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
5859
5860         * lily/my-lily-parser.cc (ly:parser-parse-string): New function.
5861
5862 2004-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5863
5864         * input/regression/newaddlyrics.ly: Remove lilypond-book kludge.
5865
5866         * scripts/lilypond-book.py: LY code that includes \header is
5867         not assumed to be a fragment.
5868
5869 2004-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5870
5871         * lily/stem-tremolo.cc (print): If stem direction == CENTER, move
5872         tremolo beams up.
5873
5874         * lily/stem.cc (chord_start_y): Return 0 if no heads.
5875         (get_default_stem_end_position): No tremolo head juggling if no
5876         heads.  Fixes tremolo crash on rests (backportme).
5877
5878         * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax.
5879
5880 2004-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5881
5882         * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy
5883         Gascoigne-Piggford).  Also: TAB and whitespace fixes.
5884
5885         * lily/lexer.ll: Allow \encoding in NOTES mode.
5886
5887         * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics
5888         for lyrics, not for commands.
5889
5890         * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING.
5891         FIXME: Replace some `Music's with Grouped_music_list; fixes make web.
5892
5893         * input/regression/newaddlyrics.ly: New file.
5894
5895         * Documentation/topdocs/NEWS.texi: Update.
5896
5897         * lily/parser.yy (new_lyrics): Return SCM list of lyric musics.
5898         (Music_list): Allow embedded scm.
5899
5900         * lily/score.cc (ly:score-bookify): New function.
5901
5902         * lily/music.cc (ly:music-scorify): Idem.
5903
5904         * lily/my-lily-parser.cc (ly:parser-print-book): Idem.
5905         (ly:parser-print-score): Idem.
5906
5907         * scm/lily.scm (default-toplevel-book-handler): Idem.
5908         (default-toplevel-music-handler): Idem.
5909         (default-toplevel-score-handler): Idem.
5910
5911         * ly/declarations-init.ly: Set default toplevel handlers.
5912
5913         * lily/parser.yy (book_block, score_block, toplevel_music): Use them.
5914
5915         * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score
5916         printer for score at toplevel.
5917
5918 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5919
5920         * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics.
5921         Fix for simple case: input/simple-song.ly, more complex stuff
5922         does not work yet.
5923
5924 2004-04-18  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5925
5926         * lily/parser.yy (Prefix_composite_music): split Composite_music
5927         in Prefix_composite_music and Grouped_music_list.
5928         (re_rhythmed_music): use Grouped_music_list for NEWLYRICS.
5929
5930 2004-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
5931
5932         * scm/lily.scm (toplevel-expression): New define.
5933
5934         * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function.
5935
5936         * lily/parser.yy (toplevel_expression): Use it.
5937
5938         * lily/include/my-lily-parser.hh: Smobbify.
5939
5940         * lily/my-lily-parser.cc (parse_string): New method.
5941
5942         * lily/my-lily-parser.cc (ly:parse-string): New function.
5943
5944         * Documentation/user/lilypond.tely: Add comment and workaround for
5945         gs-8.01 crash.  Fixes make web.
5946
5947         Simplification of toplevel music.
5948
5949         * lily/lexer.ll, lily/parser.yy:
5950
5951         * In LYRICS mode, return LYRICS_STRING.  This fixes one
5952         shift/reduce problem.
5953
5954         * Use NOTES mode at start of maininput.
5955
5956         * Grok toplevel composite music expression, put in score and book.
5957
5958         * Grok \relative COMPOSITE_MUSIC, make relative on middleC.
5959
5960         * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics
5961
5962         * input/simple.ly: New file.
5963
5964         * input/simple-song.ly: Idem.
5965
5966 2004-04-16  Han-Wen Nienhuys   <hanwen@xs4all.nl>
5967
5968         * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik
5969         Sandberg.
5970
5971 2004-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5972
5973         * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb.
5974
5975 2004-04-17  Heikki Junes <hjunes@cc.hut.fi>
5976
5977         * input/regression/accidental-octave.ly: doc automatic showing
5978         of note names.
5979
5980 2004-04-16  Heikki Junes <janneke@gnu.org>
5981
5982         * po/fi.po: do "make po && make -C po po-update" at top-level,
5983         then "cp po/out/fi.po po/fi.po" and update fields.
5984
5985         * po/fi.po: remove all designations of `fuzzy'; shows those elements.
5986
5987 2004-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5988
5989         * Documentation/user/introduction.itely (About this manual): Fix
5990         templates and regression urls (backportme).
5991
5992 2004-04-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5993
5994         * ly/engraver-init.ly (Score:graceSettings): Increase
5995         beamed-lengths, especially for 32nd notes.
5996
5997         * Documentation/user/notation.itely (Grace notes): Correct the
5998         syntax for add-grace-property example.
5999
6000 2004-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6001
6002         * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global
6003         `Generated' tag.
6004
6005         * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts.  NOT.
6006         Severely broken (the Debian package, at least).
6007
6008 2004-04-13  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6009
6010         * lily/context.cc (find_create_context): assign to lvalue.
6011
6012 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6013
6014         * lily/include/translator.hh (class Translator): rename
6015         get_parent_context() to context () to avoid confusion.
6016
6017         * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming.
6018
6019         * lily/lexer.ll: change is_string -> ly_c_string_p 
6020
6021         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book.
6022
6023         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book.
6024
6025 2004-04-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6026
6027         * VERSION: release 2.3.0
6028
6029         * mf/feta-nummer-code.mf: use ascii names for number glyphs.
6030
6031         * buildscripts/mf-to-table.py (parse_logfile): only prepend group-
6032         if nonempty.
6033
6034         * lily/include/context.hh (class Context): make members protected.
6035         (children_contexts): new accessor function.
6036
6037         * lily/include/translator.hh (class Translator): make
6038         daddy_context_ protected.
6039         (class Translator): clean up. 
6040
6041         * lily/include/context.hh (class Context): make daddy_context_
6042         private.
6043
6044         * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
6045         higher for finding Voice. (backportme)  
6046
6047         * lily/include/context.hh (class Context): remove
6048         find_context_below() as a method.
6049
6050         * Documentation/user/notation.itely (The Lyrics context): add note
6051         about manual durations
6052
6053         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math
6054         encoding.
6055
6056         * scm/output-tex.scm (text): dump \inputencoding{} for text.
6057
6058 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6059
6060         * scripts/lilypond.py (global_latex_preamble): remove latin1 from
6061         \usepackage{inputenc}
6062
6063         * lily/paper-book.cc (classic_output): don't advance Offset for
6064         TeX output.
6065
6066         * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include
6067         ec-sauter.map in rules
6068
6069         * mf/ecb.mf (font_identifier): new file, based on ecbx
6070
6071         * mf/ecb10.mf (gensize): new file.
6072
6073         * Documentation/topdocs/NEWS.texi (Top): document some more new
6074         features.
6075
6076         * ly/declarations-init.ly: run convert-ly
6077
6078         * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function
6079         from input-file-results. Remove input-file-results.* 
6080
6081 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6082
6083         * scm/output-ps.scm (font-command): Fix, again.
6084
6085         * input/test/title-markup.ly: Add \noPagebreak test.
6086
6087         * lily/score-engraver.cc (try_music): Bugfix.
6088
6089 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6090
6091         * lily/main.cc (main_with_guile): excise dependency options -M and
6092         --dep-prefix
6093
6094         * lily/input-file-results.cc: excise Makefile dependency code
6095
6096         * Documentation/user/invoking.itexi (Invoking the lilypond
6097         binary): remove dep doco
6098
6099         * lily/main.cc (main_with_guile): call lilypond-main
6100
6101         * scm/lily.scm (lilypond-main): new function: handle multiple files.
6102
6103         * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed
6104         exception.
6105
6106         * lily/my-lily-parser.cc: remove paper_description function
6107
6108         * lily/music-output-def.cc (LY_DEFINE): ly:output-description
6109         new function.
6110
6111         * lily/main.cc: remove global_score_count.
6112
6113         * lily/book.cc (process): don't take header from global_input_file.
6114
6115         * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH
6116
6117         * lily/parser.yy (My_lily_lexer): remove current_parser global var.
6118
6119         * lily/music-output-def.cc (LY_DEFINE): new function
6120         ly_output_description. This function does the bulk for  setting,
6121         parsing and breaking down of an input file.
6122
6123         * lily/ly-module.cc (ly_make_anonymous_module): don't protect
6124         anonymous modules globally. Let's hope they get GCd
6125
6126         * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 
6127
6128 2004-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
6129
6130         * scm/output-ps.scm (header): Papersize from paper.
6131
6132         * scripts/lilypond.py (global_latex_preamble): Oldish behaviour
6133         for classic output.
6134
6135         * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if
6136         lilypondclassic is defined.
6137         (lilypondstart): Oldish behaviour if lilypondclassic is defined.
6138
6139         * input/regression/between-systems.ly: Remove.
6140
6141         * python/lilylib.py (get_bbox): Fix regular expression
6142         for bounding box.
6143
6144         * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro.
6145
6146         * scm/output-tex.scm (stop-page): Use it.
6147
6148         * scm/output-ps.scm (define-fonts): Bugfix.
6149
6150         * lily/grob.cc: Add penalty to interface.
6151
6152         * lily/include/paper-line.hh (class Paper_line): New member
6153         var penalty_.
6154
6155         * lily/system.cc (get_line): Initialise Paper_line with
6156         page-penalty's from original grobs.
6157
6158         * scm/define-music-properties.scm (all-music-properties): Add
6159         page-penalty.
6160
6161         * scm/define-grob-properties.scm (all-grob-descriptions): Idem.
6162
6163         * lily/score-engraver.cc (try_music): Handle page-penalty.
6164
6165         * ly/declarations-init.ly (pagebreak, noPagebreak): New command.
6166
6167 2004-04-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6168
6169         * ly/declarations-init.ly (melismaEnd): typo
6170
6171         * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps.
6172
6173         * scm/output-ps.scm (text): split string into spaces, use moveto
6174         for setting space. 
6175
6176 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6177
6178         * po/nl.po: Update.
6179
6180         * scm/font.scm (add-cmr-fonts): Typo.
6181
6182 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6183
6184         * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1
6185         font-encoding.
6186
6187         * scm/define-grobs.scm (all-grob-descriptions): idem.
6188
6189         * lily/time-signature.cc (numbered_time_signature): idem.
6190
6191         * scm/font.scm (add-cmr-fonts): use real encoding names for
6192         font-encoding.
6193
6194 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6195
6196         * lily/paper-book.cc (classic_output): 
6197         * tex/lilyponddefs.tex (lybox): Add height, and proper raising.
6198         Fixes classic output.
6199         (lilypondstart):
6200         * scripts/lilypond.py (global_latex_preamble): Remove topmargin
6201         kludge.
6202
6203         * scripts/old-lilypond-book.py: Remove.
6204
6205         Page layout for SCOREs enclosed in a BOOK:
6206
6207         * scripts/lilypond.py: Remove LaTeX titling kludge.  Remove page
6208         layout tweaking.
6209
6210         * input/les-nereides.ly (theScore): Add \book.
6211
6212         * input/test/title-markup.ly: Add \book.
6213
6214         * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output
6215         only if 'verbose.
6216
6217         * lily/include/paper-book.hh (PAGE_LAYOUT): Remove.
6218
6219         * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check.
6220
6221         * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem):
6222         * scm/output-tex.scm (start-system): Update for page layout by
6223         LilyPond.
6224
6225         * scm/output-ps.scm (start-system): Previously (new-start-system).
6226
6227         * lily/paper-outputter.cc (output_header): Uniquify list of fonts
6228         passed to define-fonts.
6229
6230         * lily/paper-column.cc: 
6231         * lily/system.cc (get_line):
6232         * ly/property-init.ly (newpage): 
6233         * scm/define-grob-properties.scm:
6234         * scm/output-ps.scm: 
6235         * scm/output-tex.scm: Remove between-system-string kludge.
6236
6237         * scm/output-ps.scm (define-fonts, font-command,
6238         font-load-encoding): Handle ENCODING = #f.
6239
6240         * scm/output-tex.scm (output-scopes): Check if variable is bound.
6241
6242         * scm/define-markup-commands.scm (fill-line): Use
6243         make-simple-markup (WAS: unexisting make-word-markup).
6244
6245         * lily/text-item.cc (interpret_markup): Bugfix, transpose
6246         ENCODING, MARKUP parameters for interpret_string.
6247
6248         * lily/input-file-results.cc (do_one_file): Remove Paper_book hack.
6249
6250         * lily/score.cc (book_rendering): New method.
6251         (default_rendering): Create Paper_book helper locally, dump
6252         output.
6253
6254         * lily/my-lily-lexer.cc (the_key_tab): Add book.
6255
6256         * lily/parser.yy: Handle \book.
6257
6258         * lily/include/book.hh: 
6259         * lily/book.cc: New file.
6260
6261 2004-04-10  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6262
6263         * lily/text-item.cc (interpret_string): new file, select font with
6264         encoding.
6265
6266         * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout.
6267
6268         * scm/define-markup-commands.scm (encoded-simple): new markup command.
6269
6270         * lily/parser.yy (markup): take encoding from lexer.
6271
6272 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6273
6274         * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation.
6275
6276         * scm/output-ps.scm: Remove some cruft.
6277
6278 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6279
6280         * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs.
6281
6282         * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme)
6283
6284 2004-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6285
6286         * scm/font.scm (add-century-schoolbook-fonts):
6287         (make-century-schoolbook-tree): New function.
6288
6289         * input/test/title-markup.ly: Use Century Schoolbook font.
6290
6291 2004-04-09  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6292
6293         * scripts/convert-ly.py: limited old-style markup convert. (Thanks
6294         to Erik Sandberg) 
6295
6296         * lily/font-metric.cc (LY_DEFINE): new function, return fontName.
6297
6298         * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan.
6299
6300         * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename
6301
6302         * scm/encoding.scm (coding-alist): add AdobeStandardEncoding
6303
6304 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6305
6306         * scm/part-combiner.scm (determine-split-list): bugfix: if no
6307         solo-state (at end of solo), we can set the solo status
6308         too. (backportme.)
6309
6310         * input/regression/part-combine-solo-end.ly: new file.
6311
6312 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6313
6314         * scripts/abc2ly.py (parse_file): Strip \r from lines.  Fixes DOS
6315         flavour abc files.  Really ignore unknown keys (backportme).
6316
6317 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6318
6319         * lily/scaled-font-metric.cc (text_dimension): only multiply with
6320         magnification_ when looking up in orig_.
6321
6322         * scm/output-tex.scm (text): switch off char-mapping.
6323
6324         * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-',
6325         because AFM's encoding field cannot have spaces.
6326
6327 2004-04-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6328
6329         * scm/output-ps.scm (define-fonts): More re/encoding tweaking.
6330
6331 2004-04-08  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6332
6333         * lily/paper-def.cc (find_scaled_font): change to inputencoding.
6334
6335         * mf/cmr.enc: new file, without hi-bit ascii info. 
6336
6337         * lily/bezier-bow.cc (slur_shape): make indent dependent on
6338         width. This removes the 'hook' at the end of a long slur.
6339
6340         * buildscripts/mf-to-table.py (parse_logfile): don't append
6341         encoding to fontname.
6342
6343 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6344
6345         * scm/output-ps.scm (define-fonts): Load .enc only once.
6346
6347         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files
6348         too.
6349
6350 2004-04-07  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6351
6352         * buildscripts/mf-to-table.py (parse_logfile): remove spaces from
6353         encoding field.
6354
6355         * lily/stencil-scheme.cc: remove ly:fontify-atom 
6356
6357         * ly/portuges.ly (pitchnames): new file.
6358
6359         * lily/include/lily-guile.hh: many new ly_ functions.  Thanks to
6360         Michael Welsh Duggan
6361
6362         * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
6363
6364         * ly/nederlands.ly: add comment about digits.
6365
6366         * lily/scaled-font-metric.cc (derived_mark): idem.
6367
6368         * scm/encoding.scm (make-encoding-mapping): change permutation to
6369         mapping.
6370
6371         * lily/scaled-font-metric.cc (derived_mark): is a const method.
6372         (Modified_font_metric): make alist for coding_description_
6373         (LY_DEFINE): remove coding-name.
6374
6375         * scm/output-tex.scm (text): remove debugging code.
6376
6377         * lily/scaled-font-metric.cc (ly_font_encoding): return vector
6378
6379         * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme
6380         from infile.
6381
6382         * mf/feta-generic.mf: move fet_beginfont into generic code.
6383         use fetaMusic (without space) as encoding
6384
6385         * mf/feta-autometric.mf: take encoding argument
6386
6387         * lily/afm.cc (read_afm_file): bugfix, read global info too. 
6388
6389         * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
6390         use.
6391
6392         * scm/encoding.scm (read-encoding-file): use symbol for glyph
6393         name.
6394
6395 2004-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6396
6397         * input/test/title-markup.ly: Set inputencoding.
6398
6399         * scm/output-ps.scm (define-fonts): Handle font re-encoding.
6400
6401         * lily/scaled-font-metric.cc (ly:font-coding-name): New function.
6402
6403         * scm/encoding.scm (get-coding-filename, get-coding-command): New
6404         function.
6405         (coding-alist): Also hold filename, command.
6406         (read-encoding-file): Return symbols.
6407
6408 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6409
6410         * scm/output-tex.scm: remove fontify; text and char take a font
6411         argument.
6412
6413         * lily/tfm.cc (name_to_index): new function, use encoding_table_.
6414
6415         * lily/scaled-font-metric.cc (text_dimension): init
6416         coding_{permutation,table}_ too 
6417         (LY_DEFINE): ly:font-encoding, new function return
6418
6419         * lily/paper-def.cc (find_scaled_font): take input coding from
6420         inputcoding paper var.
6421
6422         * lily/performance.cc (output): remap modulo 16.
6423
6424         * lily/text-item.cc (interpret_markup): whoops, variable
6425         shadowing fixed.
6426
6427 2004-04-06  Michael Welsh Duggan  <mwd@sei.cmu.edu>
6428
6429         * lily/piano-pedal-performer.cc (try_music): Compare symbols to
6430         symbols, not symbols to strings.
6431
6432         * lily/piano-pedal-engraver.cc (try_music): Compare symbols to
6433         symbols, not symbols to strings.
6434
6435 2004-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6436
6437         * lily/kpath.cc (kpathsea_gulp_file_to_string): 
6438         (ly:kpathsea-gulp-file): New function.
6439
6440         * scm/encoding.scm (read-encoding-file): Use it.
6441
6442 2004-04-06  Werner Lemberg  <wl@gnu.org>
6443
6444         * scm/encoding.scm (coding-alist): Fix typo.
6445
6446 2004-04-06  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6447
6448         * lily/scaled-font-metric.cc (text_dimension): move function from
6449         Font_metric
6450         (make_scaled_font_metric): init coding_scheme_ to TeX
6451         (text_dimension): use get-coding-vector for non TeX coding_scheme_
6452
6453         * lily/include/scaled-font-metric.hh (struct
6454         Modified_font_metric): rename from Scaled_font_metric
6455
6456         * scm/encoding.scm (read-encoding-file): split up large function,
6457         leave caching to (delay)
6458
6459         * lily/lily-guile.cc (LY_DEFINE): typecheck argument.
6460
6461 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
6462
6463         * lily/my-lily-lexer.cc (set_encoding): New method.
6464
6465         * lily/lexer.ll: Grok \encoding.
6466
6467         * lily/font-metric.cc (get_encoded_index): New function.
6468
6469         * lily/include/font-metric.hh (coding_scheme): New method.
6470
6471         * scm/encoding.scm: New file.
6472
6473         * mf/feta-beugel.mf: Better error message (WAS: `foobar').
6474
6475 2004-04-05  Werner Lemberg  <wl@gnu.org>
6476
6477         * Documentation/user/tutorial.itely: Revised (finished).
6478
6479         * Documentation/user/macros.itexi (@separate): Removed.
6480
6481 2004-04-05  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6482
6483         * scm/output-ps.scm (define-fonts): fix scaling.
6484
6485         * lily/scaled-font-metric.cc (design_size): add function.
6486
6487         * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only
6488         partial cut&paste of ly:font-magnification.
6489
6490 2004-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
6491
6492         * scm/output-ps.scm (define-fonts):
6493         (fontify): Update.
6494
6495 2004-04-04  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6496
6497         * po/fr.po: update. (backportme).
6498
6499         * po/nl.po: update. (backportme). 
6500
6501         * mf/feta-beugel.mf: document why design size is not fixed.
6502
6503         * mf/feta-braces-a.mf: rename to stress that it's not design size.
6504
6505 2004-04-04  Werner Lemberg  <wl@gnu.org>
6506
6507         * Documentation/user/tutorial.itely: Revised (continued).
6508
6509 2004-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6510
6511         * po/nl.po: Update (backportme).
6512
6513 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6514
6515         * po/de.po: update. (backportme).
6516
6517         * scm/output-tex.scm (font-command): use ly: functions to
6518         construct name.
6519         (define-fonts): don't use alist, just dump \font definitions.
6520         (font-load-command): calculate proper scaling by taking
6521         outputscale from paper argument.
6522
6523         * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into
6524         expression.
6525
6526         * lily/paper-outputter.cc (output_header): pass paper arg to
6527         define-fonts
6528
6529         * lily/paper-def.cc (font_descriptions): dump list of
6530         Scaled_font_metrics
6531         (find_scaled_font): take Font_metric argument, store
6532         Scaled_font_metrics in hash-table containing (size ->
6533         Scaled_font_metrics) alist.
6534         (get_dimension): rename from get_realvar
6535
6536         * lily/font-metric.cc (LY_DEFINE): ly:font-design-size,
6537         ly:font-magnification, ly:font-name: new functions
6538
6539 2004-04-03  Werner Lemberg  <wl@gnu.org>
6540
6541         * Documentation/user/dedication.itely,
6542         Documentation/user/preface.itely,
6543         Documentation/user/introduction.itely,
6544         Documentation/user/tutorial.itely: Revised.
6545         Removing leading spaces which distorts output if info files are read
6546         with stand-alone info.
6547         Removing superfluous inter-word spaces which also distorts output
6548         for stand-alone info.
6549         Using ` and ' instead of `` and '' everywhere to improve
6550         legilibility with stand-alone info
6551         Using @samp for single-letter input items and data which contains
6552         spaces, @code for other things.
6553
6554         * lily/grob-interface.cc: Adding copyright.
6555         (check_interfaces_for_property): Improve format of warning message.
6556
6557 2004-04-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6558
6559         * lily/include/font-metric.hh (struct Font_metric): add
6560         design_size () method.
6561
6562         * buildscripts/mf-to-table.py (base): add DesignSize comment.
6563
6564         * lily/afm.cc (read_afm_file): read design size.
6565
6566         * input/regression/repeat-unfold-tremolo.ly: add dotted case.
6567
6568         * scm/music-functions.scm (unfold-repeats): handle dots too.
6569
6570 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6571
6572         * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL.
6573         (backportme)
6574
6575 2004-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6576
6577         * input/wilhelmus.ly: Use raggedright.  Hack `Een prin -- ce'
6578         lyric indent.  Revert melismaBusyProperties using \unset.
6579
6580 2004-04-02  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6581
6582         * input/regression/bar-check-redefine.ly (pipeSymbol): new file.
6583
6584         * lily/parser.yy (command_element): allow redefinition of |
6585         meaning.
6586
6587         * lily/break-align-engraver.cc (acknowledge_grob): construct
6588         LeftEdge where the first cause for alignment is coming from.
6589         This makes \override Staff.LeftEdge work as expected.
6590
6591         * lily/slur-performer.cc (Slur_performer): add inits
6592
6593         * lily/beam-performer.cc (Beam_performer): add inits
6594
6595 2004-04-01  Han-Wen Nienhuys   <hanwen@xs4all.nl>
6596
6597         * VERSION (PACKAGE_NAME): release 2.2.0