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