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