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