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