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