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