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