]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
2a66fbae9971b7755917edddba6993c8a6a1942f
[lilypond.git] / ChangeLog
1 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/include/lily-guile-macros.hh: add assert to
4         scm_or_str2symbol(SCM).
5
6         * VERSION (PATCH_LEVEL): bump version.
7
8         * lily/spacing-spanner.cc (musical_column_spacing): handle
9         musical->nonmusical spacing case, where there is no spacing
10         wish. Fixes issue #61.
11
12         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
13         (pango_item_string_stencil): use logical rect horizontally (to
14         preserve spaces), ink_rect vertically (for time signatures).
15
16         * lily/font-metric.cc (word_stencil): new interface function
17
18         * input/regression/utf-8-mixed-text.ly: new file.
19
20         * lily/percent-repeat-engraver.cc (listen_percent): remove
21         spurious warning.
22
23         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
24         non-dynamic scripts. Fixes #30.
25
26         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
27
28         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
29
30         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
31         SCM_UNDEFINED for non-existent data.
32
33         * lily/side-position-interface.cc (general_side_position): allow
34         optional current_offset argument for chaining, so combinations of side-position
35         and outside slur callback don't add up.  Fixes issue #92.
36
37         * lily/pango-font.cc (pango_item_string_stencil): use
38         logical_rect. This prevents spaces after words from disappearing,
39         issue #72.
40         
41         * VERSION: release 2.9.20
42
43 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
44
45         * scm/define-grob-properties.scm (all-user-grob-properties):
46         mention stencil as user settable.
47
48 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
49
50         * Documentation/user/page.itely (Page formatting): 
51         document auto-first-page-number
52
53         * lily/page-breaking.cc (find_chunks_and_breaks): 
54         * lily/paper-score.cc (calc_breaking): Follow changes to the
55         Constrained_breaking interface
56
57         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
58         here backwards, as an optimisation
59         (initialize): new function; move most of the code in resize () here
60         (combine_demerits): cache ragged_right_
61         (Constrained_breaking): constructor now takes the Paper_score
62
63 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
64         
65         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
66         avoid parser lookahead for 0-ary functions.
67
68         * lily/translator.cc: Extract event classes from
69         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
70
71 2006-10-02  Heikki Junes  <hjunes@gmail.com>
72
73         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
74         KBabel fix tool.
75
76 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
77
78         * scm/layout-page-layout.scm (page-breaking-wrapper): new
79         function. Call the page breaking function selected in the
80         `page-breaking' \paper variable, then the post processing function
81         chosen using the `page-post-process' \paper variable.
82         (line-height): new function. Return the height of a system.
83         (line-minimum-position-on-page): new function. Return the position
84         of a system on page (using the previous line position), only
85         considering between system padding.
86         (stretchable-line?): new function. Says whether a line can be
87         stretched (ie. is not a title nor a single staff system).
88         (page-maximum-space-left): new function. Computes space left on a
89         page, when all systems are separated by their padding.
90
91         * lily/page-breaking.cc (breaking::make_pages): Move page post
92         processing function call to page breaking wrapper (common to all
93         page breakers).
94
95         * lily/paper-book.cc (book::pages): call the page breaking
96         wrapper, instead of the page breaker directly
97
98         * ly/paper-defaults.ly: Add \paper variables for page breaking
99         wrapper and page post processing function. Make
100         `write-page-layout' value depend on the 'dump-tweaks option. Add a
101         `system-maximum-stretch-procedure' variable for holding a function
102         computing the maximum stretch a system allows.
103
104         * scm/layout-page-dump.scm (write-page-breaks): computes the
105         stretch to apply to systems on a page to minimize left
106         space. Dump this stretch length.
107
108         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
109         the system-stretch property of the tweak data to stretch the
110         system.
111         (includePageLayoutFile): Void function which includes the
112         generated page-layout file if it exists and if the page layout
113         dumping is not asked.
114         (scoreTweak): if the score tweak named by the argument exists,
115         return it.
116
117 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
118
119         * lily/page-spacing.cc (compress_lines, uncompress_solution):
120         handle correctly the case where there are multiple \noPageBreaks
121         in a row.
122
123 2006-09-30  Laura Conrad <lconrad@laymusic.org>
124
125         * abc2ly.py adds segno (S) and Coda (O) to articulations.
126         
127         * abc2ly.py fix so that entering " -- " will translate to a -- in
128         the lilypond instead of a " - - "
129         
130 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
131
132         * lily/align-interface.cc: fix typo
133
134         * lily/dynamic-text-spanner.cc (print): Add a special case for
135         trill spanner right sides. 
136
137         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
138
139         * lily/align-interface.cc (get_extents_aligned_translates): add
140         support for padding variable.
141
142         * lily/break-align-interface.cc (self_align_callback): oops: use
143         loop variable in guard.
144
145         * input/regression/repeat-percent-grace.ly: new file.
146
147         * lily/percent-repeat-engraver.cc (start_translation_timestep):
148         remember first currentCommandColumn of a grace run. Fixes issue 70.
149
150         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
151         move class definition to CC file.
152
153         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
154
155         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
156         measure-long  repeats.
157
158         * flower/include/international.hh: include stdarg.h
159
160 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
161
162         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
163         put_systems_on_pages to return an empty result, we need to assign
164         demerits properly in that case.
165         (put_systems_on_pages): Make the number of pages depend on the
166         evenness of page_number. Add auto-first-page-number.
167         (calc_subproblem): ensure that the page-number is even for the
168         left-hand page. Warn if the first page-turn doesn't fit onto the
169         first (right-hand) page.
170
171         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
172         (min_page_count): make this publicly accessible
173         (min_page_count): fix a bug when there are forced page breaks that
174         was introduced when I made this loop run backwards
175         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
176         replace space_systems_on_min_pages with these two. The logic in
177         space_systems_on_min_pages was getting too convoluted and is better
178         contained in page-turn-page-breaking.
179
180         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
181         conditional
182         (breakable_column): typo
183
184         * lily/source-file.cc (get_line): fix off-by-one error
185         and clean up some of the logic
186
187 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
188
189         * lily/page-breaking.cc (make_pages): honour the first-page-number
190         property
191
192 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
193
194         * VERSION (PACKAGE_NAME): bump version.
195
196 2006-09-26  Pal Benko  <benko.pal@gmail.com>
197
198         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
199         (the latter is the same as petrucci-f which is kept for compatibility)
200
201 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
202         
203         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
204
205 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
206
207         * lily/global-context.cc (run_iterator_on_me): break out of loop
208         if moment doesn't increase.
209
210         * scm/define-grob-properties.scm (all-user-grob-properties): add
211         forced property.
212
213         * lily/accidental.cc (after_line_breaking): read forced property.
214
215         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
216         property.
217
218         * input/regression/accidental-forced-tie.ly:  new file.
219
220 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
221
222         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
223
224         * lily/figured-bass-engraver.cc: only listen to rest events if
225         ignoreFiguredBassRest is not set.
226
227         * scm/define-context-properties.scm
228         (all-user-translation-properties): add ignoreFiguredBassRest property
229
230 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
231
232         * lily/paper-book.cc (get_system_specs):
233         (set_system_penalty): fix breakbefore.
234         We used to set a penalty on the system after the break, now we
235         set a permission on the system before the break
236
237         * lily/grob-property.cc: add scm debugging hooks into
238         property modification
239
240         * lily/context-property.cc:
241         * lily/engraver.cc:
242         rename make_foo_from_properties to internal_make_foo and
243         move it from context-property.cc to a member function of
244         Engraver.
245         
246         * lily/include/lily-guile-macros.hh:
247         overload ly_symbol2scm macro so that there is no more need
248         to use internal_foo
249
250         * lily/volta-repeat-iterator.cc:
251         * lily/tweak-engraver.cc:
252         * lily/tuplet-bracket.cc:
253         * lily/span-bar-engraver.cc:
254         * lily/script-engraver.cc:
255         * lily/prob-scheme.cc:
256         * lily/pointer-group-interface.cc:
257         * lily/parser.yy:
258         * lily/grob-scheme.cc:
259         * lily/grob-property.cc:
260         * lily/context.cc:
261         * lily/context-property.cc:
262         * lily/break-substitution.cc:
263         * lily/break-align-engraver.cc:
264         * lily/axis-group-interface.cc:
265         * lily/align-interface.cc:
266         remove calls to internal_FOO
267
268         * lily/system-start-delimiter-engraver.cc:
269         * lily/parenthesis-engraver.cc:
270         * lily/accidental-engraver.cc:
271         remove calls to make_foo_from_properties
272
273 2006-09-23  Graham Percival  <gpermus@gmail.com>
274
275         * Documentation/user/programming-iterfaces.itely: fix
276         def-music-function -> define-music... leftover.
277
278 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
279
280         * lily/page-spacing.cc (min_page_count): by running the loop
281         backwards, we can calculate ragged_last properly.
282
283 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
284
285         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
286         printfirst-page-number -> print-first-page-number
287
288         * python/convertrules.py: corresponding rule.
289
290         * Documentation/user/page.itely (Page formatting): Document the
291         default values of all page layout parameters. 
292
293 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
294
295         * lily/lexer.ll: remove limitation on music function arity. New
296         mode extratoken, which inserts extra EXPECT_* tokens after
297         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
298
299         * lily/parser.yy: Change grammar for music function accordingly.
300
301         * lily/include/lily-parser.hh: New method get_state, new member
302         hidden_state. Works around a problem when parser fetches
303         MUSIC_FUNCTION token but not the following EXPECT_* token.
304
305         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
306         remove try_music
307
308         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
309         references to Music; use ASSIGN_EVENT_ONCE everywhere
310
311         * lily/grob-info.cc: junk *music_cause
312
313         * lily/music.cc: copy eventified articulations to stream event
314
315         * lily/part-combine-iterator.cc: Cleanup using enums
316
317         * lily/translator-group.cc: Junk OldMusicEvent, and associated
318         methods
319
320         * lily/include/engraver.hh: Junk music.hh include
321
322         * lily/stream-event.cc: Changed constructors
323
324 2006-09-21  Graham Percival  <gpermus@gmail.com>
325
326         * Documentation/user/tweaks.itely (Fitting music onto fewer
327         pages): change settings to avoid warning messages.
328
329 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
330
331         * Documentation/user/tweaks.itely (Fitting music onto fewer
332         pages): Add between-system-space setting. 
333
334 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
335
336         * lily/accidental-placement.cc (calc_positioning_done): don't
337         trigger Y-extent calculation too early. Use pure_height instead.
338
339         * lily/scale.cc (LY_DEFINE): new file. 
340
341 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
342
343         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
344         that happen at the start of a score: having a zero-length
345         chunk was messing up min_system_count calculations.
346
347         * lily/source-file.cc (get_line): lower_bound, not
348         binary_search. Fixes problem where point-and-click would
349         always point to the first line.
350
351 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
352
353         * lily/accidental-placement.cc (calc_positioning_done): also put
354         stems into accidental support. 
355
356         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
357         event_ detected.
358
359         * scm/script.scm (default-script-alist): avoid-slur and
360         slur-padding for portato script.
361
362         * lily/stem-tremolo.cc (translated_stencil): new function. 
363         (height): use new function. Fixes tremolos on whole notes.
364
365         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
366         slur found.
367
368 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
369
370         * scripts/abc2ly.py (try_parse_comment): idem.
371
372         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
373         bar_string iso. string.find()
374
375         * lily/*.cc: idem.
376
377         * lily/slur.cc (get_curve): always use scm_is_pair() looping
378         scheme lists.  
379
380 2006-09-18  Graham Percival  <gpermus@gmail.com>
381
382         * Documentation/user/basic-notation.itely: add bug
383         warning about ties and octavation/clef.
384
385 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
386
387         * VERSION (PACKAGE_NAME): release 2.9.18
388
389 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
390
391         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
392         figure out midi file names right here.
393         
394 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
395
396         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
397
398         * scm/backend-library.scm: option naming:  gs-font-load*s*
399
400         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
401         include-eps-fonts
402
403 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
404
405         * scm/define-music-types.scm (music-descriptions): remove
406         BreakEvent and fix {Page,Line}{Break,Turn}Event so
407         Music::to_event doesn't complain.
408
409         * lily/accidental-placement.cc (ape_compare):
410         * lily/semi-tie.cc (compare): 
411         * lily/note-column.cc (shift_compare): replace by XXX_less
412
413         * lily/tie-formatting-problem.cc (set_chord_outline): 
414         * lily/tie-column.cc (calc_positioning_done): 
415         * lily/system.cc (post_processing)
416         (get_paper_system): 
417         * lily/stem.cc (note_head_positions)
418         (calc_positioning_done): 
419         * lily/spanner.cc (do_break_processing)
420         (find_broken_piece): 
421         * lily/span-bar.cc (print): 
422         * lily/semi-tie-column.cc (calc_positioning_done): 
423         * lily/rest-collision.cc (calc_positioning_done): 
424         * lily/program-option.cc (get_help_string): 
425         * lily/note-collision.cc (get_clash_groups):
426         * lily/new-fingering-engraver.cc (position_scripts):
427         * lily/keyword.cc (Keyword_table):
428         * lily/hara-kiri-group-spanner.cc (request_suicide):
429         * lily/grob-pq-engraver.cc (stop_translation_timestep):
430         * lily/accidental-placement.cc (calc_positioning_done):
431         (stagger_apes):
432         * lily/beam.cc (get_beam_segments):
433         * lily/grob-array.cc (remove_duplicates):
434         use new vector_sort
435         
436         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
437         ragged-last-bottom = ##f (test the new page breaker)
438
439         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
440
441         * scm/define-context-properties.scm
442         (all-internal-translation-properties): remove properties that
443         were used to communicate page-turn stuff to the paper-column
444         engraver.
445
446         * lily/lily-guile.cc (robust_scm2string): new function
447
448         * lily/paper-column-engraver.cc: Clean up page turn stuff
449
450         * lily/page-turn-engraver.cc: Re-write the page turn logic here
451         instead of cluttering up paper-column-engraver.cc
452
453 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
454
455         * scm/layout-page-dump.scm (scm): export utility function names,
456         to allow user writing cutsom dumping functions.
457
458         * scm/layout-page-layout.scm: export utility function names to
459         enable custom page breaking function writing. Tabify.
460         (line-next-space): use ?-suffix only for predicates
461         (page-maximum-space-to-fill): new function. Return the space
462         between first and bottom system of a page, to give to
463         space-systems.
464         (space-systems): use a space-to-fill argument (for instance as
465         computed by page-maximum-space-to-fill) instead of computing
466         internaly this space with the page height. That way, the caller
467         can adjust the space to use.
468         (make-page-from-systems, walk-paths): compute space to fill before
469         calling space-systems.
470
471 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
472
473         * scm/script.scm (default-script-alist): set paddings for every
474         type here, increase for portato mark.
475
476         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
477         -dinclude-eps-fonts
478
479 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
480
481         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
482         use spanner::set-spacing-rods
483
484         * lily/note-column.cc: reformat.
485
486         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
487         step positioning for note/rest combinations.
488
489         * input/regression/rest-note-collision.ly: new file.
490
491         * scm/define-grobs.scm (all-grob-descriptions): add
492         springs-and-rods
493
494         * flower/include/std-vector.hh: switch off again.
495
496         * VERSION (PATCH_LEVEL): bump to 2.9.18
497
498         * flower/include/std-string.hh: idem.
499
500         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
501
502 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
503
504         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
505         PianoStaff. 
506
507 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
508
509         * Documentation/user/page.itely: update page breaking documentation
510
511 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
512
513         * lily/note-collision.cc (calc_positioning_done): only access
514         first head if available.
515
516         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
517
518         * scm/framework-ps.scm (output-preview-framework): use new name.
519
520         * lily/program-option.cc (internal_set_option): use new names.
521
522         * Documentation/user/SConscript (lilypond_book_flags): update -d
523         variable names.
524
525         * Documentation/user/lilypond-book.itely (Inserting LilyPond
526         output into other programs): new variable names.
527
528         * scm/lily.scm (define-scheme-options): uniformize var names.
529
530         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
531         tuplets_ is non-empty before popping.
532
533 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
534
535         * lily/spanner.cc (find_broken_piece): 
536         * lily/spacing-spanner.cc (get_columns): 
537         * lily/source-file.cc (get_line): 
538         * lily/simple-spacer.cc (get_column_description): 
539         * lily/keyword.cc (lookup): 
540         use the new binary search.
541
542         * flower/include/std-vector.hh: replace binary_search with
543         a more STL-like version
544
545 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
546
547         * lily/tie-performer.cc: remove unused last_event_ property.
548         (class Tie_performer): add now_tied_heads_ property for
549         partially-tied heads.
550         (acknowledge_audio_element): when adding an Audio_note, put the
551         note in now_tied_heads_ if the audio note is partially tied.
552         (stop_translation_timestep): always include entries in
553         now_tied_heads_ in heads_to_tie_.
554
555         * lily/drum-note-performer.cc (process_music): look for tie-events
556         in the articulations; pass to Audio_note constructor.
557
558         * lily/note-performer.cc (process_music): look for tie-events in
559         the articulations; pass to Audio_note constructor.
560
561         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
562         constructor.
563
564         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
565         include initializer in constructor.
566
567 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
568
569         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
570         unless they are breakable. This fixes discrepancies between the forces
571         calculated here and the forces calculated in get_line_configuration.
572
573         * lily/grob.cc (pure_relative_y_coordinate): fix some
574         mis-estimation that was happening with piano staves.
575
576         * lily/constrained-breaking.cc (resize): don't choke if we get a
577         measure that won't fit on a line.
578         (combine_demerits): don't consider uniformity when ragged
579
580         * lily/page-spacing.cc (solve): why the f* were there two of these?
581         (calc_subproblem): properly handle the case where a system is taller
582         than the page.
583
584         * lily/system.cc (get_paper_system): ensure that all the permissions
585         and penalties are passed to the paper systems.
586
587         * lily/page-breaking.cc (create_system_list): support system-count.
588
589         * scm/define-grobs.scm (pure-print-callbacks): add
590         ly:script-interface::print
591
592         * lily/page-spacing.cc (min_page_count): fix calculation of min
593         pages if we are ragged and there are non-zero springs.
594
595         * scm/layout-page-layout.scm: if the pure-height estimates are under
596         the real height, allow space-systems to ignore padding if it is
597         needed in order to fit the systems on one page
598
599         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
600         ragged properties
601         (solve): fix performance problem. Make sure we always get at least
602         one solution
603
604         * lily/page-breaking.cc (make_pages): include write-page-breaks
605         and page-stencil
606
607         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
608
609         * scm/define-grobs.scm: add the new slur-callback
610         fix pure-relevant to not exclude grobs whose extent is already
611         calculated
612
613         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
614         page breaker
615
616         * lily/slur.cc (pure_height): new callback to estimate the height
617         of a slur
618
619 2006-09-02  Graham Percival  <gpermus@gmail.com>
620
621         * Documentation/user/invoking.itely: small update on
622         MacOS X notes; thanks Trevor!
623
624 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
625
626         * VERSION (MY_PATCH_LEVEL): release 2.9.17
627
628         * lily/lexer.ll: accept EOF in all states.
629
630         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
631
632         * lily/source-file.cc (Source_file): always 0-terminate character
633         array, to prevent Flex from barfing.
634
635         * lily/global-context.cc (get_output): robustness: don't crash if
636         no Score context found.
637
638         * lily/include/book.hh (class Book): idem.
639
640         * lily/include/context-def.hh (struct Context_def): idem.
641
642         * lily/include/score.hh (class Score): don't derive from Input.
643
644         * lily/book.cc (Book): add a copy ctor. 
645
646         * buildscripts/output-distance.py (FileLink.calc_distance): count
647         orphans in distance too.
648
649         * python/midi.c (midi_parse_track): robustness: don't read past
650         end of string.
651
652         * ly/performer-init.ly: add Control_track_performer, move
653         Tempo_performer and Time_signature_performer to Score.        
654
655         * lily/score-performer.cc (acknowledge_audio_elements): override
656         from base class: add to audio-columns
657
658         * lily/control-track-performer.cc (add_text): new file: generate
659         the control track.
660
661         * lily/performance.cc: move output_header_track to
662         Control_track_performer ()
663
664         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
665
666         * lily/include/midi-item.hh (class Midi_channel_item): insert
667         class into hierarchy, for items that can have a channel setting. Dehungarify.
668
669         * lily/include/performer.hh (class Performer): remove
670         play_element();  move functionality into announce/acknowledge.
671
672         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
673
674         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
675         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
676
677 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
678
679         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
680         ambituses.
681
682         * lily/all-font-metrics.cc: remove TFM support.
683
684         * lily/include/tfm.hh: remove TFM support, TFM reader.
685
686         * lily/include/binary-source-file.hh: remove Binary_source_file.
687
688 2006-08-27  Graham Percival  <gpermus@gmail.com>
689
690         * Documentation/topdocs/NEWS.itely: add @c marker for
691         stuff I've processed.
692
693         * Documentation/user/ various: info from NEWS.
694
695 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
696
697         * lily/paper-column-engraver.cc (finalize): Oops, this change
698         should have gone in on 2006-08-23
699
700 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
701
702         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
703         quotes to quote arguments. Fixes Windows problem.
704
705         * python/lilylib.py (progress): idem
706
707 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
708
709         * scripts/musicxml2ly.py: fix for importing
710         minor key signatures from MusicXML.  (Phillip Kirlin)
711
712 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
713
714         * python/musicxml.py: 
715         (Attributes.get_key_signature): now correctly retrieves mode from 
716         MusicXML. 
717
718 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
719
720         * lily/parser.yy (output_def_body): take ownership of identifier
721         back to C++.
722
723         * Documentation/user/advanced-notation.itely (Metronome marks):
724         update use of \tempo in \midi.
725
726         * VERSION: release 2.9.16
727         
728 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
729
730         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
731         web partially)
732
733 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
734
735         * input/regression/tie-chord-partial.ly: clarify example.
736
737         * scm/define-music-properties.scm (all-music-properties): remove
738         untied.
739
740         * ly/music-functions-init.ly: remove \untied.
741
742         * lily/tie-engraver.cc (struct Head_event_tuple): store both
743         stream events and music events.
744         (stop_translation_timestep): search acknowledged heads for
745         tie-event.
746
747         * input/regression/tie-chord-partial.ly: new file.
748
749         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
750         for \char markup command.
751
752         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
753
754         * scm/define-music-types.scm (music-descriptions): consistency:
755         Use solo-{one,two}-event iso. solo-[12]-event.
756
757         * lily/part-combine-engraver.cc (process_music):
758         Use solo-{one,two}-event iso. solo-[12]-event.
759
760         * ly/declarations-init.ly (partCombineListener): add Timing as
761         alias
762
763         * flower/std-string.cc (string_copy): use copy ()
764
765         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
766
767 2006-08-24  Graham Percival  <gpermus@gmail.com>
768
769         * Documentation/user/changing-defaults.itely, global.itely,
770         lilypond-book.itely, page.itely: minor changes from mailist.
771
772 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
773
774         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
775         snippet-map
776
777         * scm/define-context-properties.scm
778         (translator-property-description): robustness: detect type errors
779         in property definitions.
780
781         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
782         after getting it from SCM. 
783
784         * lily/smobs.cc (protect_smob): switch off fancy smob protection
785         for now. 
786
787         * lily/include/performer.hh (class Performer): strip get_tempo()
788         method.
789
790         * lily/midi-def.cc: strip file.
791
792         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
793
794         * lily/include/context-def.hh (struct Context_def): use
795         VIRTUAL_COPY_CONSTRUCTOR().
796
797         * lily/source-file.cc: smobification.
798
799         * lily/include/source-file.hh (class Source_file): smobify
800         Source_file. Trim redundant members.
801
802         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
803         clones after creation. This plugs a huge memory leak.
804
805         * python/convertrules.py (FatalConversionError.sub_tempo):
806         complete rule for \midi{ \tempo }
807
808         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
809
810         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
811
812 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
813
814         * input/regression/optimal-page-breaking-hstretch.ly: test for
815         ragged-last-bottom also
816
817         * lily/paper-column-engraver.cc (finalize): make the end of a score
818         breakable by default. This is to balance out a change in behaviour
819         of the page-turn-breaker which no longer makes the end of a score
820         breakable.
821
822         * lily/paper-book.cc (pages): set the systems_ once the pages are
823         broken
824
825         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
826         Page_breaking interface.
827
828         * lily/page-breaking.cc (class Page_breaking): make the interface
829         more consistent and provide abstractions for dealing with
830         Line_divisions.
831
832         * lily/optimal-page-breaking.cc (solve): use a more straightforward
833         algorithm. Use the new interface to Page_breaking.
834
835         * lily/page-spacing.cc: better support for ragged-bottom and
836         ragged-last-bottom
837
838 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
839
840         * python/convertrules.py (conv): warning on \tempo{}
841
842         * ly/performer-init.ly: set tempoWholesPerMinute.
843
844         * ly/midi-init.ly: remove \midi
845
846         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
847         MIDI tempo.
848
849         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
850         tempoUnitDuration for determining what to print.
851
852         * lily/lyric-extender.cc: typo.
853
854         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
855
856         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
857         function.
858
859         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
860
861         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
862         eps-pad-boxes is set.
863
864         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
865
866         * THANKS: update sponsors.
867
868         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
869
870         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
871
872         * input/regression/tie-chord-untied.ly: new file.
873
874         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
875
876         * scm/define-music-properties.scm (all-music-properties): add
877         'untied property.
878
879         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
880         than .ly.txt.
881         (headertext_nopics): sanitize no-examples text.
882
883         * scm/page.scm (make-page-stencil): don't rely on extents of
884         page-stencil. This fixes spurious space around .EPS files produced
885         with the EPS backend.
886
887 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
888
889         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
890
891         * lily/hara-kiri-engraver.cc (process_music): remember
892         keepAliveInterfaces after processing \set
893
894         * lily/lyric-extender.cc (print): support left/right-padding for
895         extenders.
896
897         * scm/documentation-generate.scm (string-append): revert lilypond/
898         path, doc why.
899
900 2006-08-20  Graham Percival  <gpermus@gmail.com>
901
902         * Documentation/user/lilypond.tely: clarification to
903         license presentation (not to actual license).
904
905         * Documentation/user/basic-notation.itely,
906         instrument-notation.itely: minor changes.
907
908         * input/ {regression, test}/+.ly: clarification to
909         text (you can click on examples).  Thanks, Mats!
910
911         * input/manual/bar-lines.ly: adds ||: repeats.
912
913 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
914
915         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
916
917         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
918
919         * Documentation/user/lilypond.tely: strip lilypond/ from info
920         links, rename to category LilyPond
921
922         * lily/pango-font.cc (description_string): new function.
923
924         * VERSION: release 2.9.15
925
926         * lily/spacing-engraver.cc (stop_translation_timestep): use
927         Dscho's fix for spacing spanner. 
928
929         * scm/define-music-types.scm (music-descriptions): use
930         apply-output-event for ApplyOutputEvent
931
932         * lily/output-property-engraver.cc (listen_apply_output): rename
933         from listen_layout_instruction.
934
935         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
936         function protect()
937
938 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
939
940         * scm/lily.scm (lilypond-all): option read-file-list: substitute
941         commandline args with contains, split by \n.
942
943         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
944         write snippet-names file, call with -dread-file-list. Fixes
945         command limitations on 64-bit systems.
946
947         * input/regression/stencil-color-rotation.ly: new file.
948
949         * lily/include/translator.hh (struct Acknowledge_information):
950         revert: don't use Protected_scm in global objects, as GUILE can't
951         handle gc_unprotect from automated destructors on MacOS X.
952  
953         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
954         color, not the original stencil. Fixes combinations of
955         color/transparency/rotation. 
956
957         * scripts/lilypond-book.py (main): add --formats=eps for
958         texinfo/latex.
959
960         * lily/spacing-engraver.cc (stop_translation_timestep): don't
961         crash if spacing_ is nonexistent.
962
963 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
964
965         * scripts/lilypond-book.py (output): Remove obsolete(!?)
966         \catcode`\@=12 in the LaTeX output.
967
968 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
969
970         * scm/define-music-types.scm (music-descriptions):
971         use sustain-event iso. sustain-pedal-event.
972
973 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
974
975         * scripts/convert-ly.py: honour the -n command-line switch
976
977 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
978
979         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
980         break specification.
981
982 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
983
984         * Documentation/user: convert-ly the user manual
985
986 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
987
988         * stepmake/aclocal.m4: version check patch (thanks MWD)
989
990         * ly/music-functions-init.ly: robustness. Don't crash if
991         currentBarNumber is not a number.
992
993         * VERSION (PATCH_LEVEL): bump.
994
995 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
996
997         * stepmake/aclocal.m4: better version check; handle fooX.Y
998         binaries too.
999
1000         * ly/performer-init.ly: instrument name fixup.
1001
1002         * input/manual/chord-names-jazz.ly (banterProperties):
1003         instrumentName update
1004
1005         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1006
1007         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1008
1009         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1010         function. Use hash tables to check membership.
1011
1012         * lily/general-scheme.cc (LY_DEFINE): new function.
1013
1014         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1015
1016         * lily/include/translator.hh (struct Acknowledge_information): add
1017         Protected_scm
1018
1019         * ly/music-functions-init.ly: change name to BreathingEvent
1020
1021         * input/regression/*.ly: apply it.
1022
1023         * python/convertrules.py (conv): better instrumentName conversion
1024         rule.
1025
1026         * scm/define-music-types.scm (music-descriptions): add
1027         line-break-event to LineBreakEvent music
1028
1029         * lily/music.cc (to_event): don't crash if music type not set.
1030
1031         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1032         spacing not set.
1033
1034         * lily/spacing-engraver.cc (stop_translation_timestep): set
1035         spacing for proportional notation too.
1036
1037         * scm/translation-functions.scm (format-bass-figure): inspect
1038         stream-event.
1039
1040         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1041
1042 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1043
1044         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1045
1046         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1047
1048         * scm/layout-page-layout.scm (make-page-from-systems): new function
1049         (optimal-page-breaks): use the new page-breaking calling convention
1050
1051         * scm/define-context-properties.scm (all-user-translation-properties):
1052         add revokePageTurns
1053
1054         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1055         revokePageTurns  functionality. If there is a special barline within
1056         the breakable region, break there instead of at the end of the region.
1057
1058         * lily/paper-book.cc (pages): use the new page-breaking calling
1059         convention
1060
1061 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1062
1063         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1064
1065         * scripts/lilypond-book.py: insert \sourcefileline command in
1066         output, so lilypond error messages refer to the spot in the
1067         original .lytex / .itely sourcefile.
1068
1069 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1070
1071         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1072         space to next column for distance to fixed col.
1073
1074         * VERSION (PACKAGE_NAME): release 2.9.14
1075
1076         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1077         if no accidental.
1078
1079         * lily/accidental-engraver.cc (process_acknowledged): don't create
1080         accidental for trill span event. This fixes spurious accidentals
1081         on trills.
1082
1083 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1084
1085         * scm/define-grob-properties.scm (all-user-grob-properties):
1086         Clarify documentation of side-axis and direction. Thanks to Paul
1087         for the inspiration.
1088
1089         * lily/bar-line.cc: Add documentation for "||:" also in the
1090         interface documentation.
1091
1092 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1093
1094         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1095
1096         * lily/paper-column.cc (set_system): new function.
1097
1098         * lily/spacing-engraver.cc (stop_translation_timestep): store
1099         SpacingSpanner refs in Paper_column.
1100
1101         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1102         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1103
1104 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1105
1106         * lily/beam-engraver.cc (listen_beam): add method for
1107         Grace_beam_engraver too.
1108
1109 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1110
1111         * python/convertrules.py: Fix indentation bug that broke
1112         conversion of files older than 1.3.117.
1113         Fix escape error in the description for 2.9.6.
1114
1115 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1116
1117         * lily/*-engraver.cc: convert all try_music functions to listen_*
1118         functions.
1119
1120         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1121         enums to represent pedal types, and calculate more data statically.
1122
1123         * scm/part-combiner.scm (recording-group-emulate): create a
1124         softcoded substitute for recording-group-engraver.cc.
1125
1126         * lily/music.cc: make a common transpose function for events and
1127         music
1128
1129         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1130         ManualMelismaEvent, and obsoletes Melisma_translator.
1131
1132 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1133
1134         * input/test/instrument-name-align.ly: update version.
1135
1136 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1137
1138         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1139         Doc the --pdf flag to lilypond-book.
1140
1141 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1142
1143         * Documentation/topdocs/NEWS.tely (Top): add description.
1144
1145         * input/regression/tuplet-full-length-note.ly: add file.
1146
1147         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1148         always store axis group.
1149
1150 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1151
1152         * input/regression/instrument-switch.ly: new file.
1153
1154         * lily/instrument-switch-engraver.cc (process_music): new file.
1155
1156         * ly/engraver-init.ly: add Instrument_switch_engraver
1157
1158         * ly/music-functions-init.ly: \instrumentSwitch
1159
1160         * scm/define-context-properties.scm
1161         (all-user-translation-properties): add instrumentCueName
1162
1163         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1164
1165 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1166
1167         * ly/music-functions-init.ly: music function \transposition.
1168
1169         * lily/parser.yy (command_element): softcode \transposition.
1170
1171         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1172         (process_music): oops.
1173
1174         * lily/instrument-name-engraver.cc (start_spanner): new
1175         function. Create spanner when property changes.
1176         (stop_spanner): new function.
1177
1178         * python/convertrules.py (conv): add rule.
1179
1180         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1181         shortInstrumentName iso. instr.
1182
1183         * scm/output-ps.scm (dashed-line): add phase argument to
1184         dashed-line.
1185
1186         * lily/bar-line.cc (dashed_bar_line): new function.
1187         (compound_barline): support \bar "dashed". 
1188
1189         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1190         --output=DIR to DIR/BASE if it is a dir. 
1191
1192         * flower/file-name.cc (file_part): new function
1193         (dir_part): new function
1194
1195         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1196
1197         * DEDICATION: update
1198
1199 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1200
1201         * lily/instrument-name-engraver.cc: formatting.
1202
1203         * python/convertrules.py (conv): bugfix for \epsfile.
1204
1205 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1206
1207         * lily/grob.cc:
1208         
1209         * lily/gourlay-breaking.cc: Oops, these should have been included
1210         in my last commit
1211
1212 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1213
1214         * scripts/*.py (program_name): cleanup relocation snippets.
1215
1216         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1217
1218 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1219
1220         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1221         page-breakable by default
1222
1223         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1224         correctly calculated for a single-system page
1225
1226         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1227         bigger than the second number
1228
1229         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1230         acknowledge that we aren't satisfying constraints)
1231
1232         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1233         non-Items
1234
1235         * lily/grob.cc (pure_height): add minimum-Y-extent
1236
1237         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1238         ragged
1239
1240         * lily/constrained-breaking.cc: convert code to use new Matrix class
1241         (get_best_solution): new function
1242
1243         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1244         is a page with no systems
1245
1246 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1247
1248         * VERSION (PACKAGE_NAME): release 2.9.13
1249
1250         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1251         assignment.
1252
1253 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1254
1255         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1256
1257         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1258         function.
1259
1260         * scm/define-grob-properties.scm (all-user-grob-properties):
1261         remove grace-space-factor.
1262
1263         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1264         grace-spacing-interface
1265         (spacing-options-interface): add.
1266
1267         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1268
1269         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1270
1271         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1272         GraceSpacing object.
1273
1274         * lily/note-spacing.cc: fix prop list formatting
1275
1276         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1277         beaming for grace notes too.
1278
1279         * input/regression/spacing-grace.ly: update.
1280
1281         * lily/grace-spacing-engraver.cc: new file.
1282
1283         * lily/spacing-spanner.cc: add strict-grace-spacing.
1284
1285 2006-07-20  Graham Percival  <gpermus@gmail.com>
1286
1287         * lily/parser.yy: compile fix.
1288
1289 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1290
1291         * scm/define-grobs.scm (all-grob-descriptions): typo.
1292
1293         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1294         .eps extension from includegraphics.
1295
1296         * scripts/lilypond-book.py (main): add support for --pdf. 
1297
1298         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1299         callback to compute common shortest duration.
1300         (set_springs): typo.
1301
1302         * scm/define-grob-properties.scm (all-user-grob-properties): add
1303         strict-grace-spacing.
1304
1305         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1306         support float_grace_columns_.
1307
1308         * lily/spacing-options.cc (init_from_grob): new file.
1309
1310         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1311
1312         * input/regression/spacing-loose-grace.ly: new file.
1313
1314         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1315
1316         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1317         tupletFullLengthNote too. Choose right bound depending on value.
1318
1319         * input/regression/tuplet-full-length-note.ly: new file.
1320
1321 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1322
1323         * lily/*-performer.cc: Converted try_music to listen_*
1324
1325         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1326         as a stream-event internally. Introduce event_cause (), deprecate
1327         music_cause ().
1328
1329         * scm/define-music-types.scm: Removed BusyPlayingEvent
1330         
1331 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1332
1333         * Documentation/user/advanced-notation.itely (Font selection):
1334         Document how to get a list of available fonts using 'lilypond
1335         -dshow-available-fonts blabla'.
1336
1337 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1338
1339         * GNUmakefile.in: filter lily-XXX.pdf files.
1340
1341         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1342
1343         * scm/define-grob-properties.scm (all-internal-grob-properties):
1344         remove delta-pitch. Use delta-position everywhere.
1345
1346         * scm/output-lib.scm (fall::print): use new order.
1347
1348         * scm/output-ps.scm (path): reorder arguments.
1349
1350         * scm/output-svg.scm (path): support for path primitive.
1351
1352         * input/regression/bend-after.ly: new file.
1353
1354         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1355         recipe for eps -> pdf conversion.
1356
1357 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1358
1359         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1360         Angelo Contardi.
1361
1362 2006-07-19  Graham Percival  <gpermus@gmail.com>
1363
1364         * input/manual/screech-boink.ly: moved to here.
1365
1366         * input/screech-boink.ly: deleted.
1367
1368         * scm/define-grob-properties.scm: clarify doc string.
1369
1370 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1371
1372         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1373
1374         * scm/output-ps.scm (path): define path.
1375
1376         * scm/define-stencil-commands.scm
1377         (ly:register-stencil-expression): add path.
1378
1379         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1380
1381         * ly/engraver-init.ly: add Fall_engraver
1382
1383         * lily/parser.yy (music_function_event): allow musicfunction
1384         without music arg as music_function_event.
1385
1386         * lily/grob-scheme.cc (LY_DEFINE):
1387         ly:grob-robust-relative-extent. New function.
1388
1389         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1390
1391         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1392
1393         * scm/output-lib.scm (fall::print): new function
1394
1395         * lily/fall-engraver.cc (stop_fall): new file.
1396
1397         * ly/music-functions-init.ly: alphabetise.
1398
1399         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1400         base.
1401
1402 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1403
1404         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1405
1406         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1407         doc pdftex usage.
1408
1409         * lily/translator-group.cc (connect_to_context): non const error message.
1410
1411         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1412
1413         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1414         if unset.
1415
1416         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1417
1418         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1419
1420         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1421         systems.pdftex too.
1422
1423         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1424
1425         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1426
1427         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1428
1429         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1430
1431         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1432
1433         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1434
1435 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1436
1437         * scm/layout-page-layout.scm: Define module, tidy code, use more
1438         functions iso. a single big one.
1439
1440         * scm/layout-page-dump.scm: move page dump functions used in two
1441         pass spacing to this file. Define module.
1442
1443         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1444          (separate module)
1445
1446         * ly/paper-defaults.ly: use module layout-page-layout.
1447
1448 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1449
1450         * lily/music.cc: Revised MusicEvent event class. It now contains
1451         event data directly instead of encapsulating it in music. The
1452         previously used class is renamed to OldMusicEvent.
1453
1454         * lily/stream-event.cc: Stream events are now probs.
1455         
1456         * lily/translator-group.cc, lily/translator.cc: Translators can
1457         now listen directly to stream events, by using macros
1458         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1459
1460         * lily/arpeggio-engraver.cc: Converted to use new event system
1461
1462         * THANKS: Corrected spelling mistake.
1463
1464 2006-07-12  Graham Percival  <gpermus@gmail.com>
1465
1466         * Documentation/user/SConscript, make/lilypond-vars.make,
1467         input/GNUmakefile: doc build looks in input/manual instead
1468         of input/test/
1469
1470         * input/manual/ GNUmakefile, SConscript: build files for
1471         input/manual/
1472
1473         * input/test/ various: some files moved to input/manual/ 
1474
1475         * Documentation/user/basic-notation.itely: small updates;
1476         thanks Kieren and Charles!
1477
1478 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1479
1480         * VERSION (PACKAGE_NAME): release 2.9.11
1481
1482         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1483
1484         * Documentation/user/basic-notation.itely (Tuplets): new property
1485         value.
1486
1487 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1488
1489         * python/convertrules.py (conv): tweaks. 
1490
1491         * VERSION (PATCH_LEVEL): bump version.
1492
1493         * python/convertrules.py (conv): add rule for
1494         tupletNumberFormatFunction.
1495
1496         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1497         tupletNumberFormatFunction.
1498
1499         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1500         text through 'text callback.
1501
1502         * lily/time-scaled-music-iterator.cc (construct_children): copy
1503         tweaks generated events.
1504
1505         * scm/define-context-properties.scm
1506         (all-user-translation-properties): remove tupletNumberFormatFunction
1507
1508         * lily/tuplet-engraver.cc (process_music): don't read
1509         tupletNumberFormatFunction
1510
1511         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1512         function.
1513
1514 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1515
1516         * lily/global-context-scheme.cc: Separated ly:run-translator into
1517         smaller pieces.
1518
1519         * lily/score-engraver.cc, lily/score-performer.cc,
1520         scm/define-context-properties.scm: Make paper/midi output
1521         accessable as a context property.
1522
1523         * lily/score-translator.cc, lily/score-context.cc: Removed.
1524
1525 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1526
1527         * scm/ps-to-png.scm (Module): 
1528         * scm/framework-tex.scm (Module): 
1529         * scm/framework-ps.scm (Module): 
1530         * scm/backend-library.scm (Module): 
1531         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1532         "dDEVICEHEIGHTPOINTS".
1533
1534 2006-07-04  Graham Percival  <gpermus@gmail.com>
1535
1536         * Documentation/user/ various: general improvements to
1537         "working with lilypond files" section.
1538
1539 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1540
1541         * lily/sequential-iterator.cc: Change the default get_music_list
1542         to read elements-callback music property
1543
1544         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1545         processing of multimeasure rests. Softcoded
1546         sequential-music-iterator.
1547
1548         * lily/sequential-music-iterator.cc: Removed.
1549
1550 2006-06-28  Graham Percival  <gpermus@gmail.com>
1551
1552         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1553
1554 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1555
1556         * lily/parser.yy: Wrap non-post-events in EventChords before
1557         assigning them to identifiers.
1558
1559 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1560
1561         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1562         gives correct vertical placement of \bar ":" in all staff
1563         sizes. Thanks Martial!
1564
1565 2006-06-26  Graham Percival  <gpermus@gmail.com>
1566
1567         * Documentation/user/invoking.itely : minor update from mailist.
1568
1569 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1570
1571         * lily/ various: Introduce stream events of types Prepare,
1572         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1573         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1574
1575         * lily/global-context*.cc: Time is now -inf before iteration
1576         starts.
1577
1578         * lily/include/context.hh: Removed unique_, init_
1579
1580         * Documentation/topdocs/NEWS: Make the feathered beam example
1581         avoid triggering a bug.
1582
1583 2006-06-24  Graham Percival  <gpermus@gmail.com>
1584
1585         * Documentation/user/ various: small additions from mailist.
1586
1587 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1588
1589         * ly/performer-init.ly: Add some missing links in the context
1590         hierarchy for MIDI output. There are probably some more missing!
1591
1592 2006-06-21  Graham Percival  <gpermus@gmail.com>
1593
1594         * Documentation/user/ various: minor spelling fixes;
1595         thanks Dave Luttinen!
1596
1597         * Documentation/user/ various: small clarifications;
1598         thanks Anthony Youngman!
1599
1600 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1601
1602         * po/fr.po: add \n appropriately.
1603
1604         * lily/lexer.ll: remove ? from version-seen?  
1605
1606 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1607
1608         * po/fr.po; update translation, by Jean-Charles Malahieude and
1609         John Mandereau.
1610
1611 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1612
1613         * THANKS: add Markus Schneider.
1614
1615         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1616         Staff_symbol_engraver
1617
1618         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1619         replace staff_engraver
1620
1621         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1622         spanner.
1623
1624         * lily/staff-collecting-engraver.cc
1625         (acknowledge_end_staff_symbol): new function
1626
1627         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1628
1629         * lily/staff-collecting-engraver.cc
1630         (acknowledge_end_staff_symbol): new function.
1631
1632         * lily/main.cc: switch on relocation by default.
1633
1634 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1635
1636         * lily/spacing-spanner.cc (musical_column_spacing): set
1637         compound_fixed_note_space to 0.0. Document why.
1638
1639         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1640         range of inverse_hooke_
1641         (Simple_spacer): init completely.
1642         (fits): const
1643         (get_line_configuration): don't use cols.resize(); it introduces
1644         initialized data.
1645
1646         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1647
1648         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1649
1650         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1651         try. Divide by beatlength.
1652
1653         * input/regression/beaming-ternary-metrum.ly: update doc.
1654         add beatLength hack.
1655
1656         * scm/music-functions.scm (make-time-signature-set): add
1657         standard-beat-grouping. 
1658
1659 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1660
1661         * input/regression/tie-whole.ly: new file.
1662
1663         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1664         cross center of note head in case of invisible stem. 
1665
1666 2006-06-16  Graham Percival  <gpermus@gmail.com>
1667
1668         * Documentation/user/ various: small fixes from mailist.
1669
1670 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1671
1672         * lily/breathing-sign.cc (offset_callback): idem.
1673
1674         * lily/align-interface.cc (align_to_fixed_distance): remove
1675         hungarian suffix.
1676
1677         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1678         x%2==0.
1679
1680 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1681
1682         * VERSION (PACKAGE_NAME): release 2.9.9
1683
1684         * ly/lilypond-book-preamble.ly: add \version
1685
1686 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1687
1688         * scripts/lilypond-book.py (PREAMBLE_LY): include
1689         lilypond-book-preamble.ly
1690
1691         * lily/stem.cc (get_beaming): return max of 0 and
1692         scm_ilength. Fixes slurring from/to beams.
1693
1694         * ly/lilypond-book-preamble.ly: new file.
1695
1696         * lily/slur.cc: add inspect-index feature.
1697
1698 2006-06-13  Graham Percival  <gpermus@gmail.com>
1699
1700         * Documentation/user/tutorial.itely: trivial fix.
1701
1702 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1703
1704         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1705         all non-event music in the parser via MAKE_SYNTAX.
1706
1707         * lily/parser-scheme.cc: Add ly:parser-error function
1708
1709         * scm/paper.scm: fix typo
1710
1711 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1712
1713         * THANKS: add RT.
1714
1715         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1716         is null.
1717
1718         * buildscripts/output-distance.py (test_compare_signatures):
1719         timing routines.
1720         (read_signature_file): use new signature format.
1721
1722         * scm/stencil.scm (write-system-signature): simpler signature
1723         format.
1724
1725         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1726         for beamed case. 
1727
1728         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1729         stem_end_position, but estimate instead. 
1730
1731         * lily/tuplet-bracket.cc (calc_positions): look at
1732         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1733         brackets narrower than beams. 
1734
1735         * lily/lexer.ll: set version-seen? even if version is
1736         INVALID. 
1737
1738         * lily/rest.cc (y_offset_callback): bugfix: decide position
1739         override based on scm_is_number(). Fixes \rest on center staff
1740         line. 
1741
1742         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1743         patterns for 16th triplets.
1744
1745 2006-06-10  Graham Percival  <gpermus@gmail.com>
1746
1747         * Documentation/user/ page.itely, global.itely: editing
1748         and reorg.
1749
1750         * Documentation/user/ various: findex -> funindex.
1751
1752 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1753
1754         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1755         insert extra tuplet events.
1756
1757 2006-06-10  Graham Percival  <gpermus@gmail.com>
1758
1759         * Documentation/user/programming-interfaces.itely: add
1760         info from NEWS.
1761
1762         * python/convertrules.py: add annotatefoo -> annotate-foo
1763         rules.
1764
1765         * Documentation/user/global.itely: start editing.
1766
1767         * Documentation/user/page.itely: major editing, new spacing
1768         docs.
1769
1770 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1771
1772         * scm/define-markup-commands.scm (wordwrap-markups): use
1773         output-def 'line-width if undefined.
1774
1775         * HACKING: trim outdated info.
1776
1777 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1778
1779         * scm/define-grobs.scm (all-grob-descriptions): Add
1780         line-spanner-interface to all grobs that already have
1781         text-spanner-interface or dynamic-text-spanner-interface
1782
1783         * scm/page.scm: Rename annotate{headers,systems,page}->
1784         annotate-*
1785
1786         * input/regression/page-spacing.ly,
1787         input/regression/page-layout-manual-position.ly: idem
1788
1789 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1790
1791         * lily/line-spanner.cc: cleanup property list.
1792
1793         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1794         generator expressions (2.3 compat). 
1795
1796 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1797
1798         * lily/vertical-align-engraver.cc: Make sure that the
1799         align{Above,Below}Context properties are included in the automatic
1800         documentation.
1801
1802 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1803
1804         * scm/paper-system.scm (paper-system-annotate): also annotate the
1805         estimated pure-Y-extent
1806
1807         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1808
1809         * lily/system.cc (break_into_pieces): set the estimated height
1810         of each child system
1811
1812         * lily/stem.cc (pure_height): new pure-Y-extent callback
1813
1814         * lily/staff-symbol-referencer.cc (callback): don't destroy
1815         the staff-position property
1816
1817         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1818         consider_suicide into two functions
1819
1820         * lily/constrained-breaking.cc (resize): use the new pure
1821         callbacks to estimate the height of a system
1822
1823         * lily/axis-group-interface.cc (pure_group_height): new
1824         side-effect-free VerticalAxisGroup height-callback
1825
1826         * lily/align-interface.cc (get_extents_aligned_translates):
1827         split align_elements_to_extents into two functions
1828         (get_pure_child_y_translation): new function
1829
1830         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1831
1832         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1833
1834         * lily/paper-score.cc: cache break_indices and columns
1835
1836         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1837         
1838 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1839
1840         * lily/font-config.cc (init_fontconfig): do the init if
1841         cache_file, but don't look at cache_file.
1842
1843         * input/regression/quote-tie.ly: new file.
1844
1845         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1846         to Head_event_tuple, so we deal gracefully with ties on
1847         cue-endings.
1848
1849         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1850         for FcChar8*
1851
1852 2006-06-08  Graham Percival  <gpermus@gmail.com>
1853
1854         * input/test/ smart-transpose.ly, reverse-music.ly:
1855         \applyMusic to music functions update, thanks Michael!
1856
1857 2006-06-07  Graham Percival  <gpermus@gmail.com>
1858
1859         * input/test/ add-staccato.ly, add-text-script.ly,
1860         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1861         music functions update, thanks to Michael Meixner.
1862
1863         * Documentation/user/music-glossary.tely: small fix
1864         from Francisco.
1865
1866         * Documentation/user/ various: minor additions from mailist.
1867
1868         * Documentation/user/lilypond.tely, basic-notation.itely:
1869         small test of @funindex.  (works here)
1870
1871         * input/test/font-table.ly: reduce size to partially
1872         de-ugly version in manual.
1873
1874         * Documentation/user/page.itely: new file (split former
1875         "global issues" into "page settings" and "non-musical
1876         output".
1877
1878         * Documentation/user/ various: fix @ref{}s to match
1879         new chapter names (above).
1880
1881 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1882
1883         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1884
1885 2006-06-06  Graham Percival  <gpermus@gmail.com>
1886
1887         * Documentation/user/advanced-notation.itely: add example
1888         for segno/coda on barline.
1889
1890         * tex/texinfo.tex: merge from upstream.
1891
1892 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1893
1894         * scripts/lilypond-book.py (process_snippets): Argument fix.
1895
1896         * SConstruct:
1897         * buildscripts/builder.py:
1898         * lily/SConscript: 
1899         * mf/SConscript: 
1900         * Documentation/user/SConscript:  More SCons fixes.
1901
1902 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1903
1904         * lily/font-config.cc (init_fontconfig): Only initialize if
1905         global cache_file is found.
1906
1907 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1908
1909         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1910         new \applyOutput.
1911
1912 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1913
1914         * VERSION (PACKAGE_NAME): release 2.9.8
1915
1916         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1917         function. Delay ledger modifying ledgered grobs to
1918         stop_translation_timestep(), to ensure that we're ledgering
1919         according to the new spanner.
1920         (acknowledge_staff_symbol): don't check for non-NULL
1921         staff_sym->get_bound()
1922
1923         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1924         creation.
1925
1926         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1927         pictures too.
1928
1929         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1930         directly from srcdir/stepmake/aclocal.m4
1931         
1932         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1933         disting MISC files.
1934
1935         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1936
1937 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1938
1939         * lily/simple-spacer.cc (get_line_configuration): add
1940         keep-inside-line rods
1941         (struct Column_desc): add constructor
1942         (struct Rod_desc): add constructor
1943         (get_line_forces): check for forced page breaks here too
1944
1945         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1946         support/elements cycles between InstrumentNames and AxisGroups
1947
1948 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1949
1950         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1951
1952         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1953         make-txt-files target.
1954
1955         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1956         make-txt-files target.
1957
1958         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1959
1960         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1961         top-build-dir.
1962
1963 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1964
1965         * Documentation/user/instrument-notation.itely,
1966         input/regression/breathing-sign-ancient.ly,
1967         input/test/divisiones.ly: Removed redundant property settings for
1968         vaticana contexts.
1969
1970         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1971         fix lyrics alignment problems.  They are implemented now as scheme
1972         functions that add the appropriate unicode char to the first lyric
1973         event rather than adding a separate lyric event.  Minor edit of
1974         comments.
1975
1976 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1977
1978         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1979         pollute src dir with built .txt files, but install directly from
1980         Documentation/topdocs/out/
1981
1982         * buildscripts/output-distance.py
1983         (ComparisonData.create_html_result_page): put version/directories
1984         in table header.
1985
1986         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1987         feature.
1988
1989         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1990         Patch by Karl Hammar
1991         
1992         * buildscripts/readlink.py: add  file.
1993         Patch by Karl Hammar
1994
1995 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1996
1997         * lily/tuplet-number.cc (print): prevent stencil from being
1998         garbage collected.
1999
2000 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2001
2002         * scm/stencil.scm (write-system-signature): explicitly 
2003         -well, superfluously- close output port.
2004
2005         * buildscripts/output-distance.py (main): oops. Add extra argument.
2006
2007 2006-06-05  Graham Percival  <gpermus@gmail.com>
2008
2009         * Documentation/user/music-glossary.tely: clarified example
2010         from Francisco Vila, thanks!
2011
2012 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2013
2014         * input/regression/spacing-section.ly: new file.
2015
2016         * lily/input.cc (programming_error): new function.
2017
2018         * lily/spacing-engraver.cc (try_music): new function. Accept
2019         spacing-section-event
2020
2021         * lily/spacing-spanner.cc (set_springs): take slices of all
2022         columns for spacing.
2023
2024         * lily/include/paper-column.hh (class Paper_column): add
2025         Paper_column::compare.
2026
2027         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2028
2029         * scm/define-music-types.scm (music-descriptions): add
2030         SpacingSectionEvent
2031
2032         * lily/music-iterator.cc (report_event): use programming_error for
2033         sending non-event error.
2034
2035         * lily/input.cc (programming_error): new function
2036
2037         * buildscripts/output-distance.py (main): use compare-XXX for
2038         compare files.
2039         (main): --threshold option, default at 0.30
2040
2041         * output-distance.py (main): add --threshold option.
2042
2043 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2044
2045         * scm/paper-system.scm (paper-system-annotate): fix problem when
2046         annotating an empty system
2047
2048 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2049
2050         * GNUmakefile.in: reinstate old web tar/copying.
2051
2052 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2053
2054         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2055         nothing changes. (Erik S) 
2056
2057         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2058         count. (Erik S)
2059
2060 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2061
2062         * scm/define-markup-commands.scm (whiteout): do not force
2063         foreground color of argument markup to black.
2064
2065         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2066         the left of the arrow, instead of below the arrow name, so that,
2067         when two little arrows are vertically stacked, their dimensions
2068         and name should not overlap. Add a color key parameter.
2069
2070         * scm/paper-system.scm (paper-system-annotate): Annotate
2071         next-space+next-padding instead of next-space. Annotate space
2072         between next-padding and next-space+padding, respectively, and
2073         following system extent and refpoint-Y-extent. Use colors.
2074
2075         * scm/page.scm (annotate-page): translate annotations slightly to
2076         the right.
2077
2078 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2079
2080         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2081         fix for x-staff slurs. Thanks Joe!
2082
2083         * buildscripts/output-distance.py
2084         (SystemLink.output_expression_change_count): keep track of changed
2085         details, and dump in details html page.
2086  
2087         * input/regression/figured-bass-staff.ly: add note about setting
2088         properties in Staff context.
2089
2090         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2091         add slurs and ties to support too.
2092
2093         * buildscripts/output-distance.py (main): set dest_dir
2094         argument. Add --max-count option.
2095
2096 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2097
2098         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2099         shortcuts for special unicode chars that are useful in chant
2100         notation.  Revised exisiting and added new comments.
2101
2102 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2103
2104         * make/mutopia-rules.make: remove duplicate recipe.
2105
2106 2006-06-02  Werner Lemberg  <wl@gnu.org>
2107
2108         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2109         Add support for U+0132 (IJ) and U+0133 (ij).
2110
2111 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2112
2113         * buildscripts/output-distance.py (FileLink): new class. collect
2114         info systems from one .ly file. 
2115         (FileLink.link_files_for_html): further tweaks.
2116
2117 2006-06-02  Graham Percival  <gpermus@gmail.com>
2118
2119         * tex/texinfo.tex: partial fix for @funindex.
2120
2121         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2122         break anything).
2123
2124 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2125
2126         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2127
2128         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2129         @example too. Backportme.
2130
2131 2006-06-02  Graham Percival  <gpermus@gmail.com>
2132
2133         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2134         from Werner Lemberg.
2135
2136 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2137
2138         * Documentation/user/music-glossary.tely: additional spanish
2139         updates and a lyrics fix in an example.
2140
2141 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2142
2143         * scm/define-grob-properties.scm: Previous patch contained
2144         spurious line from another patch not yet committed.  Fixed.
2145
2146         * scm/define-grob-properties.scm: Add missing doc strings for
2147         ancient notation.
2148
2149 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2150
2151         * buildscripts/output-distance.py
2152         (ComparisonData.write_text_result_page): separate the scores, sort
2153         by geo_score.
2154
2155         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2156         system signatures.
2157
2158         * buildscripts/output-distance.py (me_path): use argv[0] for
2159         sys.path extension
2160         (ComparisonData.img_cell): use colored borders.
2161
2162         * scm/stencil.scm (write-system-signature): escape newlines too.
2163         (write-system-signature): use (1,-1) interval for empty interval
2164
2165 2006-01-01  Graham Percival  <gpermus@gmail.com>
2166
2167         * Documentation/user/music-glossary.tely: Spanish updates
2168         from Francisco Vila.
2169
2170         * Documentation/user/lilypond-book.itely: addition from
2171         Vaclav Smilauer.
2172
2173         * Documentation/user/ various: edits, small additions
2174         from mailist, etc.
2175
2176 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2177
2178         * GNUmakefile.in (tree-lib-prefix-current):
2179         (tree-share-prefix-current): Use version number in tree, add
2180         `current' symlinks.
2181
2182 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2183
2184         * GNUmakefile.in: write VERSION, again.
2185
2186         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2187         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2188
2189         * stepmake/aclocal.m4: robuster version detection.
2190
2191         * buildscripts/output-distance.py
2192         (ComparisonData.create_html_result_page): copy only if file
2193         exists, fixup src paths.
2194
2195         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2196
2197 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2198
2199         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2200         Another datarootdir reto.
2201
2202         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2203         available.  This should be moved to postinstall-lilypond-doc.
2204
2205 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2206
2207         * GNUmakefile.in: simplify local-WWW-post. 
2208         remove -type l from find.
2209
2210         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2211         fixes. Don't follow symlinks.
2212         (ComparisonData.create_html_result_page): remove previous results.
2213         insert ../python in path.
2214
2215         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2216
2217 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2218
2219         * config.make.in (datadir): Add datarootdir to silence autoconf.
2220
2221         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2222
2223 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2224
2225         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2226
2227         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2228         slash beams too wide.
2229
2230 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2231
2232         * VERSION: release 2.9.7
2233         
2234 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2235
2236         * lily/relocate.cc (read_relocation_dir): Do not blindly
2237         dereference DIR.
2238
2239 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2240
2241         * lily/parser.yy: replace THIS by PARSER
2242
2243         * Documentation/index.html.in: add link to test-results.html page.
2244
2245         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2246
2247         * scm/translation-functions.scm (format-bass-figure): translate
2248         digits over 10 to the left
2249
2250         * scm/define-markup-commands.scm (translate-scaled): new markup.
2251
2252         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2253         7 glyph. 
2254
2255         * ly/engraver-init.ly: add Figured_bass_engraver
2256
2257         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2258
2259         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2260
2261         * lily/score-engraver.cc (announce_grob): only note START announces.
2262
2263         * lily/include/engraver-group.hh (Translator_group):
2264         acknowledge_hash_table_ is now drul.
2265
2266         * lily/engraver.cc (announce_end_grob): new method.
2267
2268         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2269
2270         * lily/translator-dispatch-list.cc (create): take start_end argument.
2271
2272         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2273         acknowledge_static_array_ to drul
2274
2275         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2276
2277         * scm/define-grob-interfaces.scm
2278         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2279
2280         * scm/define-grobs.scm (all-grob-descriptions): add
2281         BassFigureAlignmentPositioning
2282
2283         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2284         number stays up to date. Backportme.
2285
2286 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2287
2288         * Documentation/user/basic-notation.itely (Bar lines): Document
2289         the "||:" bar type. 
2290
2291 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2292
2293         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2294
2295         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2296         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2297         build.
2298
2299         * Resurrect `scons lily' build.
2300
2301         * SConstruct (symlink_tree): Bugfix: link
2302         music-drawing-routines.ps to file iso directory.
2303
2304         * lily/SConscript: Remove kpath-guile from LIBS.
2305
2306         * SConstruct (libdir_package_version): Typo.
2307         (configure): Comment-out fontforge for lack of fontforge.pc .
2308         Also add libdir* to environment.
2309
2310 2006-05-30  Graham Percival  <gpermus@gmail.com>
2311
2312         * Documentation/user/ various: minor additions from mailist and
2313         editing.
2314
2315 2006-05-30  Paco <fravd@ya.com>
2316
2317         * Documentation/user/music-glossary.tely: numerous corrections and
2318         some new translations.
2319
2320 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2321
2322         * BackportmeStart.
2323         
2324         * buildscripts/output-distance.py
2325         (ComparisonData.create_html_result_page): new routine: summarise
2326         results in HTML page with images. 
2327         (ComparisonData.create_text_result_page): create summary text files too.
2328
2329         * GNUmakefile.in (web-ext): package .signature files too. They
2330         compress well. 
2331
2332         * scm/stencil.scm (write-system-signature): typo.
2333
2334         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2335
2336         * scm/stencil.scm (write-system-signature): better escaping.
2337         only write signature for music systems, not for markup systems.
2338
2339         * scm/framework-ps.scm (output-framework): dump-signatures support
2340         for plain output.
2341
2342         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2343
2344         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2345         for -dno-point-and-click
2346
2347         * lily/grob.cc (get_print_stencil): don't read
2348         point_and_click_global to determine whether to set grob-cause.
2349
2350 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2351
2352         * buildscripts/output-distance.py (main): new function.
2353         (ComparisonData): new class.
2354
2355         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2356         careful with generating new LedgerLineSpanners.
2357
2358         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2359
2360         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2361         context. This fixes double ledger lines in output. 
2362
2363         * lily/system.cc (get_paper_system): remove 3 layer limit.
2364
2365         * buildscripts/output-distance.py (SystemLink.distance): new
2366         file. Compare signatures.
2367
2368         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2369
2370         * lily/grob-array.cc (remove_duplicates): rename from
2371         uniq(). Sort before calling uniq() so it actually works.
2372
2373 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2374
2375         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2376         \version from lilypond file snippet.
2377         (Lilypond_file_snippet.ly): oops. typo.
2378         (find_toplevel_snippets): urgh. again.
2379
2380         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2381         prevent duplicated broken items in output.
2382
2383         * scm/framework-eps.scm (output-classic-framework): only dump if
2384         dump-signatures is set.
2385
2386         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2387
2388         * scm/stencil.scm (write-system-signature): new routine: write
2389         python parseable signature of a separate paper system.
2390         BackportmeEnd.
2391         
2392 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2393
2394         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2395         iso is_string().
2396         include header.
2397
2398 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2399
2400         * translator-group.cc: send music events to engravers in
2401         non-bottom contexts.
2402
2403         * tuplet-engraver.cc: process tuplet brackets in correct order.
2404
2405 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2406
2407         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2408         arg 2 might point us to a new binary (patch by Karl Hammar)
2409         
2410 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2411
2412         * VERSION (PACKAGE_NAME): release 2.9.6
2413
2414         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2415
2416         * Documentation/user/*.itely: 2nd
2417         attempt: replace funindex -> findex globally.
2418
2419 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2420
2421         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2422         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2423
2424         * scm/define-music-display-methods.scm: display methods for
2425         breaks. Fix \applyOutput.
2426
2427 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2428
2429         * Documentation/user/macros.itexi: comment out funindex expansion. 
2430
2431         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2432         everywhere.
2433
2434         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2435         Karl Hammar. Backportme.
2436  
2437         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2438
2439         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2440
2441         * Documentation/user/programming-interface.itely (Running a
2442         function on all layout objects): idem.
2443
2444         * Documentation/user/introduction.itely (Automated engraving):
2445         update \applyOutput syntax
2446
2447         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2448         remove debugging hook.
2449
2450         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2451         expansion. 
2452
2453         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2454
2455         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2456         TEXI2DVI_FLAGS to texi2dvi invocation. 
2457
2458 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2459
2460         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2461         works. More work is done by iterator now, and engraver has been
2462         very much simplified.
2463
2464         * lily/translator-group.cc: try_music is now invoked through a
2465         listener
2466
2467         * lily/*-iterator.cc: Massive cleanups. Junked
2468         try_music_in_children globally. Renamed try_music to report_event,
2469         and made that method descend to a bottom context automatically.
2470
2471         * lily/event-iterator.cc: New file.
2472
2473         * lily/output-property-iterator.cc,
2474         lily/old-lyric-combine-music-iterator.cc: Removed.
2475
2476         * python/convert-rules.py: Modified the syntax for \applyOutput.
2477
2478 2006-05-23  Graham Percival  <gpermus@gmail.com>
2479
2480         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2481         creation.
2482
2483         * Documentation/user/ various: stuff that might have helped
2484         to fix the pdf creation, plus some minor doc additions.
2485
2486         * Documentation/user/changing-defaults.itely: remove @b from
2487         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2488
2489 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2490
2491         * lily/beaming-pattern.cc (beamify): deal with negative start
2492         moments for beaming patterns.
2493
2494 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2495
2496         * lily/beaming-info.cc (beamify): new function: read beatLength
2497         and beatGrouping from context. 
2498
2499         * input/regression/beam-beat-grouping.ly (Module): new file.
2500
2501         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2502
2503         * lily/beam.cc (get_beam_segments): generate events for
2504         max_connect_ case too.
2505         (get_beam_segments): read Stem::max-beam-connect.
2506
2507         * input/regression/beam-single-stem.ly: new file.
2508
2509         * lily/stem.cc (set_beaming): use #f as signaling value for
2510         beamcount 0.
2511
2512         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2513
2514         * lily/beam.cc (set_beaming): read clip-edges property.
2515         (calc_direction): don't suicide for single stem.
2516
2517         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2518         argument, remove 1<<15 hack. Remove clip_edges() 
2519
2520         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2521
2522 2006-05-21  Graham Percival  <gpermus@gmail.com>
2523
2524         * Documentation/user/basic-notation.itely: reorg.
2525
2526         * Documentation/user/ various: minor fixes.
2527
2528 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2529
2530         * lily/stencil-expression.cc (register_stencil_head): opps, append
2531         to cdr of static SCM object.
2532
2533 2006-05-19  Graham Percival  <gpermus@gmail.com>
2534
2535         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2536         update framework for command index.  DOC WRITERS: use @funindex
2537         instead of @cindex @code{}.
2538
2539         * Documentation/user/ various: replace @cindex @code{} => @funindex
2540
2541 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2542
2543         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2544         case positions is set manually. 
2545
2546 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2547         
2548         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2549         rules to Scheme.
2550
2551 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2552
2553         * Documentation/user/changing-defaults.itely (Contexts explained):
2554         use absolute dimension for @image.
2555
2556         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2557         out image for illustration too.
2558         ($(outdir)/%.png): add more png <-> eps rules. 
2559
2560 2006-05-17  Graham Percival  <gpermus@gmail.com>
2561
2562         * Documentation/user/ various: remove trailing whitespace, cosmetic
2563         change to reduce changes produced by diff.
2564
2565 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2566
2567         * lily/main.cc (do_chroot_jail): correctness tweak.
2568
2569         * python/lilylib.py (system): import subprocess in system () only.
2570
2571         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2572
2573         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2574         variable. Backportme.
2575
2576 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2577         
2578         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2579
2580 2006-05-17  Werner Lemberg  <wl@gnu.org>
2581
2582         * lily/lexer.ll (init_signature_has_table): Add
2583         `scm-scm-music-music'.
2584
2585         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2586         (Generic_prefix_music_scm): Add rule for it.
2587
2588         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2589         `quoted-transposition' property.
2590
2591         * ly/music-functions-init.ly (transposedCueDuring): New function.
2592
2593         * scm/define-music-properties.scm (all-music-properties): Updated.
2594
2595         * Documenation/topdocs/NEWS.itely: Document it.
2596
2597 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2598
2599         * python/lilylib.py (system): move import subprocess to system()
2600         definition. 
2601
2602         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2603
2604         * VERSION (PATCH_LEVEL): release 2.9.5
2605         
2606         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2607         build instructions. 
2608
2609         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2610
2611 2006-05-16  Graham Percival  <gpermus@gmail.com>
2612
2613         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2614
2615         * Documentation/user/ various: minor fixes.
2616
2617 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2618
2619         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2620
2621 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2622
2623         * Documentation/user/advanced-notation.itely (Instrument names):
2624         Modified obsolete instruction on how to move instrument names away
2625         from the staves. Hmm, at second thought the bug probably has been
2626         solved, so the full bug description should probably be removed.
2627
2628 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2629
2630         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2631         currentCommandColumn. 
2632
2633         * lily/hairpin.cc (print): also add padding for non-neighbor
2634         hairpin bounds.
2635
2636         * scm/define-context-properties.scm
2637         (all-user-translation-properties): add hairpinToBarline
2638
2639         * input/regression/hairpin-to-barline.ly: new file.
2640
2641         * lily/context.cc (internal_send_stream_event): thinko fix.
2642
2643         * lily/tie.cc (set_default_control_points): robustness fix.
2644
2645         * python/musicxml.py (Part.interpret): don't complain about
2646         incomplete measures.
2647
2648         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2649         new music if last_event_chord() returned None.
2650
2651         * python/musicxml.py (Part.interpret): skip back over chord notes.
2652
2653 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2654         
2655         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2656         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2657         lily/slash-repeat-engraver.cc,
2658         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2659         iterator sends PercentEvents
2660
2661         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2662         rework tuplets: send start/stop events to engraver
2663
2664         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2665         dispatchers event-source and events-below to Context
2666         
2667 2006-05-15  Graham Percival  <gpermus@gmail.com>
2668
2669         * Documentation/user/README.txt: update info for doc writers.
2670
2671         * Documentation/user/programming-interface.itely: integrate
2672         Nicolas' fixes for chapter rewrite.
2673
2674         * Documentation/user/ various: minor fixes.
2675
2676 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2677
2678         * lily/clef-engraver.cc: cleanup.
2679
2680         * Documentation/user/GNUmakefile: dist context-example.eps too.
2681
2682         * lily/key-engraver.cc (create_key): use
2683         explicitKeySignatureVisibility for cancellation too. 
2684
2685         * lily/font-config.cc (init_fontconfig): don't close file if
2686         f==NULL. 
2687
2688 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2689
2690         * Documentation/topdocs/NEWS.tely: niente and rotation news
2691
2692 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2693
2694         * lily/include/stencil.hh
2695         * lily/stencil.cc (rotate): new function. Makes it possible
2696         to rotate a stencil around a given offset.
2697
2698         * lily/grob.cc (get_print_stencil): add rotation support
2699
2700         * lily/stencil-interpret.cc (interpret_stencil_expression):
2701         add rotation support
2702
2703         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2704
2705         * scm/define-grob-properties.scm: add 'rotation property
2706
2707         * scm/define-markup-commands.scm: add rotate markup command
2708         
2709         * scm/output-ps.scm: add rotation support in PostScript backend
2710
2711         * scm/output-svg.scm: add rotation support in SVG backend
2712
2713 2006-05-13  Graham Percival  <gpermus@gmail.com>
2714
2715         * Documentation/user/music-glossary.itely: French correction.
2716
2717         * Documentation/user/programming-interface.itely: major
2718         new docs, some reorg, some info from Nicolas.
2719
2720         * Documentation/user/ various: small fixes.
2721
2722 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2723
2724         * Documentation/user/programming-interface.itely (Markup
2725         programmer interface): Remove duplicate text.
2726
2727 2006-05-12  Graham Percival  <gpermus@gmail.com>
2728
2729         * Documentation/user/context-example.eps: new file.
2730
2731         * Documentation/user/changing-defaults.itely: set up file to
2732         use eps image.
2733
2734         * Documentation/user/programming-interface.itely: changes
2735         from mailist.
2736
2737 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2738
2739         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2740
2741 2006-05-11  Graham Percival  <gpermus@gmail.com>
2742
2743         * Documentation/user/programming-interface.itely: first round of
2744         editing and merging emails from Nicolas.
2745
2746         * Documentation/user/scheme-tutorial: minor edit.
2747
2748 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2749
2750         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2751         XML attributes.
2752         (Xml_node.message): use it.
2753
2754         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2755         oops. Add duration argument.
2756
2757 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2758
2759         * lily/paper-column-engraver.cc (make_columns):
2760         * scm/define-grobs.scm: Revert my previous change and set the default
2761         in define-grobs.scm instead.
2762
2763 2006-05-09  Graham Percival  <gpermus@gmail.com>
2764         
2765         * Documentation/user/changing-defaults.itely: general editing,
2766         info about \set and \override.
2767
2768         * Documentation/user/tweaking.itely, advanced-notation.itely:
2769         fixes from Dave Luttinen, thanks!
2770
2771 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2772
2773         * lily/paper-column-engraver.cc (make_columns): By default, a column
2774         needs to be breakable.
2775
2776 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2777
2778         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2779         Attributes methods
2780         (musicxml_time_to_lily): idem
2781         (musicxml_key_to_lily): idem
2782         (instrument_drumtype_dict): dict for supported drumtypes.
2783         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2784         moments and pending mm rests
2785         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2786         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2787         (musicxml_voice_to_lily_voice): add mode change.
2788         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2789         speed and less memory usage (factor 5 to 10).
2790         (convert): write -defs.ly  and driver file separately so people
2791         can script their own part extraction.
2792
2793         * python/musicxml.py (minidom_demarshal_node): new function:
2794         separate minidom handling.
2795         (lxml_demarshal_node): new function: support lxml.etree too.
2796         (Xml_node.message): new function: verbose error message, with XML
2797         path to offending node.
2798         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2799         (Part_list.generate_id_instrument_dict): new method: collect
2800         instrument names, to be able to set drum_type.
2801         (Part.interpret): handle underfull measures
2802         (Part.interpret): assign instrument names.
2803
2804         * python/musicexp.py (Output_printer.close): new method
2805         (MusicWrapper.print_ly): new class: support other modes,
2806         eg. \drummode
2807         (BarCheck.print_ly): new class. Support bar checks, with comments
2808         and fancy barchecks. 
2809         (NoteEvent.__init__): also set drum_type for drum notes.
2810         (MultiMeasureRest.lisp_expression): dump mm rests.
2811
2812         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2813         line-break-permission if forbidBreak is not set.
2814
2815 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2816
2817         * scm/define-context-properties.scm:
2818         * scm/define-grob-properties.scm:
2819         * scm/define-grobs.scm:
2820         * scm/define-music-display-methods.scm:
2821         * scm/define-music-properties.scm:
2822         * scm/define-music-types.scm:
2823         * scm/music-functions.scm:
2824         * ly/declarations-init.ly:
2825         * lily/include/constrained-breaking.hh:
2826         * lily/system.cc:
2827         * lily/spaceable-grob.cc:
2828         * lily/simple-spacer.cc:
2829         * lily/paper-score.cc:
2830         * lily/paper-column.cc:
2831         * lily/paper-column-engraver.cc:
2832         * lily/item.cc:
2833         * lily/gourlay-breaking.cc:
2834         * lily/constrained-breaking.cc:
2835         * python/convertrules.py:
2836         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2837         "page-break-penalty" and "line-break-permission".
2838         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2839         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2840
2841         * lily/bar-engraver.cc:
2842         * lily/beam-engraver.cc:
2843         * lily/forbid-break-engraver.cc:
2844         * lily/ligature-engraver.cc:
2845         * lily/paper-column-engraver.cc:
2846         * lily/percent-repeat-engraver.cc:
2847         * lily/score-engraver.cc:
2848         * lily/score-engraver.hh:
2849         * lily/paper-column-engraver.hh:
2850         Inter-engraver communication regarding line breaks is done through context
2851         properties (Score.forbidBreak) instead of function calls.
2852
2853 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2854
2855         * VERSION (PACKAGE_NAME): release 2.9.4
2856
2857 2006-05-08  Graham Percival  <gpermus@gmail.com>
2858
2859         * Documentation/user/working.itely: proofreading from Dave
2860         Luttinen, thanks.
2861
2862         * Doucmentation/user/README.txt: updated with manual style info.
2863
2864         * Documentation/user/ various: trim linewidth to 78 chars.
2865
2866 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2867
2868         * scm/define-grob-properties.scm (all-internal-grob-properties):
2869         remove chord-tremolo property.
2870
2871         * lily/beam.cc (get_beam_segments): don't use stem position as
2872         base for broken ends.
2873
2874 2006-05-06  Graham Percival  <gpermus@gmail.com>
2875
2876         * Documentation/user/putting.itely: proofreading from Dave
2877         Luttinen, thanks!
2878
2879         * Documentation/user/ various: more reorg and clarifications.
2880
2881 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2882
2883         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2884
2885         * ly/music-functions-init.ly: new function featherDurations
2886
2887         * lily/beam.cc: read grow-direction for feathered beaming.
2888
2889         * Documentation/topdocs/NEWS.tely (Top): typo.
2890
2891 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2892
2893         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2894         tremolo beams.
2895
2896 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2897         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2898         used by music streams.
2899
2900         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2901         lily/stream-event.cc, lily/stream-event-scheme.cc,
2902         lily/listener.cc, lily/scheme-listener.cc,
2903         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2904         lily/include/stream-event.hh, lily/include/listener.hh,
2905         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2906         Created data structures for music streams.
2907         
2908 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2909
2910         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2911         construction of a beam. 
2912         (print): rewrite. 
2913
2914         * flower/include/std-vector.hh (default_compare): use only one comparison.
2915
2916         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2917         (note-by-number): further attachment fixes.
2918
2919         * scm/lily-library.scm (ordered-cons): new function.
2920         (interval-index): new function
2921
2922         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2923
2924         * lily/note-head.cc (get_stem_attachment): new function.
2925
2926         * scm/define-markup-commands.scm (note-by-number): read 'style
2927         property. 
2928
2929         * input/regression/markup-note.ly: show note-head style option.
2930
2931         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2932         triangle head.
2933
2934 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2935
2936         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2937
2938         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2939
2940         * lily/include/constrained-breaking.hh: GCC 4 fix.
2941
2942 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2943
2944         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2945         Replace it with functions get_line_forces and get_line_configuration.
2946         (class Simple_spacer): Make data private.
2947         Rewrite compression algorithm to be faster and simpler.
2948
2949         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2950         * lily/gourlay-breaking.cc (solve):
2951         * lily/constrained_breaking.cc (space_line):
2952         Change it to the new simple-spacer code.
2953
2954         * lily/paper-score.cc (get_paper_systems):
2955         (Paper_score):
2956         (process):
2957         Delay breaking the systems until they are requested.
2958         (find_break_indices):
2959         Use vsize for indices.
2960         (calc_breaking):
2961         Move the "Calculating line breaks" message here.
2962
2963         * lily/system.cc (pre_processing):
2964         Move the "Calculating line breaks" message away from here.
2965         (break_into_pieces):
2966         Allow multiple calls to this function in sequence (with touching-but-
2967         not-overlapping breakpoints).
2968
2969         * lily/constrained-breaking.cc:
2970         Replace most of the get_XXXX functions with get_line_details.
2971         Only calculate the force for each line. Calculate configurations only
2972         for the lines we will actually use.
2973         Replace cols_ with lines_.
2974
2975 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2976
2977         * mf/GNUmakefile (depth): remove FC_FIND.
2978
2979         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2980
2981         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2982
2983         * scm/framework-ps.scm (write-preamble): new function.
2984         (write-preamble): load mac fonts via fondu, even if gs-font-load
2985         is set.
2986
2987 2006-05-03  Werner Lemberg  <wl@gnu.org>
2988
2989         * mf/GNUmakefile (FC_FIND): Fix typo.
2990
2991 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2992
2993         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2994
2995 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2996
2997         * stepmake/aclocal.m4: run python-config for crosscompiling
2998         flags. 
2999
3000         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3001         -f png for HTML, TEXINFO formats. 
3002
3003         * input/tutorial/lbook-html-test.html: new file.
3004
3005         * lily/include/tie-formatting-problem.hh (class
3006         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3007         [column, direction]. This fixes laissez vibrer ties.
3008  
3009         * flower/include/tuple.hh (struct Tuple2): new file.
3010
3011         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3012         $(FCMATCH), only if $(NCSB_DIR) not set. 
3013
3014         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3015
3016         * config.make.in (DOCUMENTATION): set FCMATCH.  
3017
3018         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3019
3020 2006-05-03  Graham Percival  <gpermus@gmail.com>
3021
3022         * Documentation/user/ various: final round of reorg.
3023
3024         * Documentation/user/instrument-notation.itely: some more
3025         fixes from Eduardo, thanks!
3026
3027 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3028
3029         * VERSION (PACKAGE_NAME): release 2.9.3
3030
3031         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3032
3033         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3034
3035 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3036
3037         * scm/define-grob-properties.scm (all-user-grob-properties):
3038         Correct typo, thanks to Eduardo.
3039
3040 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3041
3042         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3043
3044         * buildscripts/lilypond-words.py (F): indent fix.
3045
3046         * input/regression/tie-arpeggio-collision.ly: new file.
3047
3048         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3049         function: store outlines per column rank.
3050
3051         * lily/include/tie-configuration.hh (class Tie_configuration): add
3052         column_ranks_ to specification and configuration, to distinguish
3053         between ties for different heads in arpegiated chords.
3054
3055         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3056
3057         * *.py: more 4 space indents.
3058
3059         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3060
3061 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3062
3063         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3064
3065 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3066
3067         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3068
3069         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3070
3071         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3072
3073 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3074
3075         * python/convertrules.py (conv): indent 4 for python files.
3076
3077 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3078
3079         * Documentation/user/changing-defaults.itely (Creating contexts):
3080         Clarify \new semantics.
3081
3082 2006-04-28  Graham Percival  <gpermus@gmail.com>
3083
3084         * Documentation/user/ various: major new sections in the
3085         Learning manual, slight reorg elsewhere.
3086
3087 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3088
3089         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3090
3091         * scm/framework-ps.scm (output-framework): remove PageMedia
3092
3093 2006-04-27  Graham Percival  <gpermus@gmail.com>
3094
3095         * Documentation/user/ tweaks.itely, working.itely: new
3096         files, being more advanced "learning manual" chapters.
3097
3098         * Documentation/user/ tutorial, putting, lilypond: reorg.
3099
3100 2006-04-26  Graham Percival  <gpermus@gmail.com>
3101
3102         * input/regression/lyric-combine-polyphonic.ly: fixed test
3103         (no more "can't find context `one'" error).
3104
3105 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3106
3107         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3108
3109         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3110         
3111 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3112
3113         * lily/relocate.cc (read_relocation_dir): new function.
3114
3115 2006-04-26  Graham Percival  <gpermus@gmail.com>
3116
3117         * Documentation/user/instrument-notation.itely: a few more fixes
3118         from Eduardo, thanks!
3119
3120         * Documentation/user/README.txt: new file; contains info on
3121         style that used to be in lilypond.tely.
3122
3123         * Documentation/user/ various: first round of doc reorg.
3124
3125         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3126         graphic; this probably causes problems on some pdf
3127         viewers, notably Adobe Acrobat.
3128
3129 2006-04-24  Graham Percival  <gpermus@gmail.com>
3130
3131         * Documentation/user/instrument-notation.itely: many alterations
3132         to Vocal music, from Eduardo Viera.
3133
3134 2006-04-23  Graham Percival  <gpermus@gmail.com>
3135
3136         * Documentation/user/instrument-notation.itely: fix \new
3137         instead of \context problem.
3138
3139 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3140
3141         * lily/relocate.cc (expand_environment_variables): new function.
3142         (read_line): id.
3143         (read_relocation_file): id.
3144
3145         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3146
3147 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3148
3149         * ly/engraver-init.ly: remove old comments from TabVoice
3150
3151 2006-04-20  Graham Percival  <gpermus@gmail.com>
3152
3153         * Documentation/user/instrument-notation.itely: added Erlend's
3154         latest doc patch, thanks!
3155
3156 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3157
3158         * lily/include/slur.hh:
3159         * lily/slur.cc:
3160         * lily/phrasing-slur-engraver.cc:
3161         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3162         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3163         Slur_engraver:: and putting it in
3164         Slur::auxiliary_acknowledge_extra_object ().
3165
3166         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3167
3168         * lily/note-collision.cc: fix a comment
3169
3170 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3171
3172         * stepmake/bin/add-html-footer.py: fix footer position in
3173         generated html files: before </body> and </html> tags.
3174
3175 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3176
3177         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3178         Earlier successive `make' commands finally compiled ok.
3179
3180         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3181
3182 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3183
3184         * lily/include/stem-tremolo.hh:
3185         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3186         callers.
3187
3188         * lily/lookup.cc:
3189         * lily/include/lookup.hh: add rotated_box ()
3190
3191 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3192
3193         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3194         been generated. Fixes "can't get `--help'" bug after make clean.
3195
3196         * THANKS: alphabetize contributors.
3197
3198 2006-04-17  Graham Percival  <gpermus@gmail.com>
3199
3200         * Documentation/user/instrument-notation.itely: added Erlend's
3201         tabs and banjo doc patch.  Thanks!
3202
3203 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3204
3205         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3206
3207         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3208
3209         * scm/output-lib.scm: add some more predefined string tunings.
3210
3211         * Documentation/user/instrument-notation.itely: and doc them.
3212
3213 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3214
3215         * ly/engraver.ly: Remove obsolete comments.
3216
3217         * ly/gregorian-init.ly: Define default layout block.
3218
3219         * input/puer-fragment.ly: Updated and extended.
3220
3221 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3222
3223         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3224         pdf conversion behaviour.
3225
3226         * flower/file-name.cc (dir_name)
3227         (get_working_directory): Move from relocate.cc.
3228
3229         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3230         
3231         * lily/relocate.cc: Encapsulate sys/stat.h in
3232         HAVE_STAT_H.
3233
3234 2006-04-14  Graham Percival  <gpermus@gmail.com>
3235
3236         * Documentation/user/ various: small updates from Cameron
3237         and Juergen, thanks!
3238
3239         * Documentation/user/ various: small updates of my own.
3240
3241         * THANKS: 2.7 -> 2.8.
3242
3243 2006-04-11  Graham Percival  <gpermus@gmail.com>
3244
3245         * scm/define-context-properties.scm: typo.
3246
3247         * Documentation/user/ : many more small updates.
3248
3249 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3250
3251         * scm/define-music-types.scm: disposed "docme".
3252
3253 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3254
3255         * lily/hairpin.cc: make niente circles a bit smaller.
3256
3257 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3258
3259         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3260         get-pfa and get-*-fonts targets.
3261
3262 2006-04-10  Graham Percival  <gpermus@gmail.com>
3263
3264         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3265         music-glossary, programming-interface: more minor fixes
3266         from mailist.
3267
3268         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3269
3270         * scm/define-context-properties.scm: another old \property update.
3271         This time tested for compiling!
3272
3273 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3274
3275         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3276
3277 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3278
3279         * scm/define-context-properties.scm (all-user-translation-properties): 
3280         * Documentation/user/global.itely (Page formatting): Compile fix.
3281
3282 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3283
3284         * Documentation/user/advanced-notation.itely (Polymetric
3285         notation): Update the example to use the "+" symbol and add link
3286         to input/test/compound-time.ly.
3287
3288 2006-04-08  Graham Percival  <gpermus@gmail.com>
3289
3290         * scm/define-grob-properties.scm: clarify docs for #'direction.
3291
3292         * scm/define-context-properties.scm: update old \property override.
3293
3294         * Documentation/user/ advanced-notation, global, lilypond-book:
3295         more minor doc updates.
3296
3297 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3298
3299         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3300
3301         * scm/backend-library.scm (search-gs): oops.
3302
3303 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3304
3305         * scripts/lilypond-book.py (output): use base, not filename for href.
3306
3307         * scm/backend-library.scm: only look for gs.
3308
3309         * scripts/lilypond-book.py (output): fix printfilename.
3310
3311         * lily/parser.yy (music_function_musicless_prefix): fold together
3312         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3313
3314         * lily/slur.cc (print): only set font-size if not set yet.
3315
3316         * lily/slur-configuration.cc (add_score): improved layout of debug
3317         scoring output.
3318
3319 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3320
3321         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3322         (draw_circle): Hopefully fixed regression.
3323         Improved documentation for several procedures.
3324         
3325 2006-03-04  Werner Lemberg  <wl@gnu.org>
3326
3327         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3328
3329 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3330
3331         * scripts/musicxml2ly.py (bindir): add dynamic
3332         relocation. 
3333
3334 2006-04-04  Graham Percival  <gpermus@gmail.com>
3335
3336         * Documentation/user/ basic-notation, advanced-notation, putting,
3337         instrument-notation, invoking, lilypond, THANKS: another ream of small
3338         fixes from the Doc Helpers.
3339
3340 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3341
3342         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3343
3344         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3345
3346         * Cleaned up interfaces between PostScript and Scheme, and moved
3347         computations from PostScript to Scheme:
3348
3349         * music-drawing-routines.ps
3350         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3351         with stroke_and_fill throughout.
3352         (euclidean_length, print_letter, draw_box): Deleted unused
3353         procedures.  If someone needs draw_box, implement it using
3354         draw_round_box; don't duplicate code.
3355         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3356         Refactored/cleaned up interfaces.
3357         (mark_URI): Moved.
3358
3359         * output-ps.scm: reordered arguments to PostScript functions to
3360         match new interfaces
3361         (glyph-string): Rewrote glyph-string.
3362         (grob-cause): Replaced string-append with format.
3363         (repeat-slash): Rewrote to do computation here.
3364         (round-filled-box): Rewrote to do computation here.
3365
3366 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3367
3368         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3369
3370         * stepmake/stepmake/toplevel- targets.make: print help info about
3371         cvs-clean
3372
3373 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3374
3375         * input/regression/hairpin-circled.ly: new file
3376
3377 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3378
3379         * lily/hairpin.cc (print): add support for circled tip
3380
3381         * scm/define-grob-properties.scm: add circled-tip parameter
3382
3383         * scm/define-grobs.scm: init circled-tip to false
3384         
3385 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3386
3387         * scm/music-functions.scm (quote-substitute): set
3388         iterators-ctor. 
3389
3390 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3391
3392         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3393         BSTINPUTS. 
3394
3395         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3396
3397         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3398
3399 2006-03-31  David Feuer  <david.feuer@gmail.com>
3400         
3401         * scm/framework-ps.scm:
3402         
3403         * scm/output-ps.scm: glyph-string now produces smaller, more
3404         readable, and probably faster PostScript.  Several findfont
3405         scalefont setfont instances changed to selectfont
3406         Hacked-up string-appends changed to formats.
3407
3408         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3409         
3410 2006-03-30  Graham Percival  <gpermus@gmail.com>
3411
3412         * scm/lily-library.scm: make "no version" warning message more polite.
3413
3414         * lily/music.cc: add double quotes to failed octave check.
3415
3416         * Documentation/user/ advanced-notation, changing-defaults,
3417         instrument-notation, invoking, music-glossary: whole bunch of minor
3418         fixes from mailist.
3419
3420 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3421
3422         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3423         $(buildscriptdir) iso. depth.
3424
3425         * VERSION (PACKAGE_NAME): release 2.9.1
3426
3427 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3428
3429         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3430
3431         * VERSION (PATCH_LEVEL): bump version number.
3432
3433         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3434         scm_from_uint32 ()
3435
3436         * lily/pango-font.cc (pango_item_string_stencil): use
3437         scm_from_uint32 ()
3438
3439         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3440         $(outdir)/emmentaler-%.svg): remove canary.
3441
3442         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3443         glyphnames if we have a ttf font.
3444
3445 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3446
3447         * Documentation/user/advanced-notation.itely (Font selection):
3448         Corrected reference to the font-family-override.ly example.
3449
3450 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3451         
3452         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3453         stem-tremolo object in the stem (or else the stem might not be
3454         long enough).
3455
3456 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3457
3458         * lily/ttf.cc (print_trailer): only print existing glyphs.
3459
3460 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3461
3462         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3463         position the tremolo based on the position of the notehead.
3464
3465         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3466         notes and update the texidoc line with the new positioning rules.
3467         
3468 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3469
3470         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3471
3472         * scripts/lilypond-book.py (Module): set default for linewidth if
3473         preamble not found.
3474
3475 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3476
3477         * VERSION (PACKAGE_NAME): release 2.9.0.
3478
3479         * input/regression/stem-tremolo-position.ly: new file.
3480
3481         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3482
3483 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3484
3485         * lily/stem-tremolo.cc (print): position
3486         the tremolo depending only on the end of the stem
3487         and not on the notehead
3488         (raw_stencil): center, on the middle staff line, the
3489         flag that is closest to the end of the stem (previously
3490         the bottom flag)
3491         (calc_width): add this callback to shorten a tremolo when
3492         it is beamed or it is stemup with a flag
3493         (style): add this callback to make a tremolo rectangular when
3494         it is beamed or it is stemup with a flag
3495         (rotated_box): this is like Lookup::beam but makes a rotated
3496         rectangle instead of a parallelogram
3497
3498         * lily/stem.cc (calc_stem_info): make sure the stem
3499         is long enough to fit the tremolo
3500         (calc-length): reduce the length of tremolo stems since the
3501         tremolo code is now capable of better positioning
3502
3503         * scm/define-grobs.scm: make calc_width the default beam-width
3504         callback for stem-tremolo and add the style callback
3505                 
3506 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3507
3508         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3509         case. 
3510
3511 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3512
3513         * lily/ttf.cc (make_index_to_charcode_map): restore old
3514         cmap. 
3515
3516 2006-03-28  Werner Lemberg  <wl@gnu.org>
3517
3518         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3519
3520 2006-03-28  Graham Percival  <gpermus@gmail.com>
3521
3522         * THANKS: update for 2.9, add section for Documentation helpers.
3523
3524         * Documentation/topdocs/NEWS.tely: compile fix.
3525
3526         * Documentation/user/ basic-notation, global, advanced-notation,
3527         examples.itely: minor fixes from mailist.
3528
3529 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3530
3531         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3532         note heads. 
3533
3534         * lily/ttf.cc (print_trailer): use it.
3535
3536         * lily/pango-font.cc (get_unicode_name): new function.
3537
3538         * lily/ttf.cc (make_index_to_charcode_map): move function from
3539         open-type-font.cc
3540         (print_trailer): substitute uniXXXX name if applicable. 
3541
3542         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3543         (pango_item_string_stencil): use it to generate uniXXXX names.
3544
3545         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3546         note heads, for uniform widths in shape note output.
3547         (overdone_heads): hmm. remove them again.
3548
3549         * scripts/lilypond-book.py (output): add links to filenames.
3550
3551         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3552
3553         * lily/note-collision.cc (get_clash_groups): only consider when
3554         Note_column::dir <> CENTER. 
3555
3556         * scripts/lilypond-book.py (get_option_parser): init output_name
3557         to ''. 
3558
3559 2006-03-24  Graham Percival  <gpermus@gmail.com>
3560
3561         * Documentation/topdocs/NEWS.tely: add @end itemize
3562
3563         * Documentation/user/ global, advanced-notation: minor
3564         stuff from mailist.
3565
3566 2006-03-23  Graham Percival  <gpermus@gmail.com>
3567
3568         * Documentation/user/ lilypond.tely, music-glossary,
3569         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3570
3571 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3572
3573         * mf/GNUmakefile: don't install .enc files.
3574
3575         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3576
3577         * VERSION (PATCH_LEVEL): bump to 2.9.0
3578
3579 2006-03-22  Graham Percival  <gpermus@gmail.com>
3580
3581         * Documentation/user/advanced-notation.itely: minor fixes
3582         from mailist.
3583
3584 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3585
3586         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3587
3588         * branch lilypond_2_8
3589
3590 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3591
3592         * scripts/lilypond-book.py (samefile): new function, for windoze
3593         compatibility.
3594
3595 2006-03-21  Graham Percival  <gpermus@gmail.com>
3596
3597         * ly/engraver-init.ly: add info about StaffGroup.
3598
3599 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3600
3601         * input/regression/stem-direction-context.ly: idem.
3602
3603         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3604
3605         * THANKS: add Mats.
3606
3607         * input/regression/page-layout-twopass.ly: comment out \markup so
3608         tweak-file is left.
3609
3610         * lily/instrument-name-engraver.cc (finalize): add to instrument
3611         name global System. This also fixes chopped instrument names, but
3612         doesn't crash when there are slurs/beams.
3613
3614         * lily/slur-configuration.cc (add_score): disallow negative slur
3615         scores.
3616         
3617 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3618
3619         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3620
3621         * lily/instrument-name-engraver.cc (process_music): kludge: add
3622         InstrumentName spanner to axis group of left bound. Fixes chopped
3623         off instrument names in EPS images.
3624
3625         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3626
3627         * scripts/abc2ly.py (option_parser): update to 2.7.40
3628
3629 2006-03-20  Graham Percival  <gpermus@gmail.com>
3630
3631         * THANKS: move small doc contributors to SUGGESTIONS.
3632
3633         * Documentation/user/ basic-notation, advanced-notation,
3634         global: small changes from mailist.
3635
3636 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3637
3638         * Documentation/user/advanced-notation.itely (Text marks): update
3639         for new rehearsalMarkAlignSymbol convention.
3640
3641         * VERSION (PATCH_LEVEL): bump version.
3642
3643         * input/test/instrument-name-align.ly: new file.
3644
3645         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3646
3647         * input/test/instrument-name-align.ly: new file. Document how to
3648         align instrument names.
3649
3650         * lily/mark-engraver.cc: remove properties.
3651
3652         * scm/define-context-properties.scm
3653         (all-user-translation-properties): remove align symbol properties
3654         for barnumber/reh. mark.
3655
3656         * lily/break-align-interface.cc (self_align_callback): new
3657         interface, new function. Look at complete alignment. This handles
3658         tunable break alignments in case break-align-symbols are missing.
3659
3660         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3661
3662         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3663
3664         * python/convertrules.py (conv): mark/bar number alignment rule.
3665
3666         * lily/break-align-interface.cc (calc_positioning_done): also
3667         store offset from last visible break-alignment to its
3668         neighbor. This makes alignment on non-visible objects more reliable.
3669
3670         * po/lilypond.pot (Module): ran po-replace.
3671
3672         * input/regression/tie-single-manual.ly (Module): new file.
3673
3674         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3675         look at has_manual_position_.
3676         (from_ties): set has_manual_position_ if tie has staff-position set.
3677
3678         * lily/tuplet-bracket.cc (calc_positions): idem.
3679
3680         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3681         doesn't span time.
3682
3683 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3684
3685         * scm/define-markup-commands.scm (smallCaps): new markup command
3686         for turning a text to small caps using smaller font size and upper
3687         casing.
3688
3689 2006-03-17  Graham Percival  <gpermus@gmail.com>
3690
3691         * Documentation/user/ examples, instrument-notation,
3692         advnaced-notation: minor fixes from mailist.
3693
3694 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3695
3696         * Documentation/user/tutorial.itely (First steps): change example
3697         to verbatim.  
3698
3699 2006-03-17  Graham Percival  <gpermus@gmail.com>
3700
3701         * Documentation/user/ examples, advanced: minor changes from mailist.
3702
3703         * THANKS: add Geoff Horton, for documentation stuff.
3704
3705 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3706
3707         * python/lilylib.py (system): revert have_select kludge.
3708
3709         * Documentation/user/tutorial.itely (Commenting input files):
3710         update version numbers in doc. 
3711
3712         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3713         bound-padding to multi-measure-interface
3714
3715 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3716
3717         * input/test/engraver-example.ily: update version number.
3718
3719         * VERSION (PACKAGE_NAME): release 2.7.39
3720
3721         * lily/note-spacing.cc (get_spacing): heighten threshold where
3722         accidentals/arpeggios influence previous spacing fully.
3723
3724         * lily/rest.cc (y_offset_callback): only use direction if
3725         staff-position wasn't set before.
3726
3727         * lily/bar-number-engraver.cc: add support for
3728         barNumberAlignSymbol. 
3729         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3730
3731         * lily/pointer-group-interface.cc (set_ordered): new function. 
3732         (add_unordered_grob): new function.
3733
3734         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3735         to ordered, unless the opposite has been proved.  This fixes
3736         random reordering of large object groups across linebreaks,
3737         eg. beams.
3738
3739         * lily/main.cc (do_chroot_jail): printf format fix.
3740
3741         * lily/tie-formatting-problem.cc (generate_configuration):
3742         multiply y-shift for dot with direction.
3743  
3744         * scm/define-markup-commands.scm (note-by-number): put (magstep
3745         size) in y-attach too.
3746
3747         * Documentation/topdocs/NEWS.tely (Top): show override.
3748
3749         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3750         direction for stems.
3751         
3752 2006-03-15  Graham Percival  <gpermus@gmail.com>
3753
3754         * Documentation/user/ changing-defaults, global: minor
3755         fixes from mailist.
3756
3757 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3758
3759         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3760
3761         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3762         breakable items after uniformly stretched notes.
3763
3764         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3765         outline with outer edge of note heads. This prevents infinity
3766         problems with tied whole notes.
3767
3768         * scripts/lilypond-book.py (do_file): use os.popen
3769
3770         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3771
3772 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3773
3774         * Documentation/user/invoking.itely: Add ragged-right to bug report
3775         guidelines.
3776
3777 2006-03-14  Graham Percival  <gpermus@gmail.com>
3778
3779         * Documentation/user/global.itely: small fix from mailist.
3780
3781 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3782
3783         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3784         file descriptor returned by tempfile.mkstemp() when writing
3785         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3786         on mingw.
3787
3788 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3789
3790         * po/fi.po: newline bugfix.
3791
3792 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3793
3794         * scm/paper.scm (paper-alist): Rounding fixes.
3795
3796 2006-03-13  Graham Percival  <gpermus@gmail.com>
3797
3798         * Documentation/user/ changing-defaults, instrument-notation,
3799         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3800
3801 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3802
3803         * po/fi.po: update.
3804
3805 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3806
3807         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3808         mailto: to http:// 
3809
3810         * python/lilylib.py (print_environment): move ps_page_count to
3811         lilypond-book.py
3812
3813 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3814
3815         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3816
3817         * scm/framework-ps.scm (embed-document): new function. Use to
3818         embed PFA files.
3819
3820         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3821
3822 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3823
3824         * Documentation/user/instrument-notation.itely (Setting simple
3825         songs): Added \book{...} around the full example, so the separate
3826         markups are included in the printed example. 
3827
3828 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3829
3830         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3831         tmphandle.
3832
3833         * python/lilylib.py (system): rewrite system() using
3834         subprocess. Remove >& redirection trickery.
3835
3836 2006-03-11  Graham Percival  <gpermus@gmail.com>
3837
3838         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3839         notation-appendices.itely: minor fixes from mailist.
3840
3841 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3842
3843         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3844         unsplit man also needs images.
3845
3846         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3847
3848         * VERSION (PACKAGE_NAME): 2.7.38 released.
3849
3850 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3851
3852         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3853         log in output dir.
3854
3855 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3856
3857         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3858         respects the Score.skipTypesetting property.
3859         
3860 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3861
3862         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3863         Prolog. No %%EOF after CFF file.
3864
3865 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3866         
3867         * lily/constrained-breaking.cc (get_max_systems): used to return a
3868         much too big value
3869         (combine_demerits): use pointers to reduce copying data
3870         (calc_subproblem): idem
3871         (get_page_penalty): add page turn penalties
3872         
3873 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3874
3875         * Documentation/user/invoking.itely (Invoking lilypond): better
3876         explanation of -e usage.
3877
3878         * lily/main.cc (main_with_guile): don't append to
3879         init_scheme_code_string
3880
3881         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3882
3883         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3884
3885         * scripts/convert-ly.py (do_options): don't print help for
3886         --show-rules rule.
3887
3888         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3889         @code and @example. Update from texinfo.tex from CVS.
3890
3891 2006-03-08  Graham Percival  <gpermus@gmail.com>
3892
3893         * Documentation/user/scheme-tutorial.itely: clarifies distances
3894         measured in staff-spaces.
3895
3896 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3897
3898         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3899         consider[k] is true.
3900
3901         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3902
3903         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3904         consider columns that have originals.  Unifies spacing for mm
3905         rests around line breaks.
3906
3907         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3908         (set_text_rods): idem.
3909         (calculate_spacing_rods): new function: share code between
3910         set_text_rods and set_spacing_rods.
3911         (set_text_rods): take extents of bounds into account.  
3912
3913 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3914
3915         * Documentation/user/basic-notation.itely (Writing music in
3916         parallel): don't use relative.
3917
3918 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3919
3920         * ly/music-functions-init.ly (Module): add shiftDurations
3921
3922         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3923
3924         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3925
3926         * ly/engraver-init.ly: init vocalName to nil.
3927
3928 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3929
3930         * scm/music-functions.scm (music->make-music): bugfix,
3931         KeyChangeEvents are now handled correctly.
3932
3933         * scripts/lilypond-book.py: Add --debug option.
3934
3935 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3936
3937         * python/lilylib.py: add tempfile.
3938
3939 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3940
3941         * VERSION (PACKAGE_NAME): release 2.7.37
3942
3943         * python/lilylib.py (ps_page_count): remove make_ps_images().
3944         (ps_page_count): remove mkdir_p
3945         (system): remove cleanup_temp.
3946         (exit): remove lilypond_version_(check)
3947         (error_log): remove pseudo_filter_p
3948         remove read_pipe
3949         remove cp_to_dir
3950         remove identify
3951
3952         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3953         use __main__
3954
3955         * lily/accidental-engraver.cc (make_standard_accidental): only add
3956         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3957
3958         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3959         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3960         Make incompatibilities.
3961
3962         * scm/output-ps.scm (grob-cause): replace backslashes by /
3963         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3964
3965 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3966
3967         * cygwin/GNUmakefile: Install fixes.
3968
3969         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3970
3971         * lily/note-head.cc (head::get_balltype): Compile fix.
3972
3973         * flower/file-name.cc (dos_to_posix): Flower string fix.
3974
3975 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3976
3977         * python/lilylib.py: pychecker cleanups.
3978
3979         * scripts/lilypond-book.py
3980         (Lilypond_snippet.output_print_filename): pychecker cleanups
3981
3982         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3983
3984         * python/lilylib.py (underscore): remove identify() , warranty()
3985
3986         * ps/music-drawing-routines.ps: change Border routine for GSView
3987         compatibility.
3988
3989         * lily/stem.cc (height): use quantize-positions.  This triggers
3990         set_stem_lengths, so scripts on beamed stems are handled correctly.
3991
3992         * lily/side-position-interface.cc (aligned_side): check if edges
3993         of script are inside staff. Fixes accent of edge of the staff.
3994
3995         * input/regression/staccato-pos.ly: more examples.
3996
3997         * stepmake/aclocal.m4 (depth): fix bashism.
3998
3999         * lily/lyric-combine-music-iterator.cc: move from
4000         new-lyric-combine-iterator.cc
4001         (process): add pending_grace_lyric_ member to delay lyrics on
4002         grace notes.
4003
4004         * lily/system-start-text.cc (print): suicide if we don't have any
4005         elements. Fixes hara kiri'd instrument names.
4006
4007         * scripts/mup2ly.py (Module): remove.
4008
4009 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4010
4011         * Documentation/user/global.itely (A single music expression):
4012         close @lilypond properly
4013
4014         * lily/volta-bracket.cc (modify_edge_height): change from
4015         after_line_breaking_callback. Suicide last bracket if appropriate.
4016  
4017         * python/lilylib.py: strip getopt support
4018
4019         * scripts/etf2ly.py (do_options): use optparse
4020
4021         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4022
4023         * scripts/abc2ly.py (voices): use optparse.
4024
4025         * stepmake/stepmake/generic-vars.make: new function absdir.
4026
4027         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4028
4029         * scripts/lilypond-book.py (find_file): use global_options for
4030         include path
4031
4032         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4033         entering C code.
4034
4035 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4036
4037         * python/lilylib.py (get_global_option): ughness for extracting
4038         global options from lilylib.
4039         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4040
4041         * scripts/lilypond-book.py (get_option_parser): use optparse for
4042         option handling.  Put options in global_options variable.
4043
4044 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4045
4046         * Documentation/index.html.in: clarify.
4047
4048 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4049
4050         * scm/layout-page-layout.scm (write-page-breaks): add a
4051         music-system-heights property to the page layout output.
4052
4053         * scm/page.scm (make-page-stencil): take footer into account when
4054         computing the 'space-left page property
4055         (annotate-space-left): take footer into account when annonating
4056         space left.
4057
4058 2006-02-28  Graham Percival  <gpermus@gmail.com>
4059
4060         * Documentation/user/ advanced-notation, global: more (final)
4061         docs for music expressions, removed special fermatas.
4062
4063 2006-02-27  Graham Percival  <gpermus@gmail.com>
4064
4065         * Documentation/user/ basic-notation, global: minor changes
4066         from mailist.
4067
4068 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4069
4070         * scm/framework-ps.scm:         
4071         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4072         layer for inf? and nan? from framework-ps to lily-library.
4073
4074 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4075
4076         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4077         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4078
4079         * buildscripts/substitute-encoding.py (Module): remove file.
4080
4081         * mf/GNUmakefile: more PFA strippage.
4082
4083         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4084
4085         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4086         generation
4087
4088         * scm/framework-ps.scm: remove font name munging.
4089
4090         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4091
4092 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4093
4094         * scm/markup.scm (define-markup-command): change
4095         def-markup-command to define-markup-command
4096
4097         * scm/music-functions.scm (define-music-function): change
4098         def-music-function to define-music-function.
4099
4100         * python/convertrules.py (conv): rules for def-music-function
4101         and def-markup-commands
4102
4103         * Documentation/user/programming-interface.itely,
4104         input/no-notation/display-lily-tests.ly,
4105         input/regression/lily-in-scheme.ly,
4106         input/regression/markup-user.ly,
4107         input/regression/music-function.ly, input/regression/tie-chord.ly,
4108         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4109         ly/gregorian-init.ly: use new macro names (define-music-function,
4110         define-markup-command).
4111
4112 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4113
4114         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4115         (output): add comments to lp-book latex output.
4116
4117         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4118         address.
4119
4120 2006-02-23  Graham Percival  <gpermus@gmail.com>
4121
4122         * Documentation/user/ tutorial, global: minor changes.
4123
4124 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4125
4126         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4127         blocks (for make 3.80)
4128
4129         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4130         \notemode so that user should not have to explicitely type it.
4131
4132         * scm/define-music-display-methods.scm: various
4133         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4134         constructs)
4135
4136         * input/no-notation/display-lily-tests.ly: new tests for
4137         \applyOutput and \applyContext
4138
4139 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4140
4141         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4142         changed it slightly so that the number of systems returned by
4143         solve () will be the same as the last value passed to resize
4144         (). I've also added more documentation, removed casts, fixed style
4145         problems and put in some recovery if constraints aren't satisfied."
4146
4147 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4148
4149         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4150         for emacs < 22 compatibility.
4151         (count-rexp): Use it.
4152         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4153         substring juggling (Milan Zamazal).
4154
4155 2006-02-23  Graham Percival  <gpermus@gmail.com>
4156
4157         * Documentation/user/ basic-notation, advanced-notation,
4158         global.itely, invoking.itely, tutorial,itely:
4159         minor fixes from mailist.
4160
4161         * scm/define-markup-commands.scm: improve docs of \filled-box.
4162
4163 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4164
4165         * Documentation/index.html.in: changes concern the previous release.
4166
4167         * input/regression/+.ly: cultivate typographical terminology.
4168
4169 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4170
4171         * scm/define-grob-interfaces.scm (parentheses-interface): add
4172         padding to parentheses-interface.
4173
4174         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4175         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4176
4177         * VERSION (PATCH_LEVEL): release 2.7.36
4178
4179         * lily/slur.cc: add avoid-slur (ugh.)
4180         
4181         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4182         intersection gets smaller. This fixes slurs over extreme points.
4183
4184         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4185         stems with neutral-direction set.
4186
4187         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4188
4189         * lily/open-type-font.cc (load_table): format error.
4190
4191         * lily/change-iterator.cc (process): format fix.
4192
4193         * flower/include/international.hh (_f): idem.
4194
4195         * flower/include/std-string.hh: add format printf attribute.
4196
4197         * scm/define-grobs.scm (all-grob-descriptions): height of all
4198         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4199
4200         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4201         ambitus lines.
4202
4203         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4204
4205 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4206
4207         * input/regression/: upgraded syntax for some files.
4208
4209         * THANKS: Add bughunters.
4210
4211 2006-02-22  Graham Percival  <gpermus@gmail.com>
4212
4213         * Documentation/user/ invoking.itely, advanced-notation.itely,
4214         global.itely: long-awaited "let's make chapter 10 not suck"
4215         update.  Rearrange chapter 10; now called "global issues",
4216         addresses file structure, etc.  Some info from other files
4217         moved into global.itely.
4218
4219 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4220
4221         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4222         catch trill-span-event notes.
4223
4224         * Documentation/user/examples.itely (Ancient notation templates): typo.
4225         (Jazz combo): typo.
4226
4227         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4228
4229         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4230
4231         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4232
4233         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4234
4235         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4236         froum Laissez_vibrer_engraver.
4237
4238         * ly/declarations-init.ly (repeatTie): add \repeatTie
4239
4240         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4241
4242         * scm/define-grob-properties.scm (all-user-grob-properties): add
4243         head-direction property.
4244
4245         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4246         from_lv_ties. Take head direction argument.
4247
4248         * lily/semi-tie-column.cc: rename from
4249         laissez-vibrer-tie-column.cc. Rename class too.
4250
4251         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4252         class too.
4253
4254         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4255
4256         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4257         0 case.
4258         (find_breaks): idem.
4259
4260 2006-02-21  Graham Percival  <gpermus@gmail.com>
4261
4262         * Documentation/user/advanced-notation.itely: fixed make-moment]
4263         example.
4264
4265         * Documentation/user/basic-notation.itely: more clarification to
4266         transpose.
4267
4268 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4269
4270         * lily/include/constrained-breaking.hh (class
4271         Constrained_breaking): new file.
4272
4273         * lily/constrained-breaking.cc (resize): new file.
4274
4275         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4276
4277         * Documentation/user/advanced-notation.itely (Clusters): insert
4278         end ignore too.
4279
4280         * lily/tie-column.cc (calc_positioning_done): support for
4281         tie-score debugging
4282
4283         * lily/tie-formatting-problem.cc
4284         (generate_extremal_tie_variations): factor out.
4285         (score_ties_configuration): annotate all tie 
4286         (print_ties_configuration): new routine.
4287         (generate_configuration): nudge extremal ties outside of the head
4288         Y extents.
4289         (score_ties_configuration): oops. convert to staff-space before
4290         determining position symmetry.
4291
4292 2006-02-20  Graham Percival  <gpermus@gmail.com>
4293
4294         * Documentation/user/*-notation.itely: misc minor editing,
4295         shifting doc sections around.
4296
4297         * Documentation/user/*-notation-itely, global.itely,
4298         changing-defaults.itely: added new stuff from NEWS.
4299
4300 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4301
4302         * po/fi.po: update.
4303
4304 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4305
4306         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4307         lilypond --verbose for lp-book.
4308
4309         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4310         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4311
4312         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4313         $(buildscript-dir) iso. absolute depth.
4314
4315         * buildscripts/genicon.py (dir): thinko.
4316
4317         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4318
4319 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4320
4321         * scm/output-lib.scm: swap darkcyan/darkyellow
4322
4323         * THANKS: Add bughunters.
4324
4325 2006-02-19  Graham Percival  <gpermus@gmail.com>
4326
4327         * Documentation/user/programming-interfaces.itely: fixed example.
4328
4329         * Documentation/user/instrument-notation.itely: fix @{ @}.
4330
4331         * scm/script.scm: add avoid-slur for \open.
4332
4333 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4334
4335         * lily/tie-formatting-problem.cc (score_configuration): use
4336         sliding score for min-length. 
4337
4338         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4339         spaghetti for icons.
4340
4341         * buildscripts/genicon.py (program_name): new file.
4342
4343         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4344         in outline too.  
4345         (generate_configuration): for small ties, also look for collisions
4346         at Y + DIR*h + DELTA_Y.
4347         (get_variations): consider variation for dot positions too.
4348
4349         * lily/side-position-interface.cc (aligned_side): take abs for
4350         quantized rounded position. Fixes tenuto below staff.
4351
4352         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4353         markers when necessary.
4354
4355         * lily/program-option.cc (internal_set_option): add
4356         strict_infinity_checking option.
4357
4358         * scm/output-lib.scm (cyan): swap yellow and cyan.
4359
4360 2006-02-19  Graham Percival  <gpermus@gmail.com>
4361
4362         * darwin.patch: trivial linenumber update.
4363
4364         * Documentation/user/ {various}: `\context foo = named' changed
4365         to `\new foo = "name"' in docs.
4366
4367 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4368
4369         * scm/stencil.scm (annotate-y-interval): use it.
4370
4371         * scm/lily-library.scm (interval-sane?): new function.
4372
4373         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4374         tfm_checksum stuff.
4375
4376         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4377         common refpoint.
4378
4379         * flower/include/std-vector.hh (iterof): add iterof macro.
4380
4381         * lily/enclosing-bracket.cc (width): new function.
4382
4383         * lily/align-interface.cc (align_elements_to_extents): reinstate
4384         warning.
4385
4386 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4387
4388         * Documentation/index.html.in: fix spelling: thankyous.
4389
4390 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4391
4392         * lily/lyric-hyphen.cc: typo.
4393
4394 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4395
4396         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4397         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4398         builds don't work. 
4399
4400         * VERSION: release 2.7.35
4401
4402         * lily/beam.cc (get_default_dir): oops. Take abs () for
4403         extremes[DOWN].
4404         (get_default_dir): use extreme position criterion only in absence
4405         of forced stem directions.
4406
4407         * VERSION (PATCH_LEVEL): bump VERSION.
4408
4409         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4410         dependencies. Necessary for -jX builds.  
4411
4412 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4413
4414         * lily/relocate.cc (setup_paths): Yet another const fix.
4415
4416 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4417
4418         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4419
4420         * lily/relocate.cc (setup_paths): oops.
4421
4422 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4423
4424         * Documentation/index.html.in: order links: html before PDF.
4425
4426 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4427
4428         * lily/tie-column-format.cc (Module): remove.
4429
4430         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4431
4432         * lily/text-spanner.cc (print): idem.
4433
4434         * lily/dynamic-text-spanner.cc (print): only print line if longer
4435         than dash-period.
4436
4437         * lily/auto-change-iterator.cc (change_to): formatting.
4438
4439         * lily/beam.cc (get_default_dir): take extreme note head as input
4440         for stem direction.
4441
4442         * lily/tie.cc (get_default_dir): only look directions for visible
4443         stems. 
4444
4445         * lily/side-position-interface.cc (aligned_side): oops. Don't
4446         mutiply with direction. This fixes quantized (staccato, tenuto)
4447         scripts below notes.
4448
4449         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4450         direction. Fixes c-lyrics-center-align.ly
4451
4452 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4453
4454         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4455         constructor.
4456
4457         * lily/std-string.cc:
4458         * lily/include/std-vector.hh (split_string): Move and rename from
4459         lily/include/misc.hh, lily/misc.cc.  Update callers.
4460
4461 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4462
4463         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4464
4465 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4466
4467         * flower/test-file.cc: New file.
4468
4469         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4470         libraries.
4471
4472         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4473
4474 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4475
4476         * flower/include/file-storage.hh: remove file.
4477
4478         * lily/include/midi-item.hh (class Midi_track): idem.
4479
4480         * lily/include/source.hh (class Sources): idem.
4481
4482         * lily/include/performance.hh (class Performance): use vector
4483         iso. Cons<>
4484
4485         * flower/include/cons.hh (class Cons): remove file.
4486
4487         * flower/include/flower-proto.hh: remove template cruft.
4488
4489         * lily/include/font-metric.hh: use size_t not vsize for indices.
4490
4491         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4492         from proto.
4493
4494         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4495
4496         * lily/include/paper-book.hh (class Paper_book):
4497         make get_system_specs() public.
4498
4499         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4500         the force=10000 case if we don't have a current-best. 
4501
4502         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4503         vsize 
4504
4505         * flower/include/flower-proto.hh: remove outdated templates.
4506
4507         * scm/page.scm: use annotate-spacing
4508
4509 2006-02-15  Graham Percival  <gpermus@gmail.com>
4510
4511         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4512
4513         * THANKS: moved Erlend Aasland to contributors.
4514
4515 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4516
4517         * config.hh.in: remove HAVE_PANGO_16
4518
4519         * lily/tuplet-bracket.cc (calc_positions): multiply with
4520         staff-space for beam case. This fixes tuplets+beams on scaled
4521         staves.
4522
4523         * config.hh.in: remove all Kpathsea related defines.
4524
4525         * lily/dot-column.cc (side_position): reach stem via dots->
4526         head->stem. Inspect all stems for dot collisions. 
4527
4528         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4529         stem handling.
4530
4531         * lily/bar-number-engraver.cc (process_music): document function
4532         of whichBar.
4533
4534         * lily/score.cc (default_rendering): add pscore, not systems
4535         themselves.
4536
4537         * lily/paper-book.cc (get_system_specs): separate generation of
4538         titles and systems.
4539
4540         * flower/include/std-vector.hh: don't include config.hh
4541
4542 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4543
4544         * flower/include/std-vector.hh: Better wrapper compatibility with
4545         std::vector.
4546
4547         * flower/include/flower-proto.hh: Remove cheap forward declaration
4548         attempts.
4549
4550         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4551
4552 2006-02-14  Graham Percival  <gpermus@gmail.com>
4553
4554         * Documentation/user/invoking.itely: add warning about command line.
4555
4556 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4557
4558         * lily/include/lily-proto.hh: add Prob, rm Page.
4559
4560         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4561
4562         * VERSION: release 2.7.34
4563
4564         * lily/relocate.cc (framework_relocation): show canary if
4565         GHOSTSCRIPT_VERSION undefined.
4566
4567         * GNUmakefile.in: remove $(VERSION) symlink.
4568
4569         * lily/relocate.cc (setup_paths): add + 
4570
4571 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4572
4573         * Documentation/index.html.in: specify sizes for all big HTML pages.
4574
4575 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4576
4577         * config.hh.in: remove @FRAMEWORKDIR@
4578
4579         * lily/system-start-text.cc (get_stencil): new file: separate out
4580         system-start-delimiter text support.
4581
4582         * input/**ly: replace \context with \new where appropriate.
4583         
4584         * THANKS: add Don.
4585
4586         * lily/slur-scoring.cc (get_base_attachments): use
4587         robust_relative_extent. This fixes problems with empty paper-columns. 
4588
4589 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4590
4591         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4592
4593         * scm/define-music-properties.scm (all-music-properties):
4594         create-new property.
4595
4596         * lily/context-specced-music-iterator.cc (construct_children):
4597         inspect 'create-new property iso. magical $uniqueContextId context
4598         id.
4599
4600         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4601
4602         * lily/context-key-manager.cc (Module): new file. Encapsulate
4603         object key generation.
4604
4605         * lily/include/context-key-manager.hh (Module): new file.
4606
4607 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4608
4609         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4610         names vertically
4611
4612         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4613         options.
4614         (reloc_b): excise --enable-framework-dir
4615
4616         * lily/relocate.cc (framework_relocation): use getenv
4617         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4618
4619 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4620
4621         * flower/include/std-string.hh: 
4622         * flower/include/std-vector.hh: Finish std:: conversion; move
4623         flower extensions from std:: namespace.  Update users.
4624
4625         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4626         their expansion to vector<*>.  Update users.
4627
4628 2006-02-10  Graham Percival  <gpermus@gmail.com>
4629
4630         * Documentation/user/invoking.itely: add example to File structure.
4631
4632         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4633         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4634
4635 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4636
4637         * ly/paper-defaults.ly: typo.
4638
4639         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4640         set_parent() for parentheses. This will make it show up in bbox
4641         calculations.
4642
4643         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4644         ly:grob-common* functions.
4645
4646         * lily/grob-scheme.cc (LY_DEFINE):
4647         ly:grob-common-refpoint-of-array: new function 
4648         ly:grob-common-refpoint: new function 
4649         ly:grob-relative-coordinate: new function 
4650
4651         * lily/instrument-name-engraver.cc (process_music): use
4652         Text_interface::is_markup(). This fixes \markup on instrument names.  
4653
4654         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4655         for ties and slurs.
4656
4657         * lily/slur.cc (print): idem.
4658
4659         * lily/tie.cc: add line-thickness for ties. 
4660
4661 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4662
4663         * scm/output-svg.scm: Document diversion from GNU coding standards
4664         as a workaround for a bug in Microsoft Internet Explorer.
4665
4666 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4667
4668         * lily/instrument-name-engraver.cc (process_music): use
4669         is_markup() iso. is_string()
4670
4671         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4672
4673         * lily/percent-repeat-engraver.cc (process_music): only look at
4674         main_part_ for % repeats.
4675
4676         * lily/stem-tremolo.cc (get_beam_translation): new function.
4677         (calc_slope): new function.
4678         (height): don't use real slope.
4679
4680 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4681
4682         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4683         new connect-to-neighbor, control-points and staff-padding
4684         properties to make ligature brackets showing up again.
4685
4686 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4687
4688         * VERSION: release 2.7.33
4689
4690         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4691         too many.
4692
4693         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4694         remove applyOutput example.
4695         (Objects connected to the input): document \tweak, \parenthesize
4696
4697         * lily/relocate.cc (prefix_relocation): allow "current"
4698         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4699         changing VERSION in a lily tree less painful.
4700
4701         * input/regression/parenthesize.ly: new file. 
4702
4703         * scm/output-lib.scm (parenthesize-element): new function.
4704
4705         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4706
4707         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4708
4709         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4710         cause: accidentals are caused by note heads, not note events. 
4711
4712 2006-02-08  Graham Percival  <gpermus@gmail.com>
4713
4714         * darwin.patch: small patch from Erlend, thanks!
4715
4716         * Documentation/user/basic-notation.itely: add stem-neutral example.
4717
4718         * Documentation/user/putting.itely: clarifications.
4719
4720 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4721
4722         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4723         note, add more guidelines to what should go into NEWS.
4724
4725         * input/sakura-sakura.ly: document how to override font.
4726
4727         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4728
4729 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4730
4731         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4732
4733 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4734
4735         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4736         convertrules.  Add explicit grouping, needed for python2.2.
4737
4738 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4739
4740         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4741
4742 2006-02-07  Graham Percival  <gpermus@gmail.com>
4743
4744         * Documentation/user/global.itely: fix line-width in (text) docs.
4745
4746         * Documentation/user/lilypond-book.itely: same.
4747
4748 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4749
4750         * VERSION (PACKAGE_NAME): release 2.7.32
4751
4752         * Documentation/topdocs/NEWS.tely (Top): document new variable
4753         naming.
4754
4755         * flower/include/array.icc (Message): remove file.
4756
4757         * flower/include/std-vector.hh: make sure vsize and VPOS are
4758         defined for binary_search_bounds().
4759
4760         * flower/std-string.cc (std): add to_string(long unsigned).
4761
4762         * configure.in (gui_b): excise std_string option.
4763         (gui_b): excise std_vector option.
4764
4765         * flower/string.cc (Module): excise flower array & string
4766
4767         * flower/include/std-string.hh: excise flower string.
4768
4769         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4770
4771         * python/convertrules.py (lilypond_version_re_str): require
4772         only numbers and dots in \version string.
4773
4774 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4775
4776         * lily/system-start-delimiter.cc (print): allow style = text too.
4777
4778         * lily/system-start-delimiter-engraver.cc
4779         (acknowledge_system_start_text): new function, also add add to
4780         support of system-start-text (instrument names). This fixes
4781         instrument names on piano staves.
4782
4783         * lily/instrument-name-engraver.cc: rewrite. Use
4784         system-start-delimiter approach. This save memory and cpu.
4785
4786         * scm/define-grobs.scm (all-grob-descriptions): remove
4787         instrument-name from break-alignment.
4788
4789         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4790
4791 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4792
4793         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4794         jobserver going.
4795
4796         * configure.in (std_vector): On by default.
4797
4798         * lily/include/font-metric.hh:
4799         * lily/include/tfm-reader.hh: 
4800         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4801         Update users.
4802
4803         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4804
4805 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4806
4807         * VERSION (PACKAGE_NAME): 2.7.31
4808
4809         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4810         EPS edge at 0, but take minimum with left-overshoot. This fixes
4811         cut off system start delims. 
4812
4813         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4814         hack: add to axis group if not added yet. This fixes hara kiri'd
4815         piano staves.
4816
4817         * lily/hara-kiri-group-spanner.cc
4818         (force_hara_kiri_in_y_parent_callback): fix signatures.
4819
4820         * lily/hairpin.cc (print): check next hairpin to see whether or
4821         not to be continuing.
4822
4823 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4824
4825         * Remove trailing whitespace from makefiles.
4826         
4827         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4828         for earlier gcc.
4829
4830         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4831
4832         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4833
4834         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4835
4836         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4837
4838         * configure.in: Use it.
4839
4840 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4841
4842         * scm/music-functions.scm (pitch-of-note): new function.
4843
4844         * ly/music-functions-init.ly: add \octave and \addquote
4845
4846         * lily/parser.yy (music_function_chord_body): softcode \octave.
4847         (lilypond_header): softcode \addquote
4848
4849 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4850
4851         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4852         array.hh, parray.hh at all.  Getting ready to flip the
4853         configure default.
4854
4855         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4856
4857         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4858         a bit.
4859
4860         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4861
4862 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4863
4864         * flower/include/array.hh: typo. 
4865
4866 2006-02-02  Graham Percival  <gpermus@gmail.com>
4867
4868         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4869
4870 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4871
4872         * flower/include/pqueue.hh: Derive from std::vector.
4873
4874         * flower/include/parray.hh: Conform to std::vector interface.
4875         Update users.
4876
4877 2006-02-02  Graham Percival  <gpermus@gmail.com>
4878
4879         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4880
4881 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4882
4883         * flower/file-path.cc (is_file): remove if 0 section.
4884
4885         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4886         selecting afii61352.
4887
4888 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4889
4890         * flower/include/std-vector.hh (boundary): Oops, reverse.
4891
4892         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4893         remove superfluous `d'.
4894
4895         * flower/include/std-vector.hh (boundary, top): Detach from class.
4896         Remove empty vector shell.
4897
4898         * flower/include/array.hh (reverse, swap): Detach from class.
4899         Update users.
4900         
4901         * flower/include/std-vector.hh
4902         * flower/include/array.hh (concat): Globally change to insert ().
4903
4904         
4905         * flower/include/std-vector.hh
4906         * flower/include/parray.hh
4907         * flower/include/array.hh (elem, elem_ref): Globally replace by
4908         at ().
4909
4910 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4911
4912         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4913
4914         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4915         anticipate on identifier substitutions.
4916
4917 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4918
4919         * flower/include/std-vector.hh (insert): Remove, replace by
4920         std::vector interface.  Update callers.
4921
4922         * flower/include/array.icc (insert): Change signature to
4923         match std::vector interface.
4924         
4925         * flower/include/array.icc (vector_sort): Bugfix.
4926
4927 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4928
4929         * lily/parser.yy (output_def_head_with_mode_switch): new
4930         production. Result: dashes and underscores may be used in the
4931         \paper block.
4932
4933         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4934
4935         * python/convertrules.py (conv): oops. One slash too much.
4936
4937 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4938
4939         * flower/include/std-vector.hh (sort): Remove, replace by
4940         ::vector_sort.  Update callers.
4941
4942         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4943         (sort): Bugfix.
4944
4945         * flower/test-std.cc (vector_sort): New test.
4946
4947 2006-02-01  Graham Percival  <gpermus@gmail.com>
4948
4949         * Documentation/user/putting.itely: fixes from Erik.
4950
4951 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4952
4953         * flower/test-std.cc: Add simple unit test for vector migration.
4954
4955         * stepmake/stepmake/test*: Unit test support.
4956
4957         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4958         update callers.
4959
4960         * flower/include/array.hh (begin, end): Add.
4961         (del, get): Remove.
4962
4963 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4964
4965         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4966         std::string not String. 
4967
4968         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4969         iso UINT_MAX.
4970
4971         * lily/prob.cc (Prob): copy type_ too.
4972
4973         * lily/lily-guile.cc (mangle_cxx_identifier): new
4974         function. Class_bla::foo_bar_[px] ->
4975         ly:class-bla::foo-bar[?!]. Changes throughout
4976
4977 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4978
4979         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4980
4981         * lily/beam.cc (calc_direction): take dir from visible stem in
4982         degenerate case.
4983
4984 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4985
4986         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4987         Fix -1, >=0 boundary checks for unsigned vsize.
4988
4989         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4990         loop for unsigned vsize.
4991
4992         * configure.in (--enable-std-vector): New option.
4993         (--enable-std-string): On by default.
4994
4995         * flower/include/std-vector.hh: New file.  Enable switch to
4996         std::vector, update client code.
4997
4998 2006-01-30  Graham Percival  <gpermus@gmail.com>
4999
5000         * scm/document-translation.scm: clarify "this context is also
5001         known as".  Thanks, Werner!
5002
5003         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5004
5005         * Documentation/user/invoking.itely: small fix from Don.
5006
5007 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5008
5009         * scm/lily.scm (define-scheme-options): rename option
5010         preview-include-book-title to book-title-preview
5011         (define-scheme-options): move force-eps-font-include (from paper
5012         block) to eps-font-include -d option.
5013
5014         * VERSION (PATCH_LEVEL): release 2.7.30
5015
5016         * input/bach-schenker.ly (staffPiano): new file.
5017
5018         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5019
5020         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5021         credits to Nicolas.
5022
5023         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5024
5025         * ps/lilyponddefs.ps: remove start-system, stop-system,
5026         start-page fluff. This saves putting { } code on the stack, fixing
5027         stack overflows when including EPS files.
5028
5029 2006-01-29  Graham Percival  <gpermus@gmail.com>
5030
5031         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5032
5033 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5034
5035         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5036
5037 2006-01-28  Graham Percival  <gpermus@gmail.com>
5038
5039         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5040
5041 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5042
5043         * input/mutopia/claop.py: Update.
5044
5045 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5046
5047         * input/regression/completion-heads.ly (texidoc): fix.
5048
5049         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5050
5051         * lily/tie-formatting-problem.cc
5052         (set_ties_config_standard_directions): use abs iso fabs for ints.
5053
5054         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5055
5056         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5057         little less than noteheight, to prevent overlaps in chords.
5058
5059         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5060         head, and fudge stem-attachment.
5061
5062         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5063
5064         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5065
5066 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5067
5068         * lily/main.cc (main): Debugging aid: catch exceptions.
5069
5070         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5071         output with std::string.
5072
5073 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5074
5075         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5076
5077 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5078
5079         * Fix -DSTRING_UTILS_INLINED.
5080
5081 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5082
5083         * VERSION (PATCH_LEVEL): release 2.7.29
5084
5085         * lily/relocate.cc (setup_paths): mingw uses std string too.
5086
5087         * lily/*.cc: various fixes for substr(ARG).
5088
5089         * lily/sustain-pedal.cc (print): 
5090
5091         * flower/file-name.cc (slashify): use std strings.
5092
5093         * flower/string-convert.cc: remove publib.h
5094
5095         * scm/define-markup-commands.scm (verbatim-file): new markup
5096         command \verbatim-file
5097
5098         * Documentation/topdocs/NEWS.tely: fixup URLs
5099
5100         * input/regression/alignment-vertical-manual-setting.ly (Module):
5101         new file.
5102
5103         * lily/align-interface.cc (align_elements_to_extents): overwrite
5104         translations with numbers in alignment-offsets from left bound
5105
5106         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5107         (page-translate-systems): new function: take into account Y-offset.
5108
5109         * Documentation/topdocs/NEWS.tely (Top): document new features.
5110
5111         * input/regression/page-layout-manual-position.ly (Module): new
5112         file.
5113
5114 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5115
5116         * flower/file-path.cc (path::parse_path): Oops.
5117
5118         * Finish std::string interface.  For now, use std:: marker
5119         throughout for easy s/r.
5120
5121 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5122
5123         * Documentation/user/putting.itely (Score is a single musical
5124         expression): typo.
5125         (Score is a single musical expression): more typos.
5126
5127         * scm/page.scm (annotate-space-left): thinko.
5128         (annotate-page): more thinkos.
5129
5130 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5131
5132         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5133         for different \score blocks separately.
5134         (post-process-pages): put write-page-layout into paper block.
5135
5136         * lily/output-def.cc (get_parser): new file.
5137
5138         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5139         file.
5140
5141         * lily/include/output-def.hh (class Output_def): add parser_ member.
5142
5143         * input/regression/page-layout-twopass.ly (Module): new file.
5144
5145         * scm/lily.scm: remove cpp hack.
5146
5147         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5148
5149 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5150
5151         * GNUmakefile.in (c-clean): New target.
5152
5153         * flower/include/std-string.hh: String/std::string compatibility:
5154         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5155         type.
5156
5157         * flower/rational.cc: 
5158         * flower/include/rational.hh: 
5159
5160         * flower/offset.cc: 
5161         * flower/include/offset.hh: 
5162
5163         * flower/interval.cc: 
5164         * flower/include/interval.hh: 
5165
5166         * flower/string-convert.cc: 
5167         * flower/include/string-convert.hh: Use std::string [interface].
5168         Update callers.
5169
5170 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5171
5172         * Documentation/index.html.in: clean up.
5173
5174 2006-01-25  Graham Percival  <gpermus@gmail.com>
5175
5176         * Documentation/user/putting.itely: another new untested doc section.
5177
5178 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5179
5180         * scm/layout-page-layout.scm (write-page-breaks): write
5181         \spacingTweaks #ALIST. Handle grace timing.
5182
5183         * scm/: more imports.
5184
5185         * scm/page.scm (make-page): add footer/header.
5186         (annotate-space-left): revise: only take page argument.
5187         (layout->page-init): new function.
5188
5189         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5190         version of the system/spacing/linebreak hack writing to the output
5191
5192         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5193         ly:make-prob.
5194
5195         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5196         ly:spanner-bound
5197
5198 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5199
5200         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5201
5202         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5203
5204         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5205         handling to page.scm
5206
5207         * lily/prob-scheme.cc (LY_DEFINE): new file.
5208         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5209
5210         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5211         prob functions.
5212
5213         * lily/music.cc (derived_mark): derive Music from Prob.
5214
5215         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5216
5217         * lily/prob.cc (Module): Implement Prob (Property Object), object
5218         with shared and r/w property alists.  
5219
5220         * lily/include/prob.hh (Module): new file. Declare Prob.
5221
5222         * flower/string.cc: remove is_empty().
5223
5224         * flower/include/string.hh (class String): remove String:: qualifier.
5225
5226         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5227         substitute appropriate functions.
5228
5229         * flower/include/string.hh (class String): remove to_str0 and
5230         is_empty(). S&R everywhere.
5231
5232 2006-01-23  Graham Percival  <gpermus@gmail.com>
5233
5234         * Documentation/user/basic-notation.itely: add hairpin
5235         after-linebreak tweak to commonprop.
5236
5237         * Documentation/user/putting.itely: added two new sections.
5238
5239 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5240
5241         * flower/international.cc: 
5242         * flower/include/international.hh: 
5243
5244         * flower/getopt-long.cc: 
5245         * flower/include/getopt-long.hh: Use std::string [interface].
5246         Update callers.
5247
5248         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5249
5250         * stepmake/stepmake/executable-rules.make: Add dependency on
5251         module libraries.
5252
5253 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5254
5255         * flower/file-path.cc: 
5256         * flower/include/file-path.hh: Use std::string [interface].
5257         Update callers.
5258
5259         * flower/direction.cc: 
5260         * flower/axis.cc: Unused.  Remove.
5261
5262         * configure.in (--enable-std-string): New option.
5263
5264         * flower/std-string.cc: 
5265         * flower/include/std-string.hh: New file.
5266
5267         * flower/file-name.cc[STD_STRING]:
5268         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5269
5270 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5271
5272         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5273
5274         * scm/define-markup-commands.scm (with-dimensions):
5275         with-dimensions markup command.
5276
5277         * input/test/font-table.ly: use it.
5278
5279         * lily/open-type-font.cc (glyph_list): new function.
5280
5281         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5282
5283         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5284
5285 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5286
5287         * ly/music-functions-init.ly (parallelMusic): new music function
5288         for parallel music entry.
5289
5290         * scm/define-music-properties.scm (all-music-properties): new
5291         'void music property
5292
5293         * scm/music-functions.scm (ly:music-message): make public, to be
5294         used in music function definitions
5295
5296         * scm/lily-library.scm (collect-music-for-book): discard music
5297         when the 'void property is set.
5298
5299 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5300
5301         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5302
5303         * mf/GNUmakefile: idem.
5304
5305         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5306
5307         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5308
5309         * Documentation/user/notation-appendices.itely (The Feta font):
5310         use it.
5311
5312         * input/test/font-table.ly: new file. Generate font table within lily.
5313
5314         * Documentation/user/notation-appendices.itely (The Feta font):
5315         use new font-table.ly file. 
5316
5317         * stepmake/stepmake/install-out-targets.make
5318         (local-install-outfiles): only create directory if
5319         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5320
5321 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5322
5323         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5324
5325         * VERSION (PACKAGE_NAME): release 2.7.28
5326
5327         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5328         the right font from a Mac dfont.
5329         (write-preamble): don't forget directory, only look at files.
5330
5331         This fixes problems with TTF files in dfonts that don't match
5332         their PostScript names.
5333          
5334         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5335         PS name from TTF font.
5336
5337         * input/regression/tie-manual.ly: document new feature.
5338
5339         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5340
5341         * VERSION (MY_PATCH_LEVEL): bump to .28
5342
5343         * Documentation/user/basic-notation.itely (Ties): add tie examples
5344         refs.
5345
5346         * lily/tie-formatting-problem.cc (score_ties_configuration):
5347         symmetry penalties for outer ties.
5348
5349 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5350
5351         * lily/tie-formatting-problem.cc (generate_configuration) 
5352         (set_manual_tie_configuration): skip non-pair manual
5353         tie-configuration, so you can set individual ties as
5354
5355           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5356
5357         * input/regression/tie-chord.ly: use generateTiePattern to
5358         simplify file.
5359
5360         * lily/tie-formatting-problem.cc (peak_around): new function.
5361         (score_configuration): use sliding criterion for staff line collisions. 
5362         (score_configuration): idem for dot collisions.
5363         (generate_configuration): use separate stem_gap for gap to stem.
5364
5365         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5366         separate penalty factors for x and y distance.
5367         (struct Tie_details): separate penalties for tip and center line collisions.
5368
5369 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5370
5371         * lily/tie-formatting-problem.cc (generate_configuration): make
5372         large ties avoid stafflines in the horizontal section.
5373         (score_configuration): use softcoded penalties
5374         (score_aptitude): idem.
5375
5376         * lily/tie-helper.cc (from_grob): softcode tie details
5377
5378         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5379
5380         * lily/staff-symbol-referencer.cc (on_line): rename from
5381         on_staffline 
5382
5383 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5384
5385         * ly/music-functions-init.ly: remove duplicate tag.
5386
5387         * lily/include/*.hh: GCC 4.1 fixes.
5388
5389 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5390
5391         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5392
5393         * scm/define-music-types.scm: fix bug in desc. string
5394         for OverrideProperty
5395
5396 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5397
5398         * scripts/lilypond-book.py: bugfix
5399
5400         * scm/define-music-types.scm: fix typos.
5401
5402 2006-01-14  Graham Percival  <gpermus@gmail.com>
5403
5404         * Documentation/user/ basic-notation.itely, global.itely,
5405         advanced-notation.itely, instrument-notation.itely: small
5406         additions (bugs and commonly tweaked properties).
5407
5408 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5409
5410         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5411         detection of mingw build.
5412         (MINGW_BUILD): opps.
5413
5414 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5415
5416         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5417         i686-mingw32.
5418
5419 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5420
5421         * scm/music-functions.scm (skip->rest): add skip->rest
5422
5423 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5424
5425         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5426         explicitly.
5427
5428         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5429         config dirs. Aids debugging. 
5430         (display_config): also display config files.
5431
5432 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5433
5434         * VERSION: release 2.7.27
5435
5436         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5437         for determining bar size.
5438
5439         * lily/staff-symbol.cc (print): place lines at distance line-positions
5440
5441         * scm/define-grob-properties.scm (all-user-grob-properties): add
5442         line-positions.
5443
5444         * lily/staff-symbol.cc (height): new function.
5445
5446         * input/regression/staff-line-positions.ly:  new file.
5447
5448 2006-01-06  Graham Percival  <gpermus@gmail.com>
5449
5450         * input/test/add-staccato.ly: remove reference to old file.
5451
5452 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5453
5454         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5455         lilypond binary too.
5456
5457 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5458
5459         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5460
5461 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5462
5463         * scripts/midi2ly.py: Bugfix: Declare datadir.
5464
5465         * make/ly-rules.make:
5466         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5467         that seems to be gone). Fixes make web.
5468
5469         * The grand 2005-2006 replace.
5470
5471         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5472
5473 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5474
5475         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5476         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5477         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5478         like -dgs-font-load.
5479
5480         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5481         remove absolute path to lilypond binary.
5482         
5483 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5484
5485         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5486
5487 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5488
5489         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5490
5491         * mf/GNUmakefile: remove broken dvips map symlink.
5492
5493 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5494
5495         * lily/main.cc: 
5496         * configure.in: Cosmetic fixes.
5497
5498 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5499
5500         * Documentation/user/music-glossary.tely (Pitch names): Added
5501         Spanish pitch names and durations, thanks to Ernesto Gancedo
5502
5503 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5504
5505         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5506         init. Fixes verbose printing of .scm files.
5507
5508         * stepmake/aclocal.m4: add spaces before - options.
5509         
5510 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5511
5512         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5513         of path search in local block variable.
5514
5515 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5516
5517         * configure.in (NCSB_DIR): --enable-ncsb-dir
5518         (LINK_GXX_STATICALLY): denko.
5519
5520         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5521
5522         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5523         use locate to find c059033l.pfb. 
5524         
5525 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5526
5527         * lily/tie-formatting-problem.cc
5528         (problem::generate_base_chord_configuration): Use my_round (was
5529         round).
5530
5531         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5532         do not invoke mbrtowc.
5533
5534         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5535
5536 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5537
5538         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5539
5540 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5541
5542         * Documentation/user/invoking.itely (svg): revise.
5543
5544 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5545
5546         * lily/lexer.ll: use sourcefilename iso. renameinput.
5547
5548 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5549
5550         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5551         <PostScriptName>.ttf instead of c059XXXttf.
5552
5553         * lily/program-option.cc (LY_DEFINE): special support for
5554         --verbose, so it works before option init too.
5555  
5556         * mf/GNUmakefile (local-install): oops.
5557
5558         * lily/lyric-hyphen.cc (print): oops.
5559
5560         * buildscripts/pfx2ttf.fontforge: new file.
5561         
5562         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5563         ($(outdir)/%.ttf): new rule. 
5564
5565         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5566         to LyricHyphen.
5567
5568         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5569         font-size
5570
5571 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5572
5573         * VERSION: release 2.7.26
5574         
5575         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5576
5577 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5578
5579         * lily/font-config.cc (init_fontconfig): verbosity.
5580
5581         * THANKS: add Muziekacademie Lede. 
5582
5583         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5584         (print_score_setup): new function
5585         (convert): read part definition to output staves properly.
5586
5587         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5588         Music_xml notes.
5589
5590         * python/musicexp.py (Output_printer.__init__): use _ in data
5591         members.
5592         (Output_printer.unformatted_output): new function: no formatting,
5593         but count braces.
5594         (Duration.get_length): remove isinstance() checks for
5595         Output_printer everywhere.
5596
5597         * input/regression/lyrics-bar.ly (texidoc): add
5598         Separating_line_group_engraver.
5599
5600 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5601
5602         * lily/relocate.cc (framework_relocation): New function,
5603         factored from set_relocation ().
5604         (prefix_relocation): Rename from set_relocation ().
5605         (setup_paths): Use it.
5606
5607 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5608
5609         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5610         numbers. Patch by Erlend Aasland.
5611
5612 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5613
5614         * lily/font-config.cc (init_fontconfig): print warning if cache
5615         file is not existant.
5616
5617         * lily/main.cc: don't use #ifdef but #if
5618
5619 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5620
5621         * lily/grob-property.cc (internal_set_property): don't abort on
5622         calculation-in-progress.
5623
5624         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5625
5626         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5627         connect-to-neighbor property not connect-to-other
5628
5629         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5630         (LY_DEFINE): oops. don't forget protection.
5631
5632         * flower/parse-afm.cc (Module): strip AFM handling completely.
5633
5634         * lily/stencil-expression.cc: idem.
5635
5636         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5637
5638         * lily/function-documentation.cc (ly_add_function_documentation):
5639         use static member iso. Protected_scm
5640
5641         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5642
5643         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5644
5645 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5646
5647         * lily/relocate.cc (set_env_dir): New function.
5648         (set_relocation): Use it to fix setting PANGO_PREFIX.
5649
5650 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5651
5652         * input/regression/stem-direction-context.ly: remove rest.
5653
5654         * lily/melody-engraver.cc (process_music): restart for bar lines.
5655         (acknowledge_slur): restart for slurs.
5656
5657 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5658
5659         * Documentation/user/invoking.itely: describe how to view SVG 
5660         output using Inkscape which replace embedded fonts with OTF fonts.
5661
5662 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5663
5664         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5665
5666 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5667
5668         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5669         comment.
5670
5671 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5672
5673         * VERSION (PACKAGE_NAME): release 2.7.25
5674
5675         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5676
5677         * input/regression/stem-direction-context.ly: new file.
5678
5679         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5680
5681         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5682         on rest.
5683
5684         * ly/engraver-init.ly: add Melody_engraver
5685
5686         * lily/beam.cc (calc_direction): use default-direction
5687         iso. get_default_direction()
5688
5689         * scm/define-grob-properties.scm (all-user-grob-properties): add
5690         default-direction property.
5691
5692         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5693
5694         * lily/stem.cc (calc_default_direction): remove
5695         Stem::get_default_direction, use default-direction with callback
5696         instead.
5697
5698         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5699
5700         * lily/melody-engraver.cc: new file. Acknowledge stems for
5701         interpolated stem directions. 
5702
5703         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5704
5705         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5706
5707         * lily/slur-configuration.cc (fit_factor): more robust check for
5708         point in curve X-extent.
5709
5710         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5711         (outside_slur_callback): check for 'outside avoidance.
5712
5713         * lily/slur-configuration.cc (score_extra_encompass): don't use
5714         bound->column() == avoid->column() for checking extents, as this
5715         doesn't work for accidentals. 
5716
5717         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5718         DynamicText hardcoding.
5719
5720         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5721         crash if bound stem is NULL
5722
5723         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5724         pedals.
5725
5726 2005-12-22  Graham Percival  <gpermus@gmail.com>
5727
5728         * scm/define-markup-commands.scm: typo.  @code{\raise}
5729         => @code{\\raise}.
5730
5731         * darwin.patch: now used again, includes a
5732         required patch from fink.
5733
5734 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5735
5736         * po/TODO: mention gtranslator along with kbabel.
5737         * po/fi.po: update translations.
5738
5739 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5740
5741         * lily/relocate.cc (setup_paths): Bugfix.
5742
5743 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5744
5745         * lily/slur-configuration.cc (score_extra_encompass): don't use
5746         "avoid" choice for avoid-slur.
5747
5748         * stepmake/bin/install.py (dest): don't create existing dir.
5749
5750 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5751
5752         * stepmake/bin/install.py: Remove file before copying.
5753
5754         * config.make.in: 
5755         * stepmake/aclocal.m4: Do not substitute INSTALL.
5756
5757 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5758
5759         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5760         depend on link-tree.
5761
5762         * lily/relocate.cc (setup_paths): only check path for non-absolute
5763         dir without directory part.
5764
5765         * flower/file-name.cc (is_absolute):  new method.
5766         (is_absolute): check root_ too.
5767
5768 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5769
5770         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5771         relocation code.  Oops, don't comment out too much.
5772
5773         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5774         iso itself.
5775
5776         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5777         compile.
5778
5779 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5780
5781         * .cvsignore: Add install-sh.
5782
5783         * autogen.sh (srcdir): Typo.
5784
5785 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5786
5787         * autogen.sh (srcdir): urg. Touch install-sh.
5788
5789         * stepmake/bin/install-sh (Module): remove.
5790
5791         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5792
5793         * lily/include/relocate.hh: new file.
5794
5795         * lily/relocate.cc: new file. Contain relocation logic.
5796
5797         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5798         (main): read LILYPOND_VERBOSE as the first thing.
5799
5800         * stepmake/aclocal.m4: remove INSTALL variable.
5801
5802         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5803         separate target for making font symlinks.
5804         (documentation-dir): use $(if $(findstring )) for switching off
5805         Documentation.
5806
5807         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5808         something if DOCUMENTATION is no.
5809
5810 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5811
5812         * VERSION: release 2.7.24
5813
5814         * lily/script-column-engraver.cc (stop_translation_timestep):
5815         delay adding to script-column.
5816
5817         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5818
5819         * python/convertrules.py (conv): rule for number-visibility
5820
5821         * lily/slur-configuration.cc (score_extra_encompass): different
5822         distance measure for avoid and inside avoidance.
5823         (score_extra_encompass): use 1/(distance+eps) as penalty.
5824
5825         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5826         encompass objects for generating slur curves.
5827
5828         * lily/slur.cc: use details iso. slur-details property.
5829
5830         * input/regression/slur-tuplet.ly: new file.
5831
5832         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5833
5834         * flower/include/offset.hh (class Offset): new operator /=
5835
5836         * lily/tuplet-number.cc (print): new file, new interface.
5837
5838         * scm/define-grob-properties.scm (all-user-grob-properties):
5839         remove number-visibility property.
5840
5841         * lily/tuplet-bracket.cc (calc_control_points): new function
5842         (calc_connect_to_neighbors): new function.
5843         (print): remove text handling for tuplet numberdef.
5844
5845         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5846         TupletNumbers too. 
5847
5848         * lily/lily-guile.cc (robust_scm2booldrul): new function
5849
5850         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5851
5852         * lily/tuplet-bracket.cc (calc_position_and_height): use
5853         staff-padding to control whether tuplet brackets are over staves.
5854
5855         * lily/grob.cc (suicide): clear dim_caches_.
5856
5857         * lily/dimension-cache.cc (clear): new function.
5858
5859         * lily/grob.cc (extent): swap order of min-extent and extent
5860         calculations. This fixes hara kiri staves. 
5861
5862 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5863
5864         * lily/main.cc: Nitpick: relocation is not based on path, but on
5865         directory (location).
5866
5867 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5868
5869         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5870
5871         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5872
5873         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5874
5875         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5876
5877         * stepmake/stepmake/generic-vars.make (Module): idem.
5878
5879         * stepmake/stepmake/executable-targets.make (default): use it.
5880
5881         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5882
5883         * make/GNUmakefile: don't install make rules.
5884
5885         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5886         slashes.
5887         (prepend_env_path): more verbosity.
5888
5889 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5890
5891         * GNUmakefile.in: add dir argument for find command.
5892
5893         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5894         fixes weird line numbers for point & click.
5895
5896         * lily/source-file.cc (get_counts): init line/column/char counts.
5897
5898 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5899
5900         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5901
5902 2005-12-16  Graham Percival  <gpermus@gmail.com>
5903
5904         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5905         minor fixes from Fredric.  Thanks!
5906
5907 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5908
5909         * ly/music-functions-init.ly: add \bar and \clef music function 
5910
5911         * lily/lily-lexer.cc: idem.
5912
5913         * lily/parser.yy (FIXME): remove BAR and CLEF.
5914
5915 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5916
5917         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5918
5919         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5920         function arguments too
5921
5922         * lily/main.cc (set_relocation): new function.
5923
5924         * scripts/musicxml2ly.py (convert): add \version
5925
5926         * lily/tie.cc: remove get_default_attachments()
5927
5928         * VERSION (PACKAGE_NAME): release 2.7.23
5929         
5930         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5931         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5932
5933         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5934
5935         * lily/tie-formatting-problem.cc (score_ties): new function
5936         (get_variations): new function. Try flipping dirs for collisions.
5937         (generate_optimal_chord_configuration): new function. 1-opt search
5938         for better configuration.
5939
5940         * lily/tie-configuration.cc: new file.
5941
5942         * lily/tie.cc: junk Tie::get_configuration()
5943
5944         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5945         (score_ties_configuration): new function.
5946         (generate_ties_configuration): new function.
5947         (generate_base_chord_configuration): new function.
5948         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5949         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5950
5951         * input/regression/tie-dot.ly: new file.
5952
5953         * lily/tie-formatting-problem.cc (score_configuration): score
5954         tie/dot collisions.
5955
5956         * lily/tie-helper.cc (get_transformed_bezier): new function
5957
5958         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5959
5960         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5961         -undefined suppress iso. -framework Python 
5962
5963         * scm/define-grobs.scm (all-grob-descriptions): set
5964         springs-and-rods (thanks Joe Neeman!)
5965
5966 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5967
5968         * input/no-notation/display-lily-tests.ly (test): 
5969         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5970         changed from \tag #'(a b) to \tag #'a \tag #'b
5971
5972 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5973
5974         * Documentation/topdocs/NEWS.tely: strip out-www.
5975
5976         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5977
5978         * config.make.in (AR): add AR and RANLIB
5979
5980         * flower/libc-extension.cc: include cassert
5981
5982         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5983         darwin check.
5984
5985 2005-12-11  Graham Percival  <gpermus@gmail.com>
5986
5987         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5988
5989         * stepmake/stepmake/python-modules-vars.make: define
5990         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5991
5992         * THANKS: added Johannes Schindelin.
5993
5994 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5995
5996         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5997
5998         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5999         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6000
6001         * lily/parser.yy: reorganize file layout.
6002
6003         * ly/music-functions-init.ly: add tweak music function.
6004
6005         * lily/grob-info.cc (ultimate_music_cause): new function:
6006         recursively lookup causes. 
6007
6008         * lily/parser.yy (chord_body_element): allow music functions for
6009         post-events, allow music functions for chord elements. 
6010  
6011         * lily/font-config-scheme.cc (display_fontset): add cast.
6012
6013         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6014         #'(a b) -> \tag #'a \tag #'b rule.
6015
6016         * python/musicexp.py (Output_printer.dump_version): new function
6017
6018 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6019
6020         * lily/parser.yy (FIXME): remove \tag
6021         (FIXME): remove tag_music() function.
6022
6023         * lily/lily-lexer.cc: remove \tag
6024
6025         * ly/music-functions-init.ly: define music-function "tag"
6026
6027         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6028
6029 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6030
6031         * VERSION (PATCH_LEVEL): release 2.7.22
6032
6033         * input/regression/lyric-hyphen-retain.ly: renew.
6034
6035         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6036         grob
6037
6038         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6039         iso. minimum-length property for rods.
6040
6041         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6042         LyricSpace item to keep lyrics spaced apart.
6043
6044         * ly/engraver-init.ly: remove Separating_line_group_engraver
6045
6046         * Documentation/user/music-glossary.tely: do setfilename before
6047         music-glossary.
6048
6049 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6050
6051         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6052         See xref documentation, for example.
6053
6054 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6055
6056         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6057         pending_skip iso. ly_voice[-1]
6058         (main): add if __main__ for debugging.
6059
6060         * python/musicxml.py (Accidental.__init__): new class.
6061
6062         * scripts/musicxml2ly.py (progress): new function
6063         (musicxml_key_to_lily): don't barf on modeless keys.
6064         (create_skip_music): new function.
6065         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6066         (musicxml_note_to_lily_main_event): new function.
6067
6068         * python/musicexp.py (Music.__init__): add comment field.
6069         (NestedMusic.append): new routine.
6070         (SequentialMusic.print_ly): print comment.
6071         (ArpeggioEvent.ly_expression): new class
6072         (BeamEvent.ly_expression): new class
6073         (NoteEvent.__init__): support for cautionary/forced accs.
6074
6075         * lily/lookup.cc (slur): normal order for array loop.
6076
6077         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6078         to 0.0.
6079
6080         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6081         collapsed.
6082
6083 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6084
6085         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6086
6087         * scripts/lilypond-book.py: Introduce option
6088             --preserve-line-breaks, for usage with srcltx
6089
6090 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6091
6092         * scm/output-lib.scm (print-circled-text-callback): draw circle
6093         around text using make-circle-markup.
6094
6095         * Documentation/user/*: strip out-www from file names.
6096
6097 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6098
6099         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6100         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6101
6102 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6103
6104         * Documentation/user/GNUmakefile: idem.
6105
6106         * Documentation/user/macros.itexi: strip out-www
6107
6108         * python/rational.py: python 2.3 compat.
6109
6110         * VERSION (PATCH_LEVEL): release 2.7.21
6111
6112         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6113         option formatting, lilypond style.
6114
6115         * python/musicexp.py: grab from Ikebana: a library for composing
6116         ly music expressions. 
6117         (Output_printer): class for advanced .ly printing.
6118         (eg. tupletting) 
6119
6120         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6121         convert to pythonesque structure.
6122
6123         * python/rational.py: PD rational number class.
6124
6125         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6126
6127 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6128
6129         * lily/part-combine-iterator.cc: Minor bugfix
6130         
6131         * THANKS: Update bughunters
6132
6133 2005-12-02  Werner Lemberg  <wl@gnu.org>
6134
6135         * mf/README: Document process for proper mf2pt1 conversion.
6136
6137         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6138         overlapping.
6139
6140         * mf/feta-harmonica.mf: Removed.  Unused.
6141
6142 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6143
6144         * scripts/lilypond-book.py (do_file): fix thinkos.
6145
6146 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6147
6148         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6149         ($(outdir)/parser.cc): 
6150         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6151
6152 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6153
6154         * ly/titling-init.ly (tagline): it should be a space between
6155         "Music engraving by LilyPond" and the version number.
6156
6157 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6158
6159         * VERSION (PACKAGE_NAME): release 2.7.20
6160
6161 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6162
6163         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6164
6165         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6166         1.0.
6167         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6168
6169 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6170
6171         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6172
6173         * kpath-guile/: remove directory
6174
6175         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6176         file. Encapsulate kpathsea using commandline tools.
6177
6178         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6179         kpathsea) module.
6180
6181 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6182
6183         * Documentation/user/advanced-notation.itely (Setting automatic
6184         beam behavior): Correct a few typos. Thanks to David Bobroff.
6185
6186         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6187         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6188
6189 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6190
6191         * scripts/*.py: gmane address for bugs.
6192
6193 2005-11-28 Pal Benko <benkop@freestart.hu>
6194         
6195         * make/ly-rules.make: add -f switch to mv
6196
6197         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6198
6199         * lily/bar-line.cc: interpret it
6200
6201 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6202
6203         * configure.in (--disable-documentation): New switch.
6204
6205         * GNUmakefile.in: Use it.
6206
6207         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6208
6209 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6210
6211         * scripts/lilypond-book.py (do_file): search chunks for
6212         \\begin{document}
6213
6214         * GNUmakefile.in: add copy step in between so we can lose the
6215         out-www directories.
6216
6217 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6218
6219         * lily/pango-font.cc (pango_item_string_stencil): put
6220         geometry.width into glyph-string too.
6221
6222 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6223
6224         * scm/define-music-display-methods.scm (RevertProperty):
6225         (OverrideProperty): Use grob-property-path property, a list of
6226         symbols, instead of grob-property, which used to be a single
6227         symbol.
6228         (BassFigureEvent): a figure can be a plain number, not necessarily a
6229         markup.
6230
6231 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6232
6233         * VERSION: release 2.7.19
6234         
6235         * lily/figured-bass-engraver.cc (process_music): check
6236         figuredBassCenterContinuations first.
6237
6238         * scm/translation-functions.scm (format-bass-figure): make double
6239         sharp larger. 
6240
6241         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6242         determine X-parent.
6243
6244         * lily/system-start-delimiter-engraver.cc: move from
6245         Nested_system_start_delimiter_engraver, rename
6246         Nested_system_start_delimiter_engraver ->
6247         System_start_delimiter_engraver.
6248
6249         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6250         bracket type from hierarchy.
6251
6252 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6253
6254         * lily/rest.cc (y_offset_callback): read staff-position.
6255
6256         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6257         mark after-line-breaking-callback as internal.
6258
6259         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6260
6261 2005-11-25  Werner Lemberg  <wl@gnu.org>
6262
6263         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6264
6265 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6266
6267         * stepmake/bin/add-html-footer.py (do_file): add google
6268
6269         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6270         staff if first_start_ is true.
6271
6272 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6273
6274         * scripts/midi2ly.py (split_track): add __repr__ members.
6275         (track_first_item): only return Item if not None. This fixes a
6276         problem when dumping a track that starts with an empty channel.
6277
6278         * python/midi.c: doc module.
6279
6280 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6281
6282         * Documentation/user/global.itely (Creating MIDI files): Fix
6283         compilation problem.
6284
6285 2005-11-22  Graham Percival  <gpermus@gmail.com>
6286
6287         * Documentation/user/basic-notation.itely: clarify dynamic
6288         padding text.
6289
6290         * Documentation/user/advanced-notation.itely: add unicode
6291         escape control example, whatever that is.  :)
6292
6293         * Documentation/user/global.itely: added "removing dynamics
6294         from MIDI" code.
6295
6296 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6297
6298         * VERSION (PATCH_LEVEL): release 2.7.18
6299
6300         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6301         System_start_delimiter_engraver by
6302         Nested_system_start_delimiter_engraver.
6303
6304         * lily/nested-system-start-delimiter-engraver.cc (struct
6305         Bracket_nesting_node): new class.
6306         (struct Bracket_nesting_group): new class
6307         (struct Bracket_nesting_staff): new class.
6308         (process_music): create hierarchy of grobs. This allows separate
6309         tuning of different SSDs. 
6310
6311         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6312         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6313
6314 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6315
6316         * lily/side-position-interface.cc (aligned_side): multiply
6317         staff_radius by 2.
6318
6319         * lily/script-engraver.cc (make_script_from_event): allow setting
6320         values to '()
6321
6322 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6323
6324         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6325
6326         * scm/define-grobs.scm (all-grob-descriptions): new grob
6327         NestedSystemStartDelimiter.
6328
6329         * input/regression/system-start-heavy-bar.ly: new file.
6330
6331         * lily/nested-system-start-delimiter-engraver.cc: new file.
6332
6333         * lily/nested-system-start-delimiter.cc: new file.
6334
6335         * input/regression/system-start-nesting.ly: new file.
6336
6337         * scm/define-grobs.scm (all-grob-descriptions): use X side
6338         positioning for positioning braces for nested contexts.
6339
6340         * lily/system-start-delimiter.cc (print): don't divide extent by
6341         staff_space.
6342         (print): use style iso. glyph.
6343         (staff_bracket): translate glyph inside routine already.
6344
6345 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6346
6347         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6348         names.
6349
6350 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6351
6352         * scm/define-context-properties.scm
6353         (all-user-translation-properties): rename figuredBassFormatter
6354         from newFiguredBassFormatter.
6355
6356         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6357
6358         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6359
6360         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6361
6362         * lily/beam.cc (calc_beaming): new function.
6363         (calc_shorten): new function.
6364
6365         * THANKS: add Edward Neeman.
6366
6367         * input/regression/accidental-clef-change.ly: new file.
6368
6369         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6370
6371         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6372
6373         * lily/clef-engraver.cc (inspect_clef_properties): reset
6374         localKeySignature for clef changes.
6375
6376 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6377
6378         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6379         add dummy definition that works in Linux and add information in
6380         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6381
6382         * Documentation/user/changing-defaults.itely (Modifying context
6383         plug-ins): Add index for \with.
6384
6385         * Documentation/user/music-glossary.tely (dal segno): Updated
6386         example to version >=2.6.
6387
6388 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6389
6390         * Documentation/user/instrument-notation.itely (Printing chord
6391         names): Reorder \chordmode and \repeat in one example.
6392
6393 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6394
6395         * VERSION: release 2.7.17
6396         
6397         * Documentation/topdocs/NEWS.tely (Top): add note about
6398         refactoring.
6399
6400         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6401         new function. Search region of 3 positions for best tie.
6402         (score_configuration): new function.
6403         (score_aptitude): new function.
6404         (generate_configuration): new function.
6405         (get_configuration): new function.
6406         (Tie_formatting_problem): new function
6407
6408         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6409
6410         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6411
6412         * THANKS: add Eduardo Vieira & Ralph Little
6413
6414         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6415         narrower.
6416
6417         * lily/include/tie-formatting-problem.hh (class
6418         Tie_formatting_problem): add Tie_details to
6419         Tie_formatting_problem. Update calling conventions.
6420
6421         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6422         config.make.
6423
6424         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6425
6426 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6427
6428         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6429         scm/define-context-properties.scm: Maintenance bugfix: make
6430         ligature brackets work again by removing obsolete ligature
6431         primitive callback push/pop.
6432
6433         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6434         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6435         value.
6436
6437 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6438
6439         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6440         used and do not call it a path.
6441         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6442
6443 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6444
6445         * lily/include/tie-formatting-problem.hh (class
6446         Tie_formatting_problem): new file.
6447
6448         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6449
6450         * Documentation/misc/ChangeLog-2.3:  new file.
6451
6452         * lily/audio-staff.cc (output): degarianize.
6453
6454 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6455
6456         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6457         Unset PYTHONOPTIMIZE.  Fixes install if set.
6458
6459 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6460
6461         * python/convertrules.py (conv): add warning about drums. 
6462
6463         * make/stepmake.make: include toplevel-version.make after config.make.
6464
6465         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6466         also allow python2.4
6467
6468         * config.make.in (configure-srcdir): remove GXX GCC vars.
6469
6470         * stepmake/aclocal.m4: don't do non-srcdir build with
6471         symlinks. Use inclusion, so the src directory name can be changed.
6472
6473 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6474
6475         * make/mutopia-vars.make:
6476         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6477         files.
6478
6479 2005-11-13  Werner Lemberg  <wl@gnu.org>
6480
6481         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6482         but the affected path.  This ensures that the (overlapping) outlines
6483         have the same direction, which is a necessary prerequisite for
6484         FontForge's algorithm to remove overlaps.
6485         Formatting.
6486
6487         * mf/feta-haak.mf: Formatting.
6488         (draw_bracket): Slightly modify outline to avoid an unnecessary
6489         corner.
6490         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6491         them from the affected paths.
6492
6493 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6494
6495         * mf/README: remove xpm / accordion notes.
6496
6497         * lily/tie-column-format.cc (set_chord_outline): add dots into
6498         skyline extents. This fixes tie formatting if the left head has dots.
6499
6500         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6501         space inside the staff.
6502         (get_configuration): shift another position if necessary in case
6503         of left head tie  
6504
6505 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6506
6507         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6508         buildscript-dir iso. $(depth)/buildscripts.
6509
6510         * tex/GNUmakefile (local-uninstall): remove
6511         music-drawing-routines.ps juggling.
6512
6513         * stepmake/stepmake/install-targets.make (local-install-files):
6514         prepend src-dir to install targets.
6515
6516         * lily/system-start-delimiter-engraver.cc
6517         (acknowledge_system_start_delimiter): use
6518         add_offset_callback(). This fixes translation of nested
6519         staffgroups.
6520
6521         * lily/grob-closure.cc (add_offset_callback): only encaps in
6522         simple_closure if it's a procedure.
6523         
6524         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6525         from bar-line.
6526
6527         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6528         remove-empty where pertinent.
6529
6530 2005-11-12  Graham Percival  <gpermus@gmail.com>
6531
6532         * Documentation/user/instrument-notation.itely: added
6533         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6534
6535 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6536
6537         * lily/GNUmakefile
6538         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6539         make picture in builddir, not srcdir.
6540
6541 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6542
6543         * VERSION: release 2.7.16
6544         
6545         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6546         shell arguments. 
6547
6548 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6549
6550         * Documentation/user/examples.itely (Piano templates): Minor
6551         modification to the Piano centered lyrics example.
6552
6553 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6554
6555         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6556         $BROWSER.
6557
6558         * Documentation/user/point-and-click.itely: simplify p&c
6559         instruction: don't configure firefox. Put lilypond-invoke-editor
6560         in front of the browser.
6561
6562         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6563         (run-browser): new function.
6564
6565         * lily/parser.yy (Lily_lexer): recognize Book
6566
6567         * lily/book.cc (clone): new function
6568
6569         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6570
6571 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6572
6573         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6574         Maintenance bugfix: reduce number of font related warnings by
6575         updating naming conventions for glyph-name.
6576
6577 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6578
6579         * scm/define-grobs.scm (all-grob-descriptions): add
6580         rhythmic-grob-interface to TabNoteHead.
6581
6582         * scm/layout-beam.scm (check-quant-callbacks): remove
6583         set_stem_lengths()
6584
6585 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6586
6587         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6588         alignment of centered divisiones.
6589
6590         * scm/scripts.scm (articulations): Maintenance bugfix:
6591         follow-into-staff -> quantize-position.
6592
6593         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6594         plica head in porrectus deminutus.
6595
6596 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6597
6598         * make/lilypond.fedora.spec.in (Group): add %clean section.
6599
6600         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6601         less then 1/5th of total length.  
6602         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6603
6604         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6605         events into EventChord. This fixes textspanners on mm rests. Fixes
6606         spanner-rest.ly
6607
6608         * lily/side-position-interface.cc (get_axis): read side-axis
6609         (set_axis): set side-axis.
6610
6611         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6612         properties everywhere.
6613
6614         * lily/spacing-spanner.cc (breakable_column_spacing): add
6615         average-spacing-wishes. Take maximum if not set.
6616         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6617
6618         * scm/define-grobs.scm (all-grob-descriptions): add
6619         average-spacing-wishes.
6620
6621         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6622         offset callbacks. This fixes alignment for Fingering objects.
6623
6624         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6625         space for key - timesig combination. 
6626
6627         * input/regression/script-stem-tremolo.ly (Module): new file.
6628
6629         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6630         to key sig.
6631
6632         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6633         Fixes: c-tremolo-script.ly.
6634         
6635         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6636
6637         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6638         
6639         * scm/define-grobs.scm (all-grob-descriptions): remove
6640         self-X-offset. Fixes alignment of octavate-8.
6641
6642         * scripts/lilypond-book.py (datadir): look in
6643         LILYPONDPREFIX/share/lilypond/current/
6644
6645         * GNUmakefile.in: symlink current to <VERSION>. 
6646
6647 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6648
6649         * lily/main.cc: eps listed as a backend.
6650
6651 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6652
6653         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6654
6655 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6656
6657         * lily/include/score.hh (class Score): remove texts_ member.
6658
6659         * lily/beam.cc (set_stem_lengths): force direction callback.
6660         (print): read quantized-positions, so we can force
6661         Beam::set_stem_lengths to occur.
6662         (rest_collision_callback): use common X parent. 
6663
6664 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6665
6666         * flower/file-path.cc (find): Bugfix: Return name of file found.
6667
6668         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6669         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6670         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6671
6672 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6673
6674         * flower/offset.cc: idem.
6675
6676         * mf/*.mf: update email address.
6677
6678         * lily/font-config-scheme.cc:  new file.
6679
6680         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6681
6682         * lily/*:  cs.uu.nl -> xs4all.nl
6683
6684         * VERSION (PATCH_LEVEL): release 2.7.15
6685
6686         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6687         spec files.
6688
6689         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6690
6691 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6692
6693         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6694
6695         * lily/staff-performer.cc (process_music): add audio
6696         elements. This makes MIDI instrument changes work once again.
6697
6698         * lily/main.cc (LY_DEFINE): add gmane address.
6699
6700         * lily/beam.cc: remove calc_positions()
6701
6702         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6703         original_ in private scope.
6704         (class Grob): drop pscore_ pointer, change to output_def pointer.
6705         (class Grob): cleanup class definition.
6706
6707         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6708
6709 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6710
6711         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6712         absolute.  Better diagnostics.
6713
6714         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6715         This makes lilypond run from the build directory using argv0
6716         relocation (without any --prefix or LILYPONDPREFIX setting).
6717
6718 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6719
6720         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6721
6722         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6723         with simple-closure.
6724
6725         * lily/self-aligment-interface.cc (set_align_self): new function
6726         (set_center_parent): new function.
6727
6728         * lily/side-position-interface.cc (set_axis): new function.
6729
6730         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6731         generic code. 
6732
6733         * scm/define-grob-properties.scm (all-user-grob-properties):
6734         remove [XY]-offset-callbacks add [YX]-offset
6735         
6736 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6737
6738         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6739         entry for time signatures after breathing signs. Bug report by
6740         Scott Russell.
6741
6742 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6743
6744         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6745         not absolute, make it absolute using PATH.
6746
6747 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6748
6749         * python/midi.c (initmidi): Fix type for mingw.
6750
6751 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6752
6753         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6754
6755         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6756         cross compiling.
6757
6758         * stepmake/aclocal.m4: Support python cross compiling.
6759
6760         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6761         Add mingw section.
6762
6763 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6764
6765         * scm/output-lib.scm (chain-grob-member-functions): replace
6766         chained-callback.cc
6767
6768         * lily/chained-callback.cc (Module): remove file.
6769
6770         * lily/rest-collision.cc (force_shift_callback_rest): change to
6771         chained callback.
6772
6773         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6774
6775         * lily/grob.cc (y_parent_positioning): remove axis argument from
6776         parent_positioning callbacks.
6777         (Grob): junk init code
6778         (get_offset): use generic property callbacks for
6779         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6780         (axis_parent_positioning): new function
6781         (axis_offset_symbol): new function
6782         (chain_offset_callback): new function
6783         (add_offset_callback): new function
6784
6785         * lily/beam.cc (rest_collision_callback): change signature; this
6786         is now a chained callback.
6787
6788         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6789         callback administration.
6790
6791         * lily/simple-closure.cc: new file. Smob type that allows "grob
6792         member functions",
6793
6794             (ly:make-simple-closure FUNC A B)
6795
6796         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6797         in various ways.
6798
6799         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6800         callbacks.
6801
6802         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6803
6804         * lily/rest.cc (polyphonic_offset_callback): remove.
6805
6806         * lily/script-engraver.cc (try_music): remove bool* argument.
6807
6808         * scm/script.scm (default-script-alist): set quantize-position
6809         appropriately.
6810
6811         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6812
6813         * lily/side-position-interface.cc (aligned_side): move staff
6814         position quantization from
6815         Side_position_interface::quantised_position().
6816         (quantised_position): remove
6817         
6818 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6819
6820         * input/regression/beam-quant-standard.ly: reindent, set
6821         debug-beam-quanting to #t.
6822
6823         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6824         10000 if this is a "hard" concave beam.
6825
6826         * lily/beam.cc (calc_least_squares_positions): change from
6827         calc_least_squares_dy
6828         (set_stem_lengths): this is now a chained callback.
6829
6830         * lily/context-property.cc (execute_general_pushpop_property):
6831         bugfix override with procedure should have effect.
6832
6833         * scm/define-grob-properties.scm (all-internal-grob-properties):
6834         remove position-callbacks.
6835
6836         * scm/define-grobs.scm (all-grob-descriptions): use
6837         ly:make-callback-chain for positions property.
6838
6839         * scm/layout-beam.scm (check-quant-callbacks): return list of
6840         chained callbacks.
6841
6842         * scm/lily.scm (type-p-name-alist): add callback-chain
6843
6844         * lily/lily-guile.cc (type_check_assignment): type check failure
6845         is warning not message.
6846
6847         * lily/grob-property.cc (try_callback): walk callback chain if
6848         appropriate.
6849
6850         * lily/chained-callback.cc: new file. new smob type.
6851
6852         * lily/lily-guile.cc (procedure_arity): new function.
6853
6854 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6855
6856         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6857
6858 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6859  
6860         * Documentation/user/instrument-notation.itely (Figured bass):
6861         describe new features
6862
6863 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6864
6865         * lily/beam.cc (calc_least_squares_dy): use property callback.
6866
6867         * lily/beam-concave.cc (calc_concaveness): use property callback.
6868
6869         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6870
6871 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6872
6873         * HACKING: Update.
6874
6875 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6876
6877         * scm/layout-page-layout.scm (page-headfoot): annotate
6878         pagetopspace too.
6879
6880         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6881
6882         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6883         doesn't take y-space.
6884
6885         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6886
6887 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6888
6889         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6890         src-wildcard, remove $(wildcard).
6891
6892         * po/GNUmakefile (PO_FILES): 
6893         * ps/GNUmakefile (PS_FILES): 
6894         * tex/GNUmakefile (TEX_FILES): 
6895         * cygwin/GNUmakefile (POSTINSTALLS):
6896         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6897         some wildcard calls.
6898
6899 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6900
6901         * THANKS: add Thomas Bushnell.
6902
6903 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6904
6905         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6906         (lilypond-main): Redirect to gui-main if 'gui is set.
6907
6908         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6909         for alternative installations kludging s/share/lib/g
6910         LILYPONDPREFIX. 
6911
6912         * SConstruct (libdir_package_version): Define.
6913
6914         * python/SConscript: 
6915         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6916         module in libdir.  
6917
6918 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6919
6920         * lily/main.cc: clarify --safe.
6921
6922 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6923
6924         * VERSION: release 2.7.14
6925         
6926         * Documentation/user/*.itely: remove minimumVerticalExtent.
6927
6928         * scm/define-grobs.scm (all-grob-descriptions): remove
6929         RemoveEmptyVerticalGroup
6930
6931         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6932
6933         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6934         compile on MOSX
6935
6936         * python/convertrules.py (conv): add rules.
6937
6938         * lily/grob.cc: remove is_empty()
6939
6940         * lily/grob-property.cc: remove add_to_list_property().
6941
6942         * scripts/convert-ly.py (datadir): add prefix switching hack to
6943         .py too.
6944
6945         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6946         space-function tweak.
6947
6948         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6949
6950         * scm/define-grob-properties.scm (all-user-grob-properties):
6951         remove callback property.
6952
6953         * lily/include/grob.hh (class Grob): remove property_callbacks_
6954         member. Properties of procedure type are assumed to be callbacks.
6955
6956         * lily/ligature-engraver.cc (override_stencil_callback):
6957         rewrite. Use noteHeadLigaturePrimitive as source.
6958
6959         * scm/define-grob-properties.scm (all-internal-grob-properties):
6960         remove ligature-primitive-callback
6961
6962         * lily/include/dimension-cache.hh (class Dimension_cache): make
6963         class, with Grob as friend.
6964
6965         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6966         has_extent_callback()
6967
6968         * scm/translation-functions.scm (format-new-bass-figure): read
6969         figuredBassPlusDirection
6970
6971         * scm/define-context-properties.scm
6972         (all-user-translation-properties): add figuredBassPlusDirection.
6973
6974         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6975
6976         * lily/align-interface.cc (set_ordered): new function.
6977
6978         * lily/grob.cc (flush_extent_cache): rewrite.
6979
6980         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6981         Interval pointer directly.
6982
6983         * lily/main.cc (setup_paths): insert extra / .
6984         (setup_paths): junk cff entry.
6985
6986         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6987         directories.
6988
6989         * lily/axis-group-engraver.cc (finalize): remove
6990         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6991
6992         * lily/grob.cc (Grob): don't set extent from ctor.
6993         (extent): use property callbacks. 
6994
6995         * lily/axis-group-interface.cc: remove set_axes() function.
6996
6997         * lily/grob-property.cc (del_property): new function.
6998
6999 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7000
7001         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7002         
7003 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7004
7005         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7006
7007 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7008
7009         * mf/SConscript: Updates.
7010
7011         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7012
7013         * stepmake/stepmake/*:
7014         * */GNUmakefile:
7015         * config.make.in:
7016         * GNUmakefile.in:
7017         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7018         from any directory in build-dir.  Cleanups.
7019
7020         * make/srcdir.make.in: Remove.
7021
7022         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7023
7024         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7025         main).
7026
7027         * lily/SConscript: Remove ttftools.
7028
7029         * SConstruct: Resurrect.
7030
7031 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7032
7033         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7034         Y coordinate. 
7035
7036         * lily/paper-book.cc (add_score_title): put Paper_score title into
7037         systems_ list.
7038
7039         * scm/translation-functions.scm (format-new-bass-figure): also
7040         allow plus in combination with _
7041
7042 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7043
7044         * VERSION: 2.7.13 released.
7045
7046         * lily/note-collision.cc (check_meshing_chords): don't wipe
7047         stencil, merely set transparent.
7048
7049         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7050         (Top): document #'callbacks.
7051         (Top): document nested \override.
7052
7053         * input/regression/figured-bass.ly: update for slash and pluses.
7054
7055         * input/regression/figured-bass-continuation-forbid.ly (Module):
7056         new file.
7057
7058         * scm/translation-functions.scm (format-new-bass-figure): use
7059         slashed-digit if diminished is set.
7060         (format-new-bass-figure): add + if 'augmented is set.
7061
7062         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7063
7064         * input/test/piano-staff-distance.ly: remove file.
7065
7066         * Documentation/user/advanced-notation.itely (Formatting cue
7067         notes): use length-fraction for making stems/beams smaller.
7068
7069         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7070         modifications.
7071
7072         * lily/new-figured-bass-engraver.cc: new property
7073         centerFiguredBassContinuations
7074
7075         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7076         use callbacks.
7077
7078         * lily/context-property.cc (execute_general_pushpop_property):
7079         robustness checks.
7080
7081         * input/regression/override-nest.ly: new file.
7082
7083         * python/convertrules.py (FatalConversionError.subber): conversion
7084         rule for #'callbacks
7085
7086         * input/regression/override-nest.ly: new function.
7087
7088         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7089         #c too. 
7090
7091         * lily/context-property.cc (lookup_nested_property): new function.
7092         (evict_from_alist): new function.
7093         (general_pushpop_property): new function.
7094         (execute_general_pushpop_property): rewrite. Support nested
7095         properties too.
7096
7097 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7098
7099         * lily/beam.cc: use length-fraction too.
7100
7101         * scm/define-grob-properties.scm (all-user-grob-properties):
7102         remove property flag-width-function
7103         (all-user-grob-properties): remove space-function.
7104
7105         * scm/layout-beam.scm: remove flag-width-function.
7106
7107         * lily/beam.cc: remove flag-width-function
7108
7109         * scm/layout-beam.scm: remove beam dir functions.
7110
7111         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7112
7113         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7114         for easier grace tweaks.
7115
7116         * lily/beam.cc: remove dir-function.
7117
7118         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7119
7120         * lily/grob.cc: remove spacing-procedure.
7121
7122         * lily/note-head.cc (calc_stem_attachment): new function.
7123         (internal_print): use callback to get glyph-name.
7124
7125         * lily/grob-property.cc (get_interfaces): new function.
7126
7127         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7128
7129         * lily/stem.cc (calc_stem_end_position): new function.
7130         (calc_length): new function.
7131         document details for stem.
7132         remove Stem::get_direction()
7133
7134         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7135
7136         * lily/grob-property.cc (set_callback): new function.
7137
7138         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7139
7140         * lily/item-scheme.cc: new file.
7141
7142         * lily/bar-line.cc (before_line_breaking): remove function.
7143         remove bar-size-procedure, break-glyph-function
7144
7145         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7146
7147         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7148
7149         * lily/system-start-delimiter.cc (print): suicide from
7150         here. Remove after_line_breaking_callback.
7151
7152         * lily/script-interface.cc (calc_direction): use callback for direction.
7153
7154         * lily/side-position-interface.cc (aligned_side): don't use
7155         Side_position_interface::get_direction directly. Use callback. 
7156
7157         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7158         calculate stencil.
7159         (get_print_stencil): rename from get_stencil: create stencil with
7160         transparency, color and cause. 
7161
7162         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7163
7164         * python/convertrules.py (conv): insert temporary warning rule.
7165
7166         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7167
7168         * lily/grob-property.cc (try_callback): remove marker if applicable.
7169
7170         * lily/grob.cc: elucidate doc about after/before-line-breaking
7171
7172         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7173
7174         * lily/stem.cc (height): idem.
7175
7176         * lily/stem-tremolo.cc: idem.
7177
7178         * lily/slur.cc (height): don't use get_uncached_stencil()
7179
7180         * lily/rest.cc (y_offset_callback): use offset callback
7181         iso. after-line-breaking callback.
7182
7183         * lily/grob.cc: change after/before-line-breaking-callback to
7184         after/before-line-breaking dummy properties.
7185
7186         * lily/include/grob.hh: remove Grob_status.
7187
7188         * scm/define-context-properties.scm
7189         (all-user-translation-properties): remove verticalAlignmentChildCallback
7190
7191         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7192         (calc_direction): use callback
7193         (calc_positions): use callback.
7194
7195         * lily/tie.cc (calc_direction): use callback. Only call parent
7196         positioning for more than one tie.
7197
7198         * lily/tie-column.cc (calc_positioning_done): use callback
7199
7200         * lily/slur-scoring.cc (calc_control_points): use callback
7201
7202         * lily/slur.cc (calc_direction): use callback.
7203
7204         * lily/note-collision.cc (force_shift_callback): remove.
7205
7206         * lily/dot-column.cc (force_shift_callback): remove. Use
7207         other_axis_parent_positioning.
7208
7209         * lily/grob.cc (other_axis_parent_positioning): new function.
7210         (same_axis_parent_positioning): new function
7211
7212         * lily/align-interface.cc (alignment_callback): remove function.
7213
7214         * lily/note-collision.cc (calc_positioning_done): use callback.
7215
7216         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7217         (calc_direction): idem.
7218         remove print function.
7219
7220         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7221
7222         * lily/dot-column.cc (calc_positioning_done): use callback.
7223
7224         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7225
7226         * lily/beam.cc (calc_direction): use pseudo-property for beam
7227         direction callback.
7228         (calc_positions): use callback 
7229
7230         * lily/align-interface.cc (calc_positioning_done): use
7231         callback. Fold fixed  distance and normal alignment in one function.
7232
7233         * lily/stem.cc (calc_stem_end_position): use callback.
7234         (calc_positioning_done): idem.
7235         (calc_direction): idem.
7236         (calc_stem_end_position): idem
7237         (calc_stem_info): idem.
7238
7239         * lily/grob-property.cc (get_property_data): new function: 
7240         (try_callback): new function.
7241
7242         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7243         callbacks property.
7244
7245         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7246
7247 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7248
7249         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7250         tie
7251         has no heads.
7252         
7253         * lily/include/*.hh (Module): compile fixes.
7254
7255 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7256
7257         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7258         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7259         instead of (char-syntax nil), thanks to Milan Zamazal.
7260
7261 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7262
7263         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7264         dist.
7265
7266         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7267         themselves.
7268
7269 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7270
7271         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7272         add class_name() method.
7273
7274         * lily/music-scheme.cc: remove ly:music-name.
7275
7276 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7277
7278         * cygwin/postinstall-lilypond.sh: Remove cruft.
7279
7280         * cygwin/postremove-lilypond.sh: Remove.
7281
7282         * cygwin/GNUmakefile (default): Remove postremove rules.
7283
7284 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7285
7286         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7287         even header too.
7288         
7289         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7290         MacOS 9 users.
7291
7292         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7293         consider break index for broken spanner.
7294
7295         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7296         characters from string before splitting.
7297
7298 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7299
7300         * scm/framework-ps.scm (output-preview-framework): use
7301         is-book-title to determine whether to chop off the booktitle.
7302
7303         * lily/paper-book.cc (systems): init from book-title-properties
7304         (add_score_title): init score-title-properties.
7305
7306         * ly/paper-defaults.ly: add {score,book}-title-properties.
7307
7308         * scm/document-backend.scm (lookup-interface): error message if
7309         using unknown interface.
7310
7311         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7312         edge-height.
7313
7314         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7315         make_bracket.
7316         (make_bracket): new function.
7317
7318         * scm/lily.scm (define-scheme-options): add paper-size option.
7319
7320         * ly/declarations-init.ly (laissezVibrer): get paper size from
7321         -dpaper-size
7322
7323         * scm/translation-functions.scm: use \fontsize for changing the
7324         fontsize.
7325
7326         * scm/define-grobs.scm (all-grob-descriptions): set
7327         between-length-limit to 1.0
7328
7329         * lily/tie-helper.cc: add between_length_limit_ detail property.
7330
7331         * mf/feta-bolletjes.mf: typos.
7332
7333         * lily/note-head.cc (internal_print): don't shadow idx
7334         parameter. This fixes wrong attachment for do shape heads.
7335
7336 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7337
7338         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7339
7340         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7341
7342         * scm/layout-slur.scm: rename from slur.scm
7343
7344         * scm/layout-page-layout.scm: rename from page-layout.scm
7345
7346         * scm/layout-beam.scm: rename from beam.scm
7347
7348         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7349         bass-figure-interface
7350
7351         * lily/new-figured-bass-engraver.cc (process_music): add
7352         implicitBassFigures property.
7353         
7354         * scm/define-markup-commands.scm (pad-x): new markup.
7355
7356         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7357         minimumVerticalExtent on FiguredBass context.
7358
7359         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7360         case the continuation crosses a line break.
7361
7362 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7363
7364         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7365         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7366         absolute file name bug.  
7367
7368 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7369
7370         * VERSION (PACKAGE_NAME): release 2.7.12
7371
7372         * input/regression/figured-bass-continuation-center.ly: new file.
7373
7374         * input/regression/beam-outside-beamlets.ly: new file.
7375
7376         * lily/beam.cc (set_beaming): don't clip edges.
7377         (connect_beams): don't clip edges.
7378
7379         * lily/beaming-info.cc (clip_edges): new function.
7380
7381         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7382
7383         * Documentation/user/instrument-notation.itely (Figured bass):
7384         demonstrate extenders, update seealso links.
7385
7386         * scm/titling.scm (marked-up-headfoot): change tagline
7387         handling. tagline = ##f will blank the tagline as well.
7388
7389 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7390
7391         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7392
7393         * lily/new-figured-bass-engraver.cc (struct
7394         New_figured_bass_engraver): add new_music_found_ member.
7395
7396         * lily/lilypond-version.cc (Lilypond_version): deal with
7397         incorrectly formatted version strings. 
7398
7399         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7400         New_figured_bass_engraver by default.
7401
7402         * lily/ttf.cc (print_trailer): only define glyph names when
7403         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7404
7405 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7406
7407         * lily/horizontal-bracket.cc (make_bracket): new function.
7408
7409         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7410         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7411         BassFigureLine, BassFigureAlignment
7412
7413         * lily/new-figured-bass-engraver.cc (process_music): new file.
7414
7415         * lily/figured-bass-continuation.cc: new file.
7416
7417         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7418         new file.
7419
7420 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7421
7422         * scripts/lilypond-book.py: Bug fix, put the quote around the
7423         actual score for LaTeX documents.
7424
7425         * scm/define-grobs.scm (all-grob-descriptions): Change
7426         collapse-height of the SystemStartBracket grob to 5.0, 
7427         so the bracket disappears for single stave score lines (similarly
7428         to SystemStartBraces). 
7429
7430         * Documentation/user/advanced-notation.itely (Polymetric
7431         notation): Clarify the use of compressMusic.
7432
7433         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7434         that the grace spacer note in other staves need the same duration
7435         and document the stroke-style property.
7436
7437 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7438
7439         * Documentation/user/global.itely (Vertical spacing): document
7440         alignment-extra-space and fixed-alignment-extra-space.
7441
7442         * Documentation/topdocs/NEWS.tely (Top): add entry.
7443
7444         * input/regression/alignment-vertical-spacing.ly: new file.
7445
7446         * python/convertrules.py (conv): add rule.
7447
7448         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7449
7450         * lily/align-interface.cc (stretch_after_break): new
7451         function. Read fixed-alignment-extra-space property.
7452         (align_elements_to_extents): read alignment-extra-space property.
7453
7454         * lily/lily-guile.cc (robust_scm2dir): new function.
7455
7456         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7457         (annotate-space-left): new function. Annotate space left on page. 
7458         (annotate-y-interval): new function.
7459         (paper-system-annotate-last): new function. Annotate bottom-space.
7460
7461         * mf/feta-beugel.mf (y): 
7462
7463 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7464
7465         * VERSION (PACKAGE_NAME):  release 2.7.11
7466
7467         * scm/lily-library.scm (interval-translate): new function
7468         (interval-center): new function. 
7469
7470         * scm/page-layout.scm (paper-system-annotate): new function. Add
7471         arrows for dimensions.
7472  
7473         * scm/stencil.scm (dimension-arrows): new function.
7474
7475         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7476
7477         * input/regression/page-spacing.ly: add annotatespacing
7478
7479         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7480         (LY_DEFINE): new function ly:paper-system-set-property!
7481
7482         * Documentation/user/global.itely (Paper size): explain how to add
7483         sizes.
7484
7485         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7486         correspond to GS's definition.
7487
7488         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7489         tuplet bracket.
7490         (print): only connect to next bracket if the next one is alive.
7491         (print): set padding to 0.0 if the bound is a breakable
7492         column. This makes tupletFullLength brackets reach up to the staff
7493         line if it doesn't connect to the next line.
7494
7495 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7496
7497         * lily/bar-number-engraver.cc: correct docs.
7498
7499         * scm/output-lib.scm (first-bar-number-invisible): rename from
7500         default-bar-number-visibility
7501
7502 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7503
7504         * scm/define-music-properties.scm (all-music-properties): remove
7505         predicate property.
7506
7507 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7508
7509         * po/fi.po: refresh.
7510
7511 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7512
7513         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7514         superfluous s1.
7515         (disappear): bugfix.
7516
7517         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7518
7519         * lily/include/paper-system.hh (class Paper_system): remove
7520         staff_extents_ member.
7521
7522         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7523
7524         * lily/include/paper-system.hh (class Paper_system): remove
7525         number_ variable. Remove is_title_. Remove break_before_penalty_
7526
7527         * lily/paper-book.cc (systems): use 'number property iso. number_
7528         member.
7529
7530         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7531         remove ly:paper-system-number.
7532
7533         * scm/lily-library.scm (paper-system-title?): new function.
7534
7535         * lily/book.cc (process): bugfix: flip ?: cases. 
7536
7537         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7538         add outputProperty.
7539
7540         * ly/music-functions-init.ly: add outputProperty music function.
7541
7542         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7543
7544         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7545         and next-padding.
7546         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7547
7548         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7549
7550         * lily/paper-system.cc (internal_get_property): new function.
7551
7552         * Documentation/user/global.itely (Vertical spacing): refer to
7553         page-spacing.ly
7554
7555         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7556         pagetopspace
7557
7558         * input/regression/page-spacing.ly: new file.
7559
7560         * input/regression/page-top-space.ly: new file.
7561
7562         * lily/spacing-spanner.cc: cmath -> math.h
7563
7564         * lily/paper-system.cc (read_left_bound): new function. Read
7565         line-break-system-details from left bound to determine extents.
7566  
7567         * Documentation/user/programming-interface.itely (Using LilyPond
7568         syntax inside Scheme): change applyxxx -> applyXxx.
7569
7570         * ly/music-functions-init.ly: add outputProperty music function.
7571
7572         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7573
7574         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7575
7576         * python/convertrules.py (conv): rule
7577
7578         * ly/music-functions-init.ly: applyxxx -> applyXxx
7579
7580         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7581         TabVoice to Voice.
7582
7583 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7584
7585         * flower/include/real.hh: include <math.h> iso. <cmath>
7586
7587         * flower/include/offset.hh: include real.hh
7588
7589 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590
7591         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7592         fix example, now that 'interfaces is no longer directly available.
7593
7594         * lily/book.cc (process): don't crash if paper == NULL.
7595
7596         * po/fr.po: update.
7597
7598 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7599
7600         * scm/define-music-types.scm (music-descriptions): set length and
7601         start-callback for QuoteMusic
7602
7603 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7604
7605         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7606         arguments. Fixes compilation error with gcc 3.3.
7607
7608 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7609
7610         * VERSION: release 2.7.10
7611
7612         * stepmake/stepmake/python-module-rules.make
7613         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7614
7615         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7616         real.hh
7617
7618 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7619
7620         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7621         -Werror. Otherwise GCC barfs over various optimizations.
7622
7623         * scm/define-grob-properties.scm (all-internal-grob-properties):
7624         add note-head property
7625
7626         * Documentation/user/instrument-notation.itely (Laissez vibrer
7627         ties): new node.
7628
7629         * input/regression/laissez-vibrer-ties.ly: new file.
7630
7631         * lily/laissez-vibrer-engraver.cc: new file.    
7632
7633         * lily/include/tie-column-format.hh: new file.
7634
7635         * lily/tie-column-format.cc: new file. 
7636
7637         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7638
7639         * lily/laissez-vibrer-tie.cc: new file.
7640
7641         * lily/include/laissez-vibrer-tie.hh: new file.
7642
7643         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7644
7645         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7646
7647         * scm/define-grobs.scm (all-grob-descriptions): add
7648         LaissezVibrerTie, LaissezVibrerTieColumn
7649
7650         * lily/tie-column.cc (set_tie_config_directions): new function
7651         (final_shape_adjustment): new function.
7652         (shift_small_ties): new function.
7653
7654         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7655
7656         * lily/include/tie.hh (struct Tie_details): add x_gap_
7657         (struct Tie_configuration): add head_position_
7658
7659         * lily/tie-column.cc (set_chord_outline): new function.
7660
7661         * mf/cmr.enc.in:  remove file.
7662
7663 2005-09-11  Graham Percival  <gpermus@gmail.com>
7664
7665         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7666
7667 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7668
7669         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7670         reduce aliasing effects.
7671
7672         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7673         box in skyline.
7674
7675 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7676
7677         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7678
7679         * flower/include/real.hh: std::fabs too.
7680
7681 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7682
7683         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7684
7685         * lily, flower: Include C++ iso C headers.  Import namespace std
7686         throughout.
7687
7688         * lily/side-position-interface.cc: 
7689         * lily/scm-hash.cc: 
7690         * lily/note-head.cc: 
7691         * lily/include/includable-lexer.hh: 
7692         * flower/include/string-data.icc: Remove using std::*.
7693
7694         * lily, flower: Include C++ iso C headers.  Import namespace std
7695         throughout.
7696
7697         * lily/side-position-interface.cc: 
7698         * lily/scm-hash.cc: 
7699         * lily/note-head.cc: 
7700         * lily/include/includable-lexer.hh: 
7701         * flower/include/string-data.icc: Remove using std::*.
7702
7703         * Documentation/user/instrument-notation.itely (Entering lyrics):
7704         Multiple latin-1->utf-8 conversion fix.
7705
7706         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7707
7708 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7709
7710         * lily/tie.cc (get_configuration): also avoid dots for non-space
7711         situations.
7712
7713 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7714
7715         * Documentation/user/instrument-notation.itely: Bugfix.
7716
7717 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7718
7719         * tex/GNUmakefile: don't install texinfo.tex
7720
7721         * tex/ : cleanup: remove unused files.
7722
7723         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7724
7725         * flower/include/real.hh: using std::{isnan,isinf}
7726         
7727         * VERSION (PATCH_LEVEL): release 2.7.9
7728
7729 2005-09-05  Graham Percival  <gpermus@gmail.com>
7730
7731         * Documentation/user/ instrument-notation.itely,
7732         advanced-notation.itely: minor tweaks.
7733
7734         * input/test/script-chart.ly: add item padding.
7735
7736 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7737
7738         * flower/offset.cc: use math.h iso. <cmath>
7739
7740         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7741         of IE users.
7742
7743         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7744         (widen-left-stencil-edges): new function. Fix alignment problems
7745         with LaTeX includegraphics.
7746
7747         * lily/text-interface.cc (interpret_markup): use abort().
7748
7749 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7750
7751         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7752
7753         * lily/tie.cc (get_configuration): update bezier shape as we
7754         change Y positions.
7755         (get_configuration): don't move large ties if we're outside of the
7756         staff.
7757
7758 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7759
7760         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7761         
7762 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7763
7764         * .cvsignore: Add auto-generated configure files and then some.
7765
7766 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7767
7768         * scm/define-grobs.scm (DynamicLineSpanner): Add
7769         X-extent-callback.  Fixes hairpin-slur collision.
7770
7771 2005-08-31  Graham Percival  <gpermus@gmail.com>
7772
7773         * Documentation/user/advanced-notation.itely,
7774         basic-notation.itely: minor changes.
7775
7776 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7777
7778         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7779         \linebreak between each .eps file if \betweenLilyPondSystem is
7780         undefined. 
7781
7782         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7783         music): Document the \linebreak
7784
7785         * Documentation/user/lilypond-book.itely,
7786         input/tutorial/lbook-latex-test.tex,
7787         Documentation/user/examples.itely: Remove \usepackage{graphics}
7788
7789 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7790
7791         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7792
7793         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7794         compat bugfix.
7795
7796         * scripts/lilypond-book.py (PREAMBLE_LY): define
7797         inside-lilypond-book
7798         (modify_preamble): new function. Insert \RequirePackage{graphics}
7799         when no {graphics found in preamble.  
7800
7801 2005-08030  Graham Percival  <gpermus@gmail.com>
7802
7803         * Documentation/user/basic-notation.itely, global.itely,
7804         tutorial.itely: misc small changes.
7805
7806 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7807
7808         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7809         VERSION.
7810
7811 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7812
7813         * lily/tie-column.cc (new_directions): put Tie down on center
7814         staff line. 
7815
7816         * lily/script-interface.cc (before_line_breaking): use
7817         Grob::programming_error
7818
7819         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7820
7821         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7822         of splitext.
7823
7824 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7825
7826         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7827
7828 2005-08-29  Werner Lemberg  <wl@gnu.org>
7829
7830         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7831         the `*.scale.pfa' files to avoid warnings.
7832
7833 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7834
7835         * lily/tempo-performer.cc (process_music): idem.
7836
7837         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7838
7839 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7840
7841         * Documentation/user/advanced-notation.itely (Text markup): not a
7842         fragment.
7843
7844         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7845
7846         * lily/staff-performer.cc (initialize): add tempo/name to
7847         audio_staff_
7848
7849
7850 2005-08-26  Graham Percival  <gpermus@gmail.com>
7851
7852         * Documentation/user/advanced.itely: add text-only example.
7853
7854         * Documentation/user/invoking.itely: add index entries for
7855         convert-ly.
7856
7857         * Documentation/user/ tutorial.itely, basic-notation.itely:
7858         small fixes suggested by Steve D.  Thanks!
7859
7860 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7861
7862         * input/regression/markup-bidi-pango.ly: new file.
7863
7864         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7865         standard. Remove #ifdef. Remove memleak.
7866         (text_stencil): use text_dir to decide how to composite items.
7867         (text_stencil): determine uniform text direction for the entire
7868         string.
7869
7870         * scripts/lilypond-book.py (output_name): remove
7871         latex_filter_cmd. Non-portable to non-Unix systems. 
7872         (get_latex_textwidth): use File.write and os.unlink() instead.
7873
7874         * THANKS: add Vicente & Trevor.
7875
7876         * lily/grob.cc (discretionary_processing): look up origin for
7877         programming_error too. 
7878
7879         * input/regression/tie-broken.ly: new file.
7880
7881         * lily/tie-column.cc (set_chord_outlines): set outline for line
7882         break case too.
7883         
7884 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7885
7886         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7887         unscaled transform, just translate stencils.
7888
7889         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7890         MIDI.
7891
7892         * scm/define-markup-commands.scm (wordwrap-string): use
7893         text-direction
7894         (wordwrap-stencils): idem.
7895         (line): idem.
7896         (fill-line): idem.
7897         (wordwrap-stencils): translate last line to right for
7898         text-direction = LEFT.
7899
7900         * scm/define-grob-properties.scm (all-user-grob-properties): add
7901         text-direction.
7902
7903 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7904
7905         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7906         when copying a Lily_parser object.
7907
7908 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7909
7910         * scm/define-markup-commands.scm (null): add null markup.
7911
7912 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7913
7914         * lily/item.cc: Add documentation of center-invisible
7915
7916 2005-08-24  Graham Percival  <gpermus@gmail.com>
7917
7918         * Documentation/user/advanced-notation.itely: add info about
7919         raising text.
7920
7921         * Documentation/user/programming-interface.itely: fix example
7922         involving raised text.
7923
7924 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7925
7926         * lily/beam.cc (print): fix X start/end points of isolated
7927         beamlets.
7928
7929         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7930
7931         * lily/multi-measure-rest.cc (set_text_rods): new function.
7932
7933         * lily/vertical-align-engraver.cc (process_music): call
7934         Align_interface::set_axis(). This forces #'elements to be ordered,
7935         preventing random vertical reordering of staves.
7936
7937         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7938         add avoid-slur property. 
7939
7940         * Documentation/user/basic-notation.itely (Measure repeats): add
7941         countPercentRepeats example.
7942
7943         * Documentation/user/advanced-notation.itely (Other text markup
7944         issues): remove remark about normal-font.  We have \normal-text
7945
7946         * input/regression/tie-chord.ly: add note about remaining bugs.
7947
7948         * lily/tie.cc (print): try Tie_column::set_directions () if
7949         control-points not yet defined.
7950
7951 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7952
7953         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7954         extent. This fixes braces falling out of the EPS bbox.
7955
7956         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7957         exactly to bbox.
7958
7959 2005-08-23  Graham Percival  <gpermus@gmail.com>
7960
7961         * {various} : change #up->#UP and #down->#DOWN.
7962
7963         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7964
7965         * Documentation/user/advanced-notation.itely: clarify
7966         what objects handles text on a multimeasure rest.
7967
7968 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7969
7970         * VERSION (PATCH_LEVEL): release 2.7.7
7971
7972 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7973
7974         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7975
7976         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7977
7978         * input/regression/*.ly: formatting clean-up. Default layout
7979         before music expression.
7980
7981         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7982         romanze28-2 example.
7983
7984         * scm/ps-to-png.scm: remove dir-re function.
7985         (make-ps-images): generate page names, instead of globbing them.
7986         This brings down LilyPond memory usage for make web by a factor
7987         10. 
7988
7989         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7990         don't use glob. With 3000 files, globbing
7991         Documentation/user/out-www/ can take too much time. 
7992         
7993         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7994
7995         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7996
7997         * input/regression/tie-manual.ly: new file
7998
7999         * input/regression/tie-chord.ly: update.
8000
8001         * flower/include/interval.hh (struct Interval_t): 
8002
8003         * lily/tie.cc (distance): new function 
8004         (height): new function.
8005         (init): new function
8006         (Tie_details): new struct.
8007
8008         * lily/skyline.cc (skyline_height): new function.
8009
8010         * lily/tie-column.cc (set_chord_outlines): new function.
8011         (new_directions): read tie-configuration
8012
8013         * lily/skyline.cc: fix ASCII art.
8014         
8015 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8016
8017         * python/convertrules.py (string_or_scheme): Fix spelling error
8018
8019 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8020         
8021         * lily/tie-column.cc (set_directions): set directions only once.
8022         (add_configuration): new function.
8023
8024         * lily/tie.cc (set_control_points): new function
8025
8026         * lily/tie-column.cc (new_directions): new function.
8027
8028         * ly/music-functions-init.ly: set 'pitch property
8029         iso. trill-pitch. This makes \relative work with \pitchedTrill
8030
8031         * lily/tie.cc (get_configuration): new function. Don't generate
8032         control points, rather, generate configuration.
8033         remove head-pair property.
8034
8035         * lily/include/tie.hh (struct Tie_configuration): new struct.
8036
8037 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8038
8039         * Documentation/topdocs/NEWS.tely: clarify.
8040
8041 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8042
8043         * lily/tie.cc: remove minimum-length
8044
8045         * scm/define-grob-properties.scm (all-user-grob-properties):
8046         remove staffline-clearance, y-offset 
8047
8048         * input/regression/tie-dots.ly (Module): remove.
8049
8050         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8051         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8052
8053         * input/regression/tie-single.ly: new file.
8054
8055 2005-08-21  Graham Percival  <gpermus@gmail.com>
8056
8057         * ly/bagpipe.ly: fix compile problem.
8058
8059 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8060
8061         * lily/midi-item.cc (name): new method.
8062
8063         * lily/staff-performer.cc (acknowledge_audio_element): use
8064         signature of baseclass.
8065
8066         * lily/engraver-group.cc (do_announces): move recursion call out
8067         of while loop. 
8068
8069         * lily/drum-note-performer.cc (class Drum_note_performer): use
8070         process_music everywhere.
8071
8072         * ly/performer-init.ly: add default children everywhere.
8073
8074         * lily/paper-book.cc (output): call paper-book-write-midis
8075         directly: always write MIDI, even if no \layout {} block. 
8076
8077 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8078
8079         * VERSION (PACKAGE_NAME): release 2.7.6
8080
8081         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8082         about not being able to handle repeat.
8083
8084 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8085
8086         * Documentation/user/examples.itely (Piano templates):
8087         * lily/include/performer-group.hh: Remove last traces of
8088         Performer_group_performer.  Fixes make web.
8089
8090 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8091
8092         * Documentation/user/examples.itely (Piano templates): change
8093         Engraver_group_engraver -> Engraver_group
8094
8095         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8096         scm_stand_in_procs is not weak_any.
8097
8098         * lily/volta-bracket.cc (print): don't use strcmp().
8099
8100         * lily/volta-engraver.cc (process_music): use
8101         Text_interface::is_markup() for setting the 'text property of the
8102         volta bracket.
8103
8104         * input/mutopia/claop.py (accents): update syntax to 2.6
8105
8106         * scm/define-context-properties.scm
8107         (all-user-translation-properties): add countPercentRepeats.
8108
8109         * Documentation/user/basic-notation.itely (Measure repeats): add
8110         isolated percent example.
8111
8112 2005-08-18  Graham Percival  <gpermus@gmail.com>
8113
8114         * input/ {various}: change direction #1, #-1 to
8115         #up/#down or \fooUp, \fooDown.
8116
8117         * Documentation/user/music-glossary.tely: #-1 to #down.
8118
8119         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8120         to #up, #-1 to #down.
8121
8122 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8123
8124         * lily/include/engraver-group.hh: rename.
8125
8126         * lily/include/performer-group.hh: rename.
8127
8128 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8129
8130         * input/test/script-abbreviations.ly: Removed some old LaTeX
8131         left overs.
8132
8133 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8134
8135         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8136         Remove functions.  Remove if 1: constructs, reindent.
8137
8138         * scripts/convert-ly.py (add_version): Add functions from
8139         convertrules.py
8140
8141         * scm/script.scm (default-script-alist):
8142         s/priority/script-priority.  Fixes script stacking.  Backportme.
8143         (Fermata): Very low priority.
8144
8145 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8146
8147         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8148
8149         * input/regression/slur-script.ly: remove padding tweaks. Add
8150         comment strings.
8151
8152         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8153         time sigs and related stuff.
8154
8155         * scm/define-grob-properties.scm (all-user-grob-properties): add
8156         @code{} tags to property description.
8157
8158         * lily/include/line-group-group-engraver.hh (Module): remove file.
8159
8160         * python/convertrules.py (conv): add rule for
8161         Engraver_group_engraver -> Engraver_group.
8162
8163         * lily/include/performer-group-performer.hh: analogous.
8164
8165         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8166
8167         * lily/context-def.cc (instantiate): check for
8168         Engraver_group_engraver and Performer_group_performer not
8169         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8170  
8171 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8172
8173         * input/les-nereides.ly: Remove three fingering tweaks, update
8174         remaining one.
8175
8176         * input/regression/slur-script-inside.ly: Update, fix doc.
8177
8178         * scm/script.scm: Update to avoid-slur.
8179
8180         * scm/define-grob-properties.scm (avoid-slur): New property.
8181
8182         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8183         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8184         outside_slur_callback if avoid-slur != #'inside.
8185
8186         * scm/define-grobs.scm (Fingering, Textscript): No
8187         inside-slur/outside-slur preference.
8188         (DynamicLineSpanner): Always outside slur.
8189
8190         * input/regression/slur-script.ly: More tests.
8191
8192 2005-08-17  Graham Percival  <gpermus@gmail.com>
8193
8194         * Documentation/user/lilypond-book: fix notime entry.
8195
8196         * Documentation/user/advanced-notation.itely: add info on
8197         getting an I rehearsal mark.
8198
8199         * Documentation/user/putting.itely: reinstate "I", re-enforce
8200         the fact that \override numbers are the result of
8201         experimentation and personal taste.
8202
8203         * Documentation/user/invoking.itely: update convert-ly bugs.
8204
8205 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8206
8207         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8208         to #t.
8209
8210         * lily/timing-translator.cc (initialize): don't initialize timing.
8211
8212         * input/regression/stem-spacing.ly (Module): remove file.
8213
8214         * input/regression/spacing-stick-out.ly: specify Score context for
8215         \override
8216
8217         * input/regression/clefs.ly: remove spurious {}s 
8218
8219 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8220
8221         * Documentation/topdocs/NEWS.tely,
8222         input/regression/repeat-percent-count.ly: clarify a bit.
8223
8224 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8225
8226         * input/no-notation/display-lily-tests.ly: delete
8227         display-lily-init call.
8228
8229         * ly/music-functions-init.ly (displayLilyMusic): move
8230         display-lily-init call at top level, so that the user should not
8231         have to call it.
8232
8233         * scm/define-music-display-methods.scm (note-name->lily-string):
8234         retrieve note names directly from pitchnames using new function `rassoc'.
8235         (display-lily-init): note names list construction removed.
8236
8237 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8238
8239         * THANKS: spello.
8240
8241         * lily/lily-parser.cc (get_header): copy module, instead of
8242         returning it.
8243
8244         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8245         counters.
8246
8247         * Documentation/user/basic-notation.itely (Measure repeats): add
8248         links to Counter grobs.
8249
8250         * scm/define-grobs.scm (all-grob-descriptions): add
8251         DoublePercentRepeatCounter
8252         (all-grob-descriptions): add PercentRepeatCounter
8253
8254         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8255         also create counter grobs.
8256
8257         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8258         return grob without space-alist.
8259
8260         * input/proportional.ly: tune staff-padding.
8261
8262         * input/regression/repeat-percent-count.ly: new file. 
8263
8264 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8265
8266         * input/no-notation/display-lily-tests.ly: moved from
8267         input/regression/ to input/no-notation. Be sure to call
8268         `display-lily-init' before trying to use the display function.
8269
8270 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8271
8272         * scripts/lilypond-book.py (option_definitions): Don't localize
8273         the empty string. Fixes bug when --psfonts was used with
8274         non-English locale.
8275
8276 2005-08-15  Graham Percival  <gpermus@gmail.com>
8277
8278         * lily/tuplet-bracket.cc: simple build fix.
8279
8280         * Documentation/user/putting.itely: use "we" instead of "I".
8281
8282         * Documentation/user/basic-notation.itely: cautionary accidentals
8283         work with naturals, too.
8284
8285 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8286
8287         * lily/tuplet-bracket.cc (calc_position_and_height): add
8288         staff-padding support.
8289
8290         * input/proportional.ly: set staff-padding.
8291         
8292         * VERSION (PATCH_LEVEL): release 2.7.5
8293
8294         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8295         fixes. Remove tweaks.
8296
8297         * input/regression/tuplet-slope.ly: add a test case.
8298
8299         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8300         erroneous fix. Add spanner bounds to offset array with relative X
8301         positions.
8302
8303         * ly/engraver-init.ly: add Rest_engraver only once.
8304
8305         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8306         (*parser*) lookup if (*parser*) != #f.
8307
8308 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8309
8310         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8311         Cut-and paste update.
8312
8313         * input/regression/slur-script.ly: Add example of reverting
8314         inside-slur for fingering.
8315
8316         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8317         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8318
8319         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8320         outside_slur_callback if inside-slur == #f (as opposed to unset).
8321
8322 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8323
8324         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8325         encoding files are already removed.
8326
8327 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8328
8329         * Documentation/user/advanced-notation.itely (Instrument names):
8330         Document a workaround for instrument names that collide with
8331         system start braces/brackets.
8332
8333 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8334
8335         * lily/rest-collision.cc (do_shift): spello.
8336
8337         * input/proportional.ly: use #'used property. Set break-overshoot
8338         property.
8339
8340         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8341
8342         * lily/paper-column.cc: add #'used property
8343
8344         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8345         array for staves found.
8346
8347         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8348         array for stavesFound.
8349
8350         * lily/staff-spacing.cc (next_note_correction): add fixed and
8351         space to calling convention. This fixes spacing of accidentals
8352         after barlines.
8353
8354         * input/regression/spacing-accidental-stretch.ly: add barline -
8355         accidental case.
8356
8357         * scm/framework-ps.scm (page-header): add version number to
8358         creator
8359         (eps-header): idem.
8360
8361         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8362         
8363 2005-08-13  Graham Percival  <gpermus@gmail.com>
8364
8365         * Documentation/user/global.itely: add "fit as much as
8366         possible onto this page" example (Vertical spacing).
8367
8368 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8369
8370         * *: Nitpick run.
8371
8372         * buildscripts/fixcc.py: Fixes.
8373
8374 2005-08-12  Graham Percival  <gpermus@gmail.com>
8375
8376         * Documentation/user/advanced-notation.itely: add markup
8377         example to Text spanners.
8378
8379 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8380
8381         * Documentation/user/basic-notation.itely (Ties): Add example of
8382         tying a tremolo to a chord. Thanks to Steve Doonan. 
8383
8384         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8385         properties and move tieMelismaBusy to the list of written
8386         properties. 
8387
8388 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8389
8390         * po/TODO: suggest to use a dedicated tool like kbabel.
8391
8392         * po/fi.po: update using kbabel.
8393
8394 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8395
8396         * *: Remove obsolete files.  Nitpick run.
8397
8398         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8399
8400 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8401
8402         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8403         too.
8404
8405         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8406
8407         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8408         whitespace as symbol separator.
8409
8410         * lily/side-position-interface.cc: Add slur-padding.
8411
8412         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8413         quite a large fix, and it never worked in a stable release; so not
8414         really a regression.
8415
8416         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8417         Update cut and paste code from Slur_engraver.
8418
8419         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8420         Add.
8421
8422         * scm/define-grobs.scm (DynamicLineSpanner): Add
8423         dynamic-line-spanner-interface.
8424         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8425
8426 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8427
8428         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8429         to_boolean () so that non-set 'inside-slur means false.
8430
8431         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8432         slur has control-points.  Skip script without direction.  Always
8433         do_shift if script inside slur, even if slur not contained in
8434         script y-extent.  Increment k in loop.
8435
8436 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8437
8438         * scm/define-markup-commands.scm: Improved regexp to search for
8439         EPS bounding boxes and corrected call to ly:warning.
8440
8441 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8442
8443         * Documentation/user/programming-interface.itely (Displaying music
8444         expressions): doc for \displayLilyMusic. Also some precisions in
8445         "Markup construction in Scheme"
8446
8447 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8448
8449         * scm/define-markup-commands.scm (normal-text): Added 2 new
8450         markup commands, \normal-text and \medium (the latter thanks to
8451         Bruce Fairchild). 
8452
8453 2005-08-08  Graham Percival  <gpermus@gmail.com>
8454
8455         * Documentation/user/programming-interface.itely: fix @{ @}.
8456
8457         * scm/define-markup-commands.scm: add linewidth info to
8458         \justify and \wordwrap, add "upright is the opposite of italic".
8459
8460         * Documentation/user/advanced-notation.itely: shaped->shape,
8461         add (cons (markup "foo")) type of example to text markup,
8462         reword multi-measure rests section.
8463
8464         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8465         comment.  No actual code was touched.
8466
8467         * Documentation/user/invoking.itely: add more info about
8468         \include.  Thanks, Bruce!
8469
8470         * THANKS: add Bruce Fairchild, alphabetise.
8471
8472         * Documentation/user/global.itely: document \score{\header{}}
8473         behavior.
8474
8475         * Documentation/user/basic-notation.itely: reword multi-measure
8476         rest discussion in Rests.
8477
8478 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8479
8480         * Documentation/user/programming-interface.itely (Markup
8481         construction in Scheme): Corrected example and tried to clarify
8482         the implicit \line in the table.
8483
8484 2005-08-07  Graham Percival  <gpermus@gmail.com>
8485
8486         * Documentation/user/instrument-notation.itely: moved
8487         some bagpipe info back into the bagpipe section.  Somehow
8488         it ended up in the "other vocal issues" section?!  :o_O
8489
8490 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8491
8492         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8493         directories, not paths).
8494
8495 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8496
8497         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8498         plain emmentaler/aybabtu.  Backportme.
8499
8500         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8501         missing dir correction.
8502
8503 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8504
8505         * scm/define-markup-commands: fix reversed justify/wordwrap
8506         doc strings.
8507
8508 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8509
8510         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8511         lily/gregorian-ligature-engaver.cc,
8512         lily/include/ligature-engraver.hh,
8513         lily/include/coherent-ligature-engraver.hh,
8514         lily/include/gregorian-ligature-engraver.hh: make these classes
8515         truely abstract.  This should fix some internal oddities such as
8516         duplicate as well as dead translator/property declarations, and
8517         also some dead code.
8518
8519         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8520         bugfix: avoid message "junking empty ligature" on ligature
8521         brackets by collecting dummy grobs.
8522
8523 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8524
8525         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8526
8527         * input/proportional.ly (staffKind): bugfix.
8528         (staffKind): updates by Trevor Baca.
8529
8530         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8531         default layout. 
8532
8533         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8534         pair.
8535
8536         * lily/beam.cc (rest_collision_callback): call position_beam() if
8537         necessary.
8538
8539         * VERSION: release 2.7.4
8540
8541         * input/regression/spacing-uniform-stretching.ly: new file.
8542
8543         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8544
8545         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8546         contributor.
8547
8548         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8549
8550         * input/proportional.ly: new file.
8551
8552         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8553         columns is empty
8554
8555         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8556         bounds to currentCommandColumn for the last step.
8557         (start_translation_timestep): if tupletFullLength is set, set
8558         bound to Paper Column
8559
8560         * input/regression/tuplet-full-length.ly (indent): new file.
8561
8562         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8563         clique of loose columns, eg. a set of grace notes in strict
8564         notespacing.
8565
8566         * input/regression/spacing-strict-spacing-grace.ly: new file.
8567
8568         * lily/key-signature-interface.cc: change property name to
8569         alteration-alist
8570
8571         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8572         keyAccidentalOrder
8573
8574         * python/convertrules.py (conv): keyAccidentalOrder ->
8575         keyAlterationOrder
8576
8577         * lily/key-engraver.cc (create_key): always print a cancellation
8578         for going to C-major/A-minor, regardless of printKeyCancellation.
8579         (create_key): remove typecheck for visibility. This fixes key
8580         signature not being printed.
8581
8582         * lily/spacing-determine-loose-columns.cc: new file.
8583
8584         * input/regression/spacing-strict-notespacing.ly: new file.
8585
8586         * lily/spacing-spanner.cc (generate_springs): rename from
8587         do_measure. 
8588         (generate_pair_spacing): new function.
8589         (init, generate_pair_spacing): set between-cols for floating
8590         nonmusical columns.
8591
8592         * lily/spaceable-grob.cc (get_spring): new function. 
8593
8594         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8595         relative to the right edge of the prefatory matter.
8596
8597         * lily/beam.cc (print): read break-overshoot to determine where to
8598         stop/start broken beams.
8599
8600         * input/regression/spanner-break-overshoot.ly: new file.
8601
8602 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8603
8604         * ly/bagpipe.ly: updated.
8605
8606         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8607
8608 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8609
8610         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8611         support: now (de)crescs avoid slurs as well.
8612
8613         * Documentation/user/instrument-notation.itely (Bagpipe example):
8614         comment out non-functioning bagpipe example.
8615         (Bagpipe definitions): idem.
8616
8617         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8618         (Top): add proportionalNotationDuration example.
8619
8620         * input/regression/spacing-proportional.ly: new file.
8621
8622         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8623         synched to a beam.
8624
8625         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8626         fixes beams with a single stem (eg. beams across linebreaks.)
8627
8628         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8629
8630         * flower/rational.cc (operator +): prevent overflow. This fixes
8631         heavily nested tuplets.
8632
8633         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8634         have to protect even those unlikely to be corrupted data members.  
8635
8636 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8637
8638         * ly/bagpipe.ly: new file.
8639
8640         * THANKS: added Sven Axelsson.
8641
8642 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8643
8644         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8645         copy proportionalNotationDuration into currentMusicalColumn if
8646         set.
8647
8648         * lily/spacing-spanner.cc (musical_column_spacing): if
8649         uniform-stretching set, fixed space is 0.0
8650
8651         * input/regression/spacing-multi-tuplet.ly: show
8652         uniform-stretching property.
8653
8654         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8655
8656         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8657         (struct Spacing_options): new struct.
8658
8659         * lily/spacing-basic.cc: new file.
8660
8661         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8662         delta_t doesn't have to be smaller than shortest_playing_len
8663
8664 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8665
8666         * input/regression/markup-arrows.ly:  new file.
8667
8668         * lily/tuplet-bracket.cc: document new behavior.
8669
8670         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8671         with line breaks.
8672
8673         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8674
8675         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8676         default 
8677
8678         * lily/tuplet-bracket.cc: add edge-text property.
8679         add break-overshoot.
8680         (print): read break-overshoot.
8681         (print): read edge-text, add stencils.
8682
8683         * mf/feta-arrow.mf: new file.
8684
8685         * mf/feta-generic.mf: add feta-arrow.
8686
8687 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8688
8689         * Documentation/user/lilypond-book.itely (An example of a
8690         musicological document): Added flag -o to dvips for people who use
8691         the default setting in teTeX where output is sent to the printer. 
8692
8693         * Documentation/user/global.itely (Vertical spacing): Added
8694         reference to the Axis_group_engraver which documents the *Extent
8695         properties.
8696
8697 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8698
8699         * Documentation/user/basic-notation.itely (Tuplets): add note
8700         about nested tuplets. Remove BUG. 
8701
8702         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8703
8704         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8705         (print): manually call print() for subtuplets.
8706         (calc_position_and_height): add subtuplets to the
8707         support. Vertically shift outer tuplet 
8708
8709         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8710         remove-first for Lyrics, ChordNames and FiguredBass
8711
8712         * scm/define-grob-properties.scm (all-internal-grob-properties):
8713         use ly:grob-array? iso. grob-list?
8714         (all-internal-grob-properties): add tuplets grob-array.
8715
8716         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8717         new function
8718
8719 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8720
8721         * input/test/time-signature-staff.ly: new file.
8722
8723         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8724         spurious #<Music FingerEvent> errors. Backportme.
8725
8726 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8727
8728         * Documentation/user/programming-interface.itely (Markup
8729         construction in Scheme): Corrected markup syntax in the
8730         translation table.
8731
8732 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8733
8734         * Documentation/user/instrument-notation.itely: small update
8735         to bagpipe notation docs; thanks Sven!
8736
8737         * Documentation/user/basic-notation.itely: add link about trills.
8738
8739 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8740
8741         * Documentation/user/music-glossary: remove accidentally committed
8742         fink patch.
8743
8744 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8745
8746         * lily/lily-parser.cc (get_header): new function. Enable multiple
8747         \header definitions.
8748
8749         * lily/parser.yy (lilypond_header_body): use get_header.
8750
8751         * ly/init.ly:
8752         * scm/lily-library.scm (print-score-with-defaults): renamed
8753         $globalheader to $defaultheader
8754             
8755         * Documentation/user/global.itely (Creating titles): added short
8756         explanation that multiple headers are useable.
8757
8758
8759 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8760
8761         * lily/module-scheme.cc (LY_DEFINE): new file. 
8762
8763         * Documentation/user/advanced-notation.itely (Font selection): add
8764         doco for make-pango-font-tree.
8765
8766 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8767
8768         * Documentation/user/music-glossary: more languages
8769         for tenuto.
8770
8771         * Docuemntation/user/instrument-notation.itely: minor
8772         update for bagpipe example.
8773
8774 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8775
8776         * input/regression/+.ly (TODO): add some text.
8777
8778 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8779
8780         * Documentation/user/invoking.itely: \score begins with music.
8781
8782         * Documentation/user/ basic-notation.itely,
8783         instrument-notation.itely: minor changes.
8784
8785         * Documentation/user/music-glossary.itely: began tenuto entry.
8786
8787 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8788
8789         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8790
8791         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8792
8793 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8794
8795         * Documentation/user/examples.itely: remove bagpipe template.
8796
8797         * Documentation/user/instrument-notation.itely: add bagpipe
8798         section, maybe fix quotes in lyrics.  I hate text encoding.
8799         Clarify chord durations, more bagpipe stuff.
8800
8801 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8802  
8803         * lily/accidental-engraver.cc: formatting fixes.
8804
8805         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8806         grob-array.
8807
8808         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8809
8810         * lily/note-column.cc (arpeggio): new function.
8811
8812         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8813         account for spacing.
8814
8815 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8816
8817         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8818         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8819         mingw build.
8820         
8821 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8822
8823         * scm/lily.scm (lilypond-all): clear anonymous modules after
8824         processing files.
8825
8826 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8827
8828         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8829         SCM_I_CONSP
8830
8831         * VERSION: 2.7.3 released
8832
8833         * Documentation/user/invoking.itely (Invoking lilypond): add
8834         LILYPOND_GC_YIELD documentation.
8835
8836         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8837         scm_from_real / scm_make_real.
8838
8839         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8840         higher. This increases memory footprint, but provides overall
8841         speedup of 15 to 20%. 
8842
8843         * lily/include/translator.hh (class Translator): remove
8844         PRECOMPUTED_VIRTUAL everywhere.
8845
8846         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8847
8848         * lily/context.cc (now_mom): non-recursive now_mom() 
8849
8850         * lily/include/profile.hh: new file.
8851
8852         * lily/profile.cc: new file.
8853
8854         * lily/grob.cc (Grob::Grob): look properties up directly.
8855
8856         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8857         lookups.
8858
8859         * lily/include/box.hh (class Box): smob Box type.
8860
8861         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8862
8863         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8864         protect() and unprotect(). Use throughout.
8865
8866 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8867
8868         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8869
8870         * scm/define-music-display-methods.scm (markup->lily-string):
8871         markup elements can also be strings (without simple-markup
8872         appended)
8873
8874 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8875
8876         * lily/context.cc (where_defined): also assign value in
8877         where_defined().
8878
8879         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8880         (curve_coordinate): new function
8881
8882         * lily/simple-spacer.cc (add_columns): only add rods between
8883         column i and begin/end if keep-inside-line is set (this repleces
8884         allow-outside-line as default)
8885
8886 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8887
8888         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8889         tupletSpannerDuration if applicable.
8890
8891         * lily/font-size-engraver.cc (process_music): read fontSize only
8892         once per timestep.
8893
8894         * lily/engraver*cc: use throughout.
8895         
8896         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8897
8898         * lily/translator.cc (add_acknowledger): new file. Directly jump
8899         into an Engraver::acknowledge_xxx () method based on a grobs
8900         interface-list.
8901
8902         * lily/include/translator-dispatch-list.hh (class
8903         Engraver_dispatch_list): new struct, new file.
8904
8905         * scm/define-context-properties.scm
8906         (all-internal-translation-properties): remove acceptHashTable,
8907         acknowledgeHashTable
8908
8909         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8910
8911         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8912         change acknowledgeHashTable to C++ member. 
8913
8914         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8915
8916 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8917
8918         * scm/display-lily.scm: new file. Define a `display-lily-music'
8919         function, that displays the music expression given as an argument,
8920         using LilyPond notation.
8921
8922         * scm/define-music-display-methods.scm: new file. Implementation
8923         of display methods for each music type.
8924
8925         * ly/music-functions-init.ly (displayLilyMusic): new function for
8926         displaying music with LilyPond notation.
8927
8928         * input/regression/display-lily-tests.ly: new regression test file
8929         for `display-lily-music'.
8930
8931         * scm/markup.scm: remove obsolete debugging code (for printing
8932         markups with LilyPond notation).
8933
8934         * scm/define-music-types.scm (music-name-to-property-table):
8935         * scm/clef.scm (supported-clefs): export, in order to be accessible
8936         from the (scm display-lily) module.
8937
8938 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8939
8940         * Documentation/topdocs/NEWS.tely (Top): Typo.
8941
8942 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8943
8944         * Documentation/index.html.in, Documentation/texinfo.css,
8945           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8946           Documentation/bibliography/index.html.in,
8947           Documentation/bibliography/html-long.bst: revert css-width patch,
8948           it does not work with IE6.
8949
8950 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8951
8952         * Documentation/texinfo.css: revert 760px hack. 
8953
8954         * VERSION: release 2.7.2
8955
8956         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8957
8958         * Documentation/user/basic-notation.itely (Barnumber check): add
8959         section.
8960
8961         * scm/music-functions.scm (skip-to-last): new function. Show only
8962         last showLastLength part of the \score.
8963
8964         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8965
8966         * python/convertrules.py (conv): add ly:x-moment rule
8967
8968         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8969
8970         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8971
8972         * Documentation/user/instrument-notation.itely (Flexibility in
8973         alignment): options in subsections.
8974
8975         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8976         syllable text. Instead, assume that the previous lyric text is a
8977         melismated text.
8978
8979         * Documentation/index.html.in: revert 800x600 change.
8980
8981 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8982
8983         * lily/main.cc (main): Remove invalid handle kludge.
8984
8985         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8986         (lambda): add gui define.
8987
8988 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8989
8990         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8991
8992         * Documentation/user/instrument-notation.itely (Musica ficta
8993         accidentals): add section Musica ficta accidentals
8994
8995         * lily/accidental-engraver.cc (make_suggested_accidental): new
8996         function.
8997         (make_standard_accidental): move into new function.
8998         (create_accidental): new function.
8999
9000         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9001         AccidentalSuggestion
9002
9003         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9004
9005         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9006         undefined.
9007
9008         * Documentation/user/global.itely (Page formatting): document
9009         horizontalshift.
9010
9011         * scm/page-layout.scm (default-page-music-height):
9012         horizontalshift: new variable, shift all systems by
9013         horizontalshift to the right, to make space for instrument names.
9014
9015         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9016
9017         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9018
9019 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9020
9021         * lily/note-column.cc (dir): idem.
9022
9023         * lily/spacing-spanner.cc (Module): idem.
9024
9025         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9026
9027         * lily/include/paper-column.hh (class Paper_column): add
9028         non-static get_rank() member.
9029
9030         * VERSION: release 2.7.1
9031         
9032         * scm/framework-null.scm: new file, used for benchmarking.
9033
9034 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9035
9036         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9037         version dependencies for fontforge and gs.
9038
9039         * Documentation/index.html.in, Documentation/texinfo.css,
9040         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9041         Documentation/bibliography/index.html.in, 
9042         Documentation/bibliography/html-long.bst: optimize width of
9043         html for a 800x600 screen (width:760), increases printability
9044         when 'fit to page' is not set and readability in wide screens.
9045
9046         * stepmake/bin/add-html-footer.py: add missing </p>.
9047
9048 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9049
9050         * scm/define-markup-commands.scm (beam): use polygon in beam
9051         command.
9052
9053         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9054         all acknowledged grobs, and do potentially expensive merge and
9055         write in one go.
9056
9057         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9058
9059         * configure.in (reloc_b): add --enable-static-gxx to statically
9060         link to libstdc++
9061
9062         * lily/GNUmakefile (static-gxx-libs): new target
9063         static-gxx-libs. Create symlink to libstdc++.a
9064
9065         * lily/new-lyric-combine-music-iterator.cc: rename to
9066         Lyric_combine_music_iterator
9067
9068         * lily/lyric-combine-music-iterator.cc
9069         (Old_lyric_combine_music_iterator): rename to
9070         Old_lyric_combine_music_iterator
9071
9072         * lily/*-engraver.cc (various): remove double use of
9073         PRECOMPUTED_VIRTUAL function: only use
9074         start_translation_timestep() and stop_translation_timestep(), not
9075         both.
9076
9077         * lily/break-substitution.cc (fast_substitute_grob_array): do
9078         fast_substitute_grob_array for all unordered grob_arrays.
9079         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9080         (substitute_grob_array): optimize.
9081
9082         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9083
9084         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9085
9086         * lily/parser.yy: revert $globalheader patch.
9087         
9088         * lily/include/translator.icc
9089         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9090         Translator methods, without _static helper.
9091  
9092         * lily/grob-smob.cc (derived_mark): rename from
9093         do_derived_mark(). Return void.
9094
9095         * scm/define-context-properties.scm
9096         (all-internal-translation-properties): remove tweakCount/tweakRank.
9097
9098         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9099         predefined break-visibilities.
9100
9101         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9102         booleans for break-visibility.
9103
9104         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9105
9106         * python/convertrules.py (conv): rule for Timing_translator. 
9107
9108         * lily/include/translator.icc: new file. 
9109
9110         * lily/paper-column-engraver.cc (process_music): new
9111         file. Separate Paper_column factory from Score_engraver.
9112
9113         * lily/vertically-spaced-context-engraver.cc: administer
9114         spaceable-staves property of System.
9115
9116         * lily/translator-group-ctors.cc: new file.
9117
9118         * lily/context-property.cc (make_grob_from_properties): construct
9119         the right Grob class programmatically, looking at the class entry
9120         for the meta property.
9121
9122         * lily/break-align-engraver.cc (stop_translation_timestep): call
9123         Break_align_interface::add_element() directly.
9124
9125         * lily/context.cc (measure_position): measure_position() is now a
9126         normal function.
9127
9128         * lily/include/translator.hh (class Translator): rename
9129         process_acknowledged_grobs() to process_acknowledged() and move to
9130         Translator.
9131
9132         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9133         field for each grob description.
9134
9135         * lily/include/translator-group.hh (class Translator_group):
9136         change to base class. Separate class from Translator. This gets
9137         rid of virtual inheritance for Engravers/Performers.
9138
9139         * lily/staff-performer.cc (class Staff_performer): derive
9140         Staff_performer from Performer, not Performer_group_performer 
9141
9142         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9143         new function.
9144         (precompute_method_bindings): new function. Precompute lists of
9145         Translators, so we only call methods (process_music,
9146         start_translation_timestep, etc.) for Translators needing
9147         it. Also: dispose of pointer-to-member-function calls.
9148
9149         * lily/engraver-group-engraver.cc: remove engraver_each,
9150         recurse_down_engravers ()
9151
9152         * lily/note-head.cc (internal_print): only call
9153         glyph-name-procedure if style != default. 
9154
9155 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9156
9157         * ly/titling-init.ly: add printallheaders option.
9158
9159         * Documentation/user/global.itely: document printallheaders.
9160
9161 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9162
9163         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9164         anymore, but do it centrally.  
9165
9166         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9167         hammer hack.
9168
9169         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9170
9171         * scm/output-lib.scm: remove hammer-print-function.
9172
9173         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9174         macro. Declare a Link_array<Grob> and fill it from a grob.
9175         (extract_item_set): idem for item.
9176
9177         * lily/break-substitution.cc: add header.
9178         (fast_substitute_grob_array): rewrite for Grob_arrays.
9179         (substitute_grob_array): idem.
9180
9181         * lily/group-interface.cc (add_thing): remove file.
9182
9183         * flower/include/parray.hh (class Link_array): slice() is const.
9184
9185         * lily/include/grob-array.hh: new file.
9186
9187         * lily/grob-array.cc (spanner): new file.
9188
9189         * lily/beam-quanting.cc (fill): read details property from beam.
9190
9191         * lily/beam.cc: support details property.
9192
9193         * total speedups below: approx 10%.
9194
9195         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9196
9197         * lily/include/grob.hh (class Grob): add interfaces_ member.
9198
9199         * lily/bezier.cc (init_polynomial_cache): new function: cache
9200         binom(3,j) t^j (1-t)^{3-j}
9201         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9202
9203         * lily/*.cc: substitution throughout.
9204
9205         * lily/grob-property.cc (internal_get_object): new routine.
9206         (internal_set_object): idem. Store grob refrences in separate
9207         alist. This saves processing time, since properties aren't
9208         break-substituted, and the per grob namespace is smaller, both for
9209         grobs and non-grob properties.
9210
9211         * scm/define-grob-properties.scm (all-internal-grob-properties):
9212         remove center-element.
9213
9214         * lily/grob.cc: remove tweak-count, tweak-rank.
9215
9216 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9217
9218         * Documentation/user/lilypond-book.itely: fixes example.
9219
9220 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9221
9222         * Documentation/user/global.itely (Creating titles):    
9223         * Documentation/user/examples.itely (All headers): change the
9224         place of \header in \score blocks (after music block) to make
9225         examples compile (cf. changes on parser.yy on 2005-07-10)
9226
9227 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9228
9229         * python/convertrules.py: add exc -> ecc rule.
9230
9231         * scripts/convert-ly.py: add location of convertrules.py
9232         in a comment.
9233
9234         * Documentation/user/changing-defaults.itely: fix language.
9235
9236 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9237
9238         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9239
9240 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9241
9242         * scm/output-socket.scm (grob-bbox): don't use inf? 
9243
9244         * flower/include/rational.hh: add operator bool() 
9245
9246         * scm/define-music-types.scm (music-descriptions): remove
9247         internal-class-name properties.
9248
9249         * lily/include/event.hh: remove file.
9250
9251         * lily/include/music-constructor.hh: remove file.
9252
9253         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9254         in 'types property.
9255
9256         * lily/music.cc (duration_length_callback): new function.
9257
9258         * lily/event.cc: remove file.
9259
9260         * lily/music-constructor.cc: remove file.
9261
9262         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9263
9264         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9265         (get_context_key): idem.
9266
9267         * scm/lily.scm (lambda): new option object-keys (default to #f)
9268
9269         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9270
9271         * scm/output-gnome.scm: remove beam routine.
9272
9273         * scm/output-ps.scm (scm): idem.
9274
9275         * scm/output-svg.scm: remove beam.
9276
9277         * ps/music-drawing-routines.ps: remove draw_beam.
9278
9279         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9280
9281         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9282         add scm_from_locale_string compatibility glue. 
9283
9284 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9285
9286         * scripts/lilypond-book.py: Prevent occuring error when
9287         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9288         times and target file shoud be overwritten.  (Error message said
9289         'input file and output file is same'.)
9290
9291 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9292
9293         * input/regression/slur-extreme.ly,
9294         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9295         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9296         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9297         "excentricity" to "eccentricity".
9298
9299         * Documentation/user/converters.itely: fix URL for Noteedit and
9300         Rosegarden.
9301
9302         * THANKS: added Yoshinobu Ishizaki.
9303
9304 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9305
9306         * scm/define-markup-commands.scm (justify-field): add. 
9307
9308         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9309
9310 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9311
9312         * lily/lookup.cc (filled_box): express filled_box with
9313         round_filled_box
9314
9315         * scm/midi.scm (paper-book-write-midis): new function. Write all
9316         performances in numbered MIDI files.
9317
9318         * lily/performance-scheme.cc (LY_DEFINE): new file.
9319         (LY_DEFINE): new function ly:performance-write.
9320
9321         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9322         new function.
9323         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9324
9325         * scm/framework-*.scm: use port arguments throughout.
9326
9327         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9328
9329         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9330
9331         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9332
9333         * scm/framework-texstr.scm (output-framework): 
9334
9335         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9336
9337         * scm/output-lib.scm (tablature-stem-attachment-function):
9338         tablature stem attachment fix. 
9339
9340 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9341
9342         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9343
9344         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9345
9346         * scm/define-music-types.scm (music-descriptions): don't use
9347         Music_wrapper type.
9348
9349         * lily/paper-column.cc (print): print moment too.
9350
9351         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9352         remove compatibility cruft.
9353
9354         * lily/parser.yy (score_body): \score can only begin with Music. 
9355
9356         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9357         make-score. Take music argument only. Move parser interaction to
9358         Scheme.
9359
9360         * scm/lily-library.scm (scorify-music): new function.
9361
9362         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9363         (datadir): remove resource import.
9364         (print_environment): remove get_bbox()
9365         (cp_to_dir): remove pre 1.5.2 compat glue.
9366
9367 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9368
9369         * lily/include/simple-spacer.hh (Module): idem.
9370
9371         * lily/include/spring.hh (struct Spring): store inverse
9372         strength. This prevents division by zero.
9373
9374         * VERSION: release 2.7.0
9375         
9376         * lily/include/music.hh (class Music): remove Music::duration_log()
9377
9378         * lily/stem-engraver.cc (make_stem): take duration log from event.
9379
9380         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9381
9382 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9383
9384         * scm/lily.scm (ly:load): load autochange.scm
9385
9386         * Documentation/user/tutorial.itely (Running LilyPond for the
9387         first time): remove reference to DVI/TeX
9388
9389         * scm/define-markup-commands.scm (text): add \text markup command.
9390
9391         * configure.in (reloc_b): bump requirement to Python 2.2.
9392
9393         * lily/include/dots.hh (class Dots): make has_interface() static.
9394
9395         * python/convertrules.py (conv): add rule for ly:grob-default-font
9396
9397         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9398         alphabetical order.
9399
9400         * input/regression/trill-spanner-pitched.ly: new file.
9401
9402         * lily/font-interface-scheme.cc (LY_DEFINE): function
9403         ly:grob-default-font (changed from get-default-font).
9404
9405         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9406
9407         * lily/note-head.cc (internal_print): if style is not a symbol,
9408         set style to 'default. 
9409         (internal_print): no style suffix if glyph-name-procedure not
9410         set. Default to quarter head.
9411
9412         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9413
9414         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9415
9416         * ly/music-functions-init.ly: \pitchedTrill
9417
9418         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9419
9420         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9421
9422         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9423
9424         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9425
9426         * po/fr.po: update
9427
9428         * po/de.po: update.
9429
9430 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9431
9432         * Documentation/user/changing-defaults.itely: add link
9433         to grob-iterface.
9434
9435         * Documentation/user/advanced-notation.itely: add material
9436         to Setting automatic beam behaviour.  Thanks, Joe!
9437
9438         * Documentation/user/lilypond.itely: change encoding to utf-8.
9439
9440 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9441
9442         * Documentation/user/advanced-notation.itely (Setting automatic
9443         beam behavior): Correct the documentation of
9444         revert-auto-beam-setting (backportme)
9445
9446 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9447
9448         * lily/ly-module.cc (ly_make_anonymous_module): define
9449         %module-public-interface of module. 
9450
9451         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9452         without lexer.
9453
9454 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9455
9456         * input/regression/fret-diagrams.ly: stretch example.
9457
9458 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9459
9460         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9461         Fodor).
9462
9463 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9464
9465         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9466
9467         * Documentation/user/examples.itely, lilypond-book.itely:
9468         change \RequirePackage to \usepackage.
9469
9470         * Documentation/user/global.itely: document copyright and tagline.
9471
9472 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9473
9474         * Documentation/user/basic-notation.itely (Transpose): remove link
9475         to nonexistent UntransposableMusic.
9476
9477         * scm/output-svg.scm: remove old definitions.
9478
9479         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9480         invoking.
9481
9482         * python/lilylib.py (search_exe_path): new function.
9483
9484 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9485
9486         * python/lilylib.py (mkdir_p): remove setup_environment()
9487         (backportme)
9488
9489         * buildscripts/mutopia-index.py (headertext): trim text.
9490
9491         * Documentation/topdocs/NEWS.tely (Top): refresh.
9492
9493         * scm/define-markup-commands.scm (wordwrap-string): new function:
9494         split string in paras and words.
9495         (wordwrap-markups): new function.
9496         (wordwrap-stencils): new function. 
9497         (justify): use it.
9498         (wordwrap): use it.
9499         (wordwrap-string): use it
9500         (justify-string): use it.
9501
9502         * scm/lily-library.scm (regexp-split): new function.
9503
9504         * scm/define-markup-commands.scm: remove encoded-simple. 
9505         remove font-markup.
9506         (fontsize): remove old version  of fontsize.
9507         (wordwrap): new markup function. Wrap into paragraphs.
9508
9509         * VERSION: Branch lilypond_2_6
9510         (MINOR_VERSION): go to 2.7.0
9511
9512 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9513
9514         * po/zh_TW.po: update from translation project.
9515
9516 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9517
9518         * scm/midi.scm: compile fix.
9519
9520 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9521
9522         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9523         patch. Now, the tempfile module is loaded too, not only used.
9524
9525 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9526
9527         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9528         0.05 - 1.00 to 0.25 - 1.00
9529
9530         * scm/midi.scm: moved the default-instrument-equalizer procedure
9531         to just under the insturment-equalizer-alist it takes as an
9532         argument.
9533
9534 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9535
9536         * Documentation/user/advanced-notation.itely (Font selection):
9537         remove CMR note.
9538
9539         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9540
9541 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9542
9543         * THANKS: Add UTF-8 marker.
9544
9545         * Documentation/user/point-and-click.itely (http): Update: use
9546         lilypond-invoke-editor.  Fix: instruct to use user.js.
9547
9548 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9549
9550         * ly/titling-init.ly: implements printpagenumber, increases
9551         space between dedication and title (to avoid collisions with
9552         "g" and "q" in dedication), and nicer logic about copyright
9553         and instrument fields being printed on the first page.
9554         Thanks Vincent!
9555
9556         * Documentation/user/global.itely: document printpagenumber.
9557
9558 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9559
9560         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9561
9562 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9563
9564         * THANKS: update to 2.6
9565
9566         * VERSION: 2.6.0 released.
9567
9568 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9569
9570         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9571         rule, errorneously removed probably because of misleading comment.
9572
9573 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9574
9575         * python/lilylib.py (datadir): py2exe comments.
9576
9577         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9578
9579         * configure.in (reloc_b): make fontconfig REQUIRED.
9580
9581 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9582
9583         * po/fi.po: add latest translations.
9584
9585 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9586
9587         * ChangeLog: recode utf-8
9588
9589         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9590         logo.
9591
9592         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9593
9594         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9595
9596         * python/convertrules.py (do_conversion): don't print program_name
9597         from within a module
9598
9599         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9600
9601         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9602
9603 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9604
9605         * Documentation/user/lilypond-book.itely,
9606         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9607
9608         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9609         fixes baseline-skip.  Thanks Vincent!
9610
9611         * Documentation/user/advanced-notation.itely, global.itely:
9612         moved "Selecting font sizes" to global, since it deals with
9613         notation font size, not text fonts.
9614
9615 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9616
9617         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9618         to fonts.
9619
9620 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9621
9622         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9623         workaround since /dev/stdin doesn't work on Cygwin. Using a
9624         temporary file in the current directory since latex doesn't
9625         understand the path name to the default TMP in Cygwin (at least on
9626         win XP).
9627         
9628         * Documentation/user/global.itely (Creating titles): Correct
9629         misprint in example. Thanks to Rob Vlasaty.
9630
9631 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9632
9633         * VERSION (PATCH_LEVEL): release 2.5.32
9634
9635         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9636         variable in lily module
9637
9638         * scm/framework-ps.scm (output-classic-framework): error message
9639         regarding the classic framework.
9640
9641         * Documentation/user/henle-flat-gray.png (Module): new file.
9642
9643         * Documentation/user/baer-flat-gray.png (Module): new file.
9644
9645         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9646         whiteout for markups.
9647
9648         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9649         regex too. This fixes change clef appearance in PDF. 
9650
9651         * ttftool/include/*: remove.
9652
9653         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9654
9655         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9656
9657         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9658
9659         * ttftool/*: remove ttftool subdirectory.
9660
9661         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9662
9663         * lily/ttf.cc (print_header): new file. Convert to type42, using
9664         FreeType to parse the TTF. 
9665
9666         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9667         and post table may differ. Pass around post_nglyphs as well.
9668
9669 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9670
9671         * ly/music-functions-init.ly (musicMap): new music function
9672         musicMap. 
9673         
9674 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9675
9676         * make/mutopia-rules.make: anti-alias-factor = 2
9677
9678         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9679         page switch.
9680
9681         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9682         anti-alias-factor for lilypond-book runs.
9683
9684         * scm/ps-to-png.scm (scale-down-image): new function.
9685         (my-system): new function.
9686         (make-ps-images): blow up GS resolution by anti-alias-factor,
9687         scale down image by anti-alias-factor.  This improves appearance
9688         of bitmaps
9689         (make-ps-images): remove showpage. Fixes spurious empty png at
9690         end.
9691
9692         * scm/framework-ps.scm (write-preamble): downcase filename before
9693         string-matching. Should fix .TTF files (as opposed to ttf files)  
9694
9695         * Documentation/user/tutorial.itely (Running LilyPond for the
9696         first time): separate subsections for windows, macos and unix.  
9697
9698         * Documentation/user/invoking.itely (Updating files with
9699         convert-ly): add MacOS X note.
9700
9701 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9702
9703         * Documentation/user/introduction.itely (Engraving): don't include
9704         file optical-spacing, add directly.
9705
9706         * lily/paper-outputter.cc (file): open file in binary mode. This
9707         fixes OTF embedding on windows.
9708
9709 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9710
9711         * scm/framework-ps.scm (write-preamble): remove debugging output.
9712
9713         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9714
9715         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9716         outdir.
9717         (install-fc-cache): install font cache in installation directories.
9718
9719 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9720
9721         * scm/editor.scm (editor-command-template-alist): Use char iso
9722         column, except for Emacs.
9723         (get-editor-command): Substitute char too (Bertalan Fodor).
9724
9725 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9726
9727         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9728         quoted ~s.  This should fix PNG output on Windows; single quotes
9729         are regular characters on Windows.
9730
9731 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9732
9733         * Documentation/user/basic-notation.itely: include ChoirStaff
9734         in System start delimiters.
9735
9736         * Documentation/user/putting.itely: new doc section on
9737         fixing overlapping notation.
9738
9739 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9740
9741         * Documentation/user/global.itely (Paper size): \paper is in
9742         \book, not \score.
9743
9744         * make/mutopia-rules.make: -ddelete-intermediate-files
9745
9746         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9747
9748 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9749
9750         * ChangeLog: Recode utf-8.
9751
9752         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9753         datadir with .py modules.
9754
9755 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9756
9757         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9758
9759 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9760
9761         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9762         
9763         * scm/framework-ps.scm (write-preamble): remove status check.
9764
9765         * Documentation/user/invoking.itely (Updating files with
9766         convert-ly): remove -o option.
9767
9768         * VERSION (PACKAGE_NAME): release 2.5.31
9769
9770         * scm/framework-ps.scm (write-preamble): use ly:system.
9771         (write-preamble): verbosity.
9772
9773         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9774
9775         * python/convertrules.py: new file. Store conversion rules
9776         separately.
9777
9778 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9779
9780         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9781
9782 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9783
9784         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9785         \musicDisplay 
9786
9787         * Documentation/user/instrument-notation.itely (More stanzas): Add
9788         reference to StanzaNumber.
9789
9790 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9791
9792         * THANKS: separate section for website translators.
9793
9794 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9795
9796         * Documentation/topdocs/INSTALL.texi: update vim info;
9797         thanks Simon Bailey!
9798
9799         * Documentation/user/advanced-notation.itely: included
9800         color names.
9801
9802         * Documentation/user/advanced-notation.itely,
9803         Documentation/usr/notation-appendices.itely: moved
9804         color names into an appendix.
9805
9806 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9807         
9808         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9809
9810         * scm/lily.scm (lambda): initialize program options from here.
9811
9812         * scm/framework-*.scm: add header info.
9813
9814         * lily/main.cc (parse_argv): only set output format to pdf if no
9815         other format specified.
9816
9817         * scm/backend-library.scm (postprocess-output): process
9818         'delete-intermediate-files after running convert-to-*. This fixes
9819         PNG generation when 'delete-intermediate-files is set.
9820         
9821 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9822
9823         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9824         links on website. 
9825
9826 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9827
9828         * Documentation/topdocs/INSTALL.texi,
9829         Documentation/user/lilypond-book.itely: typos.
9830
9831 2005-06-12  Pal Benko  <benkop@freestart.hu>
9832
9833         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9834         added between program name and switch; -b changed to -f not
9835         to generate pdf
9836
9837 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9838
9839         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9840         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9841
9842         * input/sakura-sakura.ly: add \midi.
9843
9844         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9845         iso. python find. 
9846
9847         * ttftool/test.c (main): cosmetics.
9848
9849         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9850
9851         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9852         create a ttf2ps binary.
9853
9854         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9855
9856         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9857         true.
9858
9859 2005-06-11  Graham Percival <gperlist@shaw.ca>
9860
9861         * Documentation/user/lilypond-book.itely: add warning about
9862         the font warnings in dvips.
9863
9864 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9865
9866         * THANKS: typo
9867
9868         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9869
9870         * GNUmakefile.in: remove links for .map, .enc
9871         don't fail if out/ doesn't exist yet.
9872
9873 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9874
9875         * ttftool/util.c (surely_read): return nbytes
9876
9877         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9878
9879         * VERSION (PACKAGE_NAME): release 2.5.30
9880
9881         * flower/string-convert.cc (precision_string): >? fix.
9882
9883         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9884         (make-ps-images): add verbose -q too.
9885
9886         * lily/default-actions.cc (Module): new file. default
9887         {book,score}-print functions.
9888
9889         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9890         pass results via parseStringResult, lookup via ly:parser-lookup.  
9891
9892         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9893         constructors.
9894         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9895         (parse_string): idem.
9896
9897         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9898
9899         * lily/main.cc (main_with_guile): copy be_verbose_global into
9900         ly_set_option()
9901
9902 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9903
9904         * scm/backend-library.scm (postscript->pdf):
9905         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9906         verbose mode.  Search for several names of gs executable.
9907
9908 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9909
9910         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9911         directly. This fixes a massive memory leak, provided you use CVS
9912         GUILE.
9913
9914 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9915
9916         * ly/property-init.ly: Added tieDashed.
9917
9918         * THANKS: Added some bughunters for 2.5.
9919
9920 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9921
9922         * lily/program-option.cc: add debug-gc option.
9923
9924         * lily/include/lily-guile-macros.hh: don't protect exported module
9925         objects.
9926
9927         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9928
9929         * scm/backend-library.scm (postscript->pdf): use
9930         delete-intermediate-files iso. running-from-gui? 
9931
9932         * ttftool/util.c (surely_read): robustness. Allow read() to return
9933         less bytes than requested, as per posix standards.
9934
9935         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9936         program option.
9937
9938         * ttftool/include/ttftool.h ("C"): rename verbosity to
9939         ttf_verbosity. Add to public interface.
9940
9941         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9942
9943         * lily/program-option.cc: rename from scm-option.cc
9944
9945         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9946         (get_help_string): Print pretty help string.
9947
9948         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9949         to snippet preamble.
9950
9951         * lily/scm-option.cc: remove command-line-settings option. Fold
9952         all command-line options plus default settings in a generic
9953         interface. 
9954
9955         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9956         texts too.
9957
9958 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9959
9960         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9961         or EXT_ components non-empty.
9962
9963 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9964
9965         * scm/lily.scm (running-from-gui?): Export.
9966
9967         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9968         output in .ly source directory.
9969
9970 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9971
9972         * ttftool/util.c (surely_lseek): more verbosity.
9973
9974         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9975         compile.
9976
9977         * lily/parser.yy (Repeated_music): remove >? 
9978
9979         * scm/backend-library.scm (postscript->pdf): Support for
9980         -dgs-font-load=1
9981
9982         * scm/framework-ps.scm (write-preamble): make font loading
9983         switchable to GS via --define-default gs-font-load=1
9984
9985 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9986
9987         * Documentation/user/global.itely: added \layout docs.
9988
9989 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9990
9991         * lily/lily-parser-scheme.cc: add unistd.h
9992
9993 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9994
9995         * scm/editor.scm: add char argument.
9996
9997         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9998
9999         * ttftool/util.c (syserror): use errno for better error reporting.
10000
10001         * lily/source-file.cc (get_counts): new function. Calc column,
10002         line and char count in one go.
10003
10004         * lily/binary-source-file.cc (quote_input): rename to quote_input
10005
10006         * lily/input.cc (set): new function.
10007
10008 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10009
10010         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10011         directory part of file name to search directory.
10012
10013         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10014         search path and chdir to DIR if --outname=DIR used.
10015
10016         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10017         existence before appending original path.
10018
10019 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10020
10021         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10022         file" massage.
10023
10024         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10025         texinfo.tex is always used.
10026         
10027 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10028
10029         * flower/include/axis.hh: rename from axes.hh
10030
10031         * lily/include/text-interface.hh (Module): rename from text-item.hh
10032
10033         * VERSION (PATCH_LEVEL): release 2.5.29
10034
10035         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10036
10037         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10038         (handle-macfont): new function. Call fondu for Native mac fonts.
10039
10040         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10041         '() case.
10042
10043 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10044
10045         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10046         multi-page.  Fix .eps regular expression.
10047
10048 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10049
10050         * Documentation/user/putting.itely: add info on modifying templates.
10051
10052         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10053         misc small changes.
10054
10055 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10056
10057         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10058
10059         * scripts/lilypond-ps2png.scm
10060
10061         * VERSION (PACKAGE_NAME): release 2.5.28
10062
10063 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10064
10065         * lily/main.cc (prepend_env_path): Do not append /, that does not
10066         work.  Localedir lives in datadir, not in prefix.
10067
10068         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10069         hack for windows.
10070
10071         * flower/include/file-cookie.hh: Compile fix.
10072
10073 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10074
10075         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10076
10077         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10078         system primitives.
10079         (gulp-port): using read-string!/partial. We don't want to read an
10080         entire PS file  (GUILE 1.6 limits strings to 16M) 
10081
10082         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10083         properties. Add font-interface. 
10084
10085         * scm/define-grob-properties.scm (all-user-grob-properties):
10086         remove old bracket properties.
10087
10088         * scm/x11-color.scm: reformat. 
10089
10090         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10091         LedgerLineSpanner if new StaffSymbol is found. 
10092
10093         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10094         staff-symbol for finishing staff. 
10095
10096         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10097
10098         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10099         change black to currentColor everywhere. This fixes color support
10100         in SVG.
10101
10102 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10103
10104         * input/regression/fret-diagrams.ly: new file to test fret diagram
10105         capability
10106
10107         * scm/output-tex.scm: remove white-dot and white-text
10108
10109         * scm/output-ps.scm: remove white-dot and white-text
10110
10111         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10112         using ly:stencil-in-color instead
10113         (draw-dots) : remove call to white-dot
10114
10115 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10116
10117         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10118         support.
10119
10120         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10121
10122         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10123
10124         * flower/file-cookie.cc: new file. lily_cookie extension.
10125         
10126 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10127
10128         * scm/editor.scm (editor-command-template-alist): Add syn
10129         editor (Jaap [de Vos]).
10130
10131 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10132
10133         * scripts/lilypond-ps2png.scm:
10134         * scm/ps-to-png.scm: New file.
10135
10136         * scm/backend-library.scm (postscript->png): Use it.
10137
10138         * scripts/lilypond-ps-to-png.py: Remove file.
10139
10140         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10141
10142 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10143
10144         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10145
10146         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10147         start on grace moment. Fixes autobeam-grace.ly.
10148
10149         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10150         process anything unless we're at the end of a pending beam. Fixes
10151         syncopated 8ths beamed across a beat.
10152
10153 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10154
10155         * scm/editor.scm (editor-command-template-alist): Start emacs if
10156         emacslient fails.
10157
10158         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10159
10160         * flower/file-path.cc (is_file, is_dir): Export.
10161
10162         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10163
10164 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10165
10166         * lily/easy-notation.cc: Added include cctype to correct
10167         compilation error.
10168
10169 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10170
10171         * scm/backend-library.scm (postscript->pdf): set resolution to
10172         1200, so bitmap fonts aren't that ugly. 
10173
10174         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10175
10176         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10177         parent if we have a notehead. Fixes incorrect offsets when
10178         Paper_column is very wide in the X direction.
10179
10180         * input/regression/font-family-override.ly (Module): new file.
10181
10182         * scm/font.scm (make-pango-font-tree): new function.
10183
10184         * lily/beam.cc (before_line_breaking): remove warning about less
10185         than 2 visible stems. We still get a warning when there is only
10186         one stem.
10187
10188 2005-06-01  Werner Lemberg  <wl@gnu.org>
10189
10190         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10191         correctly.
10192
10193 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10194
10195         * lily/slur-scoring.cc (generate_avoid_offsets): new
10196         function. Generate avoid offsets once per slur.
10197
10198         * lily/slur.cc (add_extra_encompass): add dependency to
10199         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10200
10201         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10202         too. Fixes inf error with added bass notes.
10203
10204         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10205         argument anymore.
10206
10207         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10208
10209         * input/tutorial/lbook-latex-test.tex: add line length test.
10210
10211         * scripts/lilypond-book.py (set_default_options): new
10212         function. Call this before dissecting snippets, so linewidth
10213         settings reach the snippets.
10214
10215 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10216
10217         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10218
10219 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10220
10221         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10222
10223 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10224
10225         * stepmake/aclocal.m4: More autopackage friendliness.
10226
10227 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10228
10229         * Documentation/index.html.in: remove link to LSR.
10230
10231         * Documentation/user/global.itely: remove duplicate
10232         "dedication" \header{} section.
10233
10234 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10235
10236         * VERSION (PACKAGE_NAME): release 2.5.27.
10237
10238         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10239         too. Plugs memory leak.
10240
10241         * make/lilypond.fedora.spec.in (Group): remove
10242         lilypond-pdfpc-helper.
10243
10244         * scripts/GNUmakefile (SEXECUTABLES): remove
10245         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10246
10247         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10248         'typewriter family.
10249
10250         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10251         memory leak.
10252
10253         * lily/parser.yy (score_body): don't clone Score, that's done in
10254         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10255
10256         * lily/score-engraver.cc (derived_mark): new function.
10257         (initialize): unprotect Paper_score. This fixes a memory leak.
10258
10259         * lily/score-performer.cc (derived_mark): new function.
10260
10261         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10262
10263         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10264         spurious warning.
10265
10266         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10267         serif.
10268
10269 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10270
10271         * configure.in (reloc_b): Add --enable-relocation.
10272
10273 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10274
10275         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10276
10277         * input/regression/alignment-order.ly: add Staff example.
10278
10279 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10280
10281         * po/fr.po: update.
10282
10283 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10284
10285         * Documentation/index.html.in: add link to LSR.
10286
10287 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10288
10289         * scm/define-stencil-commands.scm (Module): new file. Register all
10290         allowed stencil expression heads in a central place.
10291
10292         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10293         ly:make-stencil
10294
10295         * lily/stencil-expression.cc (all_stencil_heads): registering
10296         stencil expressions.
10297
10298         * lily/stencil-interpret.cc: new file. Stencil expression
10299         interpreting.
10300
10301         * input/xiao-haizi-guai-guai.ly: move file back.
10302
10303 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10304
10305         * Documentation/user/advanced.itely, converters.itely,
10306         instrument-notation.itely, lilypond-book.itely: misc small
10307         changes.
10308
10309 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10310
10311         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10312
10313         * make/lilypond.fedora.spec.in: Fix source url.
10314
10315         * cygwin: Update from mingw patches.
10316
10317         * scm/editor.scm (editor-command-template-alist): Use jedit
10318         -reuseview (Bertalan), add uedit (Patrick Huberts).
10319
10320         * input/xiao-hai-zi-guai-guai.ly: Rename from
10321         xiao-haizi-guai-guai.ly.
10322
10323         * input/*: Reindent, do not use TAB.
10324
10325         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10326         white background.
10327
10328 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10329
10330         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10331         numerical overflow error.
10332
10333 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10334         
10335         * abc2ly.py: fix to syntax error in multi-part output.
10336
10337 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10338
10339         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10340         with disappearing span bars when alignAboveContext is active
10341
10342         * lily/property-iterator.cc (check_grob): use is-grob?
10343         object-property. Fixes crash-key-sig-font-size.ly. 
10344
10345 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10346
10347         * lily/bar-line.cc (print): don't round barlines; this produces
10348         odd aliasing effects in Acroread.
10349
10350         * lily/timing-engraver.cc (process_music): robustness fix.
10351
10352         * lily/context-def.cc (filter_engravers): bugfix.
10353
10354 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10355
10356         * lily/lilypond.rc.in: Add ly-icon.
10357
10358         * lily/GNUmakefile: 
10359         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10360         rules.
10361
10362 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10363
10364         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10365
10366         * ps/music-drawing-routines.ps: 
10367
10368         * scm/output-ps.scm: remove draw ez_ball.
10369
10370         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10371         EasyNotation context definition.
10372
10373         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10374         Text_interface and color for making easy note heads.
10375
10376         * lily/stencil.cc (with_color): new function.
10377
10378         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10379
10380         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10381         output routine. Zigzag now works in SVG too.
10382
10383         * scm/output-tex.scm (filledbox): idem.
10384
10385         * scm/output-svg.scm (filledbox): idem.
10386
10387         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10388
10389         * lily/lookup.cc (horizontal_line): use draw-line. 
10390
10391         * lily/system-start-delimiter.cc: remove old staff bracket code.
10392
10393         * mf/feta-haak.mf: further tweaks.
10394
10395         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10396
10397         * mf/feta-generic.mf: include feta-haak.
10398
10399         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10400
10401         * scm/framework-ps.scm (write-preamble): only load fonts if their
10402         filename is a string. 
10403
10404 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10405
10406         * scm/output-svg.scm (circle): support circle.
10407         (bracket): stub for bracket.
10408
10409         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10410         correct.
10411
10412 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10413
10414         * Documentation/user/lilypond.tely, advanced-notation.itely,
10415         basic-notation.itely, instrument-notation.itely, global.itely,
10416         introduction.itely, tutorial.itely: rearranging, editing,
10417         clean-up.
10418
10419         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10420         for compiling on FreeBSD.
10421
10422 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10423
10424         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10425         otf files.
10426
10427         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10428         bugfixes.
10429
10430         * VERSION: 2.5.26 released.
10431
10432         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10433
10434 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10435
10436         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10437         if printpagenumber is false.
10438
10439 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10440
10441         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10442         cache warning.
10443
10444         * lily/tie.cc (print): support dotted ties.
10445         
10446 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10447
10448         * scm/define-grobs.scm (all-grob-descriptions): switch off
10449         debugging
10450         (all-grob-descriptions): Arpeggio has Y-extent.
10451
10452         * scm/define-music-properties.scm (all-music-properties): document
10453         length-callback and start-callback as "read-only".
10454
10455         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10456         length-callback after creation. 
10457
10458         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10459         compressmusic -> compressMusic.
10460
10461         * ly/music-functions-init.ly (oldaddlyrics): idem.
10462
10463         * lily/parser.yy: NewLyricCombineMusic ->
10464         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10465
10466 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10467
10468         * ly/Welcome_to_LilyPond.ly: typo.
10469
10470 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10471
10472         * Documentation/user/lilypond.tely: move changing-defaults to be
10473         before global issues.
10474
10475         * Documentation/user/basic-notation.itely: move Transpose section
10476         here from advanced/Other.
10477
10478         * Documentation/user/changing-defaults.itely,
10479         advanced-notation.itely: move Fonts to advanced, edit.
10480
10481 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10482
10483         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10484         # before negative integers.
10485
10486 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10487
10488         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10489
10490         * Documentation/user/lilypond.tely: change Unified index to
10491         LilyPond index.
10492
10493         * Documentation/user/advanced-notation.itely,
10494         instrument-notation.itely: editing.
10495
10496 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10497
10498         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10499
10500         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10501
10502 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10503
10504         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10505         ly:port-move.  Needs to be stderr-specific on mingw.
10506         Run fixcc.
10507
10508 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10509
10510         * lily/general-scheme.cc (ly:port-move): Remove.
10511
10512         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10513         windows.
10514
10515         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10516         variables.  This eliminates the need for a gs.bat wrapper, which
10517         opens a console.
10518
10519         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10520         * scm/lily.scm (running-from-gui?): 
10521         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10522         artifact of not compiling with -mwindows.
10523
10524         * scm/editor.scm: Define PLATFORM.
10525
10526 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10527
10528         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10529         can start to cut & paste lilypond-book fragments.  
10530
10531         * scm/define-music-types.scm (music-descriptions): remove
10532         UntransposableMusic
10533
10534 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10535
10536         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10537
10538 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10539
10540         * Documentation/user/instrument-notation.itely: remove *Engraver.
10541
10542         * Documentation/user/advanced-notation.itely: edit, rearrange.
10543
10544 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10545
10546         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10547         findresource iso. findfont for CID CFF fonts.
10548
10549         * VERSION (PACKAGE_NAME): release 2.5.25
10550
10551         * ly/Welcome_to_LilyPond.ly: add  \version
10552
10553 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10554
10555         * Documentation/user/programming-interface.itely: move
10556         \displayMusic into its own section.
10557
10558         * Documentation/user/basic-notation.itely: finish editing.
10559
10560 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10561
10562         * flower/file-path.cc (find): don't throw away file_name.dir, but
10563         append to it. Fixes \include with directories.
10564
10565         * flower/include/file-path.hh (class File_path): don't derive from
10566         Array<String>.
10567
10568         * flower/include/file-name.hh (class File_name): remove to_str0()
10569
10570         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10571         Hara_kiri_engraver in separate file.
10572
10573         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10574         translation went wrong. Fixes vertically translated slurs.
10575
10576 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10577
10578         * Documentation/user/basic-notaton.itely: editing.
10579
10580 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10581
10582         * Documentation/user/macros.itexi, basic-notation.itely:
10583         add @commonprop (commonly used properties) macro.
10584
10585 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10586
10587         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10588
10589         * scripts/lilypond-book.py (invokes_lilypond): new function
10590         (main): only run fontextract if invokes_lilypond() is true.
10591
10592         * lily/function-documentation.cc (ly_add_function_documentation):
10593         duh, use !=
10594
10595         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10596
10597         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10598
10599         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10600
10601         * lily/function-documentation.cc (ly_add_function_documentation):
10602         use scm_hash_table_p() for checking.
10603
10604 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10605
10606         * Documentation/user/advanced-notation.itely (Text scripts):
10607         Change nonexisting @internalsref{Text markup} to @ref{Text
10608         markup}.  Change @internalsref{Text script} to
10609         @internalsref{TextScript}.
10610
10611         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10612
10613 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10614
10615         * Documentation/user/tutorial.itely, basic-notation.itely,
10616         changing-defaults.itely: remove duplicate cindex entries
10617         that appear on the same page.
10618
10619         * scm/define-grobs.scm: change default padding for TextSpanner.
10620
10621         * Documentation/topdocs/AUTHORS.texi: update email address.
10622
10623         * Documentation/user/global.itely: add info about \include.
10624
10625 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10626
10627         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10628         when running-from-gui.
10629
10630         * scm/editor.scm (get-editor): Add platform defaults.
10631
10632         * scm/backend-library.scm (postscript->pdf): Typo.
10633
10634 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10635
10636         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10637
10638         * lily/font-config.cc (init_fontconfig): add warning about cache.
10639
10640 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10641
10642         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10643
10644 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10645
10646         * lily/horizontal-bracket.cc (print): Take care of the direction
10647         property so brackets above the stave point downwards. 
10648
10649         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10650         for HorizontalBracket so it doesn't end up within the stave.
10651
10652 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10653
10654         * lily/GNUmakefile (default): Typo.
10655
10656         * scm/lily.scm (PLATFORM): Export.
10657
10658         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10659         load-font-via-GS, ttftool or fopencookie is broken on windows.
10660         
10661         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10662         -dSAFER, that is broken on windows.
10663
10664 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10665
10666         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10667         for FlexLexer.h
10668
10669         * scripts/lilypond-invoke-editor.scm: remove stray -
10670
10671 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10672
10673         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10674         Fixes deprecation warning.
10675
10676         * flower/include/string.icc (to_string): Only inline if
10677         -DSTRING_UTILS_INLINED.
10678
10679         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10680         name.  Remove windows comment.
10681
10682         * scm/editor.scm (slashify): New function.
10683         (get-editor-command): Use it.
10684         (get-command-template): Do not alter editor command if
10685         environment value includes `%(file)s' magic.
10686
10687         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10688         (dissect-uri): Use it.
10689         (unquote-uri): Bugfix.
10690
10691 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10692
10693         * scm/framework-ps.scm (write-preamble): add TTF rule.
10694
10695         * Documentation/topdocs/README.texi (Top): remove note about
10696         xdelta.
10697
10698         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10699         requirement.
10700
10701         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10702         function. Figure out where FlexLexer.h lives
10703
10704         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10705         
10706 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10707
10708         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10709         with Windows root in file name.
10710
10711         * scm/backend-library.scm (ly:system): Only redirect output (using
10712         system and shell, ugh) if /dev/null is writable.
10713
10714         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10715         windows icon.
10716
10717         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10718         on Mingw.
10719
10720         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10721         click.
10722
10723         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10724         use result of stat when available.
10725
10726         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10727         absolute file name and root.
10728
10729         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10730
10731         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10732
10733         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10734         slashes in file name.
10735
10736 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10737
10738         * Documentation/user/preface.itely (Preface): Run
10739         texinfo-all-menus-update.
10740
10741         * scm/editor.scm (get-editor-command): Bugfix: allow full
10742         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10743
10744         * Documentation/pictures/lilypond-48.xpm: New file.
10745
10746         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10747
10748         * ly/Welcome_to_LilyPond.ly: New file.
10749
10750         * lily/main.cc (main): Only identify if we have a terminal.
10751
10752         * scm/backend-library.scm (postscript->png)
10753         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10754         non-/bin/sh).
10755
10756 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10757
10758         * Documentation/topdocs/AUTHORS.texi: polish, update.
10759
10760 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10761
10762         * Documentation/user/preface.itely (Notes for version 2.6): new
10763         notes for 2.6
10764
10765         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10766         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10767         is not fully contained" warnings.
10768
10769         * lily/slur-scoring.cc (get_bound_info): remove warning.
10770
10771         * lily/staff-symbol-engraver.cc (process_music): start initial
10772         spanner in process_music(). This fixes overrides of StaffSymbol
10773         properties.
10774
10775         * scm/framework-pdf.scm (Module): remove.
10776
10777         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10778
10779         * lily/ambitus-engraver.cc: formatting cleanups.
10780
10781         * mf/feta-solfa.mf (Module): remove.
10782
10783         * ChangeLog: more details about contributions.
10784
10785 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10786
10787         * lily/align-interface.cc (align_elements_to_extents): warn if
10788         called too early. Fixes: disappearing-staff-lines.ly
10789
10790         * VERSION (PACKAGE_NAME): release 2.5.24
10791
10792 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10793
10794         * stepmake/aclocal.m4: Typo.
10795
10796         * flower/string.cc (substitute): Take two strings or two
10797         characters.  Update callers.
10798
10799 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10800
10801         * flower/file-name.cc (File_name): Slashify.
10802
10803         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10804
10805         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10806
10807         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10808
10809         * configure.in (gui_b): Use it.
10810
10811         * lily/lilypond.rc.in: New file.
10812
10813         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10814
10815 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10816
10817         * Documentation/user/advanced-notation.itely: edit of Text
10818         section; clarify text scripts vs. text markup.
10819
10820 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10821
10822         * lily/multi-measure-rest-engraver.cc
10823         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10824         separation items on start. Fixes mm rests in start of score.
10825
10826         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10827         don't access StaffSymbol if not there.
10828         Fixes: crash-staff-symbol-engraver.ly.
10829
10830         * lily/instrument-name-engraver.cc (class
10831         Instrument_name_engraver): data member first_. Create
10832         InstrumentName on start. 
10833
10834 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10835
10836         * Documentation/user/instrument-notation.itely: add guitar
10837         position.
10838
10839         * Documentation/user/introduction.itely,
10840         Documentation/user/lilypond.tely,
10841         Documentation/user/tutorial.itely: begin pruning
10842         unused (duplicated) cindex entries and misc cleanup.
10843
10844 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10845
10846         * input/test/volta-chord-names.ly: Bring the explanation up to
10847         date.
10848
10849 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10850
10851         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10852         Specify `@documentencoding utf-8' for html, ignore warnings.
10853
10854 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10855
10856         * THANKS: Added bughunters.
10857
10858 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10859
10860         * lily/main.cc: update help string for `lilypond -H'.
10861
10862         * po/fi.po: update.
10863         
10864 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10865
10866         * Documentation/user/advanced-notation.itely: minor fixes.
10867
10868 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10869
10870         * scm/editor.scm: New module.
10871
10872         * scm/lily.scm (gui-main): Use it.
10873
10874         * scm/framework-gnome.scm (spawn-editor): Use it.
10875
10876         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10877
10878 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10879
10880         * scm/framework-ps.scm (load-font-via-GS):  new function.
10881
10882         * lily/pango-font.cc (pango_item_string_stencil): add support for
10883         CID keyed font.
10884
10885         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10886
10887 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10888
10889         * Documentation/user/basic-notation.itely: add @ref.
10890
10891         * Documentation/user/advanced-notation.itely: add example
10892         of 5/8 beaming.
10893
10894 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10895
10896         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10897
10898         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10899         going through ps2pdf wrappers.
10900
10901 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10902
10903         * Documentation/user/instrument-notation.itely: petrucci note
10904         heads: updated docu
10905
10906         * input/regression/note-head-style.ly: updated regression test;
10907         indentation fixes
10908
10909         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10910         heads as default
10911
10912         * mf/parmesan-heads.mf: minor editing; use musicological names
10913         (rather than optical description) as note head names
10914
10915         * scm/output-lib.scm: complete petrucci heads
10916
10917 2005-05-09  Pal Benko  <benkop@freestart.hu>
10918
10919         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10920         heads, but bigger)
10921
10922 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10923
10924         * lily/main.cc (main_with_guile): Remove no files check.
10925
10926         * lily/main.cc (ly:usage): Export to Scheme.
10927
10928         * scm/lily.scm (no-files-handler): New function.
10929
10930         * scm/lily.scm (lilypond-main): Use it.
10931
10932         * configure.in (gui_b): Add mbrtowc checking.
10933         Resurrect [utf8/]wchar.h checking.
10934
10935 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10936
10937         * Documentation/user/advanced-notation.itely (Metronome marks):
10938         Add link to the program reference for MetronomeMark
10939
10940         * Documentation/user/lilypond-book.itely (An example of a
10941         musicological document): Correct the example using psfonts 
10942
10943 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10944
10945         * po/fi.po: update after a lesson how to update entries against
10946         source.
10947         
10948         * po/TODO: document the lesson.
10949
10950 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10951
10952         * configure.in (gui_b): remove wcrtomb checking.
10953
10954         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10955         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10956
10957 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10958
10959         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10960         keep Scheme expressions and strings unmodified when doing the
10961         conversion to postfix notation for slurs and beams. Should
10962         hopefully solve most related conversion problems. 
10963
10964         * Documentation/user/lilypond-book.itely : Clarify and correct how
10965         to call dvips with -h psfonts.
10966
10967 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10968
10969         * Documentation/user/instrument-notation.itely (Entering lyrics):
10970         Typo.  Fixes build.
10971
10972 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10973
10974         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10975
10976         * Documentation/user/lilypond.tely, lilypond-book.itely,
10977         tutorial.itely: change references to 2.5.x to 2.6.x.
10978
10979         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10980         vs \lyricmode.
10981
10982         * Documentation/user/invoking.itely: remove old info about
10983         lilypond-profile.
10984
10985         * Documentation/topdocs/INSTALL.texi: remove old info about
10986         lilypond-profile, add warning about needing international fonts
10987         to build docs.
10988
10989 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10990
10991         * lily/include/grob-info.hh (class Grob_info): make data member
10992         private. Changes throughout.
10993
10994         * input/regression/alignment-order.ly: new file. 
10995
10996         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10997         alignAboveContext and alignBelowContext
10998
10999 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11000
11001         * lily/pfb.cc (LY_DEFINE): add cast.
11002
11003         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11004         matches .otf
11005         (write-preamble): warn about unknown fonts.
11006
11007         * lily/pfb.cc (Module): new function ly:otf->cff
11008
11009         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11010         (get_otf_table): new function.
11011
11012 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11013
11014         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11015         iso. ps2png.
11016
11017 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11018
11019         * po/fi.po: apply second round of update.
11020
11021 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11022
11023         * scm/x11-color.scm (make-x11-color-handler): don't use
11024         #\sp. Apparently doesn't work on all platforms. 
11025
11026 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11027
11028         * Documentation/user/advanced-notation.itely, putting.itely,
11029         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11030
11031 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11032
11033         * VERSION (PACKAGE_NAME): release 2.5.23
11034
11035 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11036
11037         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11038         convert to utf-8.
11039
11040         * THANKS: Add translators for this release, convert to utf-8.
11041
11042         * mf/GNUmakefile (MFTRACE_FLAGS):
11043         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11044         outdir as option (WAS: hardcoded).
11045
11046 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11047
11048         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11049         finished_span_
11050
11051         * THANKS: add Hans Forbrich.
11052
11053         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11054
11055         * Documentation/user/basic-notation.itely (Staff symbol): document
11056         start/stop staff. Reference to ossia.ly
11057
11058         * input/test/ossia.ly: new example using stop and startStaff.
11059
11060         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11061         in other words, don't create "|" barline at start of the score.
11062         (start_translation_timestep): don't set whichBar for start of score.
11063
11064         * input/regression/staff-halfway.ly: use new functionality.
11065
11066         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11067         start and stop staff based on events.
11068
11069         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11070
11071         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11072
11073 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11074
11075         * Documentation/user/programming-interface.itely (How markups work
11076         internally ): remove \encoding reference.
11077
11078 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11079
11080         * scripts/convert-ly.py: Attempt to do a smarter update of 
11081         text markups from versions < 1.9.0 with arbitrary nesting.
11082
11083 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11084
11085         * po/fi.po: convert to utf-8, and update.
11086
11087 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11088
11089         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11090
11091         * lily/*.cc: more <? >? to min/max changes
11092
11093         * lily/include/interpretation-context-handle.hh: rename
11094         Interpretation_context_handle to Context_handle.
11095
11096 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11097
11098         * input/regression/GNUmakefile (local_delete): use `find` together 
11099         with `xargs` to avoid too long argument-lists in cmd line.
11100
11101 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11102
11103         * Documentation/user/introduction.itely: updates "About this manual".
11104
11105         * Documentation/user/advanced-notation.itely,
11106         invoking.itely: minor fixes.
11107
11108 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11109
11110         * COPYING: add font exception. Update FSF address. 
11111
11112         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11113         should be taken without child context.
11114
11115         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11116
11117         * scm/define-markup-commands.scm (triangle): new command, as
11118         robust replacement for unicode Delta/Triangle.
11119
11120 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11121
11122         * ps/music-drawing-routines.ps: add fillp argument.
11123
11124         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11125
11126         * lily/font-config.cc (init_fontconfig): don't add cff/
11127
11128         * VERSION (PACKAGE_NAME): release 2.5.22
11129
11130         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11131
11132         * lily/grace-engraver.cc (consider_change_grace_settings): use
11133         is_alias(). Fixes problem with CueVoice grace notes. 
11134
11135         * lily/simultaneous-music-iterator.cc (construct_children): call
11136         Music_iterator::quit() for iterators that start out invalid. This
11137         fixes indefinitely continuing contexts.
11138
11139         * buildscripts/substitute-encoding.py: new file
11140
11141         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11142         missing @end 
11143
11144         * scripts/lilypond-book.py (write_if_updated): print file name.
11145
11146         * Documentation/user/basic-notation.itely (Explicitly
11147         instantiating voices): idem.
11148
11149         * Documentation/user/advanced-notation.itely (Text spanners):
11150         remove stray { } 
11151
11152         * lily/context.cc (default_child_context_name): the default child
11153         is now first in accepts_list_.
11154
11155         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11156         \defaultchild to all relevant contexts.  This fixes:
11157         drums-pitch.ly.
11158
11159         (Probably also fixes similar problems with ancient
11160         transcriptions getting CueVoices instead of the desired voices.)
11161  
11162         * lily/context-def.cc (get_default_child): new function.
11163         (get_accepted): place default child in front of list.
11164
11165         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11166
11167         * lily/include/context-def.hh (struct Context_def): add
11168         default_accept_
11169
11170 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11171
11172         * scm/define-grobs.scm: remove "remove-first" line, since
11173         the absent property is set to #f anyway.
11174
11175         * Documentation/user/basic-notation.itely,
11176         advanced-notation.itely, instrument-notation.itely: minor
11177         fixes.
11178
11179         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11180
11181         * Documentation/user/advanced-notation.itely,
11182         changing-defaults.itely: consolidate Text stuff in
11183         advanced notation.
11184
11185         * Documentation/user/global.itely: better docs for \header.
11186
11187         * Documentation/user/putting.itely: new chapter; placeholder
11188         for future expansion.
11189
11190         * Documentation/user/examples.itely: moved "suggestions for
11191         writing LP files" section into putting.itely.
11192
11193         * Documentation/user/lilypond.itely: added new chapter,
11194         fixed the short table of contents.
11195
11196 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11197
11198         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11199         infinity for unfeasible beams.
11200
11201         * make/lilypond.fedora.spec.in (Group): idem.
11202
11203         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11204
11205         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11206
11207         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11208         fonts directly.
11209
11210         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11211
11212         * mf/GNUmakefile: remove all CFF rules.
11213
11214         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11215
11216         * lily/open-type-font-scheme.cc (LY_DEFINE):
11217         new function ly:otf-font-table-data.
11218         (LY_DEFINE): new function otf-font?
11219
11220 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11221
11222         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11223         ($(outdir)/Fontmap.lily): idem.
11224
11225         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11226         for PFAEmmentaler-XXX.pfa. 
11227
11228         * Documentation/user/music-glossary.tely (accidental): NL
11229         translation of accidental.
11230
11231 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11232
11233         * flower/include/international.hh: Bugfix: include "string.hh".
11234
11235         * lily/include/mingw-compatibility.hh: New file.
11236
11237         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11238
11239         * configure.in: Search for mingw wcrtomb library.
11240
11241 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11242
11243         * scripts/convert-ly.py: Bug fix
11244
11245         * Documentation/user/changing-defaults.itely (Common tweaks):
11246         Added example where the context has to be specified explicitly
11247         (MetronomeMark). 
11248
11249 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11250
11251         * scripts/lilypond-book.py (ly_options): set timing to #f for
11252         notime option.
11253
11254         * scripts/convert-ly.py (conv): typo.
11255
11256         * flower/*.cc: remove <? and >?
11257         
11258         * lily/*.cc: remove <? and >?
11259
11260         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11261         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11262         editor.
11263
11264 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11265
11266         * lily/part-combine-engraver.cc: add space to variable list.
11267
11268 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11269
11270         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11271         remove-first to false (matches docs)
11272
11273         * Documentation/user/advanced-notation.itely: corrected docs
11274         concerning remove-first.
11275
11276 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11277
11278         * lily/part-combine-engraver.cc: make sure that the relevant
11279         properties are included in the documentation.
11280
11281 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11282
11283         * Documentation/user/lilypond-book.itely: Bernard's docs
11284         for \betweenLilyPondSystem.
11285
11286 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11287
11288         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11289         remarks.
11290
11291 2005-04-28  Pal Benko  <benkop@freestart.hu>
11292
11293         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11294         only on vertical lines of flexa shape, and use a constant
11295         thickness value for horizontal lines (patch slightly modified by
11296         Jürgen Reuter)
11297
11298         * lily/include/mensural-ligature.hh: make 2 comments clearer
11299
11300 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11301
11302         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11303         to need_extra_horizontal_space; bugfix: use class scope to avoid
11304         global namespace pollution
11305
11306         * Documentation/user/instrument-notation.itely (ligatures): added
11307         comment on possible future syntax change and how to work around
11308
11309         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11310         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11311         intervals (fixes agnus dei example)
11312
11313         * Documentation/user/instrument-notation.itely (white mensural
11314         ligatures): selected a more illustrative example
11315
11316 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11317
11318         * Documentation/index.html.in: specify utf-8 charset in meta content.
11319
11320 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11321
11322         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11323         empty 2nd page for single page.
11324
11325         * scm/lily.scm: remove p&c definitions.
11326
11327         * po/zh_TW.po (Module): new translation.
11328
11329         * lily/lily-guile.cc (ly_chain_assoc): remove.
11330
11331         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11332         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11333
11334 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11335
11336         * lily/beaming-info.cc: remove infinity_i
11337
11338         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11339
11340 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11341
11342         * Documentation/user/basic-notation.itely,
11343         instrument-notation.itely, advanced-notation.itely,
11344         changing-defaults.itely: minor fixes.  Added docs
11345         for colors to advanced-notation.itely.
11346
11347         * Documentation/user/advanced-notation.itely: fixed compile
11348         problem and added Bernard's x11-color doc patch.
11349
11350 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11351
11352         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11353         alright this time round.
11354
11355 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11356
11357         * Documentation/topdocs/INSTALL.texi (Top): idem.
11358
11359         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11360
11361         * VERSION (MAJOR_VERSION): release 2.5.21
11362
11363         * scm/output-ps.scm (grob-cause): bugfix.
11364
11365 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11366
11367         * cygwin/*: Update.
11368
11369         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11370         stuff.
11371
11372         * scm/output-ps.scm (grob-cause): Bugfix.
11373
11374         * scm/lily.scm (ly:load): Remove x11-color.
11375
11376         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11377         quote executable, fixes getting version from program --with
11378         --options.
11379         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11380         $ac_exeect.
11381
11382         * Documentation/user/GNUmakefile: Only build music-glossary with
11383         rendered lilypond snippets during web.
11384
11385 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11386
11387         * po/de.po: update.
11388
11389         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11390
11391 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11392  
11393         * scripts/abc2ly:
11394         second title line append with punctuation dash character;
11395         encode abc2ly python strings in utf-8
11396        
11397 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11398
11399         * scripts/abc2ly fix chords (again)
11400  
11401 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11402
11403         * scm/x11-color.scm: new file
11404         All x11 color names can be accessed with:
11405         #(x11-color 'ColorName),
11406         #(x11-color "ColorName") or:
11407         #(x11-color "color name")
11408         If the x11 color name is not recognised then it defaults
11409         to black
11410
11411         * scm/lily.scm: amended to call scm/x11-color.scm
11412
11413 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11414
11415         * Documentation/user/invoking.itely (Reporting bugs): comment out
11416         reference to online PNG bug repository.
11417
11418 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11419
11420         * lily/translator-scheme.cc (ly:translator-property): Remove.
11421         Update callers.
11422
11423         * lily/context-scheme.cc (ly:context-now): Move from translator.
11424         Update callers.
11425
11426 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11427
11428         * input/regression/grid-lines.ly (skips): refine example.
11429
11430         * scm/define-context-properties.scm
11431         (all-user-translation-properties): doc autoBeamCheck
11432
11433         * input/regression/grid-lines.ly (Module): new file.
11434
11435         * lily/grid-point-engraver.cc (Module): new file.
11436
11437         * lily/grid-line.cc (Module): new file.
11438
11439         * lily/grid-line-span-engraver.cc (Module): new file.
11440
11441         * lily/grid-line-interface.cc (Module): new file.
11442
11443 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11444
11445         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11446         missing parameter, actualy cdr through list.  Actually return a
11447         list with ENTRY removed (was '()).
11448
11449         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11450         opened.
11451         (do_conversion): Fix printing of continuation comma.
11452
11453         * Documentation/user/advanced-notation.itely (Beam formatting):
11454         Remove refbugs about compound time and mixed duration.
11455
11456         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11457         modulo moments explicitely.
11458
11459         * lily/moment.cc (operator %): New function.
11460
11461         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11462
11463         * lily/translator-scheme.cc (ly:translator-now,
11464         ly:translator-property): New function.
11465
11466         * scm/auto-beam.scm (default-auto-beam-check): New function.
11467
11468         * lily/auto-beam-engraver.cc (test_moment): Use it.
11469
11470         * flower/rational.cc (operator %): Bugfix.
11471
11472 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11473
11474         * scripts/abc2ly: Bugfix
11475
11476 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11477
11478         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11479         %'s on EndFont comment.
11480
11481         * lily/ledger-line-spanner.cc: some more words of explanation.
11482
11483 2005-04-20  John Williams <williams@tni.com>  
11484         
11485         * scripts/lilypond-book.py: htmlquote bugfix.
11486         Allow snippets to be given distinct filenames.
11487         Allow the default alt text to be overridden.
11488
11489 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11490
11491         * ly/performer-init.ly: Bugfix
11492
11493         * THANKS: Added bughunters.
11494
11495 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11496
11497         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11498
11499         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11500         position (was: use modulo measure length).
11501
11502         * configure.in (no gui_b): Remove optional gtk+ requirement.
11503
11504 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11505
11506         * Documentation/user/basic-notation.itely (Pitches): add
11507         LedgerLineSpanner.
11508
11509         * lily/dynamic-engraver.cc (process_music): set right bound to
11510         script if present. Else, do not set.
11511         (acknowledge_grob): only set right bound of finished spanner to
11512         note column if no other bound is set.
11513
11514         * python/lilylib.py (make_ps_images): switch back to png16m.
11515         
11516 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11517
11518         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11519         writing up to date file.  Add dvips usage suggestion.
11520
11521         * scripts/convert-ly.py: Fix error message.
11522         Print usage if no files on command line.
11523         (usage): Add example usage.
11524
11525         * input/test/compound-time.ly: New file.
11526
11527         * input/test/circle.ly: New file.
11528
11529         * Documentation/topdocs/NEWS.tely: Use them.
11530
11531         * input/test/boxed-stencil.ly: Remove \score.
11532
11533         * buildscripts/mf-to-table.py (base): Add .log dependency.
11534
11535         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11536         pfa's.  Add .log dependency
11537
11538         * scm/define-markup-commands.scm (lower): New command.
11539
11540         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11541         make it default.
11542
11543 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11544
11545         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11546         also to finished cresc as right bound. This fixes:
11547         skip-string-decresc.ly
11548
11549         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11550         relative_coordinate if extent is empty.
11551
11552         * lily/stem.cc (width_callback): determine correct extent if flag
11553         is not there. This fixes slur-no-flag.ly
11554
11555         * lily/grace-engraver.cc (consider_change_grace_settings): new
11556         function.
11557         (initialize): also consider_change_grace_settings() on
11558         initialization. Fixes large grace notes at start of score.
11559
11560         * lily/break-align-interface.cc (do_alignment): don't translate if
11561         total_extent is empty.
11562
11563         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11564
11565 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11566
11567         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11568         with slash.
11569
11570 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11571
11572         * stepmake/aclocal.m4: Remove tfm_path.
11573
11574 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11575
11576         * scm/music-functions.scm (markup-expression->make-markup): fix
11577         bug with cons arguments of markup commands.
11578         (music->make-music): fix music expression property list building
11579
11580 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11581
11582         * aclocal.m4: Massage package names.
11583
11584         * SCons updates.
11585
11586 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11587
11588         * VERSION (PACKAGE_NAME): release 2.5.20
11589
11590         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11591         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11592
11593         * lily/percent-repeat-engraver.cc (try_music): add measure before
11594         next_moment to future processing moment. Fixes:
11595         percent-repeat-mm-rest.ly
11596         (process_music): don't add moment for 2nd time.
11597
11598         * input/regression/repeat-percent.ly: add mmrests as extra test.
11599
11600         * lily/axis-group-engraver.cc (acknowledge_grob): read
11601         keepAliveInterfaces to decide what to kill.
11602
11603         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11604         percent-repeat-interface to keepAliveInterfaces. This fixes
11605         percent-repeat-harakiri.
11606
11607 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11608
11609         * SCons updates.
11610
11611 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11612
11613         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11614
11615         * aclocal.m4: remove --enable-tfm-path configure option
11616
11617         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11618
11619         * scm/backend-library.scm (postscript->png): newline after
11620         finishing command.
11621
11622         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11623         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11624
11625         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11626
11627         * lily/score.cc (default_rendering): use Music_output too.
11628
11629         * input/test/chord-names-languages.ly (Module): rename file.
11630
11631         * lily/text-spanner.cc: add bound-padding.
11632
11633         * lily/paper-book.cc (systems): accept Paper_score
11634         iso. Paper_system vector. 
11635
11636         * input/regression/line-arrows.ly: new file.
11637
11638         * lily/paper-score.cc (process): run get_paper_systems() only once.
11639
11640         * lily/line-spanner.cc (line_stencil): add arrows.
11641
11642 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11643
11644         * lily/line-interface.cc (make_arrow): new function. 
11645         (arrows): idem.
11646
11647 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11648
11649         * input/test/chord-names-german.ly: update for italian/french
11650         chords.
11651         
11652         * Documentation/user/instrument-notation.itely (Printing chord
11653         names): update.
11654
11655 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11656
11657         * lily/include/paper-score.hh (class Paper_score): remove unused
11658         prototypes.
11659
11660         * lily/book.cc (process): add -COUNT to midi output.
11661
11662         * lily/score.cc (book_rendering): remove outname argument
11663         (book_rendering): return list of Music_outputs. 
11664
11665         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11666
11667         * lily/book.cc (process): loop over Music_outputs returned from
11668         Score::book_rendering().
11669
11670         * lily/*.cc (width_callback): remove spurious "unused" warnings
11671         for assert (axis==[XY]_AXIS); 
11672
11673         * lily/include/music-output.hh (class Music_output): smobify class.
11674
11675         * lily/include/paper-score.hh (class Paper_score): make members
11676         private.
11677
11678         * lily/performance.cc (process): return #f iso. #<undefined>. This
11679         prevents #<undefined> leaking into GUILE-userspace.
11680
11681 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11682
11683         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11684
11685 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11686
11687         * scm/chord-name.scm : support for italian and french
11688         chords names.
11689
11690         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11691         a space defined by chordPrefixSpacer when the root name is
11692         direclty followed by a prefix.
11693
11694         * ly/engraver-init.ly : chordPrefixSpacer       
11695         * scm/define-context-properties.scm : chordPrefixSpacer
11696         * ly/property-init.ly : italianChords, frenchChords 
11697
11698 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11699
11700         * mf/feta-din.mf: Remove.
11701
11702         * mf/GNUmakefile (fontdir): Bugfix.
11703
11704         * mf/SConstruct: Some updates.
11705
11706         * SConstruct: Require pkg-config.
11707         (test_program): Bugfix for double digit version compares, use
11708         integer (not string-) compare.
11709         Optionally require gs 8.14.
11710
11711         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11712
11713         * lily/*: s/ifdef HAVE_*/if have/.
11714
11715         * SConstruct (test_lib): New function.  Update pkg-config and some
11716         other requirements.
11717
11718         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11719         freetype, pangof2t.
11720
11721 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11722
11723         * po/lilypond.pot, ...: Update using bison-CVS.
11724
11725         * python/lilylib.py (make_ps_images): Fixo.
11726
11727 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11728
11729         * python/lilylib.py (make_ps_images): typo.
11730
11731         * configure.in (gui_b): make bison optional.
11732
11733         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11734
11735 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11736
11737         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11738         with one parameter can be defined in a LaTeX file when processed
11739         by lilypond-book this will be evaluated between the systems of
11740         a multi-system score. The parameter is the number of systems processed.
11741
11742 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11743
11744         * python/lilylib.py (make_ps_images): Escape newline.
11745
11746         * Documentation/user/music-glossary.tely: Run
11747         texinfo-all-menus-update.
11748
11749 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11750
11751         * scm/lily-library.scm (old-relative-not-used-message)
11752         (version-not-seen-message): Add input-file-name-location to message.
11753
11754         * lily/parser.yy (lilypond): Add token aliases.
11755
11756         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11757         not confuse with alteration.
11758         (alteration): Add.
11759
11760 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11761
11762         * python/lilylib.py (make_ps_images): use -dEPSCrop
11763
11764         * VERSION (PACKAGE_NAME): release 2.5.19 
11765
11766         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11767         only put xrefs in info documentation.
11768
11769         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11770         .pdf rule to tex-rules.make.
11771
11772         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11773         from -systems.* output.
11774
11775         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11776         directly, remove -$(PAGESIZE) target.
11777
11778         * input/test/embedded-postscript.ly: update.
11779
11780 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11781
11782         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11783
11784         * Documentation/user/changing-defaults.itely (Font selection):
11785         document font-name.
11786
11787         * input/regression/font-name.ly: show Pango fonts for
11788         font-name. Update example. 
11789
11790         * lily/pango-select.cc (properties_to_pango_description): don't
11791         convert symbol font-size to number, but use to lookup.
11792
11793         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11794
11795         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11796         (NAME . FILE-NAME) tuples for font descriptions. 
11797         (write-preamble): display BeginFont DSC comments.
11798
11799         * python/fontextract.py (write_extracted_fonts): new file. Extract
11800         font resources from a PS file.
11801
11802         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11803         (Compile_error.process_include): do_file returns chunks.
11804
11805         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11806
11807         * make/lysdoc-targets.make: .texi is .PRECIOUS
11808
11809         * scripts/lilypond-book.py (write_if_updated): new function.
11810
11811 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11812
11813         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11814
11815 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11816
11817         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11818
11819         * input/regression/markup-syntax.ly: remove \score.
11820
11821         * scm/define-markup-commands.scm (draw-circle): add fill argument
11822
11823         * scm/stencil.scm (make-circle-stencil): add fill argument
11824
11825         * ps/music-drawing-routines.ps: add fill argument.
11826
11827         * ly/performer-init.ly: add CueVoice to MIDI too.
11828
11829         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11830         EndEPSF.
11831
11832         * input/regression/markup-eps.ly: new file.
11833
11834         * scm/framework-ps.scm (write-preamble): change order: vars should
11835         be inited before procedures.
11836
11837         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11838         for EPS files.
11839
11840         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11841
11842 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11843
11844         * configure.in (gui_b): add check for ghostscript 8.15
11845
11846 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11847
11848         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11849         start of line. Fixes cresc-after-newline.ly
11850
11851         * lily/source-file.cc (file_line_column_string): use get_column().
11852
11853 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11854
11855         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11856
11857 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11858
11859         * lily/*: use message () iso progress_indication () for messages.
11860         Revise/uniformise user messages.
11861
11862         * flower/warn.cc (progress_indication): New function.
11863         (message): Use it.  Fixes newline problems.
11864
11865         * config.make.in (webdir): Sort out install dirs.
11866
11867         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11868
11869         * python/lilylib.py (command_name): Bugfix.
11870         (make_ps_images):
11871
11872 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11873
11874         * lily/main.cc: --help says what types of backends are availabe
11875
11876 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11877
11878         Fix ./VERSION dependency, and without need to reconfigure.
11879
11880         * lily/main.cc (setup_paths): Update.
11881
11882         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11883
11884         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11885
11886         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11887         Add \line for some simplistic cases.
11888
11889         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11890
11891 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11892
11893         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11894         to compile LY files (useful for adding eg. "-I" args)
11895         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11896         2Gnome command for gnome backend.
11897         (LilyPond-command-formatgnome): call the 2Gnome command. key
11898         binding: C-c C-g
11899
11900 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11901
11902         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11903         depend on all PNG images.
11904
11905 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11906
11907         * GNUmakefile.in: Bugfix: also link .map files.
11908
11909 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11910
11911         * scm/music-functions.scm (music->make-music): generate 
11912         a (make-music ...) sexpr from a music expression.
11913         (display-scheme-music): use guile pretty printer to display the
11914         make-music sexpr.
11915
11916 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11917
11918         * ly/engraver-init.ly: reindent.
11919         Add CueVoice.
11920
11921         * scm/music-functions.scm (music-pretty-string): handle moments
11922         too.
11923         (music-pretty-string): only print non-empty lists.
11924         (cue-substitute): create CueVoice context, which has smaller type.
11925
11926         * lily/moment-scheme.cc (LY_DEFINE): new methods
11927         ly:moment-grace-{numerator,denominator}
11928
11929         * lily/context-handle.cc: remove quit() method. 
11930
11931         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11932         (init_fontconfig): success is 0, not !0
11933
11934 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11935
11936         * mf/feta-nummer-code.mf (code): add plus glyph.
11937
11938         * lily/tie.cc (print): idem.
11939
11940         * lily/slur.cc (print): don't use thickness property for
11941         slur shape-thickness.
11942
11943         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11944         while adding stencils.
11945
11946         * scm/define-markup-commands.scm (with-color): with-color markup
11947         command.
11948         (whiteout): new markup command 
11949         (filled-box): new markup command
11950
11951 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11952
11953         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11954         test for PDF docs.
11955
11956         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11957         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11958         
11959         Notes for tetex-3.0 make web:
11960            psclean.map: s/uhv8a/uhvr8a/
11961            config.ps add:
11962                 p +psfonts_t1.map
11963                 p +psclean.map
11964                 p +typeface.map
11965
11966 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11967
11968         * scm/music-functions.scm (music-pretty-string): fix bug with
11969         string argument.
11970
11971 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11972
11973         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11974
11975 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11976
11977         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11978         only process options if they're there.
11979         (write_file_map): add version-seen? to snippet-map.ly
11980
11981 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11982
11983         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11984         formatting cleanups.
11985
11986         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11987         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11988
11989 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11990
11991         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11992         name directly.
11993
11994         * lily/main.cc (setup_paths): either add mf/out to search path or 
11995         fonts/{otf,type1,etc}
11996         
11997         * lily/font-config.cc (init_fontconfig): either add mf/out to
11998         FontConfig or fonts/{otf,type1,etc}
11999
12000         * GNUmakefile.in: don't put mf/ link in share/ dir.
12001
12002         * lily/staff-spacing.cc: move same-direction-correction to
12003         note-spacing-interface
12004
12005         * scm/lily.scm (lilypond-main): use variable argument count for
12006         exception handler.
12007
12008         * lily/font-config.cc (init_fontconfig): add operator pacification
12009         message.
12010
12011         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12012
12013         * buildscripts/gen-emmentaler-scripts.py (i): generate
12014         PFAEmmentaler as well.
12015
12016         * scm/framework-ps.scm (munge-lily-font-name): new function
12017         (write-preamble): hack: insert PFA equivalent of CFF into
12018         .PS. This makes LilyPond output printable on normal PS printers
12019         again.
12020
12021         * buildscripts/gen-emmentaler-scripts.py (i): generate
12022         PFAEmmentaler.pfa aswell.
12023
12024 2005-04-06  John Williams <williams@tni.com>  
12025         
12026         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12027         
12028 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12029
12030         * scm/page-layout.scm (default-page-make-stencil): always combine
12031         the header stencil, even if empty. This prevents the body text to
12032         reach up to the margins.
12033
12034         * po/rw.po (Module): new file, for Kinyarwanda.
12035
12036         * input/test/spacing-optical.ly (Module): new file.
12037
12038         * lily/staff-spacing.cc: add same-direction-correction
12039
12040 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12041
12042         * Documentation/user/introduction.itely (Engraving): Comment-out
12043         non-existent file.
12044
12045 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12046
12047         * scm/define-grob-properties.scm (all-user-grob-properties): add
12048         same-direction-correction
12049
12050         * VERSION: release 2.5.18
12051
12052 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12053
12054         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12055         dereferencing.  Fixes make web.
12056
12057         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12058         errno.h.
12059
12060         * Documentation/user/: Fix links.
12061
12062 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12063
12064         * lily/text-interface.cc (Module): rename from text-item.cc
12065
12066         * input/regression/apply-output.ly (texidoc): function naming fix.
12067
12068         * lily/time-signature-performer.cc (derived_mark): new function.
12069
12070         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12071
12072         * scripts/lilypond-book.py (find_linestarts): new function.
12073         (find_toplevel_snippets): keep track of line numbers.
12074
12075         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12076         all key changes.
12077
12078         * ly/declarations-init.ly (partCombineListener): use
12079         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12080
12081         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12082
12083 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12084
12085         * lily/text-item.cc: Fix link.
12086
12087         * Documentation/user/changing-defaults.itely (Changing defaults):
12088         Fix programs reference links.
12089
12090         * Documentation/user/music-glossary.tely: Convert to utf-8.
12091
12092 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12093
12094         * make/lilypond-vars.make: remove TEXMF from variables.
12095         remove DEB_BUILD pk font variables.
12096         remove GUILE_LOAD_PATH
12097         remove TeX memory vars.
12098
12099 2005-04-04  Werner Lemberg  <wl@gnu.org>
12100
12101         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12102
12103 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12104
12105         * ps/lilyponddefs.ps: remove reencode-font
12106
12107         * lily/simple-spacer.cc (add_columns): also compare
12108         directly. Column rank doesn't distinguish between broken and
12109         unbroken columns. This fixes large spaces before time sig changes.
12110
12111         * Documentation/user/point-and-click.itely: document ly:set-option.
12112
12113         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12114         point_and_click_global is set.
12115
12116         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12117         ly:set-option argument.
12118
12119 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12120
12121         * GNUmakefile.in: Include symlinks in webball.
12122
12123         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12124         source dir for split and non-split manuals.
12125
12126         * Documentation/user/*y: Fix @uref/@inputfile links for
12127         split/non-split HTML documents.
12128
12129         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12130         .ps.gz.
12131         
12132 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12133
12134         * GNUmakefile.in: Add newline.
12135
12136 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12137
12138         * tex/lilyponddefs.tex: use color instead of xcolor
12139         * scm/output-tex.scm: minor editing
12140
12141 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12142
12143         * scm/music-functions.scm (display-scheme-music): pretty printer
12144         for music expressions.
12145
12146 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12147
12148         * buildscripts/install-info-html.sh (index_file): Fix link.
12149
12150 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12151
12152         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12153
12154         * Documentation/index.html.in: Add size estimates with some big pages.
12155
12156         * Documentation/user/tutorial.itely (Running LilyPond for the
12157         first time): Add/replace some @rglos links.  TODO: add more
12158         @rglos links in tutorial, test non-intrusiveness (.css).
12159
12160         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12161         annoying's indication of referencing external document.
12162
12163         * Documentation/user/GNUmakefile: Split version of glossary too.
12164         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12165         links, not only for html.
12166
12167         * Documentation/user/introduction.itely: Fix some links for other
12168         than html, do not use `here' as link name.
12169
12170 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12171
12172         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12173         @glossaryref.
12174
12175 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12176
12177         * scm/page-layout.scm (default-page-make-stencil): only add header
12178         if existing and not empty. Fixes spurious programming error.
12179
12180         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12181
12182 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12183
12184         * scm/output-tex.scm: implement {re,}setcolor
12185         * tex/lilyponddefs.tex: use color package
12186
12187 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12188
12189         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12190         additions to website.
12191
12192         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12193
12194         * Documentation/user/macros.itexi: Fix @usermanref html links in
12195         split documents: use @inforef.
12196
12197 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12198
12199         * Documentation/user/programming-interface.itely: minor fix.
12200
12201         * Documentation/user/advanced-notation.itely: added info to
12202         Metronome markings.
12203
12204 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12205
12206         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12207         use box-stencil.  Remove y-padding argument.
12208         (make-stencil-circler): New function.
12209
12210         * buildscripts/lilypond-words.py (F): 
12211         * elisp/SConscript (a): 
12212         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12213         * vim/SConscript (a): 
12214         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12215
12216         * lily/general-scheme.cc: Build fix.
12217
12218         * scm/markup.scm:
12219         * input/regression/markup-scheme.ly: 
12220         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12221
12222         * scm/stencil.scm (make-circle-stencil): New function.
12223
12224         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12225         name (was cicle).  Update callers.
12226         (circle): New markup command, similar to box.
12227
12228         * scm/stencil.scm (circle-stencil): New function.
12229
12230 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12231
12232         * configure.in: Detect libutf8/wchar.h variant.
12233
12234         * stepmake/aclocal.m4: Modify shared size test.
12235
12236 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12237
12238         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12239
12240 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12241
12242         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12243         
12244         * VERSION (PACKAGE_NAME):  release 2.5.17
12245
12246 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12247
12248         * scm/backend-library.scm (postscript->png): Fix comment and png
12249         message.
12250
12251         * GNUmakefile.in (link-tree): Fix locales.
12252
12253 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12254
12255         * lily/stencil-scheme.cc (LY_DEFINE): change to
12256         ly:stencil-aligned-to, non mutating.
12257
12258         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12259
12260         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12261
12262         * lily/quote-iterator.cc (derived_mark): call
12263         Music_wrapper_iterator::derived_mark() too.
12264
12265         * lily/grace-engraver.cc (derived_mark): change signature, add
12266         const.
12267
12268 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12269
12270         * SConstruct (symlink): 
12271         * GNUmakefile.in (link-tree): Add scripts to prefix.
12272
12273         * lily/general-scheme.cc (ly:effective-prefix): New function.
12274
12275         * scm/backend-library.scm (postscript->png): Use it.
12276
12277 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12278
12279         * lily/paper-score.cc (process): don't delete grobs after
12280         producing stencils. 
12281
12282         * scm/part-combiner.scm (determine-split-list): switch off
12283         debugging info.
12284
12285         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12286         if available.
12287
12288         * scm/define-context-properties.scm
12289         (all-user-translation-properties): add stringNumberOrientations.
12290
12291         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12292         so fingering and string-numbers are separately controlled.
12293
12294 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12295
12296         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12297         not use debugging.
12298
12299 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12300
12301         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12302
12303         * config.hh.in: add HAVE_FONTCONFIG.
12304
12305         * Documentation/user/instrument-notation.itely (String number
12306         indications): new node.
12307
12308         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12309
12310         * lily/new-fingering-engraver.cc (add_string): new function. 
12311         (acknowledge_grob): accept string-number-event as well.
12312
12313         * scm/define-markup-commands.scm (circle): new markup command.
12314
12315         * scm/output-lib.scm (print-circled-text-callback): new function.
12316
12317         * lily/GNUmakefile: move ifeq after include stepmake.make.
12318
12319 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12320
12321         * config.make.in (HAVE_LIBKPATHSEA_SO):
12322         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12323
12324         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12325         add KPATHSEA_LIBS.
12326
12327         * debian/watch: 
12328         * debian/control: Update.
12329
12330 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12331
12332         * input/test/title-markup.ly (spaceTest): remove.
12333
12334         * input/test/embedded-tex.ly (Module): remove.
12335
12336         * input/test/music-box.ly: use 'name property, not ly:music-name.
12337
12338         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12339
12340         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12341
12342 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12343
12344         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12345         about xdeltas.  Add information about CVS.
12346
12347         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12348         gracefully handle failed files.
12349
12350         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12351
12352         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12353         small fixes.
12354
12355         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12356         No unnecessarily specific i18n messages.  Remove stray `1'.
12357
12358 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12359
12360         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12361         documentencoding
12362
12363         * scm/documentation-lib.scm (texi-file-head): set utf-8
12364         documentencoding.
12365
12366         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12367         Delta, not the Symbol one. 
12368
12369         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12370         for the .map file.
12371
12372         * Documentation/topdocs/INSTALL.texi (Top): add running
12373         requirement as compilation requirement.
12374
12375 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12376
12377         * buildscripts/mutopia-index.py (headertext): add h1 header and
12378         utf-8 charset meta field.
12379
12380         * input/GNUmakefile: prune example list.
12381
12382         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12383         options.
12384
12385         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12386         extent for visible stems.
12387
12388         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12389
12390 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12391
12392         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12393
12394         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12395
12396 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12397
12398         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12399         pass inf/nan into slur scoring.
12400
12401         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12402         page.
12403
12404         * scripts/abc2ly.py (dump_voices): use alphabet().
12405
12406 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12407         
12408         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12409
12410 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12411         
12412         * flower/include/virtual-methods.hh: simplify. Patch by
12413
12414 2005-03-25  John Williams <williams@tni.com>  
12415
12416         * scripts/lilypond-book.py (main): add png for HTML too, guess
12417         only if necessary. 
12418
12419 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12420
12421         * Documentation/topdocs/INSTALL.texi: now recommends
12422         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12423
12424         * Documentation/user/basic-notation.itely,
12425         Documentation/user/tutoria.itely: warn about
12426         only one (phrasing) slur at once.
12427
12428 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12429
12430         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12431
12432 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12433
12434         * Documentation/user/basic-notation.itely: fixed info about
12435         ending a (de)cresc.
12436
12437         * Documentation/user/lilypond-book.itely: fixed
12438         lilypond-book filter example and warned about not doing
12439         --filter and --process at the same time.
12440
12441 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12442
12443         * lily/parser.yy (bass_number),
12444         Documentation/user/instrument-notation.itely (Figured bass): 
12445         Add the possibility to use text markup in figured bass. 
12446
12447 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12448
12449         * Documentation/user/global.itely: added info about naming
12450         identifiers and breakbefore.
12451
12452         * Documentation/user/invoking.itely: added info about batch
12453         processing files with convert-ly, removed references to TeX
12454         in the jail section.
12455
12456         * Documentation/user/examples.itely: possibly fixed piano
12457         dynamics.
12458
12459         * Documentation/user/advanced-notation.itely: added info
12460         about removing other types of Staff.
12461
12462         * Documentation/user/instrument-notation.itely: possibly
12463         fixed piano staff line switch.
12464
12465         * Documentation/user/changing-defaults.itely: added info
12466         about using normal font in titles.
12467
12468 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12469
12470         * VERSION (PATCH_LEVEL): release 2.5.16
12471
12472         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12473         explicitly.
12474
12475 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12476
12477         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12478         whitespace.
12479
12480         * python/lilylib.py (make_ps_images):
12481         * scm/backend-library.scm (postscript->pdf, postscript->png):
12482         Quote file name.  Use format rather than string-append juggling.
12483
12484 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12485
12486         * python/lilylib.py (make_ps_images): add x to -g argument. 
12487
12488         * lily/key-performer.cc (create_audio_elements): don't use
12489         scm_eval_string. Check for minor 3rd directly.
12490   
12491         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12492         (sarabandeCelloGlobal): key is D minor, not F major.
12493
12494 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12495
12496         Fix truncated --png output (Peter Danenberg).
12497         
12498         * python/lilylib.py (make_ps_images):
12499         * scripts/ps2png.py (copyright): Grok --papersize option.
12500
12501         * scm/backend-library.scm (postscript->png): Add parameter
12502         PAPERSIZE.  Update callers.
12503
12504         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12505         Fixes symbol placement.
12506
12507         * lily/spanner.cc: 
12508         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12509         <libc-extension.hh>).
12510
12511 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12512
12513         * Nitpick run.
12514
12515         * buildscripts/fixcc.py: Update.
12516
12517         Builddir run fixes.
12518
12519         * HACKING (datadir): Add VERSION.
12520
12521         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12522         higher up.
12523
12524 2005-03-15  Werner Lemberg  <wl@gnu.org>
12525
12526         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12527         diagonal stem doesn't become thinner.
12528
12529 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12530
12531         * buildscripts/fixcc.py: Fixes (Werner).
12532
12533 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12534
12535         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12536         Emmentaler/Aybabtu.
12537
12538         * GNUmakefile.in: fix lilypond-words path.
12539
12540         * po/tr.po: update to 2.3.21
12541
12542         * lily/new-fingering-engraver.cc (position_scripts): take priority
12543         from head position.
12544
12545         * input/regression/finger-chords-order.ly (texidoc): new file.
12546
12547 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12548
12549         * make/ly-rules.make: 
12550         * stepmake/aclocal.m4: 
12551         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12552
12553         * buildscripts/fixcc.py (rules): Leave space after operator.
12554
12555 2005-03-14  Werner Lemberg  <wl@gnu.org>
12556
12557         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12558         top of the glyph with smooth curve.
12559
12560 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12561
12562         * Documentation/user/global.itely (Page layout): remove
12563         printpagenumber.
12564
12565 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12566
12567         * input/regression/mensural-ligatures.ly: new file (with examples
12568         compiled by Pal Benko).
12569
12570         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12571         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12572         musicglyph access.  Many small beautifications in ancient
12573         examples.
12574
12575         * input/test/divisiones.ly: fixed indentation; small
12576         beautifications
12577
12578         * ly/engraver-init.ly: added FIXME comment
12579
12580         * scripts/lilypond-book.py,
12581         Documentation/user/lilypond-book.itely: added music fragment
12582         option "packed" to lilypond-book
12583
12584         * Documentation/user/instrument-notation.itely: Bugfix: added
12585         missing LedgerLineSpanner color setting in several places.  Added
12586         music fragment option "packed" to VaticanaContext example.
12587
12588 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12589
12590         * scm/define-grobs.scm (all-grob-descriptions): switch off
12591         Hyphen_spanner::set_spacing_rods 
12592
12593         * lily/lyric-hyphen.cc (print): add padding between syllable and
12594         hyphen.
12595         (print): shorten hyphen in tight situations (determine using
12596         minimum-length)
12597
12598         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12599         0.4pt.
12600
12601 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12602
12603         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12604
12605         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12606         header/footer markings for regression-test.
12607
12608         * scm/backend-library.scm (output-scopes, header-to-file): Move
12609         from framework-tex.scm.
12610
12611         * scm/framework-ps.scm (output-framework)
12612         (output-preview-framework):
12613         * scm/framework-eps.scm (output-classic-framework)
12614         (output-framework): Use it.  Fixes collated files.
12615
12616 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12617
12618         * input/sakura-sakura.ly: 
12619         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12620
12621         * buildscripts/guile-gnome.sh: Update.
12622
12623         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12624
12625         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12626
12627 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12628
12629         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12630         culprit: always exit the loop if we find a rod, even if it has
12631         distance < 0. 
12632
12633         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12634         algorithm.
12635
12636         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12637         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12638
12639         * scm/output-svg.scm (dashed-line): new  function body.
12640         
12641         * GNUmakefile.in: create .htaccess.
12642
12643 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12644
12645         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12646
12647 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12648
12649         * VERSION (PACKAGE_NAME): release 2.5.15
12650
12651         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12652
12653         * scm/framework-svg.scm (output-framework): put scaling in
12654         document header. Apply scaling only once.
12655         (output-framework): dump page size in px, not mm. 
12656
12657         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12658         from font-size.
12659
12660         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12661         ly:outputter-output-scheme, new function.
12662
12663         * scm/output-svg.scm (pango-description-to-svg-font): new function
12664
12665 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12666
12667         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12668         target.
12669
12670         * input/typography-demo.ly: new file.
12671
12672 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12673
12674         * Documentation/user/global.itely (File structure): Add markup blocks
12675         to toplevel expressions.
12676         (Multiple movements, Creating titles): Add markup blocks.
12677
12678         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12679         <libc-extension.hh>).
12680
12681         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12682
12683         * flower
12684         * lily
12685         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12686
12687 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12688
12689         * lily/accidental.cc: special bboxes for natural. 
12690
12691         * mf/feta-toevallig.mf: make stems heavier.
12692
12693         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12694         texts as well.
12695
12696         * mf/feta-klef.mf: revise. 
12697
12698         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12699
12700         * mf/feta-klef.mf: add rounded curve at top. 
12701         make thinnib a little heavier.
12702
12703 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12704
12705         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12706
12707         * buildscripts/fixcc.py: New file.
12708
12709         * input/regression/utf8.ly: Update Debian font description.
12710
12711 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12712
12713         * stepmake/aclocal.m4: Fix test.
12714
12715 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12716
12717         * Documentation/user/invoking.itely: added Sebastino Vigna's
12718         docs for the --jail option.
12719
12720 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12721
12722         * lily/stem.cc (print): only produce stemlets if there are no
12723         noteheads on this stem.
12724
12725         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12726         don't crash on stemlet (visible stem without heads).
12727
12728         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12729         unbroken situations. 
12730
12731         * scm/output-lib.scm (center-invisible): new function.
12732
12733         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12734         wishes to determine loose column space.
12735
12736         * lily/font-config.cc (init_fontconfig): add
12737         fonts/{otf,type1,cff}  to path.
12738
12739         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12740
12741         * mf/GNUmakefile (Module): install all fonts under otf/
12742
12743         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12744         replace /fonts/otf/ by /ps/ 
12745
12746         
12747 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12748
12749         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12750
12751         * lily/book.cc (process): Oops, add score_.header_.
12752
12753         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12754
12755         * lily/parser.yy: Handle toplevel and book texts as score.
12756
12757         * scm/page-layout.scm (default-page-make-stencil):
12758         Bugfix: (page-properties rename.
12759
12760         * scm/backend-library.scm (ly:system): Typo.
12761
12762 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12763
12764         * stepmake/stepmake/executable-targets.make (installexe): don't
12765         strip installed executables
12766
12767         * lily/font-select.cc (get_font_by_design_size): revert
12768         pango_description_string as well.
12769
12770         * lily/system.cc (set_loose_columns): put loose column just left
12771         of next column.
12772
12773         * lily/include/group-interface.hh (extract_grob_array): rename
12774         from Pointer_group_interface__extract_grobs
12775
12776         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12777
12778         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12779         function. Keep ledgered note heads at a minimum distance.
12780         Introduce minimum-length-fraction
12781         (print): introduce length-fraction property.
12782
12783 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12784
12785         * tex/GNUmakefile: remove latin1.enc rules.
12786
12787 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12788
12789         * scm/titling.scm: Typo.
12790
12791         * input/regression/score-text.ly: Really add.
12792
12793         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12794
12795 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12796
12797         * lily/open-type-font-scheme.cc:  new file.
12798
12799 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12800
12801         * scm/titling.scm (layout-extract-page-properties): Rename from
12802         page-properties.  Update callers.
12803
12804         * lily/lexer.ll (Lily_lexer):
12805         * lily/parser.yy: Junk lyric_markup state.
12806
12807         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12808
12809         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12810         Add texts parameter.
12811
12812 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12813
12814         * lily/lexer.ll (lyric_markup): New mode.
12815         (Lily_lexer::push_lyric_markup_state): New method.
12816         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12817
12818         * lily/parser.yy (book_body):
12819         (toplevel_expression): Grok \markup texts.
12820
12821         * lily/score-scheme.cc (ly:music-scorify): 
12822         * scm/lily-library.scm (collect-music-for-book): Take texts
12823         parameter.
12824
12825         * lily/score.cc (texts_): New member.
12826
12827         * lily/paper-book.cc (systems): Format score texts.
12828
12829         * score-text.ly: New file.
12830
12831         * ttftool/SConscript:
12832         * kpath-guile/SConscript: New file.
12833
12834         * lily/SConscript:
12835         * SConstruct: Update.
12836
12837 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12838
12839         * VERSION (PACKAGE_NAME): release 2.5.14
12840
12841 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12842
12843         * lily/main.cc: Add dummy xgettext markers.
12844
12845 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12846
12847         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12848         requirements
12849
12850         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12851         executable is < 40k
12852
12853         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12854         hack.
12855
12856 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12857
12858         * flower/libc-extension.cc:
12859         * flower/include/libc-extension.hh: [Open]BSD simply cast
12860         cookie/funopen declarations.
12861
12862         * stepmake/aclocal.m4: Check for libkpathsea.so.
12863
12864         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12865         dl_kpse_find_file.
12866
12867 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12868
12869         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12870         (open_library): alternative for static library.
12871
12872 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12873
12874         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12875
12876         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12877
12878         Drop run-time dependency on teTeX.
12879
12880         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12881
12882         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12883         KPATHSEA_LIBS in LIBS.
12884         (STEPMAKE_DLOPEN): New function.
12885
12886         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12887         not path.
12888
12889         * flower/file-path.cc (directories): Rename from paths, as this
12890         return an array of directories (a single path).
12891
12892 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12893
12894         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12895
12896         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12897         new ly:kpathsea-find-file
12898
12899         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12900
12901         * kpath-guile/GNUmakefile: new file
12902
12903         * buildscripts/gen-emmentaler-scripts.py (i): generate
12904         emmentaler-X.fontname as well.
12905
12906         * buildscripts/ps-embed-cff.py: new script
12907
12908         * scm/lily-library.scm: remove ps-embed-cff.
12909
12910         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12911         font loading. 
12912
12913         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12914         fontconfig as well.
12915
12916         * lily/font-config.cc (init_fontconfig): add cff/ too.
12917
12918         * ly/generate-embedded-cff.ly: capitalize.
12919
12920         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12921         so as to register the pango font.
12922
12923         * lily/font-config.cc (init_fontconfig): add
12924         prefix/{otf,type1,mf/out} to fontconfig path.
12925
12926         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12927         overrides all. 
12928
12929         * configure.in (gui_b): remove ec mftrace check
12930
12931         * config.hh.in: use lilypond-Major.Minor as data directory.
12932
12933         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12934
12935         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12936         name.
12937
12938 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12939
12940         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12941         error messages.
12942
12943         * flower/libc-extension.cc:
12944         * flower/include/libc-extension.hh: [Open]BSD fixes for
12945         cookie/funopen declarations.
12946
12947 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12948
12949         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12950         emmentaler.
12951
12952         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12953         lcrm10.
12954
12955         * scm/define-markup-commands.scm (fontsize): new markup
12956         command. Also set baseline-skip
12957
12958 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12959         
12960         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12961         use.
12962
12963 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12964
12965         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12966
12967         * lily/pdf.cc: remove PDF related files
12968
12969 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12970
12971         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12972         <hamamatsu@gmx.de>
12973
12974 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12975
12976         * Documentation/user/advanced-notation.itely: first draft
12977         of reorg done.
12978
12979         * Documentation/user/global.itely: fixed (sub)section
12980         bits of MIDI.
12981
12982 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12983
12984         * cygwin/mknetrel (extras): Bufix (Bertalan).
12985
12986         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12987         * Documentation/user/instrument-notation.itely (Introducing chord
12988         names): Compile fix: must have unique name.
12989
12990 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12991
12992         * Documentation/user/instrument-notation.itely: reorg.
12993
12994 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12995
12996         * scm/output-gnome.scm:
12997         * scm/output-svg.scm: Fix font scaling.
12998
12999 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13000
13001         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13002         what link to use best.
13003
13004         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13005         * Documentation/user/tutorial.itely (Automatic and manual beams):
13006         Fix @ref.
13007
13008         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13009         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13010         * scm/framework-gnome.scm (tweak): Use it.
13011
13012 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13013
13014         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13015
13016         * scm/output-ps.scm (white-text): reinstate white-text
13017
13018 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13019
13020         * scm/output-ps.scm (offset-add): Remove.
13021
13022         * scm/lily-library.scm (offset-flip-y): New function.
13023         * scm/framework-gnome.scm (tweak): Use it.
13024
13025         * scm/output-gnome.scm (grob-cause): Add parameter.
13026
13027         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13028         * scm/output-ps.scm (url-link): Move.
13029         (white-text): Warn user about brokenness.
13030
13031         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13032         wrt ghostscript.
13033
13034 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13035
13036         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13037         if body length smaller than measure length.
13038
13039         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13040         for Y.
13041
13042         * ly/titling-init.ly (tagline): put default tagline in \paper
13043
13044 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13045
13046         * lily/kpath.cc: 
13047         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13048
13049         * scm/lily-library.scm (version-not-seen-message): New function.
13050         * ly/init.ly: Use it.
13051
13052         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13053         breaks as progess.
13054
13055         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13056         whitespace with l10n message.
13057
13058         * scm/framework-tex.scm (convert-to-ps):
13059         (convert-to-dvi): Do not use overly specific l10n messages.
13060
13061         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13062
13063         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13064         merge stderr with stdout.  
13065
13066 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13067
13068         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13069         Neeracher).
13070
13071 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13072
13073         * Documentation/user/instrument-notation.teily: moved
13074         \arpeggio to Basic.
13075
13076         * Documentation/user/advanced-notation.itely: Articulation to
13077         Basic, a bunch of stuff from Basic moved to Advanced.
13078
13079         * Documentation/user/basic.itely: swapped various sections,
13080         reorganized Basic.
13081
13082 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13083
13084         * flower/memory-stream.cc: 
13085         * flower/libc-extension.cc: Remove obsolete #undefs.
13086
13087         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13088         more carefully.
13089
13090 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13091
13092         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13093         dependency.
13094
13095         * VERSION (PACKAGE_NAME): release 2.5.13
13096
13097         * GNUmakefile.in (web-ext): don't ship ps.gz
13098
13099         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13100         stdout
13101
13102 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13103
13104         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13105         without libintl.  Now it compiles too.
13106
13107 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13108
13109         * Documentation/user/basic-notation.itely,
13110         instument-notation.itely, advanced-notation.itely:
13111         split up contents of notation.itely.
13112
13113         * Documentation/user/notation.itely: file removed.
13114
13115         * Documentation/user/invoking.itely, converters.itely:
13116         moved convert-ly info to invoking.itely.
13117
13118         * Documentation/user/global.itely, changing-defaults.itely,
13119         sound-output.itexi: moved global settings, file layout, and
13120         sound into global.itely.
13121
13122         * Documentation/user/sound-output.itexi: file removed.
13123
13124         * Documentation/user/lilypond.tely: removed links to
13125         notation.itely and sound.itely.
13126
13127 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13128
13129         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13130
13131         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13132  
13133         * THANKS: add sponsor.
13134
13135         * scm/define-markup-commands.scm (with-url): new markup command.
13136
13137         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13138         tagline.
13139         
13140         * scm/output-tex.scm (url-link): stub.
13141
13142         * scm/output-ps.scm (url-link): new function.
13143
13144         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13145         ly:set-point-and-click
13146
13147 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13148
13149         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13150         based on pdf-viewer setting.
13151
13152         * scm/framework-ps.scm (write-preamble): Find and set preferred
13153         pdf-viewer.
13154
13155 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13156
13157         * Documentation/user/point-and-click.itely: update for PDF point &
13158         click.
13159
13160         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13161         editors based on EDITOR setting.
13162
13163 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13164
13165         * scm/*: Oops, more grand 2005 replace bits.
13166
13167 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13168
13169         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13170
13171         * scm/output-ps.scm (grob-cause): point & click support for
13172         PostScript
13173
13174 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13175
13176         * lily/input-scheme.cc (LY_DEFINE): rename to
13177         ly:input-file-line-column
13178
13179 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13180
13181         * Documentation/user/examples.itely: small fix from Steve Doonan.
13182
13183         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13184
13185         * THANKS: added Yuval Harel.
13186
13187         * Documentation/user/{various}: inserted two spaces after a period.
13188
13189         * Documentation/user/lilypond.tely: added framework for reorg.
13190
13191         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13192         advanced-notation.itely, global.itely: new files, placeholder for
13193         future reorg.
13194
13195 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13196
13197         * Documentation/user/notation.itely: revamped Polyphony section
13198         
13199 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13200
13201         * Documentation/user/lilypond-book.itely (Music fragment options):
13202         doc fontload.
13203
13204         * Documentation/user/changing-defaults.itely (Text encoding): add
13205         fontload option to utf8 include
13206
13207         * scripts/lilypond-book.py (compose_ly): add fontload option
13208
13209         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13210         force-eps-font-include option.
13211
13212         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13213         black triangle
13214
13215         * Documentation/user/invoking.itely (Editor support): remove
13216         lilypond-latex section.
13217
13218         * scripts/lilypond-latex.py (Module): remove script.
13219
13220         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13221         overwrite .log. 
13222
13223         * lily/main.cc: remove -m, --no-layout
13224
13225         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13226         to define. We don't want to override fprintf everywhere.
13227
13228 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13229
13230         * cygwin/lilypond.hint: 
13231         * cygwin/README.in: Update dependencies.
13232
13233         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13234         Bugfix: do not pollute CPPFLAGS, LIBS.
13235
13236         * cygwin/mknetrel (extras): Cross compile fixes.
13237
13238         * ttftool/util.c: 
13239         * ttftool/ttfps.c: 
13240         * ttftool/ps.c: #include libc-extension.hh
13241
13242         * flower/include/libc-extension.hh:
13243         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13244         wrapper using funopen.
13245         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13246         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13247
13248         * config.hh.in:
13249         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13250         (AC_CHECK_HEADERS): Add libio.h
13251
13252         * scripts/convert-ly.py: Uniformize, internationalize.
13253         (2.5.2): Remove fatal encoding rule.
13254         (2.5.13): Handle latin1 encoding gracefully.
13255
13256 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13257
13258         * HACKING: Fix line breaks.
13259
13260 2005-02-23  Werner Lemberg  <wl@gnu.org>
13261
13262         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13263         contains those two files.
13264
13265 2005-02-21  Werner Lemberg  <wl@gnu.org>
13266
13267         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13268         to improve overlap removal process.
13269
13270         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13271         left and right ending.  This ensures better overlapping.
13272         Update all callers.
13273         ("lineprall"): Don't use draw_gridline to get better overlapping.
13274
13275 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13276
13277         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13278
13279         * Documentation/topdocs/NEWS.tely (Top): oops.
13280
13281 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13282
13283         * HACKING: new file.
13284
13285         * input/regression/utf8.ly (portuguese): added a portuguese example
13286         to show latin1 accents.
13287
13288 2005-02-21  Pal Benko  <benkop@freestart.hu>
13289
13290         * lily/mensural-ligature-engraver.cc:
13291         * lily/mensural-ligature.cc:
13292         * lily/include/mensural-ligature.hh: new algorithm implemented
13293
13294         * scm/define-grob-properties.scm: join-left killed (add-join may
13295         be used); join-left-amount changed to join-right-amount
13296
13297 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13298
13299         * Documentation/user/notation.itely: small but urgent fix.
13300
13301 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13302
13303         * lily/duration-scheme.cc: bugfix: correct parameters to
13304         SCM_ASSERT_TYPE.
13305
13306         * THANKS: added Pal.
13307
13308         * Documentation/user/notation.itely: bugfix: unTeXified
13309         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13310         "timesig.*x/y" -> "timesig.*xy".
13311
13312 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13313         
13314         * VERSION (PACKAGE_NAME): release 2.5.12
13315
13316 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13317
13318         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13319
13320         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13321
13322         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13323
13324         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13325
13326 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13327
13328         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13329         latin1..utf-8.
13330
13331         * input/regression/stanza-number.ly:
13332         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13333
13334         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13335
13336 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13337
13338         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13339         NEWS. Refer to website for older news.  
13340
13341         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13342         .HTML. This should be done for specific servers only.
13343
13344         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13345         .ly image examples.
13346
13347         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13348         in layer 0 too.
13349
13350         * scm/define-context-properties.scm
13351         (all-user-translation-properties): add tieWaitForNote
13352
13353         * scm/define-grobs.scm (all-grob-descriptions): add
13354         Tie_column::before_line_breaking
13355
13356         * lily/tie.cc (get_column_rank): new function
13357
13358         * lily/tie-column.cc (before_line_breaking): new function.
13359         (werner_directions): take into account ties that start on
13360         different columns.  
13361
13362         * lily/score-engraver.cc (set_columns): move add_column() so we
13363         have column rank available.
13364
13365         * lily/tie.cc (get_column_rank): new function.
13366
13367         * input/regression/utf8.ly (japanese): add japanese lyrics.
13368
13369         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13370
13371         * THANKS: add Steve D
13372
13373         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13374         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13375
13376 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13377
13378         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13379         to show harmonic notes
13380         * scm/define-markup-commands.scm: in \markup-by-number
13381         "dots-dot" -> "dots.dot" to show dotted notes
13382
13383 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13384
13385         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13386
13387         * flower/memory-stream.cc (writer): new file.
13388
13389         * configure.in: add endian test.
13390
13391 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13392
13393         * Documentation/user/examples.itely: small
13394         simplification/beautification
13395
13396         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13397         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13398         notation manual.
13399
13400         * lily/mensural-ligature.cc: bugfix: another few victims of the
13401         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13402
13403         * ly/gregorian-init.ly: commit some experimental code for hi-level
13404         ligature input language lying around here for several months.
13405
13406         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13407         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13408
13409         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13410         "x-y-z"->"x.y.s-z" fixes.
13411
13412 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13413
13414         * scm/framework-pdf.scm (scm): new file
13415
13416         * lily/include/pdf.hh (class Pdf_file): new file.
13417
13418         * lily/pdf.cc (write_trailer): new file.
13419
13420 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13421
13422         * input/regression/color.ly: new file
13423
13424         * lily/stencil.cc (interpret_stencil_expression):
13425         when a color expression is encountered: save current color,
13426         process the rest of the expression, and restore previous color.
13427
13428         * lily/system.cc (get_line): check all grobs for color property and
13429         prepare the stencil scheme expressions for further processing.
13430         Fix layer-loop.
13431
13432         * scm/define-grob-properties.scm: introduce the color property.
13433
13434         * scm/output-lib.scm: color helper functions.
13435
13436         * scm/output-ps.scm: introduce setcolor/resetcolor.
13437
13438 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13439
13440         * ly/*.ly, input/regression/*.ly: Added missing \version
13441         statements in some files.
13442
13443 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13444
13445         * Documentation/user/notation.itely: minor editing.
13446
13447         * Documentation/user/converters.itely: updated convert-ly bugs.
13448
13449         * Documentation/user/lilypond-book.itely: add info about using
13450         feta characters in latex.
13451
13452 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13453
13454         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13455
13456 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13457
13458         * scm/define-grob-properties.scm (all-user-grob-properties):
13459         removed 'dashed property.
13460
13461 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13462
13463         * scm/lily.scm (define-safe-public): new macro for defining
13464         variables that can be used in --safe mode. Use it in *.scm
13465         instead of manually setting safe-objects in safe-lily.scm.
13466
13467 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13468         
13469         * lily/slur.cc: Slur-dash patch by Bertalan.
13470
13471         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13472
13473         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13474
13475 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13476
13477         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13478
13479 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13480
13481         * mf/GNUmakefile: teTeX-3.0 install fix.
13482
13483         * Cygwin patch from Bertalan.
13484
13485         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13486
13487 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13488
13489         * GNUmakefile.in: 
13490         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13491
13492         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13493         2.0.x compatibility.
13494
13495 2005-02-08  Werner Lemberg  <wl@gnu.org>
13496
13497         * mf/feta-din-code.mf: Format; clean up code.
13498         Replace `---' with `--' plus explicit path directions.
13499         (linethickness#, stafflinethickness#): Remove.
13500         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13501         ("dynamic s"): Improve shape.
13502         ("dynamic p"): Improve shape.
13503         Replace `draw' with better outline approximation.
13504         ("dynamic r"): Improve shape.
13505         Don't call `fill' and `draw' at the same time.
13506
13507 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13508
13509         * SConstruct (symlink):
13510         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13511         build fix: add enc symlink.
13512
13513         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13514
13515         Support for DESTDIR besides prefix=/foo
13516
13517         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13518
13519         * stepmake/stepmake/*.make:
13520         * */GNUmakefile:
13521         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13522
13523         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13524
13525         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13526         mawk in fontforge (date) test.
13527
13528 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13529
13530         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13531         font-family=roman. Add Luxi Sans as sans
13532
13533 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13534
13535         * Documentation/user/notation.itely: add warning about
13536         percent repeats and Voice contexts.
13537
13538         * Documentation/user/lilypond-book.itely: clarified the
13539         necessity of dvips -u arguments.
13540
13541 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13542
13543         * THANKS: Added a bunch of bug hunters.
13544
13545 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13546
13547         * scm/framework-ps.scm (output-preview-framework): bugfix.
13548
13549         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13550         o/ for chord modifier..
13551
13552         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13553
13554         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13555         Welsh Duggan). 
13556
13557 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13558
13559         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13560
13561         * ly/titling-init.ly: Do not also print intstrument in header on
13562         first page.  Do not print page number on first and only page.
13563
13564 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13565
13566         * input/regression/*.ly: remove old-relative everywhere
13567
13568         * lily/music-sequence.cc (simultaneous_relative_callback): do
13569         what-if analysis on copy, not on original. Fixes old-relative
13570         compatibility.
13571
13572         * scm/backend-library.scm (postscript->png): space before
13573         --verbose.
13574         
13575 2005-02-05  Werner Lemberg  <wl@gnu.org>
13576
13577         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13578         is defined.
13579
13580         * mf/feta-alphabet.mf: Define `staffsize#'.
13581         Include `feta-params.mf'.
13582         s/staffheight/design_size/.
13583
13584         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13585
13586         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13587
13588         * mf/feta-nummer-code.mf: Reformatted.
13589         (draw_six): Use outline intersection to avoid a self-intersecting
13590         path.
13591         ("Numeral comma"): Fix serious outline glitches.  This slightly
13592         changes the glyph shape.
13593         ("Numeral dash"): Use `draw_rounded_block'.
13594         ("Numeral dot"): Use `drawdot'.
13595         ("Numeral 1"): Assure identical tangent directions for the
13596         intersection points of paths.  The glyph shape improvement is only
13597         visible at very high magnifications.
13598         ("Numeral 2"): Use `solve' macro to make the lower right part of
13599         the glyph outline touch the x axis exactly.  This changes the
13600         glyph shape.
13601         Minor fixes for better overlap removal support.
13602         ("Numeral 4"): Make lefter corner `rounder'.
13603         ("Numeral 5"): Assure identical tangent directions for the
13604         intersection points of paths.  This improves the glyph shape at
13605         high magnifications.
13606         ("Numeral 7"): Use `solve' macro to make the upper right part of
13607         the glyph outline touch the metrics box exactly.  This changes the
13608         glyph shape.
13609         Avoid corner in the upper left part of the glyph (causing a minor
13610         shape change).
13611
13612         * mf/feta-ital-*.mf: Removed.  Unused.
13613
13614 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13615
13616         * VERSION (PATCH_LEVEL): release 2.5.11
13617
13618         * input/regression/fill-line-test.ly: new file.
13619
13620         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13621         emmentaler name, eg. emmentaler-23. 
13622
13623 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13624
13625         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13626         alignment with centered texts
13627
13628         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13629         list of paddings
13630
13631 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13632
13633         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13634
13635         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13636         of parents when translating rests. Fixes: c-chord-rest.ly 
13637
13638         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13639         dimension_callback_ member.
13640
13641         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13642         of extents.
13643
13644 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13645
13646         * all but lily/*: The grand 2004/2005 replace.
13647
13648 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13649
13650         * lily/*: add space after ,  
13651
13652         * scm/music-functions.scm (has-request-chord): don't use
13653         ly:music-name anywhere. Fixes <<\\>> notation. 
13654
13655         * scm/define-markup-commands.scm (box): use font-size for
13656         padding. Fixes boxed-rehearsal-marks.ly
13657
13658         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13659         identifier definition too, so foo = \lyrics { ...   } bar = #1
13660         doesn't complain about "bar" being LYRICS_STRING.
13661
13662         * lily/paper-def.cc (find_pango_font): new routine; Store
13663         pango_fonts in hash tab too. This is necessary for retrieving
13664         Pango_fonts::physical_font_tab() later on.
13665  
13666         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13667         crash if psname is null.
13668
13669         * lily/lily-guile.cc (ly_hash2alist): new function
13670
13671         * Documentation/user/changing-defaults.itely (Text encoding):
13672         rewrite. 
13673
13674         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13675         -> font_filename mapping.
13676
13677         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13678         ly_pango_font_physical_fonts
13679
13680         * scm/framework-ps.scm (supplies-or-needs): extract names from
13681         physical Pango_fonts.
13682
13683         * utf8.ly: new file.
13684
13685 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13686
13687         * Documentation/user/changing-defaults.itely (Page layout): add
13688         doco about systemSeparatorMarkup.
13689
13690         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13691         function.
13692         (default-page-make-stencil): insert system separators.
13693
13694         * scm/define-markup-commands.scm (hcenter): add
13695         (beam): add.
13696
13697 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13698
13699         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13700
13701 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13702
13703         * lily/main.cc: Spell backend consistently.  Sort options.
13704
13705 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13706
13707         * scripts/lilypond-book.py (Module): revert @include.
13708         
13709 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13710
13711         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13712         Bugfix: @include .tex (not .texi).  Small cleanups.
13713
13714         * stepmake/bin/add-html-footer.py (i18n): New function.
13715
13716 2005-01-31  Werner Lemberg  <wl@gnu.org>
13717
13718         * mf/feta-nummer.mf: Removed.  Unused.
13719
13720 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13721
13722         * lily/ : 2004 -> 2005 s&r
13723
13724         * scm/file-cache.scm (cached-file-contents): add file. Read each
13725         file only once.
13726
13727         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13728         now default.
13729
13730         * VERSION: release 2.5.10
13731         
13732         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13733
13734         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13735
13736         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13737         that both X and Y extents of bbox are non-nil.
13738
13739 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13740
13741         * scm/chord-name.scm (alteration->text-accidental-markup): change
13742         - to . 
13743
13744         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13745
13746         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13747
13748         * Documentation/user/invoking.itely (Invoking lilypond): add note
13749         about EPS backend.
13750
13751         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13752         files for inclusion in lilypond-book document.
13753
13754         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13755
13756         * input/tutorial/lbook-texi-test.texi: new file.
13757
13758         * scm/safe-lily.scm (safe-objects): add
13759         {begin,end}-of-line-(in)?visible as safe.
13760  
13761 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13762
13763         * Documentation/user/changing-defaults.itely: fixed example
13764         of (dynamics).
13765
13766 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13767
13768         * lily/main.cc: fix info about -o=FILE.
13769
13770 2005-01-29  Werner Lemberg  <wl@gnu.org>
13771
13772         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13773         construction to assure smooth transition from straight to curved
13774         lines.
13775
13776 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13777
13778         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13779         stencils.
13780
13781         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13782         translate to top of page. Fixes alignment problems of
13783         lilypond-generated EPS files.
13784
13785 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13786
13787         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13788         crescendo-end as well, since Decrescendo maybe ended with Stop
13789         Crescendo.). Fixes: partcombine-diminuendo.ly
13790
13791         * scm/script.scm (default-script-alist): swap portato symbols.
13792
13793         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13794
13795         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13796         ly:outputter-port. New function.
13797
13798         * scm/framework-ps.scm (output-classic-framework): dump a
13799         -systems.texi too
13800         (output-classic-framework): dump multiple systems on an "infinite"
13801         page EPS including fonts. 
13802
13803         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13804         .eps files for both texi and tex formats. Use PNG coming from
13805         lilypond.
13806         
13807 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13808
13809         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13810
13811         * scripts/lilypond-latex.py: fix info about -o=FILE.
13812
13813 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13814
13815         * ly/generate-embedded-cff.ly: write .cff.ps files.
13816
13817         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13818
13819         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13820         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13821
13822 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13823
13824         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13825
13826 2005-01-28  Werner Lemberg  <wl@gnu.org>
13827
13828         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13829         macros.
13830         (draw_bulb): Improved.
13831
13832         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13833         metapost bug.
13834         (draw_pedal_P): Use soft_end_penstroke.
13835         (draw_pedal_d): Use soft_start_penstroke.
13836
13837         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13838         path.
13839         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13840         doesn't change the glyph shape.
13841
13842         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13843         changing the shape) to avoid fontforge warnings.
13844
13845         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13846         soft_end_penstroke and fix glyph shape.
13847
13848 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13849
13850         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13851
13852 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13853
13854         * scm/define-markup-commands.scm (line): filter out empty stencils
13855         from line command.
13856
13857         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13858         amount.
13859
13860 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13861
13862         * Documentation/user/notation.itely: added info about what
13863         \voiceFoo does.  Also rewrote warning about marks at
13864         a line break.
13865
13866         * Documentation/user/changing-defaults.itely: added info
13867         about putting dynamics in parenthesis and brackets.
13868
13869 2005-01-27  Werner Lemberg  <wl@gnu.org>
13870
13871         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13872
13873 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13874
13875         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13876         portato-direction.ly
13877
13878         * lily/beam.cc (consider_auto_knees): add beam height to
13879         threshold. Fixes: knee-multiple-beam.ly
13880
13881         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13882         pedal line spanners. Fixes: instrument-center-pedal.ly
13883
13884         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13885         if encountering barline. Fixes: auto-beam-repeat.ly
13886
13887 2005-01-26  Werner Lemberg  <wl@gnu.org>
13888
13889         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13890         overlapping.
13891
13892         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13893         with inflections for the 1/2 sharp glyph.
13894
13895         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13896         connection between `t' and `r'.
13897         Unify bulb with the rest of `r' to avoid grazing outlines which
13898         confuses the overlap removal algorithm of fontforge.
13899
13900         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13901         inflections.
13902         (draw_cross): Fix shape to have uniform thickness in corners.
13903
13904         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13905         to avoid an uneven number of self-intersections; this confuses
13906         fontforge.
13907         Fix a slight bug in the shape at left bottom (which is visible only
13908         at high magnifications).
13909         `Center' the stem horizontally to avoid overlapping.
13910
13911 2005-01-24  Werner Lemberg  <wl@gnu.org>
13912
13913         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13914         to `asis'.
13915         (fet_begingroup): Save group name in string `feta_group'.
13916         (fet_endgroup): Updated.
13917         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13918
13919         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13920
13921         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13922         in metapost.
13923
13924 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13925
13926         * Documentation/user/notation.itely: really minor editing.
13927
13928 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13929
13930         * Documentation/user/examples.itely: minor editing.
13931
13932         * Documentation/user/changing-defaults.itely: minor editing.
13933
13934         * Documentation/user/notation.itely: clarified info on polyphony
13935         and \addlyrics.
13936
13937 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13938
13939         * scm/output-gnome.scm: 
13940         * scm/output-svg.scm:
13941         * scm/lily-library.scm (font-name-style): Update font name
13942         kludging for fontconfig use.
13943
13944 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13945
13946         * scm/define-markup-commands.scm: Document right-align and
13947         larger markup commands. Remove "TODO" from the topmost comment
13948         "each markup function should have a doc string." More consistent
13949         use of new-lines.
13950
13951 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13952
13953         * Documentation/user/changing-defaults: removed info about
13954         copyright symbol, since it's likely to change soon.
13955         Added info about betweensystemspace.
13956
13957         * Documentation/user/notation.itely: minor fixes.
13958
13959         * Documentation/user/lilypond.tely,
13960         Documentation/user/music-glossary.tely: changed copyright
13961         date to 2005 instead of 2004.
13962
13963         * input/test/volta-chord-names.ly: added old example back.
13964
13965 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13966
13967         * mf/feta-beugel.mf: use design size 20 (not 15).
13968
13969         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13970         change name to aybabtu completely
13971
13972 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13973
13974         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13975         design_size to fontname
13976
13977 2005-01-19  Werner Lemberg  <wl@gnu.org>
13978
13979         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13980         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13981
13982         * mf/feta-autometric.mf (set_char_box): Add code which emits
13983         specials for mf2pt1 if run with metapost.
13984         (to_bp): New macro for mf2pt1.
13985
13986 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13987
13988         * Documentation/user/changing-defaults: added info on
13989         creating a copyright symbol.
13990
13991 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13992
13993         * VERSION: release 2.5.9
13994         
13995 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13996
13997         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13998
13999         * Documentation/user/notation.itely: Document
14000         score-override-auto-beam-setting Fix documentation for
14001         revert-auto-beam-setting.
14002
14003 2005-01-18  Werner Lemberg  <wl@gnu.org>
14004
14005         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14006         (procset): New function to define a procset resource.
14007         (ps-embed-pfa): New function to define a font resource.
14008         (setup): New function to define a `Setup' environment.
14009         (preamble): Use new functions.
14010
14011         * ps/lilypond.defs (init-lilypond-parameters): New function to
14012         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14013
14014 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14015
14016         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14017
14018 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14019
14020         * scm/define-markup-commands.scm: Change number->markletter-string
14021         to take two arguments (vector number). Add number->mark-alphabet-vector
14022         and markalphabet markup command.
14023
14024         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14025         format-mark-alphabet, format-mark-box-barnumbers and
14026         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14027
14028 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14029
14030         * Documentation/user/examples.itely: add SATB automatic piano
14031         reduction template.
14032
14033         * Documentation/user/notation.itely: added info about changing
14034         partcombine texts.  Also adds examples of alternate lyrics.
14035
14036         * Documentation/user/changing-defaults.itely: added warning
14037         about \RemoveEmptyStaffContext overriding previous changes.
14038
14039 2005-01-17  Werner Lemberg  <wl@gnu.org>
14040
14041         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14042         feta-alphabet*.
14043
14044 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14045
14046         * python/lilylib.py (make_ps_images): don't do final showpage for
14047         multi-page documents.
14048         
14049         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14050
14051 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14052
14053         * Documentation/user/lilypond.tely: changed order of appendices;
14054         unified index should be last.
14055
14056         * Documentation/user/notation.itely: add example of key signatures
14057         and info about Staff.printKeyCancellation.
14058
14059 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14060
14061         * lily/include/repeated-music.hh (class Repeated_music): change
14062         into "namespace" class.
14063
14064         * lily/event.cc: remove Key_change_event.
14065
14066         * lily/include/transposed-music.hh (class Transposed_music): remove.
14067
14068         * lily/transposed-music.cc: remove
14069
14070         * lily/include/relative-music.hh: remove.
14071
14072         * lily/include/music-sequence.hh (struct Music_sequence): change
14073         into "namespace" class.
14074
14075         * lily/untransposable-music.cc (Module): remove
14076
14077         * lily/include/un-relativable-music.hh (Module): remove
14078
14079         * lily/include/untransposable-music.hh (Module): remove
14080
14081         * lily/include/music-list.hh (Module): remove file
14082
14083         * lily/un-relativable-music.cc: remove file.
14084
14085 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14086
14087         * lily/parser.yy: Compile fix.
14088
14089 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14090
14091         * lily/include/music.hh (class Music): unvirtualize transpose().
14092
14093         * lily/sequential-music.cc: remove file.
14094
14095         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14096
14097         * lily/slur-scoring.cc (get_best_curve): only switch on
14098         DEBUG_SLUR_SCORING for non NDEBUG builds.
14099
14100         * lily/include/music.hh (class Music): replace Music::start_mom()
14101         by start-callback property
14102
14103         * lily/include/grace-music.hh: remove file. 
14104
14105         * lily/stem.cc (height): robustness fix.
14106
14107         * lily/time-scaled-music.cc: remove file.
14108
14109         * lily/include/music.hh (class Music): include SCM init argument.
14110         (class Music): replace Music::get_length() virtual by
14111         length-callback property everywhere.
14112
14113         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14114
14115         * mf/GNUmakefile: don't install *list.ly
14116
14117 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14118
14119         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14120
14121 2005-01-12  Werner Lemberg  <wl@gnu.org>
14122
14123         This patch addresses the following problems in the feta sources
14124         files which contribute to the fetaXX fonts.
14125
14126         . Many fixes for rasterization at low resolutions (consistent use of
14127           `vround' and `hround', integer shift values for paths, applying
14128           `eps' for mirrored paths, use of `define_whole_pixels' and
14129           friends, etc.) -- while this probably looks like a waste of time
14130           it has revealed deficiencies in some glyph shapes.  See comment at
14131           the end of feta-params.mf how vertical symmetry is achieved.
14132
14133         . The `---' operator has been replaced everywhere with `--'; this
14134           both improves and considerably reduces the font size after
14135           conversion with mf2pt1.
14136
14137         These change aren't explicitly mentioned below since virtually all
14138         glyphs are affected.
14139
14140         Other notable differences:
14141
14142         . Glyphs from feta-accordion.mf now have charboxes around the
14143           outline.
14144
14145         . Fixed incorrect charbox for `accDot'.
14146
14147         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14148
14149         . Fixed position of the bow in the `upprall' glyph and its siblings.
14150
14151         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14152           dependent on the staff line thickness to avoid touching the middle
14153           staff line at smaller sizes.
14154
14155         . Largely extended output for feta-testXX: Where useful, glyphs
14156         are shown both between and on staff lines.
14157
14158
14159         * mf/feta-params.mf (staff_space_rounded,
14160         stafflinethickness_rounded, linethickness_rounded,
14161         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14162         Update all code which uses them where appropriate.
14163         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14164         New variables used to control rasterization at low resolutions.  Set
14165         to zero if feta code is processed with metapost.
14166
14167         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14168         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14169         (flare_path): Updated.
14170         Make it work with `filldraw' (but only circular pens).
14171         (hfloor, vfloor, hceiling, vceiling): New macros.
14172
14173         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14174         Use `draw' again in mf mode to have good pixel dropout control.
14175         Fix intersection points of horizontal lines with circle.
14176         ("accDot"): Fix parameters for set_char_box.
14177         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14178         control.
14179
14180         * mf/feta-banier.mf: Updated.
14181
14182         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14183         testing.
14184         (undraw_inside_ellipse): Remove `center' argument.  Update all
14185         callers.
14186         (draw_brevis): New macro, called by "Brevis notehead".
14187         (draw_whole_triangle_head): New macro, called by "Whole
14188         trianglehead".
14189         (draw_small_triangle_head): Use `filldraw'.
14190
14191         * mf/feta-eindelijk.mf: Remove useless global group.
14192         Updated.
14193
14194         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14195         `filldraw'.
14196
14197         * mf/feta-pendaal.mf: Updated.
14198
14199         * mf/feta-puntje.mf: Updated.
14200
14201         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14202         less points.
14203         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14204         dropout control.
14205         ("Varied Coda"): Use `draw_block'.
14206         (draw_comma): Fix typo.
14207         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14208         pixel dropout control.
14209
14210         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14211         position of bow.
14212
14213         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14214         sizes.
14215
14216         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14217         testing.
14218         (draw_meta_sharp): Much simplified.
14219         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14220
14221         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14222
14223 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14224
14225         * Documentation/user/notation.itely (Ancient rests): Fix typo
14226         (thanks Anthony)
14227
14228 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14229
14230         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14231
14232         * lily/main.cc (setup_paths): Add cff.
14233
14234         * mf/GNUmakefile (foe): Include actual target %.cff.
14235         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14236
14237 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14238
14239         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14240         suffix for main_input_b_.
14241
14242         * scm/music-functions.scm (toplevel-music-functions):
14243         precompute music lengths for music expressions.  
14244
14245 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14246
14247         * lily/include/input.hh (class Input): new `end_' slot for end of
14248         input. Renamed defined_str0_ to start_.
14249
14250         * lily/input.cc (Input): Add Input::Input (Input const &) and
14251         remove Input::Input (Source_file*, char const *). Use the new
14252         slots.
14253         (set_location): method used by bison to propagate input
14254         locations (YYLLOC_DEFAULT).
14255         (end_line_number, end_column_number, step_forward): new methods
14256         
14257         * lily/input-scheme.cc (ly:input-both-locations): new function,
14258         similar to ly:input-location, but also return the end line and
14259         column.
14260
14261         * lily/include/includable-lexer.hh: 
14262         * lily/includable-lexer.cc: 
14263         * lily/include/lily-lexer.hh (class Lily_lexer): 
14264         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14265         Includable_lexer to Lily_lexer, in order to update lexloc (the
14266         yylloc), a new slot of Lily_lexer.
14267         (here_input, LexerError): simplify by using the lexloc slot (aka
14268         yylloc)
14269
14270         * lily/lexer.ll: #define yylloc to use input locations (it may
14271         be useless here?). Fixed the #embedded_scm rule (step the location
14272         forward in order to skip the sharp sign before parsing the scheme
14273         expression)
14274
14275         * lily/include/lily-parser.hh (class Lily_parser): 
14276         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14277         here_input()
14278         (parser_error): overload for more precise locations of errors.
14279
14280         * lily/parser.yy (YYLTYPE): set location type to Input
14281         (YYLLOC_DEFAULT): use Input::set_location()
14282         (yylex): add the YYLTYPE* location parameter.
14283         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14284         Give an Input parameter to THIS->parser-error() for more accurate
14285         messages.
14286
14287 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14288
14289         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14290
14291         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14292         on BEAMQUANTING for non-NDEBUG builds.
14293
14294         * lily/stem.cc (head_count): performance: avoid String::String()
14295         inside oft called function.
14296
14297 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14298
14299         * Documentation/user/examles.itely: attempted fix for broken
14300         string quartet template.
14301
14302         * Documentation/user/notation.itely: remove unnecessary broken
14303         link.
14304
14305 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14306
14307         * VERSION (PACKAGE_NAME): release 2.5.7
14308
14309 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14310
14311         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14312         mf-nowin for teTeX-3.0.  Backportme.
14313
14314         * scm/output-svg.scm (utf8-string): New function.
14315
14316         * scm/output-gnome.scm (utf8-string): New function.
14317         (otf-name-mangling): Remove.
14318
14319         * lily/pango-font.cc (Pango_font): Use font string iso font
14320         filename for utf8-text.
14321
14322         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14323         name.
14324
14325 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14326
14327         * Documentation/user/notation.itely: add info about
14328         Staff.extraNatural = ##f in Pitches section.  Also
14329         fixed some minor issues in the Vocal music section.
14330
14331 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14332
14333         * scm/output-ps.scm (white-text): comment out Helvetica font,
14334         which is broken for my GS install.
14335
14336         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14337         which provides a tighter bbox.
14338
14339         * scm/define-grobs.scm (all-grob-descriptions): remove all
14340         extra-offsets from definitions.
14341
14342 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14343
14344         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14345         add tuning for 4-string bass and some common 4/5-string banjo
14346         tunings.  New function (four-string-banjo) turns a 5-string tuning
14347         into a 4-string tuning.  New function
14348         (fret-number-tablature-format-banjo) computes correct fret numbers
14349         on 5-string banjos.
14350
14351         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14352         Add beam correction to TabVoice.
14353
14354         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14355         using bold font; makes tabs more readable.
14356
14357 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14358
14359         * lily/font-select.cc (get_font_by_design_size): don't make
14360         Modified_font_metric; this causes trouble, since we don't know the
14361         font magnification from inside Pango_font::text_stencil()
14362
14363         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14364
14365         * Documentation/user/notation.itely (The Lyrics context): comment out
14366         broken {Small ensembles} link.
14367
14368         * scm/framework-svg.scm (output-framework): change calling convention.
14369
14370         * lily/object-key-dumper-scheme.cc: new file.
14371
14372         * lily/object-key-undumper-scheme.cc: new file.
14373
14374         * lily/tweak-registration-scheme.cc: new file.
14375
14376         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14377
14378         * Documentation/user/examples.itely (String quartet): uncomment
14379         broken example.
14380
14381         * lily/font-config.cc: new file.
14382
14383 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14384
14385         * scm/output-svg.scm: 
14386         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14387
14388         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14389
14390 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14391
14392         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14393         Add headers.
14394
14395         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14396
14397 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14398
14399         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14400
14401         * lily/include/main.hh: lose _b hungarian suffixes for global
14402         variables.
14403
14404         * lily/include/lily-guile-macros.hh: new file.
14405
14406         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14407
14408         * lily/general-scheme.cc: new file. 
14409
14410         * lily/font-select.cc (get_font_by_design_size): retrieve
14411         PangoFont for (designsize . "pango-descr") entries.
14412
14413         * lily/lily-parser-scheme.cc: new file.
14414
14415         * lily/output-def-scheme.cc: new file.
14416
14417         * lily/paper-book-scheme.cc: new file.
14418
14419         * lily/duration-scheme.cc (LY_DEFINE): new file.
14420
14421         * lily/pitch-scheme.cc:  new file.
14422
14423         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14424
14425 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14426
14427         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14428
14429 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14430
14431         * Documentation/user/notation.itely: minor editing.
14432
14433         * Documentation/user/changing-defaults: minor editing.
14434
14435         * Documentation/user/examples.itely: add template for
14436         string quartet part extraction; demonstrates tag.
14437
14438 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14439
14440         * Documentation/user/notation.itely: documents
14441         format-mark-box-letters and format-mark-box-numbers
14442
14443         * scm/define-context-properties.scm: change comment.
14444
14445 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14446
14447         * scm/framework-ps.scm (output-classic-framework): new function:
14448         dump systems as separate .eps files (without fonts) and write a
14449         single collecting .tex file.
14450
14451 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14452
14453         * Documentation/user/notation.itely (Setting simple songs):
14454         Correct several errors in the equivalent formulation of
14455         \addlyrics. 
14456         (The Lyrics context): Corrected link to the SATB example.
14457
14458 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14459
14460         * scm/lily.scm (completize-formats): new function
14461         (postprocess-output): new function
14462
14463         * lily/paper-book.cc (classic_output): change calling
14464         convention. Give basename as first argument. 
14465         remove Paper_book::post_processing().
14466
14467         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14468
14469 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14470
14471         * lily/paper-outputter.cc (LY_DEFINE): new function
14472         ly:outputter-close.
14473
14474         * lily/main.cc: change --format,-f to --backend,-b
14475
14476         * lily/include/main.hh: rename format to backend.
14477
14478         * scm/translation-functions.scm (format-mark-box-numbers): add.
14479         patch by Erlend Aasland
14480
14481 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14482
14483         * lily/pango-font.cc (text_stencil): dump string as
14484         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14485
14486 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14487
14488         * configure.in (gui_b): Remove handy developer-only
14489         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14490         CVS source installations (but break other non-default but correct
14491         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14492
14493         * SConstruct: 
14494         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14495         compatibility (backportme).
14496
14497         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14498
14499 2005-01-03  Werner Lemberg  <wl@gnu.org>
14500
14501         Prepare glyph shapes for mf2pt1 conversion.
14502
14503         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14504         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14505         `penstroke'.
14506         (accDot): Use `drawdot'.
14507         (accBayanbase): Replace `draw' with `draw_gridline'.
14508         (print_penpos): Moved to feta-macros.mf.
14509         (accOldEE): Replace `filldraw' with `penstroke'.
14510         Replace `draw' with `penstroke' and `drawdot'.
14511
14512         * mf/feta-banier.mf: Code clean-up.
14513         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14514         `fill'.
14515
14516         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14517
14518         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14519         paremeter to control drawing of labels.  Update all callers.
14520
14521         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14522         (new_bulb): Return a bulb as a single path.  To do that, it now
14523         takes some more parameters.  Updated all callers.
14524         (draw_gclef): Major clean-up.  `draw' has been replaced with
14525         `penstroke', unnecessary outlines have been removed.
14526         Remove (unused) gnome-canvas code.
14527
14528         * mf/feta-macros.mf (print_penpos): New macro (from
14529         feta-accordion.mf).
14530         Other minor fixes.
14531
14532         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14533         ("Pedal dot"): Use `drawdot'.
14534         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14535         all callers.
14536         Fix shape at top.
14537         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14538         all callers.
14539         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14540         all callers.
14541         Revert drawing direction.
14542
14543         * mf/feta-schrift.mf (draw_fermata): Use single path.
14544         (draw_short_fermata): Replace `filldraw' with `fill'.
14545         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14546         `draw_rounded_block' with a single path.
14547         ("Thumb"): Draw full circle instead of mirroring segments.
14548         (draw_accent): New macro.
14549         ("> accent", "espr"): Use it.
14550         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14551         ("open (unstopped)"): Draw full circle instead of mirroring
14552         segments.
14553         (draw_vee): Removed.
14554         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14555         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14556         path.
14557         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14558         partial pieces drawn with `fill' -- these do still overlap with the
14559         stem of the `t' but just once, not multiple times so that fontforge
14560         can handle it gracefully.
14561         Change other parts of the glyph so that fontforge's overlapping
14562         algorithm reliably works.
14563         (draw_heel): Replace `draw' with `fill'.
14564         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14565         ("Flageolet"): Replace `draw' with `penstroke'.
14566         ("Segno"): Replace `filldraw' with `penstroke'.
14567         Replace `draw' with `drawdot'.
14568         ("Coda"): Replace `fill' with `penstroke', using a single path.
14569         ("Varied Coda"): Use less overlapping paths.
14570         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14571         single path.
14572
14573         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14574         group to better control the `labels' command.
14575         Rename argument to `offset' and use it actually.  Update all
14576         callers.
14577         Replace `filldraw' with `fill'.
14578         ("mordent", "prallmordent", "upmordent", "downmordent",
14579         "lineprall"): Replace `draw' with `draw_gridline'.
14580         ("upprall", "downprall"): Replace `draw' with `fill'.
14581
14582         * mf/feta-timesig.mf: Formatting.
14583
14584         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14585         to...
14586         ("Flat"): Here.
14587         (draw_paren): Move code to draw labels to...
14588         ("Right Parenthesis"): Here.
14589
14590 2005-01-02  Graham Percival <gperlist@shaw.ca>
14591
14592         * Documentation/user/notation.itely: add example of \setTextDecresc
14593         and \setTextDim.
14594
14595 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14596
14597         * scm/define-markup-commands.scm :  fix glyph-strings of
14598         accidentals and \note-by-number
14599
14600 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14601
14602         * VERSION: 2.5.6 released.
14603         
14604         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14605
14606         * input/regression/new-markup-scheme.ly: oops. font-family=music
14607         -> font-encoding fetaMusic.  
14608
14609         * lily/main.cc: put default to PS.
14610
14611         * lily/tfm.cc: idem.
14612
14613         * lily/afm.cc: idem.
14614
14615         * lily/include/modified-font-metric.hh (struct
14616         Modified_font_metric): remove coding_scheme() method.
14617
14618         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14619
14620         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14621
14622         * input/les-nereides.ly: convert to utf8
14623
14624         * lily/modified-font-metric.cc (text_dimension): idem.
14625
14626         * lily/parser.yy (TODO): idem.
14627
14628         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14629
14630         * lily/lexer.ll: remove encoding
14631
14632         * scm/framework-ps.scm (output-variables): separately scale the
14633         page to mm 
14634
14635         * lily/pango-font.cc (Pango_font): fix scaling.
14636
14637         * lily/font-metric.cc (design_size): design_size returns a
14638         dimension now as well.
14639
14640 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14641
14642         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14643         brace generation. 
14644
14645         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14646
14647 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14648
14649         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14650         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14651
14652 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14653
14654         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14655         in first run as well.
14656
14657         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14658         dimension less points (ie. 12 = 12 point)
14659
14660         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14661
14662         * lily/all-font-metrics.cc (find_pango_font): set description_
14663
14664         * lily/pango-font.cc (text_stencil): export size as well.
14665         (text_stencil): fix scaling and extents box.
14666
14667 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14668
14669         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14670
14671         * Documentation/user/invoking.itely (Invoking lilypond): document
14672         texstr
14673
14674         * scripts/convert-ly.py (conv): add ancient rules.
14675
14676         * scm/clef.scm (c0-pitch-alist): replace - with .
14677
14678         * scripts/lilypond-book.py (process_snippets): add texstr support.
14679
14680         * scm/framework-texstr.scm (header): change extension to .textmetrics
14681
14682         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14683         -f tex.
14684
14685         * lily/text-metrics.cc: new file.
14686         (try_load_text_metrics): new function
14687
14688         * lily/include/text-metrics.hh: new file.
14689
14690 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14691
14692         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14693         ly_scheme_function to ly_lily_module_constant.
14694
14695         * lily/modified-font-metric.cc (text_dimension): try
14696         lookup_tex_text_dimension() first.
14697
14698         * lily/tfm.cc: new function ly:load-text-dimensions
14699
14700 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14701
14702         * scm/output-texstr.scm (text): use \lilygetmetrics
14703
14704         * scm/framework-texstr.scm (header): dump in new format.
14705
14706         * tex/lilypond-tex-metrics: new file.
14707         
14708 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14709
14710         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14711         mapping.
14712         (index_to_charcode): New method.
14713
14714         * scm/output-ps.scm (glyph-string): 
14715         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14716
14717 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14718
14719         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14720         implement fully, need FONT to get to charcode.
14721
14722         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14723
14724         * scm: Cleanups.
14725
14726         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14727         {Tunable context properties},
14728         {All layout objects},
14729         {Music definitions}.
14730
14731 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14732
14733         * VERSION: release 2.5.5
14734         
14735         * lily/main.cc: use TeX as default output format.
14736
14737         * flower/file-path.cc (find): try to open directly as well, so we
14738         find absolute path files. 
14739
14740         * lily/pango-select.cc: new file.
14741
14742         * scm/framework-ps.scm: remove all encoding code. 
14743         load pfb/pfa for PangoFont too.
14744         
14745         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14746
14747 2004-12-22  Werner Lemberg  <wl@gnu.org>
14748
14749         Prepare glyph shapes for mf2pt1 conversion.
14750
14751         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14752
14753         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14754         (define_triangle_shape): Use it to replace `draw' with `fill' and
14755         `unfill'.  Update all callers.
14756         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14757         (draw_cross): Ditto.
14758         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14759         Use penrazor for better conversion with mf2pt1.
14760         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14761         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14762         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14763         draw_la_head, draw_ti_head): Replace `filldraw' with
14764         `fill'.  Update all callers.
14765
14766 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14767
14768         * lily/paper-book.cc (output): revert: only allow a single output
14769         format.
14770
14771         * lily/include/pango-font.hh: new file.
14772
14773         * lily/pango-font.cc: new file.
14774
14775         * lily/font-metric.cc (text_stencil): new routine
14776
14777         * lily/all-font-metrics.cc (find_pango_font): new routine.
14778
14779         * lily/include/font-metric.hh (struct Font_metric): add
14780         text_stencil()
14781
14782         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14783
14784 2004-12-22  Werner Lemberg  <wl@gnu.org>
14785
14786         Prepare glyph shapes for mf2pt1 conversion.
14787
14788         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14789
14790         * mf/feta-toevallig.mf: Formatting.
14791         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14792         ("Natural"): Fix paths to allow better postprocessing.
14793         (draw_meta_flat): Use `z3l' as additional point in path to get
14794         better conversion with mf2pt1.
14795         Other minor cleanups.
14796         ("3/4 Flat"): Add auxiliary points and modify path to replace
14797         `draw' with `fill'.
14798         ("Double Sharp"): Mirror path segments instead of picture elements
14799         to get a single outline.
14800         Modify path to replace `filldraw' with `fill'.
14801
14802 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14803
14804         * input/test/unfold-all-repeats.ly: added file back.
14805
14806         * Documentation/user/notation.itely,
14807         Documentation/user/programming-interface.itely
14808         Documentation/user/changing-defaults.itely: fixed misc broken
14809         links to input/test/ files.
14810
14811 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14812
14813         * tex/texinfo.tex: Update.  We should not be distributing this,
14814         but since we do, use latest version.
14815
14816         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14817         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14818         macros for feta glyphs.
14819
14820 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14821
14822         * Documentation/user/changing-defaults.itely: fix index for set.
14823
14824         * Documentation/user/converters.itely: added convert-ly bugs list
14825         from CVS.
14826
14827 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14828
14829         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14830         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14831         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14832         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14833
14834         * mf/GNUmakefile (pfa_warning): Use less broken check.
14835
14836         * python/lilylib.py (setup_environment): Remove cruft from
14837         GS_FONTPATH.
14838
14839         * configure.in: Bump mftrace requirement to 1.1.1.
14840
14841 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14842
14843         * scm/output-svg.scm (beam): Use polygon.
14844
14845         * scm/lily-library.scm: Bugfix.
14846
14847         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14848
14849         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14850
14851 2004-12-19  Werner Lemberg  <wl@gnu.org>
14852
14853         Prepare glyph shapes for mf2pt1 conversion.
14854
14855         * mf/feta-eindelijk: Some formatting.
14856         (multi_rest_x, multi_beam_height): Removed.  Unused.
14857         ("Quarter rest"): Use `intersectiontimes' to create a single
14858         outline.
14859         (rest_crook): Removed.  Unused.
14860         (draw_rest_bulb): Return path (without filling).  Update callers.
14861         Simplified.
14862         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14863         "128th rest"): Simplify `pat'.
14864         Create single outline.
14865
14866 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14867
14868         * mf/GNUmakefile (ALL_GEN_FILES):
14869         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14870
14871         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14872         function.
14873
14874 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14875
14876         * scm/output-texstr.scm (placebox): add routine
14877
14878         * VERSION (PACKAGE_NAME): release 2.5.4
14879
14880         * scm/framework-texstr.scm (output-framework): new file.  
14881
14882         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14883         processing.
14884
14885         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14886
14887         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14888         rule.
14889
14890         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14891
14892         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14893
14894         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14895
14896 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14897
14898         * scm/framework-svg.scm (dump-page): Implement landscape.
14899
14900 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14901
14902         * lily/main.cc (setup_paths): Add svg to search path.
14903
14904         * scm/output-svg.scm:
14905         * scm/framework-svg.scm: Add pageSet.  Update.
14906         (dump-fonts): New function.
14907         (output-framework): Use it.
14908
14909         * mf/GNUmakefile: 
14910         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14911
14912 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14913
14914         * tex/lilyponddefs.tex: comment out new ifpdf code.
14915
14916 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14917
14918         * GNUmakefile.in: 
14919         * SConstruct (symlink): Replace afm by otf.
14920
14921         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14922         ly:pango-add-afm-decoder.
14923
14924         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14925
14926 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14927
14928         * scm/output-ps.scm (new-text): don't access t glyph for getting
14929         space dimension.
14930
14931         * ly/init.ly: warn about \version
14932
14933         * lily/lexer.ll: set version-seen?
14934
14935 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14936
14937         * scm/output-svg.scm (string->entities): Update.
14938
14939 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14940
14941         * lily/main.cc (setup_paths): replace afm by otf for path. 
14942
14943         * lily/pangofc-afm-decoder.cc: remove.
14944
14945         * lily/include/pangofc-afm-decoder.hh: remove.
14946
14947         * scm/framework-scm.scm (output-framework): new file.
14948
14949         * mf/GNUmakefile: remove SAUTER_FONTS.
14950         remove SVG/sodipodi hacks.
14951
14952         * scm/lily-library.scm (stderr): move stderr.
14953
14954         * mf/GNUmakefile: remove AFM support.
14955
14956         * buildscripts/mf-to-table.py (base): remove AFM support.
14957
14958         * lily/open-type-font.cc (design_size): use design_size
14959
14960 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14961
14962         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14963
14964 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14965
14966         * mf/GNUmakefile: Generate combined aybabtu info.
14967         * mf/aybabtu.pe.in (i): Load it.
14968
14969         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14970         are not symbols.
14971
14972         * lily/include/open-type-font.hh (count): New method.
14973
14974         * mf/aybabtu.pe.in: Typo.
14975
14976         * Documentation/user/out/lilypond-internals.nexi (Scheme
14977         functions): Typo.
14978
14979         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14980
14981 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14982
14983         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14984         subfonts.
14985
14986         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14987
14988         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14989         (tex-font-command-raw): new function.
14990
14991         * lily/include/virtual-font-metric.hh (Module): remove file
14992
14993         * lily/virtual-font-metric.cc (Module): remove file.
14994         
14995
14996         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14997         (get_indexed_char): read bbox from lily table if present.
14998
14999 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15000
15001         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15002         aybabtu.subfonts
15003
15004         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15005         global glyphname. Enables more than 64 glyphs in the OTF.
15006
15007 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15008
15009         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15010         braces.
15011
15012         * lily/open-type-font.cc (design_size): Use 12 as default for
15013         design size.
15014
15015         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15016
15017         * mf/GNUmakefile: Generate aybabtu.
15018
15019         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15020
15021 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15022
15023         * scm/lily-library.scm (char->unicode-index): Remove.
15024
15025         * scm/output-gnome.scm (text): Bugfix for plain string input.
15026         Updates.
15027
15028         * scm/output-svg.scm (svg-font): Add weight to font selection.
15029
15030 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15031
15032         * Documentation/topdocs/INSTALL.texi (Top): Point to
15033         buildscripts/out/clean-fonts instead of
15034         buildscripts/clean-fonts.sh. 
15035
15036 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15037
15038         * input/regression/figured-bass.ly: attempt to clarify text.
15039
15040         * Documentation/user/notation.tely: add cindex for tag, attempt to
15041         add figured bass example.
15042
15043         * Documentation/user/changing-defaults: basic editing.
15044
15045 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15046
15047         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15048
15049         * lily/open-type-font.cc (LY_DEFINE): new function
15050         ly:font-sub-fonts
15051
15052         * lily/include/font-metric.hh (struct Font_metric): new method
15053         sub_fonts()
15054
15055         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15056         . with - in add.stem.
15057         
15058 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15059
15060         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15061         and fetaDynamic.
15062
15063         * lily/rest.cc (glyph_name): Change - to . .
15064
15065         * scm/output-gnome.scm (text): Hello world, again.
15066
15067         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15068
15069         * lily/modified-font-metric.cc (index_to_charcode): New method.
15070
15071         * lily/include/font-metric.hh (index_to_charcode): New function.
15072
15073         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15074         new function.
15075         (ly:font-glyph-to-index): Remove.
15076
15077 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15078
15079         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15080
15081         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15082
15083         * lily/open-type-font.cc (load_scheme_table): new function
15084
15085         * lily/dots.cc (print): replace - 
15086
15087         * lily/open-type-font.cc (attachment_point): new function.
15088         (load_table): read LILC table
15089
15090         * buildscripts/gen-bigcheese-scripts.py (Module): new
15091         file. Generate FF scripts.
15092
15093         * mf/feta-din10.mf: idem.
15094
15095         * mf/feta-nummer10.mf: remove mf files.
15096
15097         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15098
15099 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15100
15101         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15102
15103         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15104         compatibility.
15105
15106 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15107
15108         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15109         design-size and units_per_EM.
15110
15111         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15112
15113 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15114
15115         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15116         does not crash fontforge.
15117
15118         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15119         PUA.
15120
15121 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15122
15123         * scm/framework-ps.scm (ps-embed-cff): new function.
15124
15125         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15126
15127 2004-12-12  Werner Lemberg  <wl@gnu.org>
15128
15129         * mf/bigcheese.pe.in: Add PUA mapping.
15130         Don't create Type 42 but bare CFF font.
15131
15132 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15133
15134         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15135         within canvas boundaries.
15136
15137         * mf/merge.pe.in: Set font names, version, license GPL.
15138
15139         * make/substitute.make: Add FONTFORGE.
15140
15141         * config.make.in (FONTFORGE): Add.
15142
15143         * configure.in (gui_b): Use PATH_PROG for fontforge.
15144
15145 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15146
15147         * scm/define-markup-commands.scm: add baseline-skip to info
15148         about \column.
15149
15150 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15151
15152         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15153
15154         * scm/output-gnome.scm (named-glyph): Use it.
15155
15156         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15157
15158         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15159         (upper_string, lower_string, reverse_string): Remove.
15160
15161         * configure.in (fontforge): Reinstate version check.
15162
15163         * ly/engraver-init.ly: Fix clef glyph names.
15164
15165         * lily/time-signature.cc (special_time_signature): Fix fraction
15166         glyph names.
15167
15168 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15169
15170         * mf/merge.pe: new file.
15171
15172         * lily/freetype.cc: new file.
15173
15174         * lily/include/open-type-font.hh (class Open_type_font): new file.
15175
15176         * lily/include/freetype.hh: new file.
15177
15178         * lily/open-type-font.cc: new file.
15179
15180         * lily/all-font-metrics.cc (find_otf): new function.
15181
15182 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15183
15184         * lily/time-signature.cc (special_time_signature): Fix.
15185
15186         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15187         GTK2 before checking for pango.  Fixes -fgnome.
15188
15189         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15190         Scheme name.
15191
15192         * scm/define-markup-commands.scm:
15193         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15194
15195         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15196
15197         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15198         date versions.  Fixes configure.
15199         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15200         argument.
15201
15202 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15203
15204         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15205         names in .enc
15206
15207         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15208
15209 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15210
15211         * Documentation/user/changing-defaults.itely: add info about
15212         make-dynamic-script
15213
15214         * Documentation/user/notation.itely: add link in dynamics to
15215         section about make-dynamic-script.
15216
15217 2004-12-09  Christian hitz  <chhitz@gmx.net>
15218
15219         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15220
15221 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15222
15223         * buildscripts/mf-to-table.py (parse_logfile): use . for
15224         concatting name and group.
15225         (parse_logfile): use M for Minus (negative.)
15226
15227         * lily/include/type-swallow-translator.hh
15228         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15229
15230         * lily/*.cc: cosmetics around = sign.
15231
15232         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15233         lyric spacing on the penultimate column.
15234
15235 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15236
15237         * configure.in:
15238         * lily/accidental-placement.cc:
15239         * lily/bar-line.cc:
15240         * lily/beam-concave.cc:
15241         * lily/beam-quanting.cc:
15242         * lily/beam.cc:
15243         * lily/bezier-bow.cc:
15244         * lily/bezier.cc:
15245         * lily/break-align-interface.cc:
15246         * lily/custos.cc:
15247         * lily/dimension-cache.cc:
15248         * lily/dot-column.cc:
15249         * lily/font-metric.cc:
15250         * lily/font-select.cc:
15251         * lily/gourlay-breaking.cc:
15252         * lily/grob-property.cc:
15253         * lily/grob.cc:
15254         * lily/lily-guile.cc:
15255         * lily/line-spanner.cc:
15256         * lily/lookup.cc:
15257         * lily/lyric-extender.cc:
15258         * lily/lyric-hyphen.cc:
15259         * lily/mensural-ligature.cc:
15260         * lily/midi-def.cc:
15261         * lily/misc.cc:
15262         * lily/note-collision.cc:
15263         * lily/note-column.cc:
15264         * lily/note-head.cc:
15265         * lily/paper-outputter.cc:
15266         * lily/percent-repeat-item.cc:
15267         * lily/rest-collision.cc:
15268         * lily/side-position-interface.cc:
15269         * lily/simple-spacer.cc:
15270         * lily/slur-configuration.cc:
15271         * lily/slur-scoring.cc:
15272         * lily/slur.cc:
15273         * lily/spaceable-grob.cc:
15274         * lily/spacing-spanner.cc:
15275         * lily/spanner.cc:
15276         * lily/staff-symbol-referencer.cc:
15277         * lily/stem.cc:
15278         * lily/stencil.cc:
15279         * lily/system-start-delimiter.cc:
15280         * lily/system.cc:
15281         * lily/text-item.cc:
15282         * lily/tie.cc:
15283         * lily/tuplet-bracket.cc:
15284         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15285         <cmath> beacause isinf/isnan is undefined in <cmath>
15286
15287 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15288
15289         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15290
15291 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15292
15293         * VERSION: release 2.5.3
15294         
15295 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15296
15297         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15298
15299 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15300
15301         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15302
15303         * lily/note-head.cc (internal_print): always try the "s" head if
15304         u/d not found.
15305
15306         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15307
15308 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15309
15310         * mf/parmesan-heads.mf (overdone_heads): typos.
15311
15312 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15313
15314         * lily/parser.yy (markup): in markups, { .. } without command
15315         before are also flattened, ie \line must be explicitely used.
15316
15317         * Documentation/user/changing-defaults.itely:
15318         * Documentation/user/notation.itely: 
15319         * input/wilhelmus.ly: 
15320         * input/regression/instrument-name-markup.ly: 
15321         * input/regression/markup-score.ly: 
15322         * input/regression/new-markup-scheme.ly: 
15323         * input/regression/new-markup-syntax.ly: 
15324         * input/test/coriolan-margin.ly: use \line in markups where
15325         appropriate
15326         
15327 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15328
15329         * scm/new-markup.scm (map-markup-command-list): helper function
15330         used in parser.yy to map markup commands on a markup list.
15331
15332         * lily/parser.yy: get rid off < > in markups by treating { } as
15333         real lists.
15334
15335         * lily/lexer.ll: remove < > from markup lexer mode.
15336
15337         * scripts/convert-ly.py (conv): add rule for converting 
15338         \markup < > to \markup { }
15339
15340         * ly/titling-init.ly: 
15341         * input/test/coriolan-margin.ly: 
15342         * input/regression/new-markup-syntax.ly: 
15343         * input/regression/new-markup-scheme.ly: 
15344         * input/regression/multi-measure-rest-text.ly: 
15345         * input/regression/markup-stack.ly: 
15346         * input/regression/markup-score.ly: 
15347         * input/regression/instrument-name-markup.ly: 
15348         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15349         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15350         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15351         * input/wilhelmus.ly: 
15352         * Documentation/user/notation.itely: 
15353         * Documentation/user/music-glossary.tely: 
15354         * Documentation/user/changing-defaults.itely: change < > to { } in
15355         markups
15356
15357 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15358
15359         * lily/accidental-placement.cc (position_accidentals): shortcut if
15360         no accidentals to place.
15361
15362 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15363
15364         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15365         typo s/ly:dimension ?/ly:dimension?/
15366
15367         * input/regression/lily-in-scheme.ly: 
15368         * input/regression/music-function.ly: 
15369         * ly/spanners-init.ly (assertBeamSlope): 
15370         * scm/music-functions.scm (def-grace-function): add the paper
15371         argument to music function definitions.
15372
15373 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15374
15375         * lily/moment.cc (LY_DEFINE):
15376         ly:moment-main-{denominator,numberator}, new function.
15377
15378         * lily/score-engraver.cc (typeset_all): assign to column on basis
15379         of axis-group-parent-X setting.
15380
15381         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15382         add_element() on basis of axis-group-parent-Y setting.
15383
15384         * lily/grob.cc: add axis-group-parent-{XY} properties.
15385
15386         * input/regression/spacing-stick-out.ly: new file.
15387
15388         * lily/simple-spacer.cc (add_columns): use binary search for
15389         setting column rods. Changes O(n^2) to O(n log(n)) for
15390         constructing spacing problem from columns.
15391         (add_columns): read allow-outside-line to make sure no texts stick
15392         out.
15393         (solve): Simple_spacer::is_active() only determines
15394         satisfies_constraints_ for non-ragged typesetting.
15395
15396         * lily/simultaneous-music.cc (to_relative_octave): only set
15397         old_relative_used if return pitch actually changed.
15398
15399         * scm/define-context-properties.scm
15400         (all-user-translation-properties): change to match implementation.
15401
15402         * python/lilylib.py: Replace re.match by re.search and adds "-c
15403         showpage" to the gs command line (Johannes Schindelin)
15404
15405         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15406         before processing. Prevents crash when inf is in the extent.
15407
15408         * scm/define-markup-commands.scm (note-by-number): add "s" to
15409         "noteheads-" glyphname.
15410  
15411         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15412         music function as well.
15413         
15414 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15415
15416         * VERSION: release 2.5.2
15417
15418         * Documentation/user/changing-defaults.itely (Creating titles):
15419         add breakbefore variable.
15420
15421         * lily/paper-book.cc (set_system_penalty): new function. Set
15422         penalty_ based on breakBefore setting
15423
15424         * lily/context-specced-music-iterator.cc (construct_children):
15425         interpret special context id $uniqueContextId 
15426
15427         * lily/context.cc (create_unique_context): new method. Move
15428         creation of unique (\new) contexts into interpreting phase. This
15429         makes
15430
15431           foo= \new Staff ..
15432           << \foo \foo >>
15433
15434         produce 2 staves.
15435         
15436
15437         * scm/define-music-properties.scm (all-music-properties): add
15438         quoted-voice-direction
15439
15440         * ly/music-functions-init.ly: killCues function.
15441
15442         * scm/music-functions.scm (cue-substitute): move creation of voice
15443         contexts further to the back. 
15444
15445 2004-11-25  Werner Lemberg  <wl@gnu.org>
15446
15447         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15448         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15449
15450 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15451
15452         * buildscripts/guile-gnome.sh: Fixed typo.
15453
15454 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15455
15456         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15457
15458         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15459
15460         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15461         to regular engraver. 
15462
15463 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15464
15465         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15466
15467 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15468
15469         * scm/define-markup-commands.scm (fill-line): Typo.
15470
15471         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15472         and newer.
15473
15474 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15475
15476         * ly/dynamic-scripts-init.ly: Fixed typo.
15477
15478 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15479
15480         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15481         note-head, to have different attachment points for up and down.
15482
15483         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15484
15485         * mf/feta-generic.mf (else): remove solfa.
15486
15487         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15488
15489         * scm/define-context-properties.scm
15490         (all-user-translation-properties): add shapeNoteStyles property.
15491
15492         * lily/shape-note-heads-engraver.cc (process_music): new file.
15493
15494         * lily/event.cc (transpose): call Event::transpose() for
15495         transposing the tonic.
15496
15497 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15498
15499         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15500         Unicode/OpenType and AFM.
15501
15502         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15503
15504 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15505
15506         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15507
15508         * lily/context.cc (Context): unprotect key from ctor.
15509
15510         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15511         is '()
15512         (stack-stencils): idem.
15513
15514         * Documentation/user/changing-defaults.itely (Creating titles):
15515         document new title layout options.
15516
15517         * lily/parser.yy (lilypond_header_body): copy previous
15518         $globalheader if present.
15519
15520         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15521         ly:module-copy
15522         
15523         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15524
15525         * scm/titling.scm: remove old titling functions
15526
15527         * lily/stencil.cc (translate): remove absolute dimension.
15528
15529         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15530         via markup.
15531
15532         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15533         field from user-supplied markup
15534
15535         * scm/define-markup-commands.scm (on-the-fly): new markup
15536         command. Enter SCM markup procedure directly in Scheme.
15537         (fromproperty): new markup command. Read markup from props argument.
15538
15539         * scm/titling.scm (marked-up-title): create title via
15540         user-specified markup. 
15541
15542         * scm/define-markup-commands.scm (column): remove empty stencils
15543         from column.
15544
15545         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15546         not have side-effect of creating variable stub.
15547
15548         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15549
15550 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15551
15552         * scm/encoding.scm (coding-alist): 
15553         * scm/font.scm (add-ec-fonts):
15554         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15555         Extended-TeX-Font-Encoding---Latin.
15556
15557         * lily/side-position-interface.cc (general_side_position): Add
15558         actual offset to error message (avoid constant error messages).
15559
15560         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15561         block.
15562
15563         * lily/font-select.cc (select_encoded_font)
15564         (get_font_by_mag_step, get_font_by_design_size): 
15565         * lily/modified-font-metric.cc (Modified_font_metric): 
15566         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15567
15568         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15569         (read-encoding-file): Bugfix: do not require space after bracket.
15570
15571         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15572         these do not exist.
15573
15574 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15575
15576         * Documentation/user/notation.itely: added info about typesetting
15577         boxed bar numbers.
15578
15579 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15580
15581         * flower/interval.cc (T_to_string): gcc4 fixes.
15582
15583         * scm/define-markup-commands.scm (fill-line): use
15584         stack-stencils. This fixes problems with putting already centered
15585         stencils in a line.
15586
15587         * VERSION: release 2.5.1
15588
15589         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15590
15591 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15592
15593         * input/example-[1-3].ly: simplify.
15594
15595         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15596
15597         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15598         show glyphs.
15599
15600         * scm/encoding.scm (decode-byte-string): new function.
15601
15602         * scripts/convert-ly.py (conv): add warning about
15603         set-global-staff-size.
15604
15605         * Doxyfile: add. 
15606
15607         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15608         (conv): warn for TextSpanner split.
15609         (conv): warn for textheight.
15610
15611 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15612
15613         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15614         building the documentation, info with images are installed.
15615         (final-install): Fix description.  Mention sourcing of login
15616         scripts (instead of running).
15617
15618 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15619
15620         * Debian lmodern support.  Note that LilyPond will issue warnings
15621         
15622             no such encoding: "FontSpecific"
15623
15624           The font selection mechanism wants to get the encoding from the
15625           font itself, but the idea of lmodern is that it is usable with
15626           different encodings, ie, Lily should get the encoding from the
15627           font tree, rather than the font itself.  This would require some
15628           more work.
15629         
15630         * configure.in: Test for and accept lmodern if EC fonts not found.
15631
15632         * scm/framework-tex.scm (font-load-command): TeX font name
15633         mangling for latin1 encoded cork-lm fonts.
15634         (convert-to-ps): Load lm.map if available.
15635
15636         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15637         available.
15638
15639         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15640
15641         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15642         available.
15643
15644         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15645         path for absolute file name, that is silly.
15646
15647         * lily/score-engraver.cc (initialize): 
15648
15649         * Documentation/user/GNUmakefile (local-install-info): Invoke
15650         install-info --remove first.
15651
15652         * #include cleanup (Andreas Scherer).
15653
15654 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15655
15656         * input/test/script-abbreviations.ly: fix typos.
15657
15658 2004-11-17  Werner Lemberg  <wl@gnu.org>
15659
15660         * python/lilylib.py (options_help_str): Support pretty-printing of
15661         newlines in fourth element of option description.
15662
15663         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15664         feature.
15665         Sort options.
15666
15667         * Documentation/user/lilypond-book.itely: Finish update.
15668
15669 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15670
15671         * Documentation/user/macros.itexi: Add comment about \command.
15672
15673         * Documentation/user/lilypond.tely:
15674         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15675         and lilypond-book nodes, so that `info lilypond' visits the manual
15676         at top level, and `info lilypond-book' visits the lilypond-book
15677         section.
15678
15679         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15680         and packager messages.
15681
15682         * lily/pangofc-afm-decoder.cc: Update test.
15683
15684 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15685
15686         * scm/lily-library.scm (char->unicode-index): New function.
15687
15688         * scm/output-gnome.scm: 
15689         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15690
15691         * Proper naming of file name throughout; s/filename/file[-_]name/.
15692
15693         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15694
15695         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15696
15697 2004-11-16  Werner Lemberg  <wl@gnu.org>
15698
15699         * scripts/lilypond-book.py: The Lord has commanded me to use only
15700         tabs for indentation.  Your humble servant obeys.
15701
15702 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15703
15704         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15705         including font, if LilyPond-feta font is only feta font in path.
15706
15707         * scm/output-gnome.scm (text): Revert to file name of font if font
15708         has no name.  Fixes ec font selection.
15709         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15710
15711         * scm/framework-svg.scm:
15712         * scm/output-svg.scm: New file.  TODO: figure out how to
15713         do character by index in font.
15714
15715         * scm/output-sodipodi.scm: Remove.
15716
15717         * scm/output-ps.scm (stem): Remove.
15718
15719 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15720
15721         * scm/output-gnome.scm (beam): New function.
15722         (slur): Round corners.
15723         (round-filled-box): Round corners.
15724
15725 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15726
15727         * scm/output-gnome.scm (beam): add function.
15728         (draw-line): new routine.
15729         (dashed-line): stub; call draw-line
15730         (polygon): new routine.
15731
15732 2004-11-15  Werner Lemberg  <wl@gnu.org>
15733
15734         * Documentation/user/lilypond-book.itely: Revise section on
15735         lilypond-book options.
15736         Other minor fixes.
15737
15738         * scripts/lilypond-book.py: Change indentation to 4.
15739         Minor formatting.
15740
15741 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15742
15743         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15744         grobs that have tweaks specced.
15745         
15746 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15747
15748         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15749
15750 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15751
15752         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15753         actual char #, not 0 based index.
15754
15755         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15756
15757         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15758         Warning: do make -C mf clean.
15759
15760         * lily/context-property.cc: Compile fix.
15761
15762         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15763         Grok ec-fonts, braces and dynamics.
15764
15765         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15766
15767 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15768
15769         * lily/include/tweak-registration.hh: new file.
15770
15771         * lily/tweak-registration.cc: new file.
15772
15773         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15774         saving tweaks.
15775
15776         * scm/output-gnome.scm (text): comment dribble.
15777
15778 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15779
15780         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15781
15782         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15783         path-def before using.  Fixes muchtomany slurs in wrong places
15784         bug.
15785
15786 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15787
15788         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15789
15790         * lily/include/object-key-undumper.hh (Module): new file.
15791
15792         * lily/object-key-undumper.cc (Module): New file. Deserialize
15793         keys. SCM bindings
15794
15795         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15796         Provide SCM bindings.
15797
15798         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15799         new file. Serialize object keys.
15800         
15801         * lily/object-key.cc (dump): new function.
15802         (as_scheme): new virtual function
15803         (undump): new function
15804         (undumpers): new table.
15805
15806         * lily/include/global-context.hh (Context): take \score key upon init.
15807
15808         * lily/object-key-dumper.cc (serialize_key): new file.
15809
15810         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15811
15812         * lily/lily-lexer.cc: remove \quote.
15813
15814         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15815
15816         * lily/context.cc (Context): take key argument in ctor.
15817         (create_context): new function
15818
15819         * lily/grob.cc (Grob): take key argument in ctor.  
15820
15821         * lily/lilypond-key.cc (do_compare): new file.
15822
15823         * lily/object-key.cc (Object_key): new file.
15824
15825         * lily/include/object-key.hh (class Object_key): new file.
15826
15827         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15828
15829 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15830
15831         * Documentation/user/lilypond-book.itely: add small warning about
15832         noindent default in lilypond-book.
15833
15834         * Documentation/user/converters.itely: add examples for convert-ly.
15835
15836         * Documentation/user/examples.itely: change version string in templates
15837         to 2.4.0.
15838
15839 2004-11-12  Karl Hammar  <karl@aspodata.se>
15840
15841         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15842         cmdline, use xargs instead (backportme)
15843
15844 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15845         
15846         * Documentation/user/: Numerous fixes in the user manual.
15847
15848 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15849
15850         * lily/parser.yy (re_rhythmed_music): search music expression for
15851         context-id, surround by \new Voice if not found. Fixes:
15852         addlyrics-second-staff.ly
15853
15854         * VERSION: 2.5.0 released.
15855         
15856 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15857
15858         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15859
15860         * Documentation/user/GNUmakefile: Separate rules for split and
15861         unsplit html documents.  Remove perl massaging.  (backportme)
15862
15863 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15864
15865         * Documentation/user/lilypond-book.itely: add short warning about
15866         \lilypond{} in LaTeX docs.
15867
15868 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15869
15870         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15871         found.  (backportme)
15872
15873         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15874         version requirement.  (backportme)
15875
15876         * configure.in: Be explicit about old versions of
15877         ec-fonts-mtraced.  (backportme)
15878
15879         * lily/context-selector.cc (set_tweaks): New function.
15880         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15881         web with -DTWEAK.
15882
15883         * Documentation/user/introduction.itely (Automated engraving):
15884         Remove fragment option.  Fixes web.
15885
15886         * lily/context-property.cc (make_item_from_properties):
15887         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15888         #ifdef.
15889
15890         * scm/define-context-properties.scm
15891         (all-internal-translation-properties): Add tweakRank and tweakCount.
15892
15893         * lily/grob.cc: 
15894         * scm/define-grob-properties.scm (all-internal-grob-properties):
15895         Add tweak-rank and tweak-count.
15896
15897 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15898
15899         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15900         New function.
15901         (text): Use them.
15902
15903         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15904         animated/opaque grob dragging tweaks.
15905
15906         * buildscripts/guile-gnome.sh: Update.
15907
15908 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15909
15910         * scm/define-grobs.scm (all-grob-descriptions): Added
15911         line-interface to the LigatureBracket object.
15912
15913 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15914
15915         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15916         dragging tweaks.
15917
15918         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15919
15920         * lily/context-selector.cc (store_context): New function.
15921
15922         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15923         (store_grob): New function.
15924         (identify_grob): Add Moment parameter.
15925
15926         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15927         exists.
15928
15929         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15930
15931 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15932
15933         * scm/framework-gnome.scm (item-event): Print grob id.
15934         (save-tweaks): New function.
15935         (tweak): New funtion.
15936         (item-event): Use it, bound to arrow keys.
15937
15938         * lily/context-property.cc (make_item_from_properties): Register grob.
15939         * lily/context.cc (add_context): Register context.
15940
15941         * lily/include/context-selector.hh:
15942         * lily/include/grob-selector.hh:
15943         * lily/context-selector.cc:
15944         * lily/grob-selector.cc: New file.
15945
15946 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15947
15948         * lily/slur.cc: add 'positions to interface
15949
15950         * lily/main.cc: reinstate PS as standard output format. 
15951
15952         * scm/framework-tex.scm (output-preview-framework): print systems
15953         up to first non title system.
15954
15955         * lily/grace-engraver.cc (start_translation_timestep): split
15956         scm_cadddr
15957         
15958 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15959
15960         * lily/quote-iterator.cc (Module): remove old quote-iterator
15961
15962         * scm/define-music-types.scm (music-descriptions): move
15963         NewQuoteMusic over QuoteMusic
15964
15965         * Documentation/user/notation.itely (Formatting cue notes): use
15966         \cueDuring.
15967
15968         * lily/new-quote-iterator.cc (quote_ok): new function.
15969
15970         * input/regression/quote-cue-during.ly: new file.
15971
15972         * input/regression/quote-grace.ly: new file.
15973
15974         * scm/define-context-properties.scm (Module): change definition of
15975         graceSettings
15976
15977         * lily/context-property.cc (Module): rename from
15978         translator-property.cc
15979
15980         * lily/context.cc (context_name_symbol): new function
15981
15982         * lily/grace-engraver.cc: new file. Set properties for grobs based
15983         on the grace-ness of now_moment().
15984
15985         * scm/music-functions.scm (add-grace-property): use list
15986         iso. vector for graceSettings
15987         remove set-{start,stop}-grace-properties. 
15988
15989         * lily/new-quote-iterator.cc (construct_children): set
15990         quote_outlet_ if no quoted-context-{id,type} specified.
15991
15992         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15993
15994         * lily/parser.yy (command_element): remove \quote.
15995
15996         * ly/music-functions-init.ly (location): add quoteDuring music
15997         function. 
15998
15999         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16000         optional semicolon. (backportme)
16001
16002 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16003
16004         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16005         need to link to GUILE et al.
16006
16007 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16008
16009         * scm/define-music-properties.scm (all-music-properties): add
16010         quoted-context-type, quoted-context-id.
16011
16012         * scm/lily.scm (type-check-list): new function.
16013         
16014         * scm/lily-library.scm: new file. Generic library routines.
16015
16016         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16017         parser.
16018
16019         * ly/music-functions-init.ly: add quoteDuring function.
16020
16021         * lily/include/music-iterator.hh (class Music_iterator): rename
16022         set_translator -> set_context
16023
16024         * lily/parser.yy (Generic_prefix_music_scm): add
16025         MUSIC_FUNCTION_SCM_SCM_MUSIC
16026
16027         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16028
16029         * scm/framework-tex.scm (header): sanitize TeX paper size.
16030         (backportme)
16031
16032 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16033
16034         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16035
16036         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16037
16038         * scm/framework-tex.scm (font-load-command): Use T1 if no
16039         font-encoding set.  (backportme)
16040
16041         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16042         exists before converting.  (backportme)
16043
16044         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16045         exists before converting.  (backportme)
16046         (convert-to-ps): Remove .ps file if it exists before
16047         converting.  (backportme)
16048
16049         * lily/lexer.ll: Remove extra progress newline, use present tense.
16050
16051         * scm/paper.scm (paper-alist): public.
16052         * scm/framework-tex.scm (convert-to-ps):
16053         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16054         command line.
16055
16056 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16057
16058         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16059
16060         * lily/recording-group-engraver.cc (derived_mark): mark
16061         now_events_. (backportme)
16062
16063 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16064
16065         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16066
16067         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16068         invoking latex. (backportme.)
16069
16070         * lily/stem.cc (off_callback): center stems for all rest stems.
16071
16072 2004-11-05  Werner Lemberg  <wl@gnu.org>
16073
16074         * Documentation/user/lilypond.tely: Add more guidelines for writing
16075         lilypond texinfo documents.
16076
16077 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16078
16079         * Documentation/index.html.in: remove <hr>.
16080
16081         * THANKS: change 2.3 to 2.4.
16082
16083 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16084
16085         * scm/output-gnome.scm: More fontconfig comment.
16086
16087 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16088
16089         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16090         <package> directory in $(builddir)/share according with
16091         PACKAGE_NAME defined in the VERSION file.
16092
16093 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16094
16095         * lily/beam.cc (rest_collision_callback): use local beam
16096         multiplicity.
16097
16098         * input/regression/stem-stemlet.ly: new file.
16099
16100         * lily/stem.cc (add_head): store rests as well.
16101
16102         * scm/define-grob-properties.scm (all-user-grob-properties): add
16103         stemlet-length
16104
16105         * lily/stem.cc: store rests as well.
16106         
16107         * input/regression/new-slur.ly: mention forcing.
16108
16109 2004-11-04  Werner Lemberg  <wl@gnu.org>
16110
16111         * Documentation/user/*: A new round of layout fixes and document
16112         structure cleanup.
16113
16114 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16115
16116         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16117
16118 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16119
16120         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16121
16122 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16123
16124         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16125
16126         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16127
16128         * lily/main.cc (main): Invoke identify.
16129
16130         * scm/lily.scm (postscript->pdf): Remove progress newline.
16131         Write progress to stderr.
16132
16133         * lily/paper-book.cc (output): Remove progress newline.
16134
16135         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16136         gettext on user messages, and remove whitespace.
16137
16138         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16139
16140         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16141         argv[0] (Thomas Scharkowski).
16142
16143         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16144         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16145         for ec-fonts-mtraced.
16146
16147         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16148         --srcdir build (Bertalan).
16149
16150         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16151         headers and library too (Laura Conrad).
16152
16153         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16154         package for guile too (Laura Conrad).
16155
16156         * lily/main.cc (usage): Typo.
16157
16158 2004-11-02  Werner Lemberg  <wl@gnu.org>
16159
16160         * Documentation/user/notation.ly: More fixes to improve appearance.
16161
16162         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16163         better output for multicolumn tables.
16164
16165 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16166
16167         * lily/main.cc (dir_info): Fixed typo in the printouts.
16168
16169 2004-11-01  Werner Lemberg  <wl@gnu.org>
16170
16171         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16172         of output.
16173         Set `per_line' to 2; replace hard-coded value with it.
16174
16175         * Documentation/user/*: Many fixes to improve appearance of
16176         printed manual.
16177
16178 2004-11-01  Werner Lemberg  <wl@gnu.org>
16179
16180         * Documentation/user/changing-defaults.itely,
16181         Documentation/user/notation.ly,
16182         Documentation/user/programming-interface.itely: Use @/.
16183         Fix formatting of some lilypond snippets and tables.
16184
16185         * scripts/lilypond-book.py (compose_ly): Provide useful default
16186         for LINEWIDTH in `override'.
16187
16188 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16189
16190         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16191
16192 2004-10-31  Werner Lemberg  <wl@gnu.org>
16193
16194         Resetting @exampleindent to `5' gives ugly results with texinfo's
16195         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16196         (if not quoting) to change @exampleindent only locally.
16197
16198         * scripts/lilypond-book.py (NOQUOTE): New variable.
16199         (output) [LATEX]: Remove AFTER and BEFORE.
16200         [TEXINFO]: Remove AFTER and BEFORE.
16201         Fix QUOTE and VERBATIM pattern.
16202         Add NOQUOTE pattern.
16203         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16204         and BEFORE.
16205         [output_texinfo]: Use NOQUOTE.
16206
16207 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16208
16209         * Documentation/user/changing-defaults.itely: clarify paper
16210         size commands with correct info.
16211
16212         * Documentation/user/lilypond-book.itely: add more docs for
16213         filename extensions.
16214
16215 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16216
16217         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16218         (PATCH_LEVEL): start 2.5.0.
16219
16220 #Local variables:
16221 #coding: utf-8
16222 #End:
16223