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