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