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