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