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