]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/spacing-spanner.cc (musical_column_spacing): handle
[lilypond.git] / ChangeLog
1 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/spacing-spanner.cc (musical_column_spacing): handle
4         musical->nonmusical spacing case, where there is no spacing wish.
5
6         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
7         (pango_item_string_stencil): use logical rect horizontally (to
8         preserve spaces), ink_rect vertically (for time signatures).
9
10         * lily/font-metric.cc (word_stencil): new interface function
11
12         * input/regression/utf-8-mixed-text.ly: new file.
13
14         * lily/percent-repeat-engraver.cc (listen_percent): remove
15         spurious warning.
16
17         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
18         non-dynamic scripts. Fixes #30.
19
20         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
21
22         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
23
24         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
25         SCM_UNDEFINED for non-existent data.
26
27         * lily/side-position-interface.cc (general_side_position): allow
28         optional current_offset argument for chaining, so combinations of side-position
29         and outside slur callback don't add up.  Fixes issue #92.
30
31         * lily/pango-font.cc (pango_item_string_stencil): use
32         logical_rect. This prevents spaces after words from disappearing,
33         issue #72.
34         
35         * VERSION: release 2.9.20
36
37 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
38
39         * scm/define-grob-properties.scm (all-user-grob-properties):
40         mention stencil as user settable.
41
42 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
43
44         * Documentation/user/page.itely (Page formatting): 
45         document auto-first-page-number
46
47         * lily/page-breaking.cc (find_chunks_and_breaks): 
48         * lily/paper-score.cc (calc_breaking): Follow changes to the
49         Constrained_breaking interface
50
51         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
52         here backwards, as an optimisation
53         (initialize): new function; move most of the code in resize () here
54         (combine_demerits): cache ragged_right_
55         (Constrained_breaking): constructor now takes the Paper_score
56
57 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
58         
59         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
60         avoid parser lookahead for 0-ary functions.
61
62         * lily/translator.cc: Extract event classes from
63         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
64
65 2006-10-02  Heikki Junes  <hjunes@gmail.com>
66
67         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
68         KBabel fix tool.
69
70 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
71
72         * scm/layout-page-layout.scm (page-breaking-wrapper): new
73         function. Call the page breaking function selected in the
74         `page-breaking' \paper variable, then the post processing function
75         chosen using the `page-post-process' \paper variable.
76         (line-height): new function. Return the height of a system.
77         (line-minimum-position-on-page): new function. Return the position
78         of a system on page (using the previous line position), only
79         considering between system padding.
80         (stretchable-line?): new function. Says whether a line can be
81         stretched (ie. is not a title nor a single staff system).
82         (page-maximum-space-left): new function. Computes space left on a
83         page, when all systems are separated by their padding.
84
85         * lily/page-breaking.cc (breaking::make_pages): Move page post
86         processing function call to page breaking wrapper (common to all
87         page breakers).
88
89         * lily/paper-book.cc (book::pages): call the page breaking
90         wrapper, instead of the page breaker directly
91
92         * ly/paper-defaults.ly: Add \paper variables for page breaking
93         wrapper and page post processing function. Make
94         `write-page-layout' value depend on the 'dump-tweaks option. Add a
95         `system-maximum-stretch-procedure' variable for holding a function
96         computing the maximum stretch a system allows.
97
98         * scm/layout-page-dump.scm (write-page-breaks): computes the
99         stretch to apply to systems on a page to minimize left
100         space. Dump this stretch length.
101
102         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
103         the system-stretch property of the tweak data to stretch the
104         system.
105         (includePageLayoutFile): Void function which includes the
106         generated page-layout file if it exists and if the page layout
107         dumping is not asked.
108         (scoreTweak): if the score tweak named by the argument exists,
109         return it.
110
111 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
112
113         * lily/page-spacing.cc (compress_lines, uncompress_solution):
114         handle correctly the case where there are multiple \noPageBreaks
115         in a row.
116
117 2006-09-30  Laura Conrad <lconrad@laymusic.org>
118
119         * abc2ly.py adds segno (S) and Coda (O) to articulations.
120         
121         * abc2ly.py fix so that entering " -- " will translate to a -- in
122         the lilypond instead of a " - - "
123         
124 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
125
126         * lily/align-interface.cc: fix typo
127
128         * lily/dynamic-text-spanner.cc (print): Add a special case for
129         trill spanner right sides. 
130
131         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
132
133         * lily/align-interface.cc (get_extents_aligned_translates): add
134         support for padding variable.
135
136         * lily/break-align-interface.cc (self_align_callback): oops: use
137         loop variable in guard.
138
139         * input/regression/repeat-percent-grace.ly: new file.
140
141         * lily/percent-repeat-engraver.cc (start_translation_timestep):
142         remember first currentCommandColumn of a grace run. Fixes issue 70.
143
144         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
145         move class definition to CC file.
146
147         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
148
149         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
150         measure-long  repeats.
151
152         * flower/include/international.hh: include stdarg.h
153
154 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
155
156         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
157         put_systems_on_pages to return an empty result, we need to assign
158         demerits properly in that case.
159         (put_systems_on_pages): Make the number of pages depend on the
160         evenness of page_number. Add auto-first-page-number.
161         (calc_subproblem): ensure that the page-number is even for the
162         left-hand page. Warn if the first page-turn doesn't fit onto the
163         first (right-hand) page.
164
165         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
166         (min_page_count): make this publicly accessible
167         (min_page_count): fix a bug when there are forced page breaks that
168         was introduced when I made this loop run backwards
169         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
170         replace space_systems_on_min_pages with these two. The logic in
171         space_systems_on_min_pages was getting too convoluted and is better
172         contained in page-turn-page-breaking.
173
174         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
175         conditional
176         (breakable_column): typo
177
178         * lily/source-file.cc (get_line): fix off-by-one error
179         and clean up some of the logic
180
181 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
182
183         * lily/page-breaking.cc (make_pages): honour the first-page-number
184         property
185
186 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
187
188         * VERSION (PACKAGE_NAME): bump version.
189
190 2006-09-26  Pal Benko  <benko.pal@gmail.com>
191
192         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
193         (the latter is the same as petrucci-f which is kept for compatibility)
194
195 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
196         
197         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
198
199 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
200
201         * lily/global-context.cc (run_iterator_on_me): break out of loop
202         if moment doesn't increase.
203
204         * scm/define-grob-properties.scm (all-user-grob-properties): add
205         forced property.
206
207         * lily/accidental.cc (after_line_breaking): read forced property.
208
209         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
210         property.
211
212         * input/regression/accidental-forced-tie.ly:  new file.
213
214 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
215
216         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
217
218         * lily/figured-bass-engraver.cc: only listen to rest events if
219         ignoreFiguredBassRest is not set.
220
221         * scm/define-context-properties.scm
222         (all-user-translation-properties): add ignoreFiguredBassRest property
223
224 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
225
226         * lily/paper-book.cc (get_system_specs):
227         (set_system_penalty): fix breakbefore.
228         We used to set a penalty on the system after the break, now we
229         set a permission on the system before the break
230
231         * lily/grob-property.cc: add scm debugging hooks into
232         property modification
233
234         * lily/context-property.cc:
235         * lily/engraver.cc:
236         rename make_foo_from_properties to internal_make_foo and
237         move it from context-property.cc to a member function of
238         Engraver.
239         
240         * lily/include/lily-guile-macros.hh:
241         overload ly_symbol2scm macro so that there is no more need
242         to use internal_foo
243
244         * lily/volta-repeat-iterator.cc:
245         * lily/tweak-engraver.cc:
246         * lily/tuplet-bracket.cc:
247         * lily/span-bar-engraver.cc:
248         * lily/script-engraver.cc:
249         * lily/prob-scheme.cc:
250         * lily/pointer-group-interface.cc:
251         * lily/parser.yy:
252         * lily/grob-scheme.cc:
253         * lily/grob-property.cc:
254         * lily/context.cc:
255         * lily/context-property.cc:
256         * lily/break-substitution.cc:
257         * lily/break-align-engraver.cc:
258         * lily/axis-group-interface.cc:
259         * lily/align-interface.cc:
260         remove calls to internal_FOO
261
262         * lily/system-start-delimiter-engraver.cc:
263         * lily/parenthesis-engraver.cc:
264         * lily/accidental-engraver.cc:
265         remove calls to make_foo_from_properties
266
267 2006-09-23  Graham Percival  <gpermus@gmail.com>
268
269         * Documentation/user/programming-iterfaces.itely: fix
270         def-music-function -> define-music... leftover.
271
272 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
273
274         * lily/page-spacing.cc (min_page_count): by running the loop
275         backwards, we can calculate ragged_last properly.
276
277 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
278
279         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
280         printfirst-page-number -> print-first-page-number
281
282         * python/convertrules.py: corresponding rule.
283
284         * Documentation/user/page.itely (Page formatting): Document the
285         default values of all page layout parameters. 
286
287 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
288
289         * lily/lexer.ll: remove limitation on music function arity. New
290         mode extratoken, which inserts extra EXPECT_* tokens after
291         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
292
293         * lily/parser.yy: Change grammar for music function accordingly.
294
295         * lily/include/lily-parser.hh: New method get_state, new member
296         hidden_state. Works around a problem when parser fetches
297         MUSIC_FUNCTION token but not the following EXPECT_* token.
298
299         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
300         remove try_music
301
302         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
303         references to Music; use ASSIGN_EVENT_ONCE everywhere
304
305         * lily/grob-info.cc: junk *music_cause
306
307         * lily/music.cc: copy eventified articulations to stream event
308
309         * lily/part-combine-iterator.cc: Cleanup using enums
310
311         * lily/translator-group.cc: Junk OldMusicEvent, and associated
312         methods
313
314         * lily/include/engraver.hh: Junk music.hh include
315
316         * lily/stream-event.cc: Changed constructors
317
318 2006-09-21  Graham Percival  <gpermus@gmail.com>
319
320         * Documentation/user/tweaks.itely (Fitting music onto fewer
321         pages): change settings to avoid warning messages.
322
323 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
324
325         * Documentation/user/tweaks.itely (Fitting music onto fewer
326         pages): Add between-system-space setting. 
327
328 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
329
330         * lily/accidental-placement.cc (calc_positioning_done): don't
331         trigger Y-extent calculation too early. Use pure_height instead.
332
333         * lily/scale.cc (LY_DEFINE): new file. 
334
335 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
336
337         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
338         that happen at the start of a score: having a zero-length
339         chunk was messing up min_system_count calculations.
340
341         * lily/source-file.cc (get_line): lower_bound, not
342         binary_search. Fixes problem where point-and-click would
343         always point to the first line.
344
345 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
346
347         * lily/accidental-placement.cc (calc_positioning_done): also put
348         stems into accidental support. 
349
350         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
351         event_ detected.
352
353         * scm/script.scm (default-script-alist): avoid-slur and
354         slur-padding for portato script.
355
356         * lily/stem-tremolo.cc (translated_stencil): new function. 
357         (height): use new function. Fixes tremolos on whole notes.
358
359         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
360         slur found.
361
362 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
363
364         * scripts/abc2ly.py (try_parse_comment): idem.
365
366         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
367         bar_string iso. string.find()
368
369         * lily/*.cc: idem.
370
371         * lily/slur.cc (get_curve): always use scm_is_pair() looping
372         scheme lists.  
373
374 2006-09-18  Graham Percival  <gpermus@gmail.com>
375
376         * Documentation/user/basic-notation.itely: add bug
377         warning about ties and octavation/clef.
378
379 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
380
381         * VERSION (PACKAGE_NAME): release 2.9.18
382
383 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
384
385         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
386         figure out midi file names right here.
387         
388 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
389
390         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
391
392         * scm/backend-library.scm: option naming:  gs-font-load*s*
393
394         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
395         include-eps-fonts
396
397 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
398
399         * scm/define-music-types.scm (music-descriptions): remove
400         BreakEvent and fix {Page,Line}{Break,Turn}Event so
401         Music::to_event doesn't complain.
402
403         * lily/accidental-placement.cc (ape_compare):
404         * lily/semi-tie.cc (compare): 
405         * lily/note-column.cc (shift_compare): replace by XXX_less
406
407         * lily/tie-formatting-problem.cc (set_chord_outline): 
408         * lily/tie-column.cc (calc_positioning_done): 
409         * lily/system.cc (post_processing)
410         (get_paper_system): 
411         * lily/stem.cc (note_head_positions)
412         (calc_positioning_done): 
413         * lily/spanner.cc (do_break_processing)
414         (find_broken_piece): 
415         * lily/span-bar.cc (print): 
416         * lily/semi-tie-column.cc (calc_positioning_done): 
417         * lily/rest-collision.cc (calc_positioning_done): 
418         * lily/program-option.cc (get_help_string): 
419         * lily/note-collision.cc (get_clash_groups):
420         * lily/new-fingering-engraver.cc (position_scripts):
421         * lily/keyword.cc (Keyword_table):
422         * lily/hara-kiri-group-spanner.cc (request_suicide):
423         * lily/grob-pq-engraver.cc (stop_translation_timestep):
424         * lily/accidental-placement.cc (calc_positioning_done):
425         (stagger_apes):
426         * lily/beam.cc (get_beam_segments):
427         * lily/grob-array.cc (remove_duplicates):
428         use new vector_sort
429         
430         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
431         ragged-last-bottom = ##f (test the new page breaker)
432
433         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
434
435         * scm/define-context-properties.scm
436         (all-internal-translation-properties): remove properties that
437         were used to communicate page-turn stuff to the paper-column
438         engraver.
439
440         * lily/lily-guile.cc (robust_scm2string): new function
441
442         * lily/paper-column-engraver.cc: Clean up page turn stuff
443
444         * lily/page-turn-engraver.cc: Re-write the page turn logic here
445         instead of cluttering up paper-column-engraver.cc
446
447 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
448
449         * scm/layout-page-dump.scm (scm): export utility function names,
450         to allow user writing cutsom dumping functions.
451
452         * scm/layout-page-layout.scm: export utility function names to
453         enable custom page breaking function writing. Tabify.
454         (line-next-space): use ?-suffix only for predicates
455         (page-maximum-space-to-fill): new function. Return the space
456         between first and bottom system of a page, to give to
457         space-systems.
458         (space-systems): use a space-to-fill argument (for instance as
459         computed by page-maximum-space-to-fill) instead of computing
460         internaly this space with the page height. That way, the caller
461         can adjust the space to use.
462         (make-page-from-systems, walk-paths): compute space to fill before
463         calling space-systems.
464
465 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
466
467         * scm/script.scm (default-script-alist): set paddings for every
468         type here, increase for portato mark.
469
470         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
471         -dinclude-eps-fonts
472
473 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
474
475         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
476         use spanner::set-spacing-rods
477
478         * lily/note-column.cc: reformat.
479
480         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
481         step positioning for note/rest combinations.
482
483         * input/regression/rest-note-collision.ly: new file.
484
485         * scm/define-grobs.scm (all-grob-descriptions): add
486         springs-and-rods
487
488         * flower/include/std-vector.hh: switch off again.
489
490         * VERSION (PATCH_LEVEL): bump to 2.9.18
491
492         * flower/include/std-string.hh: idem.
493
494         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
495
496 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
497
498         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
499         PianoStaff. 
500
501 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
502
503         * Documentation/user/page.itely: update page breaking documentation
504
505 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
506
507         * lily/note-collision.cc (calc_positioning_done): only access
508         first head if available.
509
510         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
511
512         * scm/framework-ps.scm (output-preview-framework): use new name.
513
514         * lily/program-option.cc (internal_set_option): use new names.
515
516         * Documentation/user/SConscript (lilypond_book_flags): update -d
517         variable names.
518
519         * Documentation/user/lilypond-book.itely (Inserting LilyPond
520         output into other programs): new variable names.
521
522         * scm/lily.scm (define-scheme-options): uniformize var names.
523
524         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
525         tuplets_ is non-empty before popping.
526
527 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
528
529         * lily/spanner.cc (find_broken_piece): 
530         * lily/spacing-spanner.cc (get_columns): 
531         * lily/source-file.cc (get_line): 
532         * lily/simple-spacer.cc (get_column_description): 
533         * lily/keyword.cc (lookup): 
534         use the new binary search.
535
536         * flower/include/std-vector.hh: replace binary_search with
537         a more STL-like version
538
539 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
540
541         * lily/tie-performer.cc: remove unused last_event_ property.
542         (class Tie_performer): add now_tied_heads_ property for
543         partially-tied heads.
544         (acknowledge_audio_element): when adding an Audio_note, put the
545         note in now_tied_heads_ if the audio note is partially tied.
546         (stop_translation_timestep): always include entries in
547         now_tied_heads_ in heads_to_tie_.
548
549         * lily/drum-note-performer.cc (process_music): look for tie-events
550         in the articulations; pass to Audio_note constructor.
551
552         * lily/note-performer.cc (process_music): look for tie-events in
553         the articulations; pass to Audio_note constructor.
554
555         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
556         constructor.
557
558         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
559         include initializer in constructor.
560
561 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
562
563         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
564         unless they are breakable. This fixes discrepancies between the forces
565         calculated here and the forces calculated in get_line_configuration.
566
567         * lily/grob.cc (pure_relative_y_coordinate): fix some
568         mis-estimation that was happening with piano staves.
569
570         * lily/constrained-breaking.cc (resize): don't choke if we get a
571         measure that won't fit on a line.
572         (combine_demerits): don't consider uniformity when ragged
573
574         * lily/page-spacing.cc (solve): why the f* were there two of these?
575         (calc_subproblem): properly handle the case where a system is taller
576         than the page.
577
578         * lily/system.cc (get_paper_system): ensure that all the permissions
579         and penalties are passed to the paper systems.
580
581         * lily/page-breaking.cc (create_system_list): support system-count.
582
583         * scm/define-grobs.scm (pure-print-callbacks): add
584         ly:script-interface::print
585
586         * lily/page-spacing.cc (min_page_count): fix calculation of min
587         pages if we are ragged and there are non-zero springs.
588
589         * scm/layout-page-layout.scm: if the pure-height estimates are under
590         the real height, allow space-systems to ignore padding if it is
591         needed in order to fit the systems on one page
592
593         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
594         ragged properties
595         (solve): fix performance problem. Make sure we always get at least
596         one solution
597
598         * lily/page-breaking.cc (make_pages): include write-page-breaks
599         and page-stencil
600
601         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
602
603         * scm/define-grobs.scm: add the new slur-callback
604         fix pure-relevant to not exclude grobs whose extent is already
605         calculated
606
607         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
608         page breaker
609
610         * lily/slur.cc (pure_height): new callback to estimate the height
611         of a slur
612
613 2006-09-02  Graham Percival  <gpermus@gmail.com>
614
615         * Documentation/user/invoking.itely: small update on
616         MacOS X notes; thanks Trevor!
617
618 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
619
620         * VERSION (MY_PATCH_LEVEL): release 2.9.17
621
622         * lily/lexer.ll: accept EOF in all states.
623
624         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
625
626         * lily/source-file.cc (Source_file): always 0-terminate character
627         array, to prevent Flex from barfing.
628
629         * lily/global-context.cc (get_output): robustness: don't crash if
630         no Score context found.
631
632         * lily/include/book.hh (class Book): idem.
633
634         * lily/include/context-def.hh (struct Context_def): idem.
635
636         * lily/include/score.hh (class Score): don't derive from Input.
637
638         * lily/book.cc (Book): add a copy ctor. 
639
640         * buildscripts/output-distance.py (FileLink.calc_distance): count
641         orphans in distance too.
642
643         * python/midi.c (midi_parse_track): robustness: don't read past
644         end of string.
645
646         * ly/performer-init.ly: add Control_track_performer, move
647         Tempo_performer and Time_signature_performer to Score.        
648
649         * lily/score-performer.cc (acknowledge_audio_elements): override
650         from base class: add to audio-columns
651
652         * lily/control-track-performer.cc (add_text): new file: generate
653         the control track.
654
655         * lily/performance.cc: move output_header_track to
656         Control_track_performer ()
657
658         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
659
660         * lily/include/midi-item.hh (class Midi_channel_item): insert
661         class into hierarchy, for items that can have a channel setting. Dehungarify.
662
663         * lily/include/performer.hh (class Performer): remove
664         play_element();  move functionality into announce/acknowledge.
665
666         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
667
668         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
669         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
670
671 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
672
673         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
674         ambituses.
675
676         * lily/all-font-metrics.cc: remove TFM support.
677
678         * lily/include/tfm.hh: remove TFM support, TFM reader.
679
680         * lily/include/binary-source-file.hh: remove Binary_source_file.
681
682 2006-08-27  Graham Percival  <gpermus@gmail.com>
683
684         * Documentation/topdocs/NEWS.itely: add @c marker for
685         stuff I've processed.
686
687         * Documentation/user/ various: info from NEWS.
688
689 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
690
691         * lily/paper-column-engraver.cc (finalize): Oops, this change
692         should have gone in on 2006-08-23
693
694 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
695
696         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
697         quotes to quote arguments. Fixes Windows problem.
698
699         * python/lilylib.py (progress): idem
700
701 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
702
703         * scripts/musicxml2ly.py: fix for importing
704         minor key signatures from MusicXML.  (Phillip Kirlin)
705
706 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
707
708         * python/musicxml.py: 
709         (Attributes.get_key_signature): now correctly retrieves mode from 
710         MusicXML. 
711
712 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
713
714         * lily/parser.yy (output_def_body): take ownership of identifier
715         back to C++.
716
717         * Documentation/user/advanced-notation.itely (Metronome marks):
718         update use of \tempo in \midi.
719
720         * VERSION: release 2.9.16
721         
722 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
723
724         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
725         web partially)
726
727 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
728
729         * input/regression/tie-chord-partial.ly: clarify example.
730
731         * scm/define-music-properties.scm (all-music-properties): remove
732         untied.
733
734         * ly/music-functions-init.ly: remove \untied.
735
736         * lily/tie-engraver.cc (struct Head_event_tuple): store both
737         stream events and music events.
738         (stop_translation_timestep): search acknowledged heads for
739         tie-event.
740
741         * input/regression/tie-chord-partial.ly: new file.
742
743         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
744         for \char markup command.
745
746         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
747
748         * scm/define-music-types.scm (music-descriptions): consistency:
749         Use solo-{one,two}-event iso. solo-[12]-event.
750
751         * lily/part-combine-engraver.cc (process_music):
752         Use solo-{one,two}-event iso. solo-[12]-event.
753
754         * ly/declarations-init.ly (partCombineListener): add Timing as
755         alias
756
757         * flower/std-string.cc (string_copy): use copy ()
758
759         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
760
761 2006-08-24  Graham Percival  <gpermus@gmail.com>
762
763         * Documentation/user/changing-defaults.itely, global.itely,
764         lilypond-book.itely, page.itely: minor changes from mailist.
765
766 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
767
768         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
769         snippet-map
770
771         * scm/define-context-properties.scm
772         (translator-property-description): robustness: detect type errors
773         in property definitions.
774
775         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
776         after getting it from SCM. 
777
778         * lily/smobs.cc (protect_smob): switch off fancy smob protection
779         for now. 
780
781         * lily/include/performer.hh (class Performer): strip get_tempo()
782         method.
783
784         * lily/midi-def.cc: strip file.
785
786         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
787
788         * lily/include/context-def.hh (struct Context_def): use
789         VIRTUAL_COPY_CONSTRUCTOR().
790
791         * lily/source-file.cc: smobification.
792
793         * lily/include/source-file.hh (class Source_file): smobify
794         Source_file. Trim redundant members.
795
796         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
797         clones after creation. This plugs a huge memory leak.
798
799         * python/convertrules.py (FatalConversionError.sub_tempo):
800         complete rule for \midi{ \tempo }
801
802         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
803
804         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
805
806 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
807
808         * input/regression/optimal-page-breaking-hstretch.ly: test for
809         ragged-last-bottom also
810
811         * lily/paper-column-engraver.cc (finalize): make the end of a score
812         breakable by default. This is to balance out a change in behaviour
813         of the page-turn-breaker which no longer makes the end of a score
814         breakable.
815
816         * lily/paper-book.cc (pages): set the systems_ once the pages are
817         broken
818
819         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
820         Page_breaking interface.
821
822         * lily/page-breaking.cc (class Page_breaking): make the interface
823         more consistent and provide abstractions for dealing with
824         Line_divisions.
825
826         * lily/optimal-page-breaking.cc (solve): use a more straightforward
827         algorithm. Use the new interface to Page_breaking.
828
829         * lily/page-spacing.cc: better support for ragged-bottom and
830         ragged-last-bottom
831
832 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
833
834         * python/convertrules.py (conv): warning on \tempo{}
835
836         * ly/performer-init.ly: set tempoWholesPerMinute.
837
838         * ly/midi-init.ly: remove \midi
839
840         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
841         MIDI tempo.
842
843         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
844         tempoUnitDuration for determining what to print.
845
846         * lily/lyric-extender.cc: typo.
847
848         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
849
850         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
851         function.
852
853         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
854
855         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
856         eps-pad-boxes is set.
857
858         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
859
860         * THANKS: update sponsors.
861
862         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
863
864         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
865
866         * input/regression/tie-chord-untied.ly: new file.
867
868         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
869
870         * scm/define-music-properties.scm (all-music-properties): add
871         'untied property.
872
873         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
874         than .ly.txt.
875         (headertext_nopics): sanitize no-examples text.
876
877         * scm/page.scm (make-page-stencil): don't rely on extents of
878         page-stencil. This fixes spurious space around .EPS files produced
879         with the EPS backend.
880
881 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
882
883         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
884
885         * lily/hara-kiri-engraver.cc (process_music): remember
886         keepAliveInterfaces after processing \set
887
888         * lily/lyric-extender.cc (print): support left/right-padding for
889         extenders.
890
891         * scm/documentation-generate.scm (string-append): revert lilypond/
892         path, doc why.
893
894 2006-08-20  Graham Percival  <gpermus@gmail.com>
895
896         * Documentation/user/lilypond.tely: clarification to
897         license presentation (not to actual license).
898
899         * Documentation/user/basic-notation.itely,
900         instrument-notation.itely: minor changes.
901
902         * input/ {regression, test}/+.ly: clarification to
903         text (you can click on examples).  Thanks, Mats!
904
905         * input/manual/bar-lines.ly: adds ||: repeats.
906
907 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
908
909         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
910
911         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
912
913         * Documentation/user/lilypond.tely: strip lilypond/ from info
914         links, rename to category LilyPond
915
916         * lily/pango-font.cc (description_string): new function.
917
918         * VERSION: release 2.9.15
919
920         * lily/spacing-engraver.cc (stop_translation_timestep): use
921         Dscho's fix for spacing spanner. 
922
923         * scm/define-music-types.scm (music-descriptions): use
924         apply-output-event for ApplyOutputEvent
925
926         * lily/output-property-engraver.cc (listen_apply_output): rename
927         from listen_layout_instruction.
928
929         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
930         function protect()
931
932 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
933
934         * scm/lily.scm (lilypond-all): option read-file-list: substitute
935         commandline args with contains, split by \n.
936
937         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
938         write snippet-names file, call with -dread-file-list. Fixes
939         command limitations on 64-bit systems.
940
941         * input/regression/stencil-color-rotation.ly: new file.
942
943         * lily/include/translator.hh (struct Acknowledge_information):
944         revert: don't use Protected_scm in global objects, as GUILE can't
945         handle gc_unprotect from automated destructors on MacOS X.
946  
947         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
948         color, not the original stencil. Fixes combinations of
949         color/transparency/rotation. 
950
951         * scripts/lilypond-book.py (main): add --formats=eps for
952         texinfo/latex.
953
954         * lily/spacing-engraver.cc (stop_translation_timestep): don't
955         crash if spacing_ is nonexistent.
956
957 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
958
959         * scripts/lilypond-book.py (output): Remove obsolete(!?)
960         \catcode`\@=12 in the LaTeX output.
961
962 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
963
964         * scm/define-music-types.scm (music-descriptions):
965         use sustain-event iso. sustain-pedal-event.
966
967 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
968
969         * scripts/convert-ly.py: honour the -n command-line switch
970
971 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
972
973         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
974         break specification.
975
976 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
977
978         * Documentation/user: convert-ly the user manual
979
980 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
981
982         * stepmake/aclocal.m4: version check patch (thanks MWD)
983
984         * ly/music-functions-init.ly: robustness. Don't crash if
985         currentBarNumber is not a number.
986
987         * VERSION (PATCH_LEVEL): bump.
988
989 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
990
991         * stepmake/aclocal.m4: better version check; handle fooX.Y
992         binaries too.
993
994         * ly/performer-init.ly: instrument name fixup.
995
996         * input/manual/chord-names-jazz.ly (banterProperties):
997         instrumentName update
998
999         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1000
1001         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1002
1003         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1004         function. Use hash tables to check membership.
1005
1006         * lily/general-scheme.cc (LY_DEFINE): new function.
1007
1008         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1009
1010         * lily/include/translator.hh (struct Acknowledge_information): add
1011         Protected_scm
1012
1013         * ly/music-functions-init.ly: change name to BreathingEvent
1014
1015         * input/regression/*.ly: apply it.
1016
1017         * python/convertrules.py (conv): better instrumentName conversion
1018         rule.
1019
1020         * scm/define-music-types.scm (music-descriptions): add
1021         line-break-event to LineBreakEvent music
1022
1023         * lily/music.cc (to_event): don't crash if music type not set.
1024
1025         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1026         spacing not set.
1027
1028         * lily/spacing-engraver.cc (stop_translation_timestep): set
1029         spacing for proportional notation too.
1030
1031         * scm/translation-functions.scm (format-bass-figure): inspect
1032         stream-event.
1033
1034         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1035
1036 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1037
1038         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1039
1040         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1041
1042         * scm/layout-page-layout.scm (make-page-from-systems): new function
1043         (optimal-page-breaks): use the new page-breaking calling convention
1044
1045         * scm/define-context-properties.scm (all-user-translation-properties):
1046         add revokePageTurns
1047
1048         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1049         revokePageTurns  functionality. If there is a special barline within
1050         the breakable region, break there instead of at the end of the region.
1051
1052         * lily/paper-book.cc (pages): use the new page-breaking calling
1053         convention
1054
1055 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1056
1057         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1058
1059         * scripts/lilypond-book.py: insert \sourcefileline command in
1060         output, so lilypond error messages refer to the spot in the
1061         original .lytex / .itely sourcefile.
1062
1063 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1064
1065         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1066         space to next column for distance to fixed col.
1067
1068         * VERSION (PACKAGE_NAME): release 2.9.14
1069
1070         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1071         if no accidental.
1072
1073         * lily/accidental-engraver.cc (process_acknowledged): don't create
1074         accidental for trill span event. This fixes spurious accidentals
1075         on trills.
1076
1077 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1078
1079         * scm/define-grob-properties.scm (all-user-grob-properties):
1080         Clarify documentation of side-axis and direction. Thanks to Paul
1081         for the inspiration.
1082
1083         * lily/bar-line.cc: Add documentation for "||:" also in the
1084         interface documentation.
1085
1086 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1087
1088         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1089
1090         * lily/paper-column.cc (set_system): new function.
1091
1092         * lily/spacing-engraver.cc (stop_translation_timestep): store
1093         SpacingSpanner refs in Paper_column.
1094
1095         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1096         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1097
1098 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1099
1100         * lily/beam-engraver.cc (listen_beam): add method for
1101         Grace_beam_engraver too.
1102
1103 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1104
1105         * python/convertrules.py: Fix indentation bug that broke
1106         conversion of files older than 1.3.117.
1107         Fix escape error in the description for 2.9.6.
1108
1109 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1110
1111         * lily/*-engraver.cc: convert all try_music functions to listen_*
1112         functions.
1113
1114         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1115         enums to represent pedal types, and calculate more data statically.
1116
1117         * scm/part-combiner.scm (recording-group-emulate): create a
1118         softcoded substitute for recording-group-engraver.cc.
1119
1120         * lily/music.cc: make a common transpose function for events and
1121         music
1122
1123         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1124         ManualMelismaEvent, and obsoletes Melisma_translator.
1125
1126 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1127
1128         * input/test/instrument-name-align.ly: update version.
1129
1130 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1131
1132         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1133         Doc the --pdf flag to lilypond-book.
1134
1135 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1136
1137         * Documentation/topdocs/NEWS.tely (Top): add description.
1138
1139         * input/regression/tuplet-full-length-note.ly: add file.
1140
1141         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1142         always store axis group.
1143
1144 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1145
1146         * input/regression/instrument-switch.ly: new file.
1147
1148         * lily/instrument-switch-engraver.cc (process_music): new file.
1149
1150         * ly/engraver-init.ly: add Instrument_switch_engraver
1151
1152         * ly/music-functions-init.ly: \instrumentSwitch
1153
1154         * scm/define-context-properties.scm
1155         (all-user-translation-properties): add instrumentCueName
1156
1157         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1158
1159 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1160
1161         * ly/music-functions-init.ly: music function \transposition.
1162
1163         * lily/parser.yy (command_element): softcode \transposition.
1164
1165         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1166         (process_music): oops.
1167
1168         * lily/instrument-name-engraver.cc (start_spanner): new
1169         function. Create spanner when property changes.
1170         (stop_spanner): new function.
1171
1172         * python/convertrules.py (conv): add rule.
1173
1174         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1175         shortInstrumentName iso. instr.
1176
1177         * scm/output-ps.scm (dashed-line): add phase argument to
1178         dashed-line.
1179
1180         * lily/bar-line.cc (dashed_bar_line): new function.
1181         (compound_barline): support \bar "dashed". 
1182
1183         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1184         --output=DIR to DIR/BASE if it is a dir. 
1185
1186         * flower/file-name.cc (file_part): new function
1187         (dir_part): new function
1188
1189         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1190
1191         * DEDICATION: update
1192
1193 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1194
1195         * lily/instrument-name-engraver.cc: formatting.
1196
1197         * python/convertrules.py (conv): bugfix for \epsfile.
1198
1199 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1200
1201         * lily/grob.cc:
1202         
1203         * lily/gourlay-breaking.cc: Oops, these should have been included
1204         in my last commit
1205
1206 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1207
1208         * scripts/*.py (program_name): cleanup relocation snippets.
1209
1210         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1211
1212 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1213
1214         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1215         page-breakable by default
1216
1217         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1218         correctly calculated for a single-system page
1219
1220         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1221         bigger than the second number
1222
1223         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1224         acknowledge that we aren't satisfying constraints)
1225
1226         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1227         non-Items
1228
1229         * lily/grob.cc (pure_height): add minimum-Y-extent
1230
1231         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1232         ragged
1233
1234         * lily/constrained-breaking.cc: convert code to use new Matrix class
1235         (get_best_solution): new function
1236
1237         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1238         is a page with no systems
1239
1240 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1241
1242         * VERSION (PACKAGE_NAME): release 2.9.13
1243
1244         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1245         assignment.
1246
1247 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1248
1249         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1250
1251         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1252         function.
1253
1254         * scm/define-grob-properties.scm (all-user-grob-properties):
1255         remove grace-space-factor.
1256
1257         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1258         grace-spacing-interface
1259         (spacing-options-interface): add.
1260
1261         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1262
1263         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1264
1265         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1266         GraceSpacing object.
1267
1268         * lily/note-spacing.cc: fix prop list formatting
1269
1270         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1271         beaming for grace notes too.
1272
1273         * input/regression/spacing-grace.ly: update.
1274
1275         * lily/grace-spacing-engraver.cc: new file.
1276
1277         * lily/spacing-spanner.cc: add strict-grace-spacing.
1278
1279 2006-07-20  Graham Percival  <gpermus@gmail.com>
1280
1281         * lily/parser.yy: compile fix.
1282
1283 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1284
1285         * scm/define-grobs.scm (all-grob-descriptions): typo.
1286
1287         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1288         .eps extension from includegraphics.
1289
1290         * scripts/lilypond-book.py (main): add support for --pdf. 
1291
1292         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1293         callback to compute common shortest duration.
1294         (set_springs): typo.
1295
1296         * scm/define-grob-properties.scm (all-user-grob-properties): add
1297         strict-grace-spacing.
1298
1299         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1300         support float_grace_columns_.
1301
1302         * lily/spacing-options.cc (init_from_grob): new file.
1303
1304         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1305
1306         * input/regression/spacing-loose-grace.ly: new file.
1307
1308         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1309
1310         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1311         tupletFullLengthNote too. Choose right bound depending on value.
1312
1313         * input/regression/tuplet-full-length-note.ly: new file.
1314
1315 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1316
1317         * lily/*-performer.cc: Converted try_music to listen_*
1318
1319         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1320         as a stream-event internally. Introduce event_cause (), deprecate
1321         music_cause ().
1322
1323         * scm/define-music-types.scm: Removed BusyPlayingEvent
1324         
1325 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1326
1327         * Documentation/user/advanced-notation.itely (Font selection):
1328         Document how to get a list of available fonts using 'lilypond
1329         -dshow-available-fonts blabla'.
1330
1331 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1332
1333         * GNUmakefile.in: filter lily-XXX.pdf files.
1334
1335         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1336
1337         * scm/define-grob-properties.scm (all-internal-grob-properties):
1338         remove delta-pitch. Use delta-position everywhere.
1339
1340         * scm/output-lib.scm (fall::print): use new order.
1341
1342         * scm/output-ps.scm (path): reorder arguments.
1343
1344         * scm/output-svg.scm (path): support for path primitive.
1345
1346         * input/regression/bend-after.ly: new file.
1347
1348         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1349         recipe for eps -> pdf conversion.
1350
1351 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1352
1353         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1354         Angelo Contardi.
1355
1356 2006-07-19  Graham Percival  <gpermus@gmail.com>
1357
1358         * input/manual/screech-boink.ly: moved to here.
1359
1360         * input/screech-boink.ly: deleted.
1361
1362         * scm/define-grob-properties.scm: clarify doc string.
1363
1364 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1365
1366         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1367
1368         * scm/output-ps.scm (path): define path.
1369
1370         * scm/define-stencil-commands.scm
1371         (ly:register-stencil-expression): add path.
1372
1373         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1374
1375         * ly/engraver-init.ly: add Fall_engraver
1376
1377         * lily/parser.yy (music_function_event): allow musicfunction
1378         without music arg as music_function_event.
1379
1380         * lily/grob-scheme.cc (LY_DEFINE):
1381         ly:grob-robust-relative-extent. New function.
1382
1383         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1384
1385         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1386
1387         * scm/output-lib.scm (fall::print): new function
1388
1389         * lily/fall-engraver.cc (stop_fall): new file.
1390
1391         * ly/music-functions-init.ly: alphabetise.
1392
1393         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1394         base.
1395
1396 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1397
1398         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1399
1400         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1401         doc pdftex usage.
1402
1403         * lily/translator-group.cc (connect_to_context): non const error message.
1404
1405         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1406
1407         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1408         if unset.
1409
1410         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1411
1412         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1413
1414         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1415         systems.pdftex too.
1416
1417         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1418
1419         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1420
1421         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1422
1423         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1424
1425         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1426
1427         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1428
1429 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1430
1431         * scm/layout-page-layout.scm: Define module, tidy code, use more
1432         functions iso. a single big one.
1433
1434         * scm/layout-page-dump.scm: move page dump functions used in two
1435         pass spacing to this file. Define module.
1436
1437         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1438          (separate module)
1439
1440         * ly/paper-defaults.ly: use module layout-page-layout.
1441
1442 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1443
1444         * lily/music.cc: Revised MusicEvent event class. It now contains
1445         event data directly instead of encapsulating it in music. The
1446         previously used class is renamed to OldMusicEvent.
1447
1448         * lily/stream-event.cc: Stream events are now probs.
1449         
1450         * lily/translator-group.cc, lily/translator.cc: Translators can
1451         now listen directly to stream events, by using macros
1452         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1453
1454         * lily/arpeggio-engraver.cc: Converted to use new event system
1455
1456         * THANKS: Corrected spelling mistake.
1457
1458 2006-07-12  Graham Percival  <gpermus@gmail.com>
1459
1460         * Documentation/user/SConscript, make/lilypond-vars.make,
1461         input/GNUmakefile: doc build looks in input/manual instead
1462         of input/test/
1463
1464         * input/manual/ GNUmakefile, SConscript: build files for
1465         input/manual/
1466
1467         * input/test/ various: some files moved to input/manual/ 
1468
1469         * Documentation/user/basic-notation.itely: small updates;
1470         thanks Kieren and Charles!
1471
1472 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1473
1474         * VERSION (PACKAGE_NAME): release 2.9.11
1475
1476         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1477
1478         * Documentation/user/basic-notation.itely (Tuplets): new property
1479         value.
1480
1481 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1482
1483         * python/convertrules.py (conv): tweaks. 
1484
1485         * VERSION (PATCH_LEVEL): bump version.
1486
1487         * python/convertrules.py (conv): add rule for
1488         tupletNumberFormatFunction.
1489
1490         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1491         tupletNumberFormatFunction.
1492
1493         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1494         text through 'text callback.
1495
1496         * lily/time-scaled-music-iterator.cc (construct_children): copy
1497         tweaks generated events.
1498
1499         * scm/define-context-properties.scm
1500         (all-user-translation-properties): remove tupletNumberFormatFunction
1501
1502         * lily/tuplet-engraver.cc (process_music): don't read
1503         tupletNumberFormatFunction
1504
1505         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1506         function.
1507
1508 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1509
1510         * lily/global-context-scheme.cc: Separated ly:run-translator into
1511         smaller pieces.
1512
1513         * lily/score-engraver.cc, lily/score-performer.cc,
1514         scm/define-context-properties.scm: Make paper/midi output
1515         accessable as a context property.
1516
1517         * lily/score-translator.cc, lily/score-context.cc: Removed.
1518
1519 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1520
1521         * scm/ps-to-png.scm (Module): 
1522         * scm/framework-tex.scm (Module): 
1523         * scm/framework-ps.scm (Module): 
1524         * scm/backend-library.scm (Module): 
1525         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1526         "dDEVICEHEIGHTPOINTS".
1527
1528 2006-07-04  Graham Percival  <gpermus@gmail.com>
1529
1530         * Documentation/user/ various: general improvements to
1531         "working with lilypond files" section.
1532
1533 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1534
1535         * lily/sequential-iterator.cc: Change the default get_music_list
1536         to read elements-callback music property
1537
1538         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1539         processing of multimeasure rests. Softcoded
1540         sequential-music-iterator.
1541
1542         * lily/sequential-music-iterator.cc: Removed.
1543
1544 2006-06-28  Graham Percival  <gpermus@gmail.com>
1545
1546         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1547
1548 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1549
1550         * lily/parser.yy: Wrap non-post-events in EventChords before
1551         assigning them to identifiers.
1552
1553 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1554
1555         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1556         gives correct vertical placement of \bar ":" in all staff
1557         sizes. Thanks Martial!
1558
1559 2006-06-26  Graham Percival  <gpermus@gmail.com>
1560
1561         * Documentation/user/invoking.itely : minor update from mailist.
1562
1563 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1564
1565         * lily/ various: Introduce stream events of types Prepare,
1566         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1567         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1568
1569         * lily/global-context*.cc: Time is now -inf before iteration
1570         starts.
1571
1572         * lily/include/context.hh: Removed unique_, init_
1573
1574         * Documentation/topdocs/NEWS: Make the feathered beam example
1575         avoid triggering a bug.
1576
1577 2006-06-24  Graham Percival  <gpermus@gmail.com>
1578
1579         * Documentation/user/ various: small additions from mailist.
1580
1581 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1582
1583         * ly/performer-init.ly: Add some missing links in the context
1584         hierarchy for MIDI output. There are probably some more missing!
1585
1586 2006-06-21  Graham Percival  <gpermus@gmail.com>
1587
1588         * Documentation/user/ various: minor spelling fixes;
1589         thanks Dave Luttinen!
1590
1591         * Documentation/user/ various: small clarifications;
1592         thanks Anthony Youngman!
1593
1594 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1595
1596         * po/fr.po: add \n appropriately.
1597
1598         * lily/lexer.ll: remove ? from version-seen?  
1599
1600 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1601
1602         * po/fr.po; update translation, by Jean-Charles Malahieude and
1603         John Mandereau.
1604
1605 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1606
1607         * THANKS: add Markus Schneider.
1608
1609         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1610         Staff_symbol_engraver
1611
1612         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1613         replace staff_engraver
1614
1615         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1616         spanner.
1617
1618         * lily/staff-collecting-engraver.cc
1619         (acknowledge_end_staff_symbol): new function
1620
1621         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1622
1623         * lily/staff-collecting-engraver.cc
1624         (acknowledge_end_staff_symbol): new function.
1625
1626         * lily/main.cc: switch on relocation by default.
1627
1628 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1629
1630         * lily/spacing-spanner.cc (musical_column_spacing): set
1631         compound_fixed_note_space to 0.0. Document why.
1632
1633         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1634         range of inverse_hooke_
1635         (Simple_spacer): init completely.
1636         (fits): const
1637         (get_line_configuration): don't use cols.resize(); it introduces
1638         initialized data.
1639
1640         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1641
1642         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1643
1644         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1645         try. Divide by beatlength.
1646
1647         * input/regression/beaming-ternary-metrum.ly: update doc.
1648         add beatLength hack.
1649
1650         * scm/music-functions.scm (make-time-signature-set): add
1651         standard-beat-grouping. 
1652
1653 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1654
1655         * input/regression/tie-whole.ly: new file.
1656
1657         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1658         cross center of note head in case of invisible stem. 
1659
1660 2006-06-16  Graham Percival  <gpermus@gmail.com>
1661
1662         * Documentation/user/ various: small fixes from mailist.
1663
1664 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1665
1666         * lily/breathing-sign.cc (offset_callback): idem.
1667
1668         * lily/align-interface.cc (align_to_fixed_distance): remove
1669         hungarian suffix.
1670
1671         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1672         x%2==0.
1673
1674 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1675
1676         * VERSION (PACKAGE_NAME): release 2.9.9
1677
1678         * ly/lilypond-book-preamble.ly: add \version
1679
1680 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1681
1682         * scripts/lilypond-book.py (PREAMBLE_LY): include
1683         lilypond-book-preamble.ly
1684
1685         * lily/stem.cc (get_beaming): return max of 0 and
1686         scm_ilength. Fixes slurring from/to beams.
1687
1688         * ly/lilypond-book-preamble.ly: new file.
1689
1690         * lily/slur.cc: add inspect-index feature.
1691
1692 2006-06-13  Graham Percival  <gpermus@gmail.com>
1693
1694         * Documentation/user/tutorial.itely: trivial fix.
1695
1696 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1697
1698         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1699         all non-event music in the parser via MAKE_SYNTAX.
1700
1701         * lily/parser-scheme.cc: Add ly:parser-error function
1702
1703         * scm/paper.scm: fix typo
1704
1705 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1706
1707         * THANKS: add RT.
1708
1709         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1710         is null.
1711
1712         * buildscripts/output-distance.py (test_compare_signatures):
1713         timing routines.
1714         (read_signature_file): use new signature format.
1715
1716         * scm/stencil.scm (write-system-signature): simpler signature
1717         format.
1718
1719         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1720         for beamed case. 
1721
1722         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1723         stem_end_position, but estimate instead. 
1724
1725         * lily/tuplet-bracket.cc (calc_positions): look at
1726         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1727         brackets narrower than beams. 
1728
1729         * lily/lexer.ll: set version-seen? even if version is
1730         INVALID. 
1731
1732         * lily/rest.cc (y_offset_callback): bugfix: decide position
1733         override based on scm_is_number(). Fixes \rest on center staff
1734         line. 
1735
1736         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1737         patterns for 16th triplets.
1738
1739 2006-06-10  Graham Percival  <gpermus@gmail.com>
1740
1741         * Documentation/user/ page.itely, global.itely: editing
1742         and reorg.
1743
1744         * Documentation/user/ various: findex -> funindex.
1745
1746 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1747
1748         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1749         insert extra tuplet events.
1750
1751 2006-06-10  Graham Percival  <gpermus@gmail.com>
1752
1753         * Documentation/user/programming-interfaces.itely: add
1754         info from NEWS.
1755
1756         * python/convertrules.py: add annotatefoo -> annotate-foo
1757         rules.
1758
1759         * Documentation/user/global.itely: start editing.
1760
1761         * Documentation/user/page.itely: major editing, new spacing
1762         docs.
1763
1764 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1765
1766         * scm/define-markup-commands.scm (wordwrap-markups): use
1767         output-def 'line-width if undefined.
1768
1769         * HACKING: trim outdated info.
1770
1771 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1772
1773         * scm/define-grobs.scm (all-grob-descriptions): Add
1774         line-spanner-interface to all grobs that already have
1775         text-spanner-interface or dynamic-text-spanner-interface
1776
1777         * scm/page.scm: Rename annotate{headers,systems,page}->
1778         annotate-*
1779
1780         * input/regression/page-spacing.ly,
1781         input/regression/page-layout-manual-position.ly: idem
1782
1783 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1784
1785         * lily/line-spanner.cc: cleanup property list.
1786
1787         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1788         generator expressions (2.3 compat). 
1789
1790 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1791
1792         * lily/vertical-align-engraver.cc: Make sure that the
1793         align{Above,Below}Context properties are included in the automatic
1794         documentation.
1795
1796 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1797
1798         * scm/paper-system.scm (paper-system-annotate): also annotate the
1799         estimated pure-Y-extent
1800
1801         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1802
1803         * lily/system.cc (break_into_pieces): set the estimated height
1804         of each child system
1805
1806         * lily/stem.cc (pure_height): new pure-Y-extent callback
1807
1808         * lily/staff-symbol-referencer.cc (callback): don't destroy
1809         the staff-position property
1810
1811         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1812         consider_suicide into two functions
1813
1814         * lily/constrained-breaking.cc (resize): use the new pure
1815         callbacks to estimate the height of a system
1816
1817         * lily/axis-group-interface.cc (pure_group_height): new
1818         side-effect-free VerticalAxisGroup height-callback
1819
1820         * lily/align-interface.cc (get_extents_aligned_translates):
1821         split align_elements_to_extents into two functions
1822         (get_pure_child_y_translation): new function
1823
1824         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1825
1826         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1827
1828         * lily/paper-score.cc: cache break_indices and columns
1829
1830         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1831         
1832 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1833
1834         * lily/font-config.cc (init_fontconfig): do the init if
1835         cache_file, but don't look at cache_file.
1836
1837         * input/regression/quote-tie.ly: new file.
1838
1839         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1840         to Head_event_tuple, so we deal gracefully with ties on
1841         cue-endings.
1842
1843         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1844         for FcChar8*
1845
1846 2006-06-08  Graham Percival  <gpermus@gmail.com>
1847
1848         * input/test/ smart-transpose.ly, reverse-music.ly:
1849         \applyMusic to music functions update, thanks Michael!
1850
1851 2006-06-07  Graham Percival  <gpermus@gmail.com>
1852
1853         * input/test/ add-staccato.ly, add-text-script.ly,
1854         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1855         music functions update, thanks to Michael Meixner.
1856
1857         * Documentation/user/music-glossary.tely: small fix
1858         from Francisco.
1859
1860         * Documentation/user/ various: minor additions from mailist.
1861
1862         * Documentation/user/lilypond.tely, basic-notation.itely:
1863         small test of @funindex.  (works here)
1864
1865         * input/test/font-table.ly: reduce size to partially
1866         de-ugly version in manual.
1867
1868         * Documentation/user/page.itely: new file (split former
1869         "global issues" into "page settings" and "non-musical
1870         output".
1871
1872         * Documentation/user/ various: fix @ref{}s to match
1873         new chapter names (above).
1874
1875 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1876
1877         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1878
1879 2006-06-06  Graham Percival  <gpermus@gmail.com>
1880
1881         * Documentation/user/advanced-notation.itely: add example
1882         for segno/coda on barline.
1883
1884         * tex/texinfo.tex: merge from upstream.
1885
1886 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1887
1888         * scripts/lilypond-book.py (process_snippets): Argument fix.
1889
1890         * SConstruct:
1891         * buildscripts/builder.py:
1892         * lily/SConscript: 
1893         * mf/SConscript: 
1894         * Documentation/user/SConscript:  More SCons fixes.
1895
1896 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1897
1898         * lily/font-config.cc (init_fontconfig): Only initialize if
1899         global cache_file is found.
1900
1901 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1902
1903         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1904         new \applyOutput.
1905
1906 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1907
1908         * VERSION (PACKAGE_NAME): release 2.9.8
1909
1910         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1911         function. Delay ledger modifying ledgered grobs to
1912         stop_translation_timestep(), to ensure that we're ledgering
1913         according to the new spanner.
1914         (acknowledge_staff_symbol): don't check for non-NULL
1915         staff_sym->get_bound()
1916
1917         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1918         creation.
1919
1920         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1921         pictures too.
1922
1923         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1924         directly from srcdir/stepmake/aclocal.m4
1925         
1926         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1927         disting MISC files.
1928
1929         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1930
1931 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1932
1933         * lily/simple-spacer.cc (get_line_configuration): add
1934         keep-inside-line rods
1935         (struct Column_desc): add constructor
1936         (struct Rod_desc): add constructor
1937         (get_line_forces): check for forced page breaks here too
1938
1939         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1940         support/elements cycles between InstrumentNames and AxisGroups
1941
1942 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1943
1944         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1945
1946         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1947         make-txt-files target.
1948
1949         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1950         make-txt-files target.
1951
1952         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1953
1954         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1955         top-build-dir.
1956
1957 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1958
1959         * Documentation/user/instrument-notation.itely,
1960         input/regression/breathing-sign-ancient.ly,
1961         input/test/divisiones.ly: Removed redundant property settings for
1962         vaticana contexts.
1963
1964         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1965         fix lyrics alignment problems.  They are implemented now as scheme
1966         functions that add the appropriate unicode char to the first lyric
1967         event rather than adding a separate lyric event.  Minor edit of
1968         comments.
1969
1970 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1971
1972         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1973         pollute src dir with built .txt files, but install directly from
1974         Documentation/topdocs/out/
1975
1976         * buildscripts/output-distance.py
1977         (ComparisonData.create_html_result_page): put version/directories
1978         in table header.
1979
1980         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1981         feature.
1982
1983         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1984         Patch by Karl Hammar
1985         
1986         * buildscripts/readlink.py: add  file.
1987         Patch by Karl Hammar
1988
1989 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1990
1991         * lily/tuplet-number.cc (print): prevent stencil from being
1992         garbage collected.
1993
1994 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1995
1996         * scm/stencil.scm (write-system-signature): explicitly 
1997         -well, superfluously- close output port.
1998
1999         * buildscripts/output-distance.py (main): oops. Add extra argument.
2000
2001 2006-06-05  Graham Percival  <gpermus@gmail.com>
2002
2003         * Documentation/user/music-glossary.tely: clarified example
2004         from Francisco Vila, thanks!
2005
2006 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2007
2008         * input/regression/spacing-section.ly: new file.
2009
2010         * lily/input.cc (programming_error): new function.
2011
2012         * lily/spacing-engraver.cc (try_music): new function. Accept
2013         spacing-section-event
2014
2015         * lily/spacing-spanner.cc (set_springs): take slices of all
2016         columns for spacing.
2017
2018         * lily/include/paper-column.hh (class Paper_column): add
2019         Paper_column::compare.
2020
2021         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2022
2023         * scm/define-music-types.scm (music-descriptions): add
2024         SpacingSectionEvent
2025
2026         * lily/music-iterator.cc (report_event): use programming_error for
2027         sending non-event error.
2028
2029         * lily/input.cc (programming_error): new function
2030
2031         * buildscripts/output-distance.py (main): use compare-XXX for
2032         compare files.
2033         (main): --threshold option, default at 0.30
2034
2035         * output-distance.py (main): add --threshold option.
2036
2037 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2038
2039         * scm/paper-system.scm (paper-system-annotate): fix problem when
2040         annotating an empty system
2041
2042 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2043
2044         * GNUmakefile.in: reinstate old web tar/copying.
2045
2046 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2047
2048         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2049         nothing changes. (Erik S) 
2050
2051         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2052         count. (Erik S)
2053
2054 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2055
2056         * scm/define-markup-commands.scm (whiteout): do not force
2057         foreground color of argument markup to black.
2058
2059         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2060         the left of the arrow, instead of below the arrow name, so that,
2061         when two little arrows are vertically stacked, their dimensions
2062         and name should not overlap. Add a color key parameter.
2063
2064         * scm/paper-system.scm (paper-system-annotate): Annotate
2065         next-space+next-padding instead of next-space. Annotate space
2066         between next-padding and next-space+padding, respectively, and
2067         following system extent and refpoint-Y-extent. Use colors.
2068
2069         * scm/page.scm (annotate-page): translate annotations slightly to
2070         the right.
2071
2072 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2073
2074         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2075         fix for x-staff slurs. Thanks Joe!
2076
2077         * buildscripts/output-distance.py
2078         (SystemLink.output_expression_change_count): keep track of changed
2079         details, and dump in details html page.
2080  
2081         * input/regression/figured-bass-staff.ly: add note about setting
2082         properties in Staff context.
2083
2084         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2085         add slurs and ties to support too.
2086
2087         * buildscripts/output-distance.py (main): set dest_dir
2088         argument. Add --max-count option.
2089
2090 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2091
2092         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2093         shortcuts for special unicode chars that are useful in chant
2094         notation.  Revised exisiting and added new comments.
2095
2096 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2097
2098         * make/mutopia-rules.make: remove duplicate recipe.
2099
2100 2006-06-02  Werner Lemberg  <wl@gnu.org>
2101
2102         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2103         Add support for U+0132 (IJ) and U+0133 (ij).
2104
2105 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2106
2107         * buildscripts/output-distance.py (FileLink): new class. collect
2108         info systems from one .ly file. 
2109         (FileLink.link_files_for_html): further tweaks.
2110
2111 2006-06-02  Graham Percival  <gpermus@gmail.com>
2112
2113         * tex/texinfo.tex: partial fix for @funindex.
2114
2115         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2116         break anything).
2117
2118 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2119
2120         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2121
2122         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2123         @example too. Backportme.
2124
2125 2006-06-02  Graham Percival  <gpermus@gmail.com>
2126
2127         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2128         from Werner Lemberg.
2129
2130 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2131
2132         * Documentation/user/music-glossary.tely: additional spanish
2133         updates and a lyrics fix in an example.
2134
2135 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2136
2137         * scm/define-grob-properties.scm: Previous patch contained
2138         spurious line from another patch not yet committed.  Fixed.
2139
2140         * scm/define-grob-properties.scm: Add missing doc strings for
2141         ancient notation.
2142
2143 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2144
2145         * buildscripts/output-distance.py
2146         (ComparisonData.write_text_result_page): separate the scores, sort
2147         by geo_score.
2148
2149         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2150         system signatures.
2151
2152         * buildscripts/output-distance.py (me_path): use argv[0] for
2153         sys.path extension
2154         (ComparisonData.img_cell): use colored borders.
2155
2156         * scm/stencil.scm (write-system-signature): escape newlines too.
2157         (write-system-signature): use (1,-1) interval for empty interval
2158
2159 2006-01-01  Graham Percival  <gpermus@gmail.com>
2160
2161         * Documentation/user/music-glossary.tely: Spanish updates
2162         from Francisco Vila.
2163
2164         * Documentation/user/lilypond-book.itely: addition from
2165         Vaclav Smilauer.
2166
2167         * Documentation/user/ various: edits, small additions
2168         from mailist, etc.
2169
2170 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2171
2172         * GNUmakefile.in (tree-lib-prefix-current):
2173         (tree-share-prefix-current): Use version number in tree, add
2174         `current' symlinks.
2175
2176 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2177
2178         * GNUmakefile.in: write VERSION, again.
2179
2180         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2181         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2182
2183         * stepmake/aclocal.m4: robuster version detection.
2184
2185         * buildscripts/output-distance.py
2186         (ComparisonData.create_html_result_page): copy only if file
2187         exists, fixup src paths.
2188
2189         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2190
2191 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2192
2193         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2194         Another datarootdir reto.
2195
2196         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2197         available.  This should be moved to postinstall-lilypond-doc.
2198
2199 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2200
2201         * GNUmakefile.in: simplify local-WWW-post. 
2202         remove -type l from find.
2203
2204         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2205         fixes. Don't follow symlinks.
2206         (ComparisonData.create_html_result_page): remove previous results.
2207         insert ../python in path.
2208
2209         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2210
2211 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2212
2213         * config.make.in (datadir): Add datarootdir to silence autoconf.
2214
2215         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2216
2217 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2218
2219         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2220
2221         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2222         slash beams too wide.
2223
2224 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2225
2226         * VERSION: release 2.9.7
2227         
2228 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2229
2230         * lily/relocate.cc (read_relocation_dir): Do not blindly
2231         dereference DIR.
2232
2233 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2234
2235         * lily/parser.yy: replace THIS by PARSER
2236
2237         * Documentation/index.html.in: add link to test-results.html page.
2238
2239         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2240
2241         * scm/translation-functions.scm (format-bass-figure): translate
2242         digits over 10 to the left
2243
2244         * scm/define-markup-commands.scm (translate-scaled): new markup.
2245
2246         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2247         7 glyph. 
2248
2249         * ly/engraver-init.ly: add Figured_bass_engraver
2250
2251         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2252
2253         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2254
2255         * lily/score-engraver.cc (announce_grob): only note START announces.
2256
2257         * lily/include/engraver-group.hh (Translator_group):
2258         acknowledge_hash_table_ is now drul.
2259
2260         * lily/engraver.cc (announce_end_grob): new method.
2261
2262         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2263
2264         * lily/translator-dispatch-list.cc (create): take start_end argument.
2265
2266         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2267         acknowledge_static_array_ to drul
2268
2269         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2270
2271         * scm/define-grob-interfaces.scm
2272         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2273
2274         * scm/define-grobs.scm (all-grob-descriptions): add
2275         BassFigureAlignmentPositioning
2276
2277         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2278         number stays up to date. Backportme.
2279
2280 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2281
2282         * Documentation/user/basic-notation.itely (Bar lines): Document
2283         the "||:" bar type. 
2284
2285 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2286
2287         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2288
2289         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2290         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2291         build.
2292
2293         * Resurrect `scons lily' build.
2294
2295         * SConstruct (symlink_tree): Bugfix: link
2296         music-drawing-routines.ps to file iso directory.
2297
2298         * lily/SConscript: Remove kpath-guile from LIBS.
2299
2300         * SConstruct (libdir_package_version): Typo.
2301         (configure): Comment-out fontforge for lack of fontforge.pc .
2302         Also add libdir* to environment.
2303
2304 2006-05-30  Graham Percival  <gpermus@gmail.com>
2305
2306         * Documentation/user/ various: minor additions from mailist and
2307         editing.
2308
2309 2006-05-30  Paco <fravd@ya.com>
2310
2311         * Documentation/user/music-glossary.tely: numerous corrections and
2312         some new translations.
2313
2314 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2315
2316         * BackportmeStart.
2317         
2318         * buildscripts/output-distance.py
2319         (ComparisonData.create_html_result_page): new routine: summarise
2320         results in HTML page with images. 
2321         (ComparisonData.create_text_result_page): create summary text files too.
2322
2323         * GNUmakefile.in (web-ext): package .signature files too. They
2324         compress well. 
2325
2326         * scm/stencil.scm (write-system-signature): typo.
2327
2328         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2329
2330         * scm/stencil.scm (write-system-signature): better escaping.
2331         only write signature for music systems, not for markup systems.
2332
2333         * scm/framework-ps.scm (output-framework): dump-signatures support
2334         for plain output.
2335
2336         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2337
2338         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2339         for -dno-point-and-click
2340
2341         * lily/grob.cc (get_print_stencil): don't read
2342         point_and_click_global to determine whether to set grob-cause.
2343
2344 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2345
2346         * buildscripts/output-distance.py (main): new function.
2347         (ComparisonData): new class.
2348
2349         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2350         careful with generating new LedgerLineSpanners.
2351
2352         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2353
2354         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2355         context. This fixes double ledger lines in output. 
2356
2357         * lily/system.cc (get_paper_system): remove 3 layer limit.
2358
2359         * buildscripts/output-distance.py (SystemLink.distance): new
2360         file. Compare signatures.
2361
2362         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2363
2364         * lily/grob-array.cc (remove_duplicates): rename from
2365         uniq(). Sort before calling uniq() so it actually works.
2366
2367 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2368
2369         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2370         \version from lilypond file snippet.
2371         (Lilypond_file_snippet.ly): oops. typo.
2372         (find_toplevel_snippets): urgh. again.
2373
2374         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2375         prevent duplicated broken items in output.
2376
2377         * scm/framework-eps.scm (output-classic-framework): only dump if
2378         dump-signatures is set.
2379
2380         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2381
2382         * scm/stencil.scm (write-system-signature): new routine: write
2383         python parseable signature of a separate paper system.
2384         BackportmeEnd.
2385         
2386 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2387
2388         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2389         iso is_string().
2390         include header.
2391
2392 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2393
2394         * translator-group.cc: send music events to engravers in
2395         non-bottom contexts.
2396
2397         * tuplet-engraver.cc: process tuplet brackets in correct order.
2398
2399 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2400
2401         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2402         arg 2 might point us to a new binary (patch by Karl Hammar)
2403         
2404 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2405
2406         * VERSION (PACKAGE_NAME): release 2.9.6
2407
2408         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2409
2410         * Documentation/user/*.itely: 2nd
2411         attempt: replace funindex -> findex globally.
2412
2413 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2414
2415         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2416         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2417
2418         * scm/define-music-display-methods.scm: display methods for
2419         breaks. Fix \applyOutput.
2420
2421 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2422
2423         * Documentation/user/macros.itexi: comment out funindex expansion. 
2424
2425         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2426         everywhere.
2427
2428         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2429         Karl Hammar. Backportme.
2430  
2431         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2432
2433         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2434
2435         * Documentation/user/programming-interface.itely (Running a
2436         function on all layout objects): idem.
2437
2438         * Documentation/user/introduction.itely (Automated engraving):
2439         update \applyOutput syntax
2440
2441         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2442         remove debugging hook.
2443
2444         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2445         expansion. 
2446
2447         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2448
2449         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2450         TEXI2DVI_FLAGS to texi2dvi invocation. 
2451
2452 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2453
2454         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2455         works. More work is done by iterator now, and engraver has been
2456         very much simplified.
2457
2458         * lily/translator-group.cc: try_music is now invoked through a
2459         listener
2460
2461         * lily/*-iterator.cc: Massive cleanups. Junked
2462         try_music_in_children globally. Renamed try_music to report_event,
2463         and made that method descend to a bottom context automatically.
2464
2465         * lily/event-iterator.cc: New file.
2466
2467         * lily/output-property-iterator.cc,
2468         lily/old-lyric-combine-music-iterator.cc: Removed.
2469
2470         * python/convert-rules.py: Modified the syntax for \applyOutput.
2471
2472 2006-05-23  Graham Percival  <gpermus@gmail.com>
2473
2474         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2475         creation.
2476
2477         * Documentation/user/ various: stuff that might have helped
2478         to fix the pdf creation, plus some minor doc additions.
2479
2480         * Documentation/user/changing-defaults.itely: remove @b from
2481         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2482
2483 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2484
2485         * lily/beaming-pattern.cc (beamify): deal with negative start
2486         moments for beaming patterns.
2487
2488 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2489
2490         * lily/beaming-info.cc (beamify): new function: read beatLength
2491         and beatGrouping from context. 
2492
2493         * input/regression/beam-beat-grouping.ly (Module): new file.
2494
2495         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2496
2497         * lily/beam.cc (get_beam_segments): generate events for
2498         max_connect_ case too.
2499         (get_beam_segments): read Stem::max-beam-connect.
2500
2501         * input/regression/beam-single-stem.ly: new file.
2502
2503         * lily/stem.cc (set_beaming): use #f as signaling value for
2504         beamcount 0.
2505
2506         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2507
2508         * lily/beam.cc (set_beaming): read clip-edges property.
2509         (calc_direction): don't suicide for single stem.
2510
2511         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2512         argument, remove 1<<15 hack. Remove clip_edges() 
2513
2514         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2515
2516 2006-05-21  Graham Percival  <gpermus@gmail.com>
2517
2518         * Documentation/user/basic-notation.itely: reorg.
2519
2520         * Documentation/user/ various: minor fixes.
2521
2522 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2523
2524         * lily/stencil-expression.cc (register_stencil_head): opps, append
2525         to cdr of static SCM object.
2526
2527 2006-05-19  Graham Percival  <gpermus@gmail.com>
2528
2529         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2530         update framework for command index.  DOC WRITERS: use @funindex
2531         instead of @cindex @code{}.
2532
2533         * Documentation/user/ various: replace @cindex @code{} => @funindex
2534
2535 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2536
2537         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2538         case positions is set manually. 
2539
2540 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2541         
2542         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2543         rules to Scheme.
2544
2545 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2546
2547         * Documentation/user/changing-defaults.itely (Contexts explained):
2548         use absolute dimension for @image.
2549
2550         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2551         out image for illustration too.
2552         ($(outdir)/%.png): add more png <-> eps rules. 
2553
2554 2006-05-17  Graham Percival  <gpermus@gmail.com>
2555
2556         * Documentation/user/ various: remove trailing whitespace, cosmetic
2557         change to reduce changes produced by diff.
2558
2559 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2560
2561         * lily/main.cc (do_chroot_jail): correctness tweak.
2562
2563         * python/lilylib.py (system): import subprocess in system () only.
2564
2565         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2566
2567         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2568         variable. Backportme.
2569
2570 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2571         
2572         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2573
2574 2006-05-17  Werner Lemberg  <wl@gnu.org>
2575
2576         * lily/lexer.ll (init_signature_has_table): Add
2577         `scm-scm-music-music'.
2578
2579         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2580         (Generic_prefix_music_scm): Add rule for it.
2581
2582         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2583         `quoted-transposition' property.
2584
2585         * ly/music-functions-init.ly (transposedCueDuring): New function.
2586
2587         * scm/define-music-properties.scm (all-music-properties): Updated.
2588
2589         * Documenation/topdocs/NEWS.itely: Document it.
2590
2591 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2592
2593         * python/lilylib.py (system): move import subprocess to system()
2594         definition. 
2595
2596         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2597
2598         * VERSION (PATCH_LEVEL): release 2.9.5
2599         
2600         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2601         build instructions. 
2602
2603         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2604
2605 2006-05-16  Graham Percival  <gpermus@gmail.com>
2606
2607         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2608
2609         * Documentation/user/ various: minor fixes.
2610
2611 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2612
2613         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2614
2615 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2616
2617         * Documentation/user/advanced-notation.itely (Instrument names):
2618         Modified obsolete instruction on how to move instrument names away
2619         from the staves. Hmm, at second thought the bug probably has been
2620         solved, so the full bug description should probably be removed.
2621
2622 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2623
2624         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2625         currentCommandColumn. 
2626
2627         * lily/hairpin.cc (print): also add padding for non-neighbor
2628         hairpin bounds.
2629
2630         * scm/define-context-properties.scm
2631         (all-user-translation-properties): add hairpinToBarline
2632
2633         * input/regression/hairpin-to-barline.ly: new file.
2634
2635         * lily/context.cc (internal_send_stream_event): thinko fix.
2636
2637         * lily/tie.cc (set_default_control_points): robustness fix.
2638
2639         * python/musicxml.py (Part.interpret): don't complain about
2640         incomplete measures.
2641
2642         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2643         new music if last_event_chord() returned None.
2644
2645         * python/musicxml.py (Part.interpret): skip back over chord notes.
2646
2647 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2648         
2649         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2650         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2651         lily/slash-repeat-engraver.cc,
2652         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2653         iterator sends PercentEvents
2654
2655         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2656         rework tuplets: send start/stop events to engraver
2657
2658         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2659         dispatchers event-source and events-below to Context
2660         
2661 2006-05-15  Graham Percival  <gpermus@gmail.com>
2662
2663         * Documentation/user/README.txt: update info for doc writers.
2664
2665         * Documentation/user/programming-interface.itely: integrate
2666         Nicolas' fixes for chapter rewrite.
2667
2668         * Documentation/user/ various: minor fixes.
2669
2670 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2671
2672         * lily/clef-engraver.cc: cleanup.
2673
2674         * Documentation/user/GNUmakefile: dist context-example.eps too.
2675
2676         * lily/key-engraver.cc (create_key): use
2677         explicitKeySignatureVisibility for cancellation too. 
2678
2679         * lily/font-config.cc (init_fontconfig): don't close file if
2680         f==NULL. 
2681
2682 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2683
2684         * Documentation/topdocs/NEWS.tely: niente and rotation news
2685
2686 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2687
2688         * lily/include/stencil.hh
2689         * lily/stencil.cc (rotate): new function. Makes it possible
2690         to rotate a stencil around a given offset.
2691
2692         * lily/grob.cc (get_print_stencil): add rotation support
2693
2694         * lily/stencil-interpret.cc (interpret_stencil_expression):
2695         add rotation support
2696
2697         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2698
2699         * scm/define-grob-properties.scm: add 'rotation property
2700
2701         * scm/define-markup-commands.scm: add rotate markup command
2702         
2703         * scm/output-ps.scm: add rotation support in PostScript backend
2704
2705         * scm/output-svg.scm: add rotation support in SVG backend
2706
2707 2006-05-13  Graham Percival  <gpermus@gmail.com>
2708
2709         * Documentation/user/music-glossary.itely: French correction.
2710
2711         * Documentation/user/programming-interface.itely: major
2712         new docs, some reorg, some info from Nicolas.
2713
2714         * Documentation/user/ various: small fixes.
2715
2716 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2717
2718         * Documentation/user/programming-interface.itely (Markup
2719         programmer interface): Remove duplicate text.
2720
2721 2006-05-12  Graham Percival  <gpermus@gmail.com>
2722
2723         * Documentation/user/context-example.eps: new file.
2724
2725         * Documentation/user/changing-defaults.itely: set up file to
2726         use eps image.
2727
2728         * Documentation/user/programming-interface.itely: changes
2729         from mailist.
2730
2731 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2732
2733         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2734
2735 2006-05-11  Graham Percival  <gpermus@gmail.com>
2736
2737         * Documentation/user/programming-interface.itely: first round of
2738         editing and merging emails from Nicolas.
2739
2740         * Documentation/user/scheme-tutorial: minor edit.
2741
2742 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2743
2744         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2745         XML attributes.
2746         (Xml_node.message): use it.
2747
2748         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2749         oops. Add duration argument.
2750
2751 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2752
2753         * lily/paper-column-engraver.cc (make_columns):
2754         * scm/define-grobs.scm: Revert my previous change and set the default
2755         in define-grobs.scm instead.
2756
2757 2006-05-09  Graham Percival  <gpermus@gmail.com>
2758         
2759         * Documentation/user/changing-defaults.itely: general editing,
2760         info about \set and \override.
2761
2762         * Documentation/user/tweaking.itely, advanced-notation.itely:
2763         fixes from Dave Luttinen, thanks!
2764
2765 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2766
2767         * lily/paper-column-engraver.cc (make_columns): By default, a column
2768         needs to be breakable.
2769
2770 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2771
2772         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2773         Attributes methods
2774         (musicxml_time_to_lily): idem
2775         (musicxml_key_to_lily): idem
2776         (instrument_drumtype_dict): dict for supported drumtypes.
2777         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2778         moments and pending mm rests
2779         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2780         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2781         (musicxml_voice_to_lily_voice): add mode change.
2782         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2783         speed and less memory usage (factor 5 to 10).
2784         (convert): write -defs.ly  and driver file separately so people
2785         can script their own part extraction.
2786
2787         * python/musicxml.py (minidom_demarshal_node): new function:
2788         separate minidom handling.
2789         (lxml_demarshal_node): new function: support lxml.etree too.
2790         (Xml_node.message): new function: verbose error message, with XML
2791         path to offending node.
2792         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2793         (Part_list.generate_id_instrument_dict): new method: collect
2794         instrument names, to be able to set drum_type.
2795         (Part.interpret): handle underfull measures
2796         (Part.interpret): assign instrument names.
2797
2798         * python/musicexp.py (Output_printer.close): new method
2799         (MusicWrapper.print_ly): new class: support other modes,
2800         eg. \drummode
2801         (BarCheck.print_ly): new class. Support bar checks, with comments
2802         and fancy barchecks. 
2803         (NoteEvent.__init__): also set drum_type for drum notes.
2804         (MultiMeasureRest.lisp_expression): dump mm rests.
2805
2806         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2807         line-break-permission if forbidBreak is not set.
2808
2809 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2810
2811         * scm/define-context-properties.scm:
2812         * scm/define-grob-properties.scm:
2813         * scm/define-grobs.scm:
2814         * scm/define-music-display-methods.scm:
2815         * scm/define-music-properties.scm:
2816         * scm/define-music-types.scm:
2817         * scm/music-functions.scm:
2818         * ly/declarations-init.ly:
2819         * lily/include/constrained-breaking.hh:
2820         * lily/system.cc:
2821         * lily/spaceable-grob.cc:
2822         * lily/simple-spacer.cc:
2823         * lily/paper-score.cc:
2824         * lily/paper-column.cc:
2825         * lily/paper-column-engraver.cc:
2826         * lily/item.cc:
2827         * lily/gourlay-breaking.cc:
2828         * lily/constrained-breaking.cc:
2829         * python/convertrules.py:
2830         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2831         "page-break-penalty" and "line-break-permission".
2832         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2833         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2834
2835         * lily/bar-engraver.cc:
2836         * lily/beam-engraver.cc:
2837         * lily/forbid-break-engraver.cc:
2838         * lily/ligature-engraver.cc:
2839         * lily/paper-column-engraver.cc:
2840         * lily/percent-repeat-engraver.cc:
2841         * lily/score-engraver.cc:
2842         * lily/score-engraver.hh:
2843         * lily/paper-column-engraver.hh:
2844         Inter-engraver communication regarding line breaks is done through context
2845         properties (Score.forbidBreak) instead of function calls.
2846
2847 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2848
2849         * VERSION (PACKAGE_NAME): release 2.9.4
2850
2851 2006-05-08  Graham Percival  <gpermus@gmail.com>
2852
2853         * Documentation/user/working.itely: proofreading from Dave
2854         Luttinen, thanks.
2855
2856         * Doucmentation/user/README.txt: updated with manual style info.
2857
2858         * Documentation/user/ various: trim linewidth to 78 chars.
2859
2860 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2861
2862         * scm/define-grob-properties.scm (all-internal-grob-properties):
2863         remove chord-tremolo property.
2864
2865         * lily/beam.cc (get_beam_segments): don't use stem position as
2866         base for broken ends.
2867
2868 2006-05-06  Graham Percival  <gpermus@gmail.com>
2869
2870         * Documentation/user/putting.itely: proofreading from Dave
2871         Luttinen, thanks!
2872
2873         * Documentation/user/ various: more reorg and clarifications.
2874
2875 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2876
2877         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2878
2879         * ly/music-functions-init.ly: new function featherDurations
2880
2881         * lily/beam.cc: read grow-direction for feathered beaming.
2882
2883         * Documentation/topdocs/NEWS.tely (Top): typo.
2884
2885 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2886
2887         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2888         tremolo beams.
2889
2890 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2891         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2892         used by music streams.
2893
2894         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2895         lily/stream-event.cc, lily/stream-event-scheme.cc,
2896         lily/listener.cc, lily/scheme-listener.cc,
2897         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2898         lily/include/stream-event.hh, lily/include/listener.hh,
2899         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2900         Created data structures for music streams.
2901         
2902 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2903
2904         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2905         construction of a beam. 
2906         (print): rewrite. 
2907
2908         * flower/include/std-vector.hh (default_compare): use only one comparison.
2909
2910         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2911         (note-by-number): further attachment fixes.
2912
2913         * scm/lily-library.scm (ordered-cons): new function.
2914         (interval-index): new function
2915
2916         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2917
2918         * lily/note-head.cc (get_stem_attachment): new function.
2919
2920         * scm/define-markup-commands.scm (note-by-number): read 'style
2921         property. 
2922
2923         * input/regression/markup-note.ly: show note-head style option.
2924
2925         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2926         triangle head.
2927
2928 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2929
2930         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2931
2932         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2933
2934         * lily/include/constrained-breaking.hh: GCC 4 fix.
2935
2936 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2937
2938         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2939         Replace it with functions get_line_forces and get_line_configuration.
2940         (class Simple_spacer): Make data private.
2941         Rewrite compression algorithm to be faster and simpler.
2942
2943         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2944         * lily/gourlay-breaking.cc (solve):
2945         * lily/constrained_breaking.cc (space_line):
2946         Change it to the new simple-spacer code.
2947
2948         * lily/paper-score.cc (get_paper_systems):
2949         (Paper_score):
2950         (process):
2951         Delay breaking the systems until they are requested.
2952         (find_break_indices):
2953         Use vsize for indices.
2954         (calc_breaking):
2955         Move the "Calculating line breaks" message here.
2956
2957         * lily/system.cc (pre_processing):
2958         Move the "Calculating line breaks" message away from here.
2959         (break_into_pieces):
2960         Allow multiple calls to this function in sequence (with touching-but-
2961         not-overlapping breakpoints).
2962
2963         * lily/constrained-breaking.cc:
2964         Replace most of the get_XXXX functions with get_line_details.
2965         Only calculate the force for each line. Calculate configurations only
2966         for the lines we will actually use.
2967         Replace cols_ with lines_.
2968
2969 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2970
2971         * mf/GNUmakefile (depth): remove FC_FIND.
2972
2973         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2974
2975         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2976
2977         * scm/framework-ps.scm (write-preamble): new function.
2978         (write-preamble): load mac fonts via fondu, even if gs-font-load
2979         is set.
2980
2981 2006-05-03  Werner Lemberg  <wl@gnu.org>
2982
2983         * mf/GNUmakefile (FC_FIND): Fix typo.
2984
2985 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2986
2987         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2988
2989 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2990
2991         * stepmake/aclocal.m4: run python-config for crosscompiling
2992         flags. 
2993
2994         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2995         -f png for HTML, TEXINFO formats. 
2996
2997         * input/tutorial/lbook-html-test.html: new file.
2998
2999         * lily/include/tie-formatting-problem.hh (class
3000         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3001         [column, direction]. This fixes laissez vibrer ties.
3002  
3003         * flower/include/tuple.hh (struct Tuple2): new file.
3004
3005         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3006         $(FCMATCH), only if $(NCSB_DIR) not set. 
3007
3008         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3009
3010         * config.make.in (DOCUMENTATION): set FCMATCH.  
3011
3012         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3013
3014 2006-05-03  Graham Percival  <gpermus@gmail.com>
3015
3016         * Documentation/user/ various: final round of reorg.
3017
3018         * Documentation/user/instrument-notation.itely: some more
3019         fixes from Eduardo, thanks!
3020
3021 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3022
3023         * VERSION (PACKAGE_NAME): release 2.9.3
3024
3025         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3026
3027         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3028
3029 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3030
3031         * scm/define-grob-properties.scm (all-user-grob-properties):
3032         Correct typo, thanks to Eduardo.
3033
3034 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3035
3036         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3037
3038         * buildscripts/lilypond-words.py (F): indent fix.
3039
3040         * input/regression/tie-arpeggio-collision.ly: new file.
3041
3042         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3043         function: store outlines per column rank.
3044
3045         * lily/include/tie-configuration.hh (class Tie_configuration): add
3046         column_ranks_ to specification and configuration, to distinguish
3047         between ties for different heads in arpegiated chords.
3048
3049         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3050
3051         * *.py: more 4 space indents.
3052
3053         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3054
3055 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3056
3057         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3058
3059 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3060
3061         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3062
3063         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3064
3065         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3066
3067 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3068
3069         * python/convertrules.py (conv): indent 4 for python files.
3070
3071 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3072
3073         * Documentation/user/changing-defaults.itely (Creating contexts):
3074         Clarify \new semantics.
3075
3076 2006-04-28  Graham Percival  <gpermus@gmail.com>
3077
3078         * Documentation/user/ various: major new sections in the
3079         Learning manual, slight reorg elsewhere.
3080
3081 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3082
3083         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3084
3085         * scm/framework-ps.scm (output-framework): remove PageMedia
3086
3087 2006-04-27  Graham Percival  <gpermus@gmail.com>
3088
3089         * Documentation/user/ tweaks.itely, working.itely: new
3090         files, being more advanced "learning manual" chapters.
3091
3092         * Documentation/user/ tutorial, putting, lilypond: reorg.
3093
3094 2006-04-26  Graham Percival  <gpermus@gmail.com>
3095
3096         * input/regression/lyric-combine-polyphonic.ly: fixed test
3097         (no more "can't find context `one'" error).
3098
3099 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3100
3101         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3102
3103         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3104         
3105 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3106
3107         * lily/relocate.cc (read_relocation_dir): new function.
3108
3109 2006-04-26  Graham Percival  <gpermus@gmail.com>
3110
3111         * Documentation/user/instrument-notation.itely: a few more fixes
3112         from Eduardo, thanks!
3113
3114         * Documentation/user/README.txt: new file; contains info on
3115         style that used to be in lilypond.tely.
3116
3117         * Documentation/user/ various: first round of doc reorg.
3118
3119         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3120         graphic; this probably causes problems on some pdf
3121         viewers, notably Adobe Acrobat.
3122
3123 2006-04-24  Graham Percival  <gpermus@gmail.com>
3124
3125         * Documentation/user/instrument-notation.itely: many alterations
3126         to Vocal music, from Eduardo Viera.
3127
3128 2006-04-23  Graham Percival  <gpermus@gmail.com>
3129
3130         * Documentation/user/instrument-notation.itely: fix \new
3131         instead of \context problem.
3132
3133 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3134
3135         * lily/relocate.cc (expand_environment_variables): new function.
3136         (read_line): id.
3137         (read_relocation_file): id.
3138
3139         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3140
3141 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3142
3143         * ly/engraver-init.ly: remove old comments from TabVoice
3144
3145 2006-04-20  Graham Percival  <gpermus@gmail.com>
3146
3147         * Documentation/user/instrument-notation.itely: added Erlend's
3148         latest doc patch, thanks!
3149
3150 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3151
3152         * lily/include/slur.hh:
3153         * lily/slur.cc:
3154         * lily/phrasing-slur-engraver.cc:
3155         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3156         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3157         Slur_engraver:: and putting it in
3158         Slur::auxiliary_acknowledge_extra_object ().
3159
3160         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3161
3162         * lily/note-collision.cc: fix a comment
3163
3164 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3165
3166         * stepmake/bin/add-html-footer.py: fix footer position in
3167         generated html files: before </body> and </html> tags.
3168
3169 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3170
3171         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3172         Earlier successive `make' commands finally compiled ok.
3173
3174         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3175
3176 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3177
3178         * lily/include/stem-tremolo.hh:
3179         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3180         callers.
3181
3182         * lily/lookup.cc:
3183         * lily/include/lookup.hh: add rotated_box ()
3184
3185 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3186
3187         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3188         been generated. Fixes "can't get `--help'" bug after make clean.
3189
3190         * THANKS: alphabetize contributors.
3191
3192 2006-04-17  Graham Percival  <gpermus@gmail.com>
3193
3194         * Documentation/user/instrument-notation.itely: added Erlend's
3195         tabs and banjo doc patch.  Thanks!
3196
3197 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3198
3199         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3200
3201         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3202
3203         * scm/output-lib.scm: add some more predefined string tunings.
3204
3205         * Documentation/user/instrument-notation.itely: and doc them.
3206
3207 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3208
3209         * ly/engraver.ly: Remove obsolete comments.
3210
3211         * ly/gregorian-init.ly: Define default layout block.
3212
3213         * input/puer-fragment.ly: Updated and extended.
3214
3215 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3216
3217         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3218         pdf conversion behaviour.
3219
3220         * flower/file-name.cc (dir_name)
3221         (get_working_directory): Move from relocate.cc.
3222
3223         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3224         
3225         * lily/relocate.cc: Encapsulate sys/stat.h in
3226         HAVE_STAT_H.
3227
3228 2006-04-14  Graham Percival  <gpermus@gmail.com>
3229
3230         * Documentation/user/ various: small updates from Cameron
3231         and Juergen, thanks!
3232
3233         * Documentation/user/ various: small updates of my own.
3234
3235         * THANKS: 2.7 -> 2.8.
3236
3237 2006-04-11  Graham Percival  <gpermus@gmail.com>
3238
3239         * scm/define-context-properties.scm: typo.
3240
3241         * Documentation/user/ : many more small updates.
3242
3243 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3244
3245         * scm/define-music-types.scm: disposed "docme".
3246
3247 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3248
3249         * lily/hairpin.cc: make niente circles a bit smaller.
3250
3251 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3252
3253         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3254         get-pfa and get-*-fonts targets.
3255
3256 2006-04-10  Graham Percival  <gpermus@gmail.com>
3257
3258         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3259         music-glossary, programming-interface: more minor fixes
3260         from mailist.
3261
3262         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3263
3264         * scm/define-context-properties.scm: another old \property update.
3265         This time tested for compiling!
3266
3267 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3268
3269         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3270
3271 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3272
3273         * scm/define-context-properties.scm (all-user-translation-properties): 
3274         * Documentation/user/global.itely (Page formatting): Compile fix.
3275
3276 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3277
3278         * Documentation/user/advanced-notation.itely (Polymetric
3279         notation): Update the example to use the "+" symbol and add link
3280         to input/test/compound-time.ly.
3281
3282 2006-04-08  Graham Percival  <gpermus@gmail.com>
3283
3284         * scm/define-grob-properties.scm: clarify docs for #'direction.
3285
3286         * scm/define-context-properties.scm: update old \property override.
3287
3288         * Documentation/user/ advanced-notation, global, lilypond-book:
3289         more minor doc updates.
3290
3291 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3292
3293         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3294
3295         * scm/backend-library.scm (search-gs): oops.
3296
3297 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3298
3299         * scripts/lilypond-book.py (output): use base, not filename for href.
3300
3301         * scm/backend-library.scm: only look for gs.
3302
3303         * scripts/lilypond-book.py (output): fix printfilename.
3304
3305         * lily/parser.yy (music_function_musicless_prefix): fold together
3306         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3307
3308         * lily/slur.cc (print): only set font-size if not set yet.
3309
3310         * lily/slur-configuration.cc (add_score): improved layout of debug
3311         scoring output.
3312
3313 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3314
3315         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3316         (draw_circle): Hopefully fixed regression.
3317         Improved documentation for several procedures.
3318         
3319 2006-03-04  Werner Lemberg  <wl@gnu.org>
3320
3321         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3322
3323 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3324
3325         * scripts/musicxml2ly.py (bindir): add dynamic
3326         relocation. 
3327
3328 2006-04-04  Graham Percival  <gpermus@gmail.com>
3329
3330         * Documentation/user/ basic-notation, advanced-notation, putting,
3331         instrument-notation, invoking, lilypond, THANKS: another ream of small
3332         fixes from the Doc Helpers.
3333
3334 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3335
3336         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3337
3338         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3339
3340         * Cleaned up interfaces between PostScript and Scheme, and moved
3341         computations from PostScript to Scheme:
3342
3343         * music-drawing-routines.ps
3344         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3345         with stroke_and_fill throughout.
3346         (euclidean_length, print_letter, draw_box): Deleted unused
3347         procedures.  If someone needs draw_box, implement it using
3348         draw_round_box; don't duplicate code.
3349         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3350         Refactored/cleaned up interfaces.
3351         (mark_URI): Moved.
3352
3353         * output-ps.scm: reordered arguments to PostScript functions to
3354         match new interfaces
3355         (glyph-string): Rewrote glyph-string.
3356         (grob-cause): Replaced string-append with format.
3357         (repeat-slash): Rewrote to do computation here.
3358         (round-filled-box): Rewrote to do computation here.
3359
3360 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3361
3362         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3363
3364         * stepmake/stepmake/toplevel- targets.make: print help info about
3365         cvs-clean
3366
3367 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3368
3369         * input/regression/hairpin-circled.ly: new file
3370
3371 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3372
3373         * lily/hairpin.cc (print): add support for circled tip
3374
3375         * scm/define-grob-properties.scm: add circled-tip parameter
3376
3377         * scm/define-grobs.scm: init circled-tip to false
3378         
3379 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3380
3381         * scm/music-functions.scm (quote-substitute): set
3382         iterators-ctor. 
3383
3384 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3385
3386         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3387         BSTINPUTS. 
3388
3389         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3390
3391         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3392
3393 2006-03-31  David Feuer  <david.feuer@gmail.com>
3394         
3395         * scm/framework-ps.scm:
3396         
3397         * scm/output-ps.scm: glyph-string now produces smaller, more
3398         readable, and probably faster PostScript.  Several findfont
3399         scalefont setfont instances changed to selectfont
3400         Hacked-up string-appends changed to formats.
3401
3402         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3403         
3404 2006-03-30  Graham Percival  <gpermus@gmail.com>
3405
3406         * scm/lily-library.scm: make "no version" warning message more polite.
3407
3408         * lily/music.cc: add double quotes to failed octave check.
3409
3410         * Documentation/user/ advanced-notation, changing-defaults,
3411         instrument-notation, invoking, music-glossary: whole bunch of minor
3412         fixes from mailist.
3413
3414 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3415
3416         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3417         $(buildscriptdir) iso. depth.
3418
3419         * VERSION (PACKAGE_NAME): release 2.9.1
3420
3421 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3422
3423         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3424
3425         * VERSION (PATCH_LEVEL): bump version number.
3426
3427         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3428         scm_from_uint32 ()
3429
3430         * lily/pango-font.cc (pango_item_string_stencil): use
3431         scm_from_uint32 ()
3432
3433         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3434         $(outdir)/emmentaler-%.svg): remove canary.
3435
3436         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3437         glyphnames if we have a ttf font.
3438
3439 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3440
3441         * Documentation/user/advanced-notation.itely (Font selection):
3442         Corrected reference to the font-family-override.ly example.
3443
3444 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3445         
3446         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3447         stem-tremolo object in the stem (or else the stem might not be
3448         long enough).
3449
3450 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3451
3452         * lily/ttf.cc (print_trailer): only print existing glyphs.
3453
3454 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3455
3456         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3457         position the tremolo based on the position of the notehead.
3458
3459         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3460         notes and update the texidoc line with the new positioning rules.
3461         
3462 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3463
3464         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3465
3466         * scripts/lilypond-book.py (Module): set default for linewidth if
3467         preamble not found.
3468
3469 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3470
3471         * VERSION (PACKAGE_NAME): release 2.9.0.
3472
3473         * input/regression/stem-tremolo-position.ly: new file.
3474
3475         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3476
3477 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3478
3479         * lily/stem-tremolo.cc (print): position
3480         the tremolo depending only on the end of the stem
3481         and not on the notehead
3482         (raw_stencil): center, on the middle staff line, the
3483         flag that is closest to the end of the stem (previously
3484         the bottom flag)
3485         (calc_width): add this callback to shorten a tremolo when
3486         it is beamed or it is stemup with a flag
3487         (style): add this callback to make a tremolo rectangular when
3488         it is beamed or it is stemup with a flag
3489         (rotated_box): this is like Lookup::beam but makes a rotated
3490         rectangle instead of a parallelogram
3491
3492         * lily/stem.cc (calc_stem_info): make sure the stem
3493         is long enough to fit the tremolo
3494         (calc-length): reduce the length of tremolo stems since the
3495         tremolo code is now capable of better positioning
3496
3497         * scm/define-grobs.scm: make calc_width the default beam-width
3498         callback for stem-tremolo and add the style callback
3499                 
3500 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3501
3502         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3503         case. 
3504
3505 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3506
3507         * lily/ttf.cc (make_index_to_charcode_map): restore old
3508         cmap. 
3509
3510 2006-03-28  Werner Lemberg  <wl@gnu.org>
3511
3512         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3513
3514 2006-03-28  Graham Percival  <gpermus@gmail.com>
3515
3516         * THANKS: update for 2.9, add section for Documentation helpers.
3517
3518         * Documentation/topdocs/NEWS.tely: compile fix.
3519
3520         * Documentation/user/ basic-notation, global, advanced-notation,
3521         examples.itely: minor fixes from mailist.
3522
3523 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3524
3525         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3526         note heads. 
3527
3528         * lily/ttf.cc (print_trailer): use it.
3529
3530         * lily/pango-font.cc (get_unicode_name): new function.
3531
3532         * lily/ttf.cc (make_index_to_charcode_map): move function from
3533         open-type-font.cc
3534         (print_trailer): substitute uniXXXX name if applicable. 
3535
3536         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3537         (pango_item_string_stencil): use it to generate uniXXXX names.
3538
3539         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3540         note heads, for uniform widths in shape note output.
3541         (overdone_heads): hmm. remove them again.
3542
3543         * scripts/lilypond-book.py (output): add links to filenames.
3544
3545         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3546
3547         * lily/note-collision.cc (get_clash_groups): only consider when
3548         Note_column::dir <> CENTER. 
3549
3550         * scripts/lilypond-book.py (get_option_parser): init output_name
3551         to ''. 
3552
3553 2006-03-24  Graham Percival  <gpermus@gmail.com>
3554
3555         * Documentation/topdocs/NEWS.tely: add @end itemize
3556
3557         * Documentation/user/ global, advanced-notation: minor
3558         stuff from mailist.
3559
3560 2006-03-23  Graham Percival  <gpermus@gmail.com>
3561
3562         * Documentation/user/ lilypond.tely, music-glossary,
3563         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3564
3565 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3566
3567         * mf/GNUmakefile: don't install .enc files.
3568
3569         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3570
3571         * VERSION (PATCH_LEVEL): bump to 2.9.0
3572
3573 2006-03-22  Graham Percival  <gpermus@gmail.com>
3574
3575         * Documentation/user/advanced-notation.itely: minor fixes
3576         from mailist.
3577
3578 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3579
3580         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3581
3582         * branch lilypond_2_8
3583
3584 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3585
3586         * scripts/lilypond-book.py (samefile): new function, for windoze
3587         compatibility.
3588
3589 2006-03-21  Graham Percival  <gpermus@gmail.com>
3590
3591         * ly/engraver-init.ly: add info about StaffGroup.
3592
3593 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3594
3595         * input/regression/stem-direction-context.ly: idem.
3596
3597         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3598
3599         * THANKS: add Mats.
3600
3601         * input/regression/page-layout-twopass.ly: comment out \markup so
3602         tweak-file is left.
3603
3604         * lily/instrument-name-engraver.cc (finalize): add to instrument
3605         name global System. This also fixes chopped instrument names, but
3606         doesn't crash when there are slurs/beams.
3607
3608         * lily/slur-configuration.cc (add_score): disallow negative slur
3609         scores.
3610         
3611 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3612
3613         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3614
3615         * lily/instrument-name-engraver.cc (process_music): kludge: add
3616         InstrumentName spanner to axis group of left bound. Fixes chopped
3617         off instrument names in EPS images.
3618
3619         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3620
3621         * scripts/abc2ly.py (option_parser): update to 2.7.40
3622
3623 2006-03-20  Graham Percival  <gpermus@gmail.com>
3624
3625         * THANKS: move small doc contributors to SUGGESTIONS.
3626
3627         * Documentation/user/ basic-notation, advanced-notation,
3628         global: small changes from mailist.
3629
3630 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3631
3632         * Documentation/user/advanced-notation.itely (Text marks): update
3633         for new rehearsalMarkAlignSymbol convention.
3634
3635         * VERSION (PATCH_LEVEL): bump version.
3636
3637         * input/test/instrument-name-align.ly: new file.
3638
3639         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3640
3641         * input/test/instrument-name-align.ly: new file. Document how to
3642         align instrument names.
3643
3644         * lily/mark-engraver.cc: remove properties.
3645
3646         * scm/define-context-properties.scm
3647         (all-user-translation-properties): remove align symbol properties
3648         for barnumber/reh. mark.
3649
3650         * lily/break-align-interface.cc (self_align_callback): new
3651         interface, new function. Look at complete alignment. This handles
3652         tunable break alignments in case break-align-symbols are missing.
3653
3654         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3655
3656         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3657
3658         * python/convertrules.py (conv): mark/bar number alignment rule.
3659
3660         * lily/break-align-interface.cc (calc_positioning_done): also
3661         store offset from last visible break-alignment to its
3662         neighbor. This makes alignment on non-visible objects more reliable.
3663
3664         * po/lilypond.pot (Module): ran po-replace.
3665
3666         * input/regression/tie-single-manual.ly (Module): new file.
3667
3668         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3669         look at has_manual_position_.
3670         (from_ties): set has_manual_position_ if tie has staff-position set.
3671
3672         * lily/tuplet-bracket.cc (calc_positions): idem.
3673
3674         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3675         doesn't span time.
3676
3677 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3678
3679         * scm/define-markup-commands.scm (smallCaps): new markup command
3680         for turning a text to small caps using smaller font size and upper
3681         casing.
3682
3683 2006-03-17  Graham Percival  <gpermus@gmail.com>
3684
3685         * Documentation/user/ examples, instrument-notation,
3686         advnaced-notation: minor fixes from mailist.
3687
3688 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3689
3690         * Documentation/user/tutorial.itely (First steps): change example
3691         to verbatim.  
3692
3693 2006-03-17  Graham Percival  <gpermus@gmail.com>
3694
3695         * Documentation/user/ examples, advanced: minor changes from mailist.
3696
3697         * THANKS: add Geoff Horton, for documentation stuff.
3698
3699 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3700
3701         * python/lilylib.py (system): revert have_select kludge.
3702
3703         * Documentation/user/tutorial.itely (Commenting input files):
3704         update version numbers in doc. 
3705
3706         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3707         bound-padding to multi-measure-interface
3708
3709 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3710
3711         * input/test/engraver-example.ily: update version number.
3712
3713         * VERSION (PACKAGE_NAME): release 2.7.39
3714
3715         * lily/note-spacing.cc (get_spacing): heighten threshold where
3716         accidentals/arpeggios influence previous spacing fully.
3717
3718         * lily/rest.cc (y_offset_callback): only use direction if
3719         staff-position wasn't set before.
3720
3721         * lily/bar-number-engraver.cc: add support for
3722         barNumberAlignSymbol. 
3723         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3724
3725         * lily/pointer-group-interface.cc (set_ordered): new function. 
3726         (add_unordered_grob): new function.
3727
3728         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3729         to ordered, unless the opposite has been proved.  This fixes
3730         random reordering of large object groups across linebreaks,
3731         eg. beams.
3732
3733         * lily/main.cc (do_chroot_jail): printf format fix.
3734
3735         * lily/tie-formatting-problem.cc (generate_configuration):
3736         multiply y-shift for dot with direction.
3737  
3738         * scm/define-markup-commands.scm (note-by-number): put (magstep
3739         size) in y-attach too.
3740
3741         * Documentation/topdocs/NEWS.tely (Top): show override.
3742
3743         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3744         direction for stems.
3745         
3746 2006-03-15  Graham Percival  <gpermus@gmail.com>
3747
3748         * Documentation/user/ changing-defaults, global: minor
3749         fixes from mailist.
3750
3751 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3752
3753         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3754
3755         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3756         breakable items after uniformly stretched notes.
3757
3758         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3759         outline with outer edge of note heads. This prevents infinity
3760         problems with tied whole notes.
3761
3762         * scripts/lilypond-book.py (do_file): use os.popen
3763
3764         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3765
3766 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3767
3768         * Documentation/user/invoking.itely: Add ragged-right to bug report
3769         guidelines.
3770
3771 2006-03-14  Graham Percival  <gpermus@gmail.com>
3772
3773         * Documentation/user/global.itely: small fix from mailist.
3774
3775 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3776
3777         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3778         file descriptor returned by tempfile.mkstemp() when writing
3779         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3780         on mingw.
3781
3782 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3783
3784         * po/fi.po: newline bugfix.
3785
3786 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3787
3788         * scm/paper.scm (paper-alist): Rounding fixes.
3789
3790 2006-03-13  Graham Percival  <gpermus@gmail.com>
3791
3792         * Documentation/user/ changing-defaults, instrument-notation,
3793         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3794
3795 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3796
3797         * po/fi.po: update.
3798
3799 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3800
3801         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3802         mailto: to http:// 
3803
3804         * python/lilylib.py (print_environment): move ps_page_count to
3805         lilypond-book.py
3806
3807 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3808
3809         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3810
3811         * scm/framework-ps.scm (embed-document): new function. Use to
3812         embed PFA files.
3813
3814         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3815
3816 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3817
3818         * Documentation/user/instrument-notation.itely (Setting simple
3819         songs): Added \book{...} around the full example, so the separate
3820         markups are included in the printed example. 
3821
3822 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3823
3824         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3825         tmphandle.
3826
3827         * python/lilylib.py (system): rewrite system() using
3828         subprocess. Remove >& redirection trickery.
3829
3830 2006-03-11  Graham Percival  <gpermus@gmail.com>
3831
3832         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3833         notation-appendices.itely: minor fixes from mailist.
3834
3835 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3836
3837         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3838         unsplit man also needs images.
3839
3840         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3841
3842         * VERSION (PACKAGE_NAME): 2.7.38 released.
3843
3844 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3845
3846         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3847         log in output dir.
3848
3849 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3850
3851         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3852         respects the Score.skipTypesetting property.
3853         
3854 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3855
3856         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3857         Prolog. No %%EOF after CFF file.
3858
3859 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3860         
3861         * lily/constrained-breaking.cc (get_max_systems): used to return a
3862         much too big value
3863         (combine_demerits): use pointers to reduce copying data
3864         (calc_subproblem): idem
3865         (get_page_penalty): add page turn penalties
3866         
3867 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3868
3869         * Documentation/user/invoking.itely (Invoking lilypond): better
3870         explanation of -e usage.
3871
3872         * lily/main.cc (main_with_guile): don't append to
3873         init_scheme_code_string
3874
3875         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3876
3877         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3878
3879         * scripts/convert-ly.py (do_options): don't print help for
3880         --show-rules rule.
3881
3882         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3883         @code and @example. Update from texinfo.tex from CVS.
3884
3885 2006-03-08  Graham Percival  <gpermus@gmail.com>
3886
3887         * Documentation/user/scheme-tutorial.itely: clarifies distances
3888         measured in staff-spaces.
3889
3890 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3891
3892         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3893         consider[k] is true.
3894
3895         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3896
3897         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3898         consider columns that have originals.  Unifies spacing for mm
3899         rests around line breaks.
3900
3901         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3902         (set_text_rods): idem.
3903         (calculate_spacing_rods): new function: share code between
3904         set_text_rods and set_spacing_rods.
3905         (set_text_rods): take extents of bounds into account.  
3906
3907 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3908
3909         * Documentation/user/basic-notation.itely (Writing music in
3910         parallel): don't use relative.
3911
3912 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3913
3914         * ly/music-functions-init.ly (Module): add shiftDurations
3915
3916         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3917
3918         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3919
3920         * ly/engraver-init.ly: init vocalName to nil.
3921
3922 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3923
3924         * scm/music-functions.scm (music->make-music): bugfix,
3925         KeyChangeEvents are now handled correctly.
3926
3927         * scripts/lilypond-book.py: Add --debug option.
3928
3929 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3930
3931         * python/lilylib.py: add tempfile.
3932
3933 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3934
3935         * VERSION (PACKAGE_NAME): release 2.7.37
3936
3937         * python/lilylib.py (ps_page_count): remove make_ps_images().
3938         (ps_page_count): remove mkdir_p
3939         (system): remove cleanup_temp.
3940         (exit): remove lilypond_version_(check)
3941         (error_log): remove pseudo_filter_p
3942         remove read_pipe
3943         remove cp_to_dir
3944         remove identify
3945
3946         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3947         use __main__
3948
3949         * lily/accidental-engraver.cc (make_standard_accidental): only add
3950         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3951
3952         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3953         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3954         Make incompatibilities.
3955
3956         * scm/output-ps.scm (grob-cause): replace backslashes by /
3957         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3958
3959 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3960
3961         * cygwin/GNUmakefile: Install fixes.
3962
3963         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3964
3965         * lily/note-head.cc (head::get_balltype): Compile fix.
3966
3967         * flower/file-name.cc (dos_to_posix): Flower string fix.
3968
3969 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3970
3971         * python/lilylib.py: pychecker cleanups.
3972
3973         * scripts/lilypond-book.py
3974         (Lilypond_snippet.output_print_filename): pychecker cleanups
3975
3976         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3977
3978         * python/lilylib.py (underscore): remove identify() , warranty()
3979
3980         * ps/music-drawing-routines.ps: change Border routine for GSView
3981         compatibility.
3982
3983         * lily/stem.cc (height): use quantize-positions.  This triggers
3984         set_stem_lengths, so scripts on beamed stems are handled correctly.
3985
3986         * lily/side-position-interface.cc (aligned_side): check if edges
3987         of script are inside staff. Fixes accent of edge of the staff.
3988
3989         * input/regression/staccato-pos.ly: more examples.
3990
3991         * stepmake/aclocal.m4 (depth): fix bashism.
3992
3993         * lily/lyric-combine-music-iterator.cc: move from
3994         new-lyric-combine-iterator.cc
3995         (process): add pending_grace_lyric_ member to delay lyrics on
3996         grace notes.
3997
3998         * lily/system-start-text.cc (print): suicide if we don't have any
3999         elements. Fixes hara kiri'd instrument names.
4000
4001         * scripts/mup2ly.py (Module): remove.
4002
4003 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4004
4005         * Documentation/user/global.itely (A single music expression):
4006         close @lilypond properly
4007
4008         * lily/volta-bracket.cc (modify_edge_height): change from
4009         after_line_breaking_callback. Suicide last bracket if appropriate.
4010  
4011         * python/lilylib.py: strip getopt support
4012
4013         * scripts/etf2ly.py (do_options): use optparse
4014
4015         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4016
4017         * scripts/abc2ly.py (voices): use optparse.
4018
4019         * stepmake/stepmake/generic-vars.make: new function absdir.
4020
4021         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4022
4023         * scripts/lilypond-book.py (find_file): use global_options for
4024         include path
4025
4026         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4027         entering C code.
4028
4029 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4030
4031         * python/lilylib.py (get_global_option): ughness for extracting
4032         global options from lilylib.
4033         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4034
4035         * scripts/lilypond-book.py (get_option_parser): use optparse for
4036         option handling.  Put options in global_options variable.
4037
4038 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4039
4040         * Documentation/index.html.in: clarify.
4041
4042 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4043
4044         * scm/layout-page-layout.scm (write-page-breaks): add a
4045         music-system-heights property to the page layout output.
4046
4047         * scm/page.scm (make-page-stencil): take footer into account when
4048         computing the 'space-left page property
4049         (annotate-space-left): take footer into account when annonating
4050         space left.
4051
4052 2006-02-28  Graham Percival  <gpermus@gmail.com>
4053
4054         * Documentation/user/ advanced-notation, global: more (final)
4055         docs for music expressions, removed special fermatas.
4056
4057 2006-02-27  Graham Percival  <gpermus@gmail.com>
4058
4059         * Documentation/user/ basic-notation, global: minor changes
4060         from mailist.
4061
4062 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4063
4064         * scm/framework-ps.scm:         
4065         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4066         layer for inf? and nan? from framework-ps to lily-library.
4067
4068 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4069
4070         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4071         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4072
4073         * buildscripts/substitute-encoding.py (Module): remove file.
4074
4075         * mf/GNUmakefile: more PFA strippage.
4076
4077         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4078
4079         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4080         generation
4081
4082         * scm/framework-ps.scm: remove font name munging.
4083
4084         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4085
4086 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4087
4088         * scm/markup.scm (define-markup-command): change
4089         def-markup-command to define-markup-command
4090
4091         * scm/music-functions.scm (define-music-function): change
4092         def-music-function to define-music-function.
4093
4094         * python/convertrules.py (conv): rules for def-music-function
4095         and def-markup-commands
4096
4097         * Documentation/user/programming-interface.itely,
4098         input/no-notation/display-lily-tests.ly,
4099         input/regression/lily-in-scheme.ly,
4100         input/regression/markup-user.ly,
4101         input/regression/music-function.ly, input/regression/tie-chord.ly,
4102         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4103         ly/gregorian-init.ly: use new macro names (define-music-function,
4104         define-markup-command).
4105
4106 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4107
4108         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4109         (output): add comments to lp-book latex output.
4110
4111         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4112         address.
4113
4114 2006-02-23  Graham Percival  <gpermus@gmail.com>
4115
4116         * Documentation/user/ tutorial, global: minor changes.
4117
4118 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4119
4120         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4121         blocks (for make 3.80)
4122
4123         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4124         \notemode so that user should not have to explicitely type it.
4125
4126         * scm/define-music-display-methods.scm: various
4127         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4128         constructs)
4129
4130         * input/no-notation/display-lily-tests.ly: new tests for
4131         \applyOutput and \applyContext
4132
4133 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4134
4135         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4136         changed it slightly so that the number of systems returned by
4137         solve () will be the same as the last value passed to resize
4138         (). I've also added more documentation, removed casts, fixed style
4139         problems and put in some recovery if constraints aren't satisfied."
4140
4141 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4142
4143         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4144         for emacs < 22 compatibility.
4145         (count-rexp): Use it.
4146         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4147         substring juggling (Milan Zamazal).
4148
4149 2006-02-23  Graham Percival  <gpermus@gmail.com>
4150
4151         * Documentation/user/ basic-notation, advanced-notation,
4152         global.itely, invoking.itely, tutorial,itely:
4153         minor fixes from mailist.
4154
4155         * scm/define-markup-commands.scm: improve docs of \filled-box.
4156
4157 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4158
4159         * Documentation/index.html.in: changes concern the previous release.
4160
4161         * input/regression/+.ly: cultivate typographical terminology.
4162
4163 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4164
4165         * scm/define-grob-interfaces.scm (parentheses-interface): add
4166         padding to parentheses-interface.
4167
4168         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4169         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4170
4171         * VERSION (PATCH_LEVEL): release 2.7.36
4172
4173         * lily/slur.cc: add avoid-slur (ugh.)
4174         
4175         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4176         intersection gets smaller. This fixes slurs over extreme points.
4177
4178         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4179         stems with neutral-direction set.
4180
4181         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4182
4183         * lily/open-type-font.cc (load_table): format error.
4184
4185         * lily/change-iterator.cc (process): format fix.
4186
4187         * flower/include/international.hh (_f): idem.
4188
4189         * flower/include/std-string.hh: add format printf attribute.
4190
4191         * scm/define-grobs.scm (all-grob-descriptions): height of all
4192         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4193
4194         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4195         ambitus lines.
4196
4197         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4198
4199 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4200
4201         * input/regression/: upgraded syntax for some files.
4202
4203         * THANKS: Add bughunters.
4204
4205 2006-02-22  Graham Percival  <gpermus@gmail.com>
4206
4207         * Documentation/user/ invoking.itely, advanced-notation.itely,
4208         global.itely: long-awaited "let's make chapter 10 not suck"
4209         update.  Rearrange chapter 10; now called "global issues",
4210         addresses file structure, etc.  Some info from other files
4211         moved into global.itely.
4212
4213 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4214
4215         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4216         catch trill-span-event notes.
4217
4218         * Documentation/user/examples.itely (Ancient notation templates): typo.
4219         (Jazz combo): typo.
4220
4221         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4222
4223         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4224
4225         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4226
4227         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4228
4229         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4230         froum Laissez_vibrer_engraver.
4231
4232         * ly/declarations-init.ly (repeatTie): add \repeatTie
4233
4234         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4235
4236         * scm/define-grob-properties.scm (all-user-grob-properties): add
4237         head-direction property.
4238
4239         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4240         from_lv_ties. Take head direction argument.
4241
4242         * lily/semi-tie-column.cc: rename from
4243         laissez-vibrer-tie-column.cc. Rename class too.
4244
4245         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4246         class too.
4247
4248         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4249
4250         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4251         0 case.
4252         (find_breaks): idem.
4253
4254 2006-02-21  Graham Percival  <gpermus@gmail.com>
4255
4256         * Documentation/user/advanced-notation.itely: fixed make-moment]
4257         example.
4258
4259         * Documentation/user/basic-notation.itely: more clarification to
4260         transpose.
4261
4262 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4263
4264         * lily/include/constrained-breaking.hh (class
4265         Constrained_breaking): new file.
4266
4267         * lily/constrained-breaking.cc (resize): new file.
4268
4269         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4270
4271         * Documentation/user/advanced-notation.itely (Clusters): insert
4272         end ignore too.
4273
4274         * lily/tie-column.cc (calc_positioning_done): support for
4275         tie-score debugging
4276
4277         * lily/tie-formatting-problem.cc
4278         (generate_extremal_tie_variations): factor out.
4279         (score_ties_configuration): annotate all tie 
4280         (print_ties_configuration): new routine.
4281         (generate_configuration): nudge extremal ties outside of the head
4282         Y extents.
4283         (score_ties_configuration): oops. convert to staff-space before
4284         determining position symmetry.
4285
4286 2006-02-20  Graham Percival  <gpermus@gmail.com>
4287
4288         * Documentation/user/*-notation.itely: misc minor editing,
4289         shifting doc sections around.
4290
4291         * Documentation/user/*-notation-itely, global.itely,
4292         changing-defaults.itely: added new stuff from NEWS.
4293
4294 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4295
4296         * po/fi.po: update.
4297
4298 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4299
4300         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4301         lilypond --verbose for lp-book.
4302
4303         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4304         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4305
4306         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4307         $(buildscript-dir) iso. absolute depth.
4308
4309         * buildscripts/genicon.py (dir): thinko.
4310
4311         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4312
4313 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4314
4315         * scm/output-lib.scm: swap darkcyan/darkyellow
4316
4317         * THANKS: Add bughunters.
4318
4319 2006-02-19  Graham Percival  <gpermus@gmail.com>
4320
4321         * Documentation/user/programming-interfaces.itely: fixed example.
4322
4323         * Documentation/user/instrument-notation.itely: fix @{ @}.
4324
4325         * scm/script.scm: add avoid-slur for \open.
4326
4327 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4328
4329         * lily/tie-formatting-problem.cc (score_configuration): use
4330         sliding score for min-length. 
4331
4332         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4333         spaghetti for icons.
4334
4335         * buildscripts/genicon.py (program_name): new file.
4336
4337         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4338         in outline too.  
4339         (generate_configuration): for small ties, also look for collisions
4340         at Y + DIR*h + DELTA_Y.
4341         (get_variations): consider variation for dot positions too.
4342
4343         * lily/side-position-interface.cc (aligned_side): take abs for
4344         quantized rounded position. Fixes tenuto below staff.
4345
4346         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4347         markers when necessary.
4348
4349         * lily/program-option.cc (internal_set_option): add
4350         strict_infinity_checking option.
4351
4352         * scm/output-lib.scm (cyan): swap yellow and cyan.
4353
4354 2006-02-19  Graham Percival  <gpermus@gmail.com>
4355
4356         * darwin.patch: trivial linenumber update.
4357
4358         * Documentation/user/ {various}: `\context foo = named' changed
4359         to `\new foo = "name"' in docs.
4360
4361 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4362
4363         * scm/stencil.scm (annotate-y-interval): use it.
4364
4365         * scm/lily-library.scm (interval-sane?): new function.
4366
4367         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4368         tfm_checksum stuff.
4369
4370         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4371         common refpoint.
4372
4373         * flower/include/std-vector.hh (iterof): add iterof macro.
4374
4375         * lily/enclosing-bracket.cc (width): new function.
4376
4377         * lily/align-interface.cc (align_elements_to_extents): reinstate
4378         warning.
4379
4380 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4381
4382         * Documentation/index.html.in: fix spelling: thankyous.
4383
4384 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4385
4386         * lily/lyric-hyphen.cc: typo.
4387
4388 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4389
4390         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4391         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4392         builds don't work. 
4393
4394         * VERSION: release 2.7.35
4395
4396         * lily/beam.cc (get_default_dir): oops. Take abs () for
4397         extremes[DOWN].
4398         (get_default_dir): use extreme position criterion only in absence
4399         of forced stem directions.
4400
4401         * VERSION (PATCH_LEVEL): bump VERSION.
4402
4403         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4404         dependencies. Necessary for -jX builds.  
4405
4406 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4407
4408         * lily/relocate.cc (setup_paths): Yet another const fix.
4409
4410 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4411
4412         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4413
4414         * lily/relocate.cc (setup_paths): oops.
4415
4416 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4417
4418         * Documentation/index.html.in: order links: html before PDF.
4419
4420 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4421
4422         * lily/tie-column-format.cc (Module): remove.
4423
4424         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4425
4426         * lily/text-spanner.cc (print): idem.
4427
4428         * lily/dynamic-text-spanner.cc (print): only print line if longer
4429         than dash-period.
4430
4431         * lily/auto-change-iterator.cc (change_to): formatting.
4432
4433         * lily/beam.cc (get_default_dir): take extreme note head as input
4434         for stem direction.
4435
4436         * lily/tie.cc (get_default_dir): only look directions for visible
4437         stems. 
4438
4439         * lily/side-position-interface.cc (aligned_side): oops. Don't
4440         mutiply with direction. This fixes quantized (staccato, tenuto)
4441         scripts below notes.
4442
4443         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4444         direction. Fixes c-lyrics-center-align.ly
4445
4446 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4447
4448         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4449         constructor.
4450
4451         * lily/std-string.cc:
4452         * lily/include/std-vector.hh (split_string): Move and rename from
4453         lily/include/misc.hh, lily/misc.cc.  Update callers.
4454
4455 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4456
4457         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4458
4459 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4460
4461         * flower/test-file.cc: New file.
4462
4463         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4464         libraries.
4465
4466         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4467
4468 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * flower/include/file-storage.hh: remove file.
4471
4472         * lily/include/midi-item.hh (class Midi_track): idem.
4473
4474         * lily/include/source.hh (class Sources): idem.
4475
4476         * lily/include/performance.hh (class Performance): use vector
4477         iso. Cons<>
4478
4479         * flower/include/cons.hh (class Cons): remove file.
4480
4481         * flower/include/flower-proto.hh: remove template cruft.
4482
4483         * lily/include/font-metric.hh: use size_t not vsize for indices.
4484
4485         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4486         from proto.
4487
4488         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4489
4490         * lily/include/paper-book.hh (class Paper_book):
4491         make get_system_specs() public.
4492
4493         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4494         the force=10000 case if we don't have a current-best. 
4495
4496         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4497         vsize 
4498
4499         * flower/include/flower-proto.hh: remove outdated templates.
4500
4501         * scm/page.scm: use annotate-spacing
4502
4503 2006-02-15  Graham Percival  <gpermus@gmail.com>
4504
4505         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4506
4507         * THANKS: moved Erlend Aasland to contributors.
4508
4509 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4510
4511         * config.hh.in: remove HAVE_PANGO_16
4512
4513         * lily/tuplet-bracket.cc (calc_positions): multiply with
4514         staff-space for beam case. This fixes tuplets+beams on scaled
4515         staves.
4516
4517         * config.hh.in: remove all Kpathsea related defines.
4518
4519         * lily/dot-column.cc (side_position): reach stem via dots->
4520         head->stem. Inspect all stems for dot collisions. 
4521
4522         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4523         stem handling.
4524
4525         * lily/bar-number-engraver.cc (process_music): document function
4526         of whichBar.
4527
4528         * lily/score.cc (default_rendering): add pscore, not systems
4529         themselves.
4530
4531         * lily/paper-book.cc (get_system_specs): separate generation of
4532         titles and systems.
4533
4534         * flower/include/std-vector.hh: don't include config.hh
4535
4536 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4537
4538         * flower/include/std-vector.hh: Better wrapper compatibility with
4539         std::vector.
4540
4541         * flower/include/flower-proto.hh: Remove cheap forward declaration
4542         attempts.
4543
4544         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4545
4546 2006-02-14  Graham Percival  <gpermus@gmail.com>
4547
4548         * Documentation/user/invoking.itely: add warning about command line.
4549
4550 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4551
4552         * lily/include/lily-proto.hh: add Prob, rm Page.
4553
4554         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4555
4556         * VERSION: release 2.7.34
4557
4558         * lily/relocate.cc (framework_relocation): show canary if
4559         GHOSTSCRIPT_VERSION undefined.
4560
4561         * GNUmakefile.in: remove $(VERSION) symlink.
4562
4563         * lily/relocate.cc (setup_paths): add + 
4564
4565 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4566
4567         * Documentation/index.html.in: specify sizes for all big HTML pages.
4568
4569 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4570
4571         * config.hh.in: remove @FRAMEWORKDIR@
4572
4573         * lily/system-start-text.cc (get_stencil): new file: separate out
4574         system-start-delimiter text support.
4575
4576         * input/**ly: replace \context with \new where appropriate.
4577         
4578         * THANKS: add Don.
4579
4580         * lily/slur-scoring.cc (get_base_attachments): use
4581         robust_relative_extent. This fixes problems with empty paper-columns. 
4582
4583 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4584
4585         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4586
4587         * scm/define-music-properties.scm (all-music-properties):
4588         create-new property.
4589
4590         * lily/context-specced-music-iterator.cc (construct_children):
4591         inspect 'create-new property iso. magical $uniqueContextId context
4592         id.
4593
4594         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4595
4596         * lily/context-key-manager.cc (Module): new file. Encapsulate
4597         object key generation.
4598
4599         * lily/include/context-key-manager.hh (Module): new file.
4600
4601 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4602
4603         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4604         names vertically
4605
4606         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4607         options.
4608         (reloc_b): excise --enable-framework-dir
4609
4610         * lily/relocate.cc (framework_relocation): use getenv
4611         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4612
4613 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4614
4615         * flower/include/std-string.hh: 
4616         * flower/include/std-vector.hh: Finish std:: conversion; move
4617         flower extensions from std:: namespace.  Update users.
4618
4619         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4620         their expansion to vector<*>.  Update users.
4621
4622 2006-02-10  Graham Percival  <gpermus@gmail.com>
4623
4624         * Documentation/user/invoking.itely: add example to File structure.
4625
4626         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4627         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4628
4629 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4630
4631         * ly/paper-defaults.ly: typo.
4632
4633         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4634         set_parent() for parentheses. This will make it show up in bbox
4635         calculations.
4636
4637         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4638         ly:grob-common* functions.
4639
4640         * lily/grob-scheme.cc (LY_DEFINE):
4641         ly:grob-common-refpoint-of-array: new function 
4642         ly:grob-common-refpoint: new function 
4643         ly:grob-relative-coordinate: new function 
4644
4645         * lily/instrument-name-engraver.cc (process_music): use
4646         Text_interface::is_markup(). This fixes \markup on instrument names.  
4647
4648         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4649         for ties and slurs.
4650
4651         * lily/slur.cc (print): idem.
4652
4653         * lily/tie.cc: add line-thickness for ties. 
4654
4655 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4656
4657         * scm/output-svg.scm: Document diversion from GNU coding standards
4658         as a workaround for a bug in Microsoft Internet Explorer.
4659
4660 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4661
4662         * lily/instrument-name-engraver.cc (process_music): use
4663         is_markup() iso. is_string()
4664
4665         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4666
4667         * lily/percent-repeat-engraver.cc (process_music): only look at
4668         main_part_ for % repeats.
4669
4670         * lily/stem-tremolo.cc (get_beam_translation): new function.
4671         (calc_slope): new function.
4672         (height): don't use real slope.
4673
4674 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4675
4676         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4677         new connect-to-neighbor, control-points and staff-padding
4678         properties to make ligature brackets showing up again.
4679
4680 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4681
4682         * VERSION: release 2.7.33
4683
4684         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4685         too many.
4686
4687         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4688         remove applyOutput example.
4689         (Objects connected to the input): document \tweak, \parenthesize
4690
4691         * lily/relocate.cc (prefix_relocation): allow "current"
4692         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4693         changing VERSION in a lily tree less painful.
4694
4695         * input/regression/parenthesize.ly: new file. 
4696
4697         * scm/output-lib.scm (parenthesize-element): new function.
4698
4699         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4700
4701         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4702
4703         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4704         cause: accidentals are caused by note heads, not note events. 
4705
4706 2006-02-08  Graham Percival  <gpermus@gmail.com>
4707
4708         * darwin.patch: small patch from Erlend, thanks!
4709
4710         * Documentation/user/basic-notation.itely: add stem-neutral example.
4711
4712         * Documentation/user/putting.itely: clarifications.
4713
4714 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4715
4716         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4717         note, add more guidelines to what should go into NEWS.
4718
4719         * input/sakura-sakura.ly: document how to override font.
4720
4721         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4722
4723 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4724
4725         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4726
4727 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4728
4729         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4730         convertrules.  Add explicit grouping, needed for python2.2.
4731
4732 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4733
4734         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4735
4736 2006-02-07  Graham Percival  <gpermus@gmail.com>
4737
4738         * Documentation/user/global.itely: fix line-width in (text) docs.
4739
4740         * Documentation/user/lilypond-book.itely: same.
4741
4742 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4743
4744         * VERSION (PACKAGE_NAME): release 2.7.32
4745
4746         * Documentation/topdocs/NEWS.tely (Top): document new variable
4747         naming.
4748
4749         * flower/include/array.icc (Message): remove file.
4750
4751         * flower/include/std-vector.hh: make sure vsize and VPOS are
4752         defined for binary_search_bounds().
4753
4754         * flower/std-string.cc (std): add to_string(long unsigned).
4755
4756         * configure.in (gui_b): excise std_string option.
4757         (gui_b): excise std_vector option.
4758
4759         * flower/string.cc (Module): excise flower array & string
4760
4761         * flower/include/std-string.hh: excise flower string.
4762
4763         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4764
4765         * python/convertrules.py (lilypond_version_re_str): require
4766         only numbers and dots in \version string.
4767
4768 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4769
4770         * lily/system-start-delimiter.cc (print): allow style = text too.
4771
4772         * lily/system-start-delimiter-engraver.cc
4773         (acknowledge_system_start_text): new function, also add add to
4774         support of system-start-text (instrument names). This fixes
4775         instrument names on piano staves.
4776
4777         * lily/instrument-name-engraver.cc: rewrite. Use
4778         system-start-delimiter approach. This save memory and cpu.
4779
4780         * scm/define-grobs.scm (all-grob-descriptions): remove
4781         instrument-name from break-alignment.
4782
4783         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4784
4785 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4786
4787         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4788         jobserver going.
4789
4790         * configure.in (std_vector): On by default.
4791
4792         * lily/include/font-metric.hh:
4793         * lily/include/tfm-reader.hh: 
4794         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4795         Update users.
4796
4797         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4798
4799 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4800
4801         * VERSION (PACKAGE_NAME): 2.7.31
4802
4803         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4804         EPS edge at 0, but take minimum with left-overshoot. This fixes
4805         cut off system start delims. 
4806
4807         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4808         hack: add to axis group if not added yet. This fixes hara kiri'd
4809         piano staves.
4810
4811         * lily/hara-kiri-group-spanner.cc
4812         (force_hara_kiri_in_y_parent_callback): fix signatures.
4813
4814         * lily/hairpin.cc (print): check next hairpin to see whether or
4815         not to be continuing.
4816
4817 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4818
4819         * Remove trailing whitespace from makefiles.
4820         
4821         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4822         for earlier gcc.
4823
4824         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4825
4826         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4827
4828         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4829
4830         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4831
4832         * configure.in: Use it.
4833
4834 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4835
4836         * scm/music-functions.scm (pitch-of-note): new function.
4837
4838         * ly/music-functions-init.ly: add \octave and \addquote
4839
4840         * lily/parser.yy (music_function_chord_body): softcode \octave.
4841         (lilypond_header): softcode \addquote
4842
4843 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4844
4845         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4846         array.hh, parray.hh at all.  Getting ready to flip the
4847         configure default.
4848
4849         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4850
4851         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4852         a bit.
4853
4854         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4855
4856 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4857
4858         * flower/include/array.hh: typo. 
4859
4860 2006-02-02  Graham Percival  <gpermus@gmail.com>
4861
4862         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4863
4864 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4865
4866         * flower/include/pqueue.hh: Derive from std::vector.
4867
4868         * flower/include/parray.hh: Conform to std::vector interface.
4869         Update users.
4870
4871 2006-02-02  Graham Percival  <gpermus@gmail.com>
4872
4873         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4874
4875 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4876
4877         * flower/file-path.cc (is_file): remove if 0 section.
4878
4879         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4880         selecting afii61352.
4881
4882 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4883
4884         * flower/include/std-vector.hh (boundary): Oops, reverse.
4885
4886         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4887         remove superfluous `d'.
4888
4889         * flower/include/std-vector.hh (boundary, top): Detach from class.
4890         Remove empty vector shell.
4891
4892         * flower/include/array.hh (reverse, swap): Detach from class.
4893         Update users.
4894         
4895         * flower/include/std-vector.hh
4896         * flower/include/array.hh (concat): Globally change to insert ().
4897
4898         
4899         * flower/include/std-vector.hh
4900         * flower/include/parray.hh
4901         * flower/include/array.hh (elem, elem_ref): Globally replace by
4902         at ().
4903
4904 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4905
4906         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4907
4908         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4909         anticipate on identifier substitutions.
4910
4911 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4912
4913         * flower/include/std-vector.hh (insert): Remove, replace by
4914         std::vector interface.  Update callers.
4915
4916         * flower/include/array.icc (insert): Change signature to
4917         match std::vector interface.
4918         
4919         * flower/include/array.icc (vector_sort): Bugfix.
4920
4921 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4922
4923         * lily/parser.yy (output_def_head_with_mode_switch): new
4924         production. Result: dashes and underscores may be used in the
4925         \paper block.
4926
4927         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4928
4929         * python/convertrules.py (conv): oops. One slash too much.
4930
4931 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4932
4933         * flower/include/std-vector.hh (sort): Remove, replace by
4934         ::vector_sort.  Update callers.
4935
4936         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4937         (sort): Bugfix.
4938
4939         * flower/test-std.cc (vector_sort): New test.
4940
4941 2006-02-01  Graham Percival  <gpermus@gmail.com>
4942
4943         * Documentation/user/putting.itely: fixes from Erik.
4944
4945 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4946
4947         * flower/test-std.cc: Add simple unit test for vector migration.
4948
4949         * stepmake/stepmake/test*: Unit test support.
4950
4951         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4952         update callers.
4953
4954         * flower/include/array.hh (begin, end): Add.
4955         (del, get): Remove.
4956
4957 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4958
4959         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4960         std::string not String. 
4961
4962         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4963         iso UINT_MAX.
4964
4965         * lily/prob.cc (Prob): copy type_ too.
4966
4967         * lily/lily-guile.cc (mangle_cxx_identifier): new
4968         function. Class_bla::foo_bar_[px] ->
4969         ly:class-bla::foo-bar[?!]. Changes throughout
4970
4971 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4972
4973         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4974
4975         * lily/beam.cc (calc_direction): take dir from visible stem in
4976         degenerate case.
4977
4978 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4979
4980         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4981         Fix -1, >=0 boundary checks for unsigned vsize.
4982
4983         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4984         loop for unsigned vsize.
4985
4986         * configure.in (--enable-std-vector): New option.
4987         (--enable-std-string): On by default.
4988
4989         * flower/include/std-vector.hh: New file.  Enable switch to
4990         std::vector, update client code.
4991
4992 2006-01-30  Graham Percival  <gpermus@gmail.com>
4993
4994         * scm/document-translation.scm: clarify "this context is also
4995         known as".  Thanks, Werner!
4996
4997         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4998
4999         * Documentation/user/invoking.itely: small fix from Don.
5000
5001 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5002
5003         * scm/lily.scm (define-scheme-options): rename option
5004         preview-include-book-title to book-title-preview
5005         (define-scheme-options): move force-eps-font-include (from paper
5006         block) to eps-font-include -d option.
5007
5008         * VERSION (PATCH_LEVEL): release 2.7.30
5009
5010         * input/bach-schenker.ly (staffPiano): new file.
5011
5012         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5013
5014         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5015         credits to Nicolas.
5016
5017         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5018
5019         * ps/lilyponddefs.ps: remove start-system, stop-system,
5020         start-page fluff. This saves putting { } code on the stack, fixing
5021         stack overflows when including EPS files.
5022
5023 2006-01-29  Graham Percival  <gpermus@gmail.com>
5024
5025         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5026
5027 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5028
5029         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5030
5031 2006-01-28  Graham Percival  <gpermus@gmail.com>
5032
5033         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5034
5035 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5036
5037         * input/mutopia/claop.py: Update.
5038
5039 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5040
5041         * input/regression/completion-heads.ly (texidoc): fix.
5042
5043         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5044
5045         * lily/tie-formatting-problem.cc
5046         (set_ties_config_standard_directions): use abs iso fabs for ints.
5047
5048         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5049
5050         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5051         little less than noteheight, to prevent overlaps in chords.
5052
5053         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5054         head, and fudge stem-attachment.
5055
5056         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5057
5058         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5059
5060 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5061
5062         * lily/main.cc (main): Debugging aid: catch exceptions.
5063
5064         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5065         output with std::string.
5066
5067 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5068
5069         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5070
5071 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5072
5073         * Fix -DSTRING_UTILS_INLINED.
5074
5075 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5076
5077         * VERSION (PATCH_LEVEL): release 2.7.29
5078
5079         * lily/relocate.cc (setup_paths): mingw uses std string too.
5080
5081         * lily/*.cc: various fixes for substr(ARG).
5082
5083         * lily/sustain-pedal.cc (print): 
5084
5085         * flower/file-name.cc (slashify): use std strings.
5086
5087         * flower/string-convert.cc: remove publib.h
5088
5089         * scm/define-markup-commands.scm (verbatim-file): new markup
5090         command \verbatim-file
5091
5092         * Documentation/topdocs/NEWS.tely: fixup URLs
5093
5094         * input/regression/alignment-vertical-manual-setting.ly (Module):
5095         new file.
5096
5097         * lily/align-interface.cc (align_elements_to_extents): overwrite
5098         translations with numbers in alignment-offsets from left bound
5099
5100         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5101         (page-translate-systems): new function: take into account Y-offset.
5102
5103         * Documentation/topdocs/NEWS.tely (Top): document new features.
5104
5105         * input/regression/page-layout-manual-position.ly (Module): new
5106         file.
5107
5108 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5109
5110         * flower/file-path.cc (path::parse_path): Oops.
5111
5112         * Finish std::string interface.  For now, use std:: marker
5113         throughout for easy s/r.
5114
5115 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5116
5117         * Documentation/user/putting.itely (Score is a single musical
5118         expression): typo.
5119         (Score is a single musical expression): more typos.
5120
5121         * scm/page.scm (annotate-space-left): thinko.
5122         (annotate-page): more thinkos.
5123
5124 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5125
5126         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5127         for different \score blocks separately.
5128         (post-process-pages): put write-page-layout into paper block.
5129
5130         * lily/output-def.cc (get_parser): new file.
5131
5132         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5133         file.
5134
5135         * lily/include/output-def.hh (class Output_def): add parser_ member.
5136
5137         * input/regression/page-layout-twopass.ly (Module): new file.
5138
5139         * scm/lily.scm: remove cpp hack.
5140
5141         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5142
5143 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5144
5145         * GNUmakefile.in (c-clean): New target.
5146
5147         * flower/include/std-string.hh: String/std::string compatibility:
5148         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5149         type.
5150
5151         * flower/rational.cc: 
5152         * flower/include/rational.hh: 
5153
5154         * flower/offset.cc: 
5155         * flower/include/offset.hh: 
5156
5157         * flower/interval.cc: 
5158         * flower/include/interval.hh: 
5159
5160         * flower/string-convert.cc: 
5161         * flower/include/string-convert.hh: Use std::string [interface].
5162         Update callers.
5163
5164 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5165
5166         * Documentation/index.html.in: clean up.
5167
5168 2006-01-25  Graham Percival  <gpermus@gmail.com>
5169
5170         * Documentation/user/putting.itely: another new untested doc section.
5171
5172 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5173
5174         * scm/layout-page-layout.scm (write-page-breaks): write
5175         \spacingTweaks #ALIST. Handle grace timing.
5176
5177         * scm/: more imports.
5178
5179         * scm/page.scm (make-page): add footer/header.
5180         (annotate-space-left): revise: only take page argument.
5181         (layout->page-init): new function.
5182
5183         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5184         version of the system/spacing/linebreak hack writing to the output
5185
5186         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5187         ly:make-prob.
5188
5189         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5190         ly:spanner-bound
5191
5192 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5193
5194         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5195
5196         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5197
5198         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5199         handling to page.scm
5200
5201         * lily/prob-scheme.cc (LY_DEFINE): new file.
5202         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5203
5204         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5205         prob functions.
5206
5207         * lily/music.cc (derived_mark): derive Music from Prob.
5208
5209         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5210
5211         * lily/prob.cc (Module): Implement Prob (Property Object), object
5212         with shared and r/w property alists.  
5213
5214         * lily/include/prob.hh (Module): new file. Declare Prob.
5215
5216         * flower/string.cc: remove is_empty().
5217
5218         * flower/include/string.hh (class String): remove String:: qualifier.
5219
5220         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5221         substitute appropriate functions.
5222
5223         * flower/include/string.hh (class String): remove to_str0 and
5224         is_empty(). S&R everywhere.
5225
5226 2006-01-23  Graham Percival  <gpermus@gmail.com>
5227
5228         * Documentation/user/basic-notation.itely: add hairpin
5229         after-linebreak tweak to commonprop.
5230
5231         * Documentation/user/putting.itely: added two new sections.
5232
5233 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5234
5235         * flower/international.cc: 
5236         * flower/include/international.hh: 
5237
5238         * flower/getopt-long.cc: 
5239         * flower/include/getopt-long.hh: Use std::string [interface].
5240         Update callers.
5241
5242         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5243
5244         * stepmake/stepmake/executable-rules.make: Add dependency on
5245         module libraries.
5246
5247 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5248
5249         * flower/file-path.cc: 
5250         * flower/include/file-path.hh: Use std::string [interface].
5251         Update callers.
5252
5253         * flower/direction.cc: 
5254         * flower/axis.cc: Unused.  Remove.
5255
5256         * configure.in (--enable-std-string): New option.
5257
5258         * flower/std-string.cc: 
5259         * flower/include/std-string.hh: New file.
5260
5261         * flower/file-name.cc[STD_STRING]:
5262         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5263
5264 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5265
5266         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5267
5268         * scm/define-markup-commands.scm (with-dimensions):
5269         with-dimensions markup command.
5270
5271         * input/test/font-table.ly: use it.
5272
5273         * lily/open-type-font.cc (glyph_list): new function.
5274
5275         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5276
5277         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5278
5279 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5280
5281         * ly/music-functions-init.ly (parallelMusic): new music function
5282         for parallel music entry.
5283
5284         * scm/define-music-properties.scm (all-music-properties): new
5285         'void music property
5286
5287         * scm/music-functions.scm (ly:music-message): make public, to be
5288         used in music function definitions
5289
5290         * scm/lily-library.scm (collect-music-for-book): discard music
5291         when the 'void property is set.
5292
5293 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5294
5295         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5296
5297         * mf/GNUmakefile: idem.
5298
5299         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5300
5301         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5302
5303         * Documentation/user/notation-appendices.itely (The Feta font):
5304         use it.
5305
5306         * input/test/font-table.ly: new file. Generate font table within lily.
5307
5308         * Documentation/user/notation-appendices.itely (The Feta font):
5309         use new font-table.ly file. 
5310
5311         * stepmake/stepmake/install-out-targets.make
5312         (local-install-outfiles): only create directory if
5313         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5314
5315 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5316
5317         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5318
5319         * VERSION (PACKAGE_NAME): release 2.7.28
5320
5321         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5322         the right font from a Mac dfont.
5323         (write-preamble): don't forget directory, only look at files.
5324
5325         This fixes problems with TTF files in dfonts that don't match
5326         their PostScript names.
5327          
5328         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5329         PS name from TTF font.
5330
5331         * input/regression/tie-manual.ly: document new feature.
5332
5333         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5334
5335         * VERSION (MY_PATCH_LEVEL): bump to .28
5336
5337         * Documentation/user/basic-notation.itely (Ties): add tie examples
5338         refs.
5339
5340         * lily/tie-formatting-problem.cc (score_ties_configuration):
5341         symmetry penalties for outer ties.
5342
5343 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5344
5345         * lily/tie-formatting-problem.cc (generate_configuration) 
5346         (set_manual_tie_configuration): skip non-pair manual
5347         tie-configuration, so you can set individual ties as
5348
5349           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5350
5351         * input/regression/tie-chord.ly: use generateTiePattern to
5352         simplify file.
5353
5354         * lily/tie-formatting-problem.cc (peak_around): new function.
5355         (score_configuration): use sliding criterion for staff line collisions. 
5356         (score_configuration): idem for dot collisions.
5357         (generate_configuration): use separate stem_gap for gap to stem.
5358
5359         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5360         separate penalty factors for x and y distance.
5361         (struct Tie_details): separate penalties for tip and center line collisions.
5362
5363 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5364
5365         * lily/tie-formatting-problem.cc (generate_configuration): make
5366         large ties avoid stafflines in the horizontal section.
5367         (score_configuration): use softcoded penalties
5368         (score_aptitude): idem.
5369
5370         * lily/tie-helper.cc (from_grob): softcode tie details
5371
5372         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5373
5374         * lily/staff-symbol-referencer.cc (on_line): rename from
5375         on_staffline 
5376
5377 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5378
5379         * ly/music-functions-init.ly: remove duplicate tag.
5380
5381         * lily/include/*.hh: GCC 4.1 fixes.
5382
5383 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5384
5385         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5386
5387         * scm/define-music-types.scm: fix bug in desc. string
5388         for OverrideProperty
5389
5390 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5391
5392         * scripts/lilypond-book.py: bugfix
5393
5394         * scm/define-music-types.scm: fix typos.
5395
5396 2006-01-14  Graham Percival  <gpermus@gmail.com>
5397
5398         * Documentation/user/ basic-notation.itely, global.itely,
5399         advanced-notation.itely, instrument-notation.itely: small
5400         additions (bugs and commonly tweaked properties).
5401
5402 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5403
5404         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5405         detection of mingw build.
5406         (MINGW_BUILD): opps.
5407
5408 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5409
5410         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5411         i686-mingw32.
5412
5413 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5414
5415         * scm/music-functions.scm (skip->rest): add skip->rest
5416
5417 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5418
5419         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5420         explicitly.
5421
5422         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5423         config dirs. Aids debugging. 
5424         (display_config): also display config files.
5425
5426 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5427
5428         * VERSION: release 2.7.27
5429
5430         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5431         for determining bar size.
5432
5433         * lily/staff-symbol.cc (print): place lines at distance line-positions
5434
5435         * scm/define-grob-properties.scm (all-user-grob-properties): add
5436         line-positions.
5437
5438         * lily/staff-symbol.cc (height): new function.
5439
5440         * input/regression/staff-line-positions.ly:  new file.
5441
5442 2006-01-06  Graham Percival  <gpermus@gmail.com>
5443
5444         * input/test/add-staccato.ly: remove reference to old file.
5445
5446 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5447
5448         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5449         lilypond binary too.
5450
5451 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5452
5453         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5454
5455 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5456
5457         * scripts/midi2ly.py: Bugfix: Declare datadir.
5458
5459         * make/ly-rules.make:
5460         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5461         that seems to be gone). Fixes make web.
5462
5463         * The grand 2005-2006 replace.
5464
5465         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5466
5467 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5468
5469         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5470         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5471         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5472         like -dgs-font-load.
5473
5474         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5475         remove absolute path to lilypond binary.
5476         
5477 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5478
5479         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5480
5481 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5482
5483         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5484
5485         * mf/GNUmakefile: remove broken dvips map symlink.
5486
5487 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5488
5489         * lily/main.cc: 
5490         * configure.in: Cosmetic fixes.
5491
5492 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5493
5494         * Documentation/user/music-glossary.tely (Pitch names): Added
5495         Spanish pitch names and durations, thanks to Ernesto Gancedo
5496
5497 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5498
5499         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5500         init. Fixes verbose printing of .scm files.
5501
5502         * stepmake/aclocal.m4: add spaces before - options.
5503         
5504 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5505
5506         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5507         of path search in local block variable.
5508
5509 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5510
5511         * configure.in (NCSB_DIR): --enable-ncsb-dir
5512         (LINK_GXX_STATICALLY): denko.
5513
5514         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5515
5516         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5517         use locate to find c059033l.pfb. 
5518         
5519 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5520
5521         * lily/tie-formatting-problem.cc
5522         (problem::generate_base_chord_configuration): Use my_round (was
5523         round).
5524
5525         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5526         do not invoke mbrtowc.
5527
5528         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5529
5530 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5531
5532         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5533
5534 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5535
5536         * Documentation/user/invoking.itely (svg): revise.
5537
5538 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5539
5540         * lily/lexer.ll: use sourcefilename iso. renameinput.
5541
5542 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5543
5544         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5545         <PostScriptName>.ttf instead of c059XXXttf.
5546
5547         * lily/program-option.cc (LY_DEFINE): special support for
5548         --verbose, so it works before option init too.
5549  
5550         * mf/GNUmakefile (local-install): oops.
5551
5552         * lily/lyric-hyphen.cc (print): oops.
5553
5554         * buildscripts/pfx2ttf.fontforge: new file.
5555         
5556         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5557         ($(outdir)/%.ttf): new rule. 
5558
5559         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5560         to LyricHyphen.
5561
5562         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5563         font-size
5564
5565 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5566
5567         * VERSION: release 2.7.26
5568         
5569         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5570
5571 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5572
5573         * lily/font-config.cc (init_fontconfig): verbosity.
5574
5575         * THANKS: add Muziekacademie Lede. 
5576
5577         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5578         (print_score_setup): new function
5579         (convert): read part definition to output staves properly.
5580
5581         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5582         Music_xml notes.
5583
5584         * python/musicexp.py (Output_printer.__init__): use _ in data
5585         members.
5586         (Output_printer.unformatted_output): new function: no formatting,
5587         but count braces.
5588         (Duration.get_length): remove isinstance() checks for
5589         Output_printer everywhere.
5590
5591         * input/regression/lyrics-bar.ly (texidoc): add
5592         Separating_line_group_engraver.
5593
5594 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5595
5596         * lily/relocate.cc (framework_relocation): New function,
5597         factored from set_relocation ().
5598         (prefix_relocation): Rename from set_relocation ().
5599         (setup_paths): Use it.
5600
5601 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5602
5603         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5604         numbers. Patch by Erlend Aasland.
5605
5606 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5607
5608         * lily/font-config.cc (init_fontconfig): print warning if cache
5609         file is not existant.
5610
5611         * lily/main.cc: don't use #ifdef but #if
5612
5613 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5614
5615         * lily/grob-property.cc (internal_set_property): don't abort on
5616         calculation-in-progress.
5617
5618         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5619
5620         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5621         connect-to-neighbor property not connect-to-other
5622
5623         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5624         (LY_DEFINE): oops. don't forget protection.
5625
5626         * flower/parse-afm.cc (Module): strip AFM handling completely.
5627
5628         * lily/stencil-expression.cc: idem.
5629
5630         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5631
5632         * lily/function-documentation.cc (ly_add_function_documentation):
5633         use static member iso. Protected_scm
5634
5635         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5636
5637         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5638
5639 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5640
5641         * lily/relocate.cc (set_env_dir): New function.
5642         (set_relocation): Use it to fix setting PANGO_PREFIX.
5643
5644 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5645
5646         * input/regression/stem-direction-context.ly: remove rest.
5647
5648         * lily/melody-engraver.cc (process_music): restart for bar lines.
5649         (acknowledge_slur): restart for slurs.
5650
5651 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5652
5653         * Documentation/user/invoking.itely: describe how to view SVG 
5654         output using Inkscape which replace embedded fonts with OTF fonts.
5655
5656 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5657
5658         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5659
5660 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5661
5662         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5663         comment.
5664
5665 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5666
5667         * VERSION (PACKAGE_NAME): release 2.7.25
5668
5669         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5670
5671         * input/regression/stem-direction-context.ly: new file.
5672
5673         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5674
5675         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5676         on rest.
5677
5678         * ly/engraver-init.ly: add Melody_engraver
5679
5680         * lily/beam.cc (calc_direction): use default-direction
5681         iso. get_default_direction()
5682
5683         * scm/define-grob-properties.scm (all-user-grob-properties): add
5684         default-direction property.
5685
5686         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5687
5688         * lily/stem.cc (calc_default_direction): remove
5689         Stem::get_default_direction, use default-direction with callback
5690         instead.
5691
5692         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5693
5694         * lily/melody-engraver.cc: new file. Acknowledge stems for
5695         interpolated stem directions. 
5696
5697         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5698
5699         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5700
5701         * lily/slur-configuration.cc (fit_factor): more robust check for
5702         point in curve X-extent.
5703
5704         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5705         (outside_slur_callback): check for 'outside avoidance.
5706
5707         * lily/slur-configuration.cc (score_extra_encompass): don't use
5708         bound->column() == avoid->column() for checking extents, as this
5709         doesn't work for accidentals. 
5710
5711         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5712         DynamicText hardcoding.
5713
5714         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5715         crash if bound stem is NULL
5716
5717         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5718         pedals.
5719
5720 2005-12-22  Graham Percival  <gpermus@gmail.com>
5721
5722         * scm/define-markup-commands.scm: typo.  @code{\raise}
5723         => @code{\\raise}.
5724
5725         * darwin.patch: now used again, includes a
5726         required patch from fink.
5727
5728 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5729
5730         * po/TODO: mention gtranslator along with kbabel.
5731         * po/fi.po: update translations.
5732
5733 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5734
5735         * lily/relocate.cc (setup_paths): Bugfix.
5736
5737 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5738
5739         * lily/slur-configuration.cc (score_extra_encompass): don't use
5740         "avoid" choice for avoid-slur.
5741
5742         * stepmake/bin/install.py (dest): don't create existing dir.
5743
5744 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5745
5746         * stepmake/bin/install.py: Remove file before copying.
5747
5748         * config.make.in: 
5749         * stepmake/aclocal.m4: Do not substitute INSTALL.
5750
5751 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5752
5753         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5754         depend on link-tree.
5755
5756         * lily/relocate.cc (setup_paths): only check path for non-absolute
5757         dir without directory part.
5758
5759         * flower/file-name.cc (is_absolute):  new method.
5760         (is_absolute): check root_ too.
5761
5762 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5763
5764         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5765         relocation code.  Oops, don't comment out too much.
5766
5767         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5768         iso itself.
5769
5770         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5771         compile.
5772
5773 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5774
5775         * .cvsignore: Add install-sh.
5776
5777         * autogen.sh (srcdir): Typo.
5778
5779 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5780
5781         * autogen.sh (srcdir): urg. Touch install-sh.
5782
5783         * stepmake/bin/install-sh (Module): remove.
5784
5785         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5786
5787         * lily/include/relocate.hh: new file.
5788
5789         * lily/relocate.cc: new file. Contain relocation logic.
5790
5791         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5792         (main): read LILYPOND_VERBOSE as the first thing.
5793
5794         * stepmake/aclocal.m4: remove INSTALL variable.
5795
5796         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5797         separate target for making font symlinks.
5798         (documentation-dir): use $(if $(findstring )) for switching off
5799         Documentation.
5800
5801         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5802         something if DOCUMENTATION is no.
5803
5804 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5805
5806         * VERSION: release 2.7.24
5807
5808         * lily/script-column-engraver.cc (stop_translation_timestep):
5809         delay adding to script-column.
5810
5811         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5812
5813         * python/convertrules.py (conv): rule for number-visibility
5814
5815         * lily/slur-configuration.cc (score_extra_encompass): different
5816         distance measure for avoid and inside avoidance.
5817         (score_extra_encompass): use 1/(distance+eps) as penalty.
5818
5819         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5820         encompass objects for generating slur curves.
5821
5822         * lily/slur.cc: use details iso. slur-details property.
5823
5824         * input/regression/slur-tuplet.ly: new file.
5825
5826         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5827
5828         * flower/include/offset.hh (class Offset): new operator /=
5829
5830         * lily/tuplet-number.cc (print): new file, new interface.
5831
5832         * scm/define-grob-properties.scm (all-user-grob-properties):
5833         remove number-visibility property.
5834
5835         * lily/tuplet-bracket.cc (calc_control_points): new function
5836         (calc_connect_to_neighbors): new function.
5837         (print): remove text handling for tuplet numberdef.
5838
5839         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5840         TupletNumbers too. 
5841
5842         * lily/lily-guile.cc (robust_scm2booldrul): new function
5843
5844         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5845
5846         * lily/tuplet-bracket.cc (calc_position_and_height): use
5847         staff-padding to control whether tuplet brackets are over staves.
5848
5849         * lily/grob.cc (suicide): clear dim_caches_.
5850
5851         * lily/dimension-cache.cc (clear): new function.
5852
5853         * lily/grob.cc (extent): swap order of min-extent and extent
5854         calculations. This fixes hara kiri staves. 
5855
5856 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5857
5858         * lily/main.cc: Nitpick: relocation is not based on path, but on
5859         directory (location).
5860
5861 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5862
5863         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5864
5865         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5866
5867         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5868
5869         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5870
5871         * stepmake/stepmake/generic-vars.make (Module): idem.
5872
5873         * stepmake/stepmake/executable-targets.make (default): use it.
5874
5875         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5876
5877         * make/GNUmakefile: don't install make rules.
5878
5879         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5880         slashes.
5881         (prepend_env_path): more verbosity.
5882
5883 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5884
5885         * GNUmakefile.in: add dir argument for find command.
5886
5887         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5888         fixes weird line numbers for point & click.
5889
5890         * lily/source-file.cc (get_counts): init line/column/char counts.
5891
5892 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5893
5894         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5895
5896 2005-12-16  Graham Percival  <gpermus@gmail.com>
5897
5898         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5899         minor fixes from Fredric.  Thanks!
5900
5901 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5902
5903         * ly/music-functions-init.ly: add \bar and \clef music function 
5904
5905         * lily/lily-lexer.cc: idem.
5906
5907         * lily/parser.yy (FIXME): remove BAR and CLEF.
5908
5909 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5910
5911         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5912
5913         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5914         function arguments too
5915
5916         * lily/main.cc (set_relocation): new function.
5917
5918         * scripts/musicxml2ly.py (convert): add \version
5919
5920         * lily/tie.cc: remove get_default_attachments()
5921
5922         * VERSION (PACKAGE_NAME): release 2.7.23
5923         
5924         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5925         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5926
5927         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5928
5929         * lily/tie-formatting-problem.cc (score_ties): new function
5930         (get_variations): new function. Try flipping dirs for collisions.
5931         (generate_optimal_chord_configuration): new function. 1-opt search
5932         for better configuration.
5933
5934         * lily/tie-configuration.cc: new file.
5935
5936         * lily/tie.cc: junk Tie::get_configuration()
5937
5938         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5939         (score_ties_configuration): new function.
5940         (generate_ties_configuration): new function.
5941         (generate_base_chord_configuration): new function.
5942         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5943         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5944
5945         * input/regression/tie-dot.ly: new file.
5946
5947         * lily/tie-formatting-problem.cc (score_configuration): score
5948         tie/dot collisions.
5949
5950         * lily/tie-helper.cc (get_transformed_bezier): new function
5951
5952         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5953
5954         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5955         -undefined suppress iso. -framework Python 
5956
5957         * scm/define-grobs.scm (all-grob-descriptions): set
5958         springs-and-rods (thanks Joe Neeman!)
5959
5960 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5961
5962         * input/no-notation/display-lily-tests.ly (test): 
5963         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5964         changed from \tag #'(a b) to \tag #'a \tag #'b
5965
5966 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5967
5968         * Documentation/topdocs/NEWS.tely: strip out-www.
5969
5970         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5971
5972         * config.make.in (AR): add AR and RANLIB
5973
5974         * flower/libc-extension.cc: include cassert
5975
5976         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5977         darwin check.
5978
5979 2005-12-11  Graham Percival  <gpermus@gmail.com>
5980
5981         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5982
5983         * stepmake/stepmake/python-modules-vars.make: define
5984         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5985
5986         * THANKS: added Johannes Schindelin.
5987
5988 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5989
5990         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5991
5992         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5993         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5994
5995         * lily/parser.yy: reorganize file layout.
5996
5997         * ly/music-functions-init.ly: add tweak music function.
5998
5999         * lily/grob-info.cc (ultimate_music_cause): new function:
6000         recursively lookup causes. 
6001
6002         * lily/parser.yy (chord_body_element): allow music functions for
6003         post-events, allow music functions for chord elements. 
6004  
6005         * lily/font-config-scheme.cc (display_fontset): add cast.
6006
6007         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6008         #'(a b) -> \tag #'a \tag #'b rule.
6009
6010         * python/musicexp.py (Output_printer.dump_version): new function
6011
6012 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6013
6014         * lily/parser.yy (FIXME): remove \tag
6015         (FIXME): remove tag_music() function.
6016
6017         * lily/lily-lexer.cc: remove \tag
6018
6019         * ly/music-functions-init.ly: define music-function "tag"
6020
6021         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6022
6023 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6024
6025         * VERSION (PATCH_LEVEL): release 2.7.22
6026
6027         * input/regression/lyric-hyphen-retain.ly: renew.
6028
6029         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6030         grob
6031
6032         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6033         iso. minimum-length property for rods.
6034
6035         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6036         LyricSpace item to keep lyrics spaced apart.
6037
6038         * ly/engraver-init.ly: remove Separating_line_group_engraver
6039
6040         * Documentation/user/music-glossary.tely: do setfilename before
6041         music-glossary.
6042
6043 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6044
6045         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6046         See xref documentation, for example.
6047
6048 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6049
6050         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6051         pending_skip iso. ly_voice[-1]
6052         (main): add if __main__ for debugging.
6053
6054         * python/musicxml.py (Accidental.__init__): new class.
6055
6056         * scripts/musicxml2ly.py (progress): new function
6057         (musicxml_key_to_lily): don't barf on modeless keys.
6058         (create_skip_music): new function.
6059         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6060         (musicxml_note_to_lily_main_event): new function.
6061
6062         * python/musicexp.py (Music.__init__): add comment field.
6063         (NestedMusic.append): new routine.
6064         (SequentialMusic.print_ly): print comment.
6065         (ArpeggioEvent.ly_expression): new class
6066         (BeamEvent.ly_expression): new class
6067         (NoteEvent.__init__): support for cautionary/forced accs.
6068
6069         * lily/lookup.cc (slur): normal order for array loop.
6070
6071         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6072         to 0.0.
6073
6074         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6075         collapsed.
6076
6077 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6078
6079         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6080
6081         * scripts/lilypond-book.py: Introduce option
6082             --preserve-line-breaks, for usage with srcltx
6083
6084 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6085
6086         * scm/output-lib.scm (print-circled-text-callback): draw circle
6087         around text using make-circle-markup.
6088
6089         * Documentation/user/*: strip out-www from file names.
6090
6091 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6092
6093         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6094         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6095
6096 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6097
6098         * Documentation/user/GNUmakefile: idem.
6099
6100         * Documentation/user/macros.itexi: strip out-www
6101
6102         * python/rational.py: python 2.3 compat.
6103
6104         * VERSION (PATCH_LEVEL): release 2.7.21
6105
6106         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6107         option formatting, lilypond style.
6108
6109         * python/musicexp.py: grab from Ikebana: a library for composing
6110         ly music expressions. 
6111         (Output_printer): class for advanced .ly printing.
6112         (eg. tupletting) 
6113
6114         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6115         convert to pythonesque structure.
6116
6117         * python/rational.py: PD rational number class.
6118
6119         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6120
6121 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6122
6123         * lily/part-combine-iterator.cc: Minor bugfix
6124         
6125         * THANKS: Update bughunters
6126
6127 2005-12-02  Werner Lemberg  <wl@gnu.org>
6128
6129         * mf/README: Document process for proper mf2pt1 conversion.
6130
6131         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6132         overlapping.
6133
6134         * mf/feta-harmonica.mf: Removed.  Unused.
6135
6136 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6137
6138         * scripts/lilypond-book.py (do_file): fix thinkos.
6139
6140 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6141
6142         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6143         ($(outdir)/parser.cc): 
6144         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6145
6146 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6147
6148         * ly/titling-init.ly (tagline): it should be a space between
6149         "Music engraving by LilyPond" and the version number.
6150
6151 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6152
6153         * VERSION (PACKAGE_NAME): release 2.7.20
6154
6155 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6156
6157         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6158
6159         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6160         1.0.
6161         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6162
6163 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6164
6165         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6166
6167         * kpath-guile/: remove directory
6168
6169         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6170         file. Encapsulate kpathsea using commandline tools.
6171
6172         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6173         kpathsea) module.
6174
6175 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6176
6177         * Documentation/user/advanced-notation.itely (Setting automatic
6178         beam behavior): Correct a few typos. Thanks to David Bobroff.
6179
6180         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6181         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6182
6183 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6184
6185         * scripts/*.py: gmane address for bugs.
6186
6187 2005-11-28 Pal Benko <benkop@freestart.hu>
6188         
6189         * make/ly-rules.make: add -f switch to mv
6190
6191         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6192
6193         * lily/bar-line.cc: interpret it
6194
6195 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6196
6197         * configure.in (--disable-documentation): New switch.
6198
6199         * GNUmakefile.in: Use it.
6200
6201         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6202
6203 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6204
6205         * scripts/lilypond-book.py (do_file): search chunks for
6206         \\begin{document}
6207
6208         * GNUmakefile.in: add copy step in between so we can lose the
6209         out-www directories.
6210
6211 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6212
6213         * lily/pango-font.cc (pango_item_string_stencil): put
6214         geometry.width into glyph-string too.
6215
6216 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6217
6218         * scm/define-music-display-methods.scm (RevertProperty):
6219         (OverrideProperty): Use grob-property-path property, a list of
6220         symbols, instead of grob-property, which used to be a single
6221         symbol.
6222         (BassFigureEvent): a figure can be a plain number, not necessarily a
6223         markup.
6224
6225 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6226
6227         * VERSION: release 2.7.19
6228         
6229         * lily/figured-bass-engraver.cc (process_music): check
6230         figuredBassCenterContinuations first.
6231
6232         * scm/translation-functions.scm (format-bass-figure): make double
6233         sharp larger. 
6234
6235         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6236         determine X-parent.
6237
6238         * lily/system-start-delimiter-engraver.cc: move from
6239         Nested_system_start_delimiter_engraver, rename
6240         Nested_system_start_delimiter_engraver ->
6241         System_start_delimiter_engraver.
6242
6243         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6244         bracket type from hierarchy.
6245
6246 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6247
6248         * lily/rest.cc (y_offset_callback): read staff-position.
6249
6250         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6251         mark after-line-breaking-callback as internal.
6252
6253         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6254
6255 2005-11-25  Werner Lemberg  <wl@gnu.org>
6256
6257         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6258
6259 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6260
6261         * stepmake/bin/add-html-footer.py (do_file): add google
6262
6263         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6264         staff if first_start_ is true.
6265
6266 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6267
6268         * scripts/midi2ly.py (split_track): add __repr__ members.
6269         (track_first_item): only return Item if not None. This fixes a
6270         problem when dumping a track that starts with an empty channel.
6271
6272         * python/midi.c: doc module.
6273
6274 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6275
6276         * Documentation/user/global.itely (Creating MIDI files): Fix
6277         compilation problem.
6278
6279 2005-11-22  Graham Percival  <gpermus@gmail.com>
6280
6281         * Documentation/user/basic-notation.itely: clarify dynamic
6282         padding text.
6283
6284         * Documentation/user/advanced-notation.itely: add unicode
6285         escape control example, whatever that is.  :)
6286
6287         * Documentation/user/global.itely: added "removing dynamics
6288         from MIDI" code.
6289
6290 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6291
6292         * VERSION (PATCH_LEVEL): release 2.7.18
6293
6294         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6295         System_start_delimiter_engraver by
6296         Nested_system_start_delimiter_engraver.
6297
6298         * lily/nested-system-start-delimiter-engraver.cc (struct
6299         Bracket_nesting_node): new class.
6300         (struct Bracket_nesting_group): new class
6301         (struct Bracket_nesting_staff): new class.
6302         (process_music): create hierarchy of grobs. This allows separate
6303         tuning of different SSDs. 
6304
6305         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6306         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6307
6308 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6309
6310         * lily/side-position-interface.cc (aligned_side): multiply
6311         staff_radius by 2.
6312
6313         * lily/script-engraver.cc (make_script_from_event): allow setting
6314         values to '()
6315
6316 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6317
6318         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6319
6320         * scm/define-grobs.scm (all-grob-descriptions): new grob
6321         NestedSystemStartDelimiter.
6322
6323         * input/regression/system-start-heavy-bar.ly: new file.
6324
6325         * lily/nested-system-start-delimiter-engraver.cc: new file.
6326
6327         * lily/nested-system-start-delimiter.cc: new file.
6328
6329         * input/regression/system-start-nesting.ly: new file.
6330
6331         * scm/define-grobs.scm (all-grob-descriptions): use X side
6332         positioning for positioning braces for nested contexts.
6333
6334         * lily/system-start-delimiter.cc (print): don't divide extent by
6335         staff_space.
6336         (print): use style iso. glyph.
6337         (staff_bracket): translate glyph inside routine already.
6338
6339 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6340
6341         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6342         names.
6343
6344 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6345
6346         * scm/define-context-properties.scm
6347         (all-user-translation-properties): rename figuredBassFormatter
6348         from newFiguredBassFormatter.
6349
6350         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6351
6352         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6353
6354         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6355
6356         * lily/beam.cc (calc_beaming): new function.
6357         (calc_shorten): new function.
6358
6359         * THANKS: add Edward Neeman.
6360
6361         * input/regression/accidental-clef-change.ly: new file.
6362
6363         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6364
6365         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6366
6367         * lily/clef-engraver.cc (inspect_clef_properties): reset
6368         localKeySignature for clef changes.
6369
6370 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6371
6372         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6373         add dummy definition that works in Linux and add information in
6374         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6375
6376         * Documentation/user/changing-defaults.itely (Modifying context
6377         plug-ins): Add index for \with.
6378
6379         * Documentation/user/music-glossary.tely (dal segno): Updated
6380         example to version >=2.6.
6381
6382 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6383
6384         * Documentation/user/instrument-notation.itely (Printing chord
6385         names): Reorder \chordmode and \repeat in one example.
6386
6387 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6388
6389         * VERSION: release 2.7.17
6390         
6391         * Documentation/topdocs/NEWS.tely (Top): add note about
6392         refactoring.
6393
6394         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6395         new function. Search region of 3 positions for best tie.
6396         (score_configuration): new function.
6397         (score_aptitude): new function.
6398         (generate_configuration): new function.
6399         (get_configuration): new function.
6400         (Tie_formatting_problem): new function
6401
6402         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6403
6404         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6405
6406         * THANKS: add Eduardo Vieira & Ralph Little
6407
6408         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6409         narrower.
6410
6411         * lily/include/tie-formatting-problem.hh (class
6412         Tie_formatting_problem): add Tie_details to
6413         Tie_formatting_problem. Update calling conventions.
6414
6415         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6416         config.make.
6417
6418         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6419
6420 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6421
6422         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6423         scm/define-context-properties.scm: Maintenance bugfix: make
6424         ligature brackets work again by removing obsolete ligature
6425         primitive callback push/pop.
6426
6427         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6428         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6429         value.
6430
6431 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6432
6433         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6434         used and do not call it a path.
6435         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6436
6437 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6438
6439         * lily/include/tie-formatting-problem.hh (class
6440         Tie_formatting_problem): new file.
6441
6442         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6443
6444         * Documentation/misc/ChangeLog-2.3:  new file.
6445
6446         * lily/audio-staff.cc (output): degarianize.
6447
6448 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6449
6450         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6451         Unset PYTHONOPTIMIZE.  Fixes install if set.
6452
6453 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6454
6455         * python/convertrules.py (conv): add warning about drums. 
6456
6457         * make/stepmake.make: include toplevel-version.make after config.make.
6458
6459         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6460         also allow python2.4
6461
6462         * config.make.in (configure-srcdir): remove GXX GCC vars.
6463
6464         * stepmake/aclocal.m4: don't do non-srcdir build with
6465         symlinks. Use inclusion, so the src directory name can be changed.
6466
6467 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6468
6469         * make/mutopia-vars.make:
6470         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6471         files.
6472
6473 2005-11-13  Werner Lemberg  <wl@gnu.org>
6474
6475         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6476         but the affected path.  This ensures that the (overlapping) outlines
6477         have the same direction, which is a necessary prerequisite for
6478         FontForge's algorithm to remove overlaps.
6479         Formatting.
6480
6481         * mf/feta-haak.mf: Formatting.
6482         (draw_bracket): Slightly modify outline to avoid an unnecessary
6483         corner.
6484         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6485         them from the affected paths.
6486
6487 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6488
6489         * mf/README: remove xpm / accordion notes.
6490
6491         * lily/tie-column-format.cc (set_chord_outline): add dots into
6492         skyline extents. This fixes tie formatting if the left head has dots.
6493
6494         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6495         space inside the staff.
6496         (get_configuration): shift another position if necessary in case
6497         of left head tie  
6498
6499 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6500
6501         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6502         buildscript-dir iso. $(depth)/buildscripts.
6503
6504         * tex/GNUmakefile (local-uninstall): remove
6505         music-drawing-routines.ps juggling.
6506
6507         * stepmake/stepmake/install-targets.make (local-install-files):
6508         prepend src-dir to install targets.
6509
6510         * lily/system-start-delimiter-engraver.cc
6511         (acknowledge_system_start_delimiter): use
6512         add_offset_callback(). This fixes translation of nested
6513         staffgroups.
6514
6515         * lily/grob-closure.cc (add_offset_callback): only encaps in
6516         simple_closure if it's a procedure.
6517         
6518         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6519         from bar-line.
6520
6521         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6522         remove-empty where pertinent.
6523
6524 2005-11-12  Graham Percival  <gpermus@gmail.com>
6525
6526         * Documentation/user/instrument-notation.itely: added
6527         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6528
6529 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6530
6531         * lily/GNUmakefile
6532         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6533         make picture in builddir, not srcdir.
6534
6535 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6536
6537         * VERSION: release 2.7.16
6538         
6539         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6540         shell arguments. 
6541
6542 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6543
6544         * Documentation/user/examples.itely (Piano templates): Minor
6545         modification to the Piano centered lyrics example.
6546
6547 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6548
6549         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6550         $BROWSER.
6551
6552         * Documentation/user/point-and-click.itely: simplify p&c
6553         instruction: don't configure firefox. Put lilypond-invoke-editor
6554         in front of the browser.
6555
6556         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6557         (run-browser): new function.
6558
6559         * lily/parser.yy (Lily_lexer): recognize Book
6560
6561         * lily/book.cc (clone): new function
6562
6563         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6564
6565 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6566
6567         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6568         Maintenance bugfix: reduce number of font related warnings by
6569         updating naming conventions for glyph-name.
6570
6571 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6572
6573         * scm/define-grobs.scm (all-grob-descriptions): add
6574         rhythmic-grob-interface to TabNoteHead.
6575
6576         * scm/layout-beam.scm (check-quant-callbacks): remove
6577         set_stem_lengths()
6578
6579 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6580
6581         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6582         alignment of centered divisiones.
6583
6584         * scm/scripts.scm (articulations): Maintenance bugfix:
6585         follow-into-staff -> quantize-position.
6586
6587         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6588         plica head in porrectus deminutus.
6589
6590 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6591
6592         * make/lilypond.fedora.spec.in (Group): add %clean section.
6593
6594         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6595         less then 1/5th of total length.  
6596         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6597
6598         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6599         events into EventChord. This fixes textspanners on mm rests. Fixes
6600         spanner-rest.ly
6601
6602         * lily/side-position-interface.cc (get_axis): read side-axis
6603         (set_axis): set side-axis.
6604
6605         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6606         properties everywhere.
6607
6608         * lily/spacing-spanner.cc (breakable_column_spacing): add
6609         average-spacing-wishes. Take maximum if not set.
6610         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6611
6612         * scm/define-grobs.scm (all-grob-descriptions): add
6613         average-spacing-wishes.
6614
6615         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6616         offset callbacks. This fixes alignment for Fingering objects.
6617
6618         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6619         space for key - timesig combination. 
6620
6621         * input/regression/script-stem-tremolo.ly (Module): new file.
6622
6623         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6624         to key sig.
6625
6626         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6627         Fixes: c-tremolo-script.ly.
6628         
6629         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6630
6631         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6632         
6633         * scm/define-grobs.scm (all-grob-descriptions): remove
6634         self-X-offset. Fixes alignment of octavate-8.
6635
6636         * scripts/lilypond-book.py (datadir): look in
6637         LILYPONDPREFIX/share/lilypond/current/
6638
6639         * GNUmakefile.in: symlink current to <VERSION>. 
6640
6641 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6642
6643         * lily/main.cc: eps listed as a backend.
6644
6645 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6646
6647         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6648
6649 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6650
6651         * lily/include/score.hh (class Score): remove texts_ member.
6652
6653         * lily/beam.cc (set_stem_lengths): force direction callback.
6654         (print): read quantized-positions, so we can force
6655         Beam::set_stem_lengths to occur.
6656         (rest_collision_callback): use common X parent. 
6657
6658 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6659
6660         * flower/file-path.cc (find): Bugfix: Return name of file found.
6661
6662         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6663         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6664         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6665
6666 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6667
6668         * flower/offset.cc: idem.
6669
6670         * mf/*.mf: update email address.
6671
6672         * lily/font-config-scheme.cc:  new file.
6673
6674         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6675
6676         * lily/*:  cs.uu.nl -> xs4all.nl
6677
6678         * VERSION (PATCH_LEVEL): release 2.7.15
6679
6680         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6681         spec files.
6682
6683         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6684
6685 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6686
6687         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6688
6689         * lily/staff-performer.cc (process_music): add audio
6690         elements. This makes MIDI instrument changes work once again.
6691
6692         * lily/main.cc (LY_DEFINE): add gmane address.
6693
6694         * lily/beam.cc: remove calc_positions()
6695
6696         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6697         original_ in private scope.
6698         (class Grob): drop pscore_ pointer, change to output_def pointer.
6699         (class Grob): cleanup class definition.
6700
6701         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6702
6703 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6704
6705         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6706         absolute.  Better diagnostics.
6707
6708         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6709         This makes lilypond run from the build directory using argv0
6710         relocation (without any --prefix or LILYPONDPREFIX setting).
6711
6712 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6713
6714         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6715
6716         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6717         with simple-closure.
6718
6719         * lily/self-aligment-interface.cc (set_align_self): new function
6720         (set_center_parent): new function.
6721
6722         * lily/side-position-interface.cc (set_axis): new function.
6723
6724         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6725         generic code. 
6726
6727         * scm/define-grob-properties.scm (all-user-grob-properties):
6728         remove [XY]-offset-callbacks add [YX]-offset
6729         
6730 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6731
6732         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6733         entry for time signatures after breathing signs. Bug report by
6734         Scott Russell.
6735
6736 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6737
6738         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6739         not absolute, make it absolute using PATH.
6740
6741 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6742
6743         * python/midi.c (initmidi): Fix type for mingw.
6744
6745 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6746
6747         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6748
6749         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6750         cross compiling.
6751
6752         * stepmake/aclocal.m4: Support python cross compiling.
6753
6754         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6755         Add mingw section.
6756
6757 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6758
6759         * scm/output-lib.scm (chain-grob-member-functions): replace
6760         chained-callback.cc
6761
6762         * lily/chained-callback.cc (Module): remove file.
6763
6764         * lily/rest-collision.cc (force_shift_callback_rest): change to
6765         chained callback.
6766
6767         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6768
6769         * lily/grob.cc (y_parent_positioning): remove axis argument from
6770         parent_positioning callbacks.
6771         (Grob): junk init code
6772         (get_offset): use generic property callbacks for
6773         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6774         (axis_parent_positioning): new function
6775         (axis_offset_symbol): new function
6776         (chain_offset_callback): new function
6777         (add_offset_callback): new function
6778
6779         * lily/beam.cc (rest_collision_callback): change signature; this
6780         is now a chained callback.
6781
6782         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6783         callback administration.
6784
6785         * lily/simple-closure.cc: new file. Smob type that allows "grob
6786         member functions",
6787
6788             (ly:make-simple-closure FUNC A B)
6789
6790         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6791         in various ways.
6792
6793         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6794         callbacks.
6795
6796         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6797
6798         * lily/rest.cc (polyphonic_offset_callback): remove.
6799
6800         * lily/script-engraver.cc (try_music): remove bool* argument.
6801
6802         * scm/script.scm (default-script-alist): set quantize-position
6803         appropriately.
6804
6805         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6806
6807         * lily/side-position-interface.cc (aligned_side): move staff
6808         position quantization from
6809         Side_position_interface::quantised_position().
6810         (quantised_position): remove
6811         
6812 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6813
6814         * input/regression/beam-quant-standard.ly: reindent, set
6815         debug-beam-quanting to #t.
6816
6817         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6818         10000 if this is a "hard" concave beam.
6819
6820         * lily/beam.cc (calc_least_squares_positions): change from
6821         calc_least_squares_dy
6822         (set_stem_lengths): this is now a chained callback.
6823
6824         * lily/context-property.cc (execute_general_pushpop_property):
6825         bugfix override with procedure should have effect.
6826
6827         * scm/define-grob-properties.scm (all-internal-grob-properties):
6828         remove position-callbacks.
6829
6830         * scm/define-grobs.scm (all-grob-descriptions): use
6831         ly:make-callback-chain for positions property.
6832
6833         * scm/layout-beam.scm (check-quant-callbacks): return list of
6834         chained callbacks.
6835
6836         * scm/lily.scm (type-p-name-alist): add callback-chain
6837
6838         * lily/lily-guile.cc (type_check_assignment): type check failure
6839         is warning not message.
6840
6841         * lily/grob-property.cc (try_callback): walk callback chain if
6842         appropriate.
6843
6844         * lily/chained-callback.cc: new file. new smob type.
6845
6846         * lily/lily-guile.cc (procedure_arity): new function.
6847
6848 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6849
6850         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6851
6852 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6853  
6854         * Documentation/user/instrument-notation.itely (Figured bass):
6855         describe new features
6856
6857 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6858
6859         * lily/beam.cc (calc_least_squares_dy): use property callback.
6860
6861         * lily/beam-concave.cc (calc_concaveness): use property callback.
6862
6863         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6864
6865 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6866
6867         * HACKING: Update.
6868
6869 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6870
6871         * scm/layout-page-layout.scm (page-headfoot): annotate
6872         pagetopspace too.
6873
6874         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6875
6876         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6877         doesn't take y-space.
6878
6879         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6880
6881 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6882
6883         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6884         src-wildcard, remove $(wildcard).
6885
6886         * po/GNUmakefile (PO_FILES): 
6887         * ps/GNUmakefile (PS_FILES): 
6888         * tex/GNUmakefile (TEX_FILES): 
6889         * cygwin/GNUmakefile (POSTINSTALLS):
6890         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6891         some wildcard calls.
6892
6893 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6894
6895         * THANKS: add Thomas Bushnell.
6896
6897 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6898
6899         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6900         (lilypond-main): Redirect to gui-main if 'gui is set.
6901
6902         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6903         for alternative installations kludging s/share/lib/g
6904         LILYPONDPREFIX. 
6905
6906         * SConstruct (libdir_package_version): Define.
6907
6908         * python/SConscript: 
6909         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6910         module in libdir.  
6911
6912 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6913
6914         * lily/main.cc: clarify --safe.
6915
6916 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6917
6918         * VERSION: release 2.7.14
6919         
6920         * Documentation/user/*.itely: remove minimumVerticalExtent.
6921
6922         * scm/define-grobs.scm (all-grob-descriptions): remove
6923         RemoveEmptyVerticalGroup
6924
6925         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6926
6927         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6928         compile on MOSX
6929
6930         * python/convertrules.py (conv): add rules.
6931
6932         * lily/grob.cc: remove is_empty()
6933
6934         * lily/grob-property.cc: remove add_to_list_property().
6935
6936         * scripts/convert-ly.py (datadir): add prefix switching hack to
6937         .py too.
6938
6939         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6940         space-function tweak.
6941
6942         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6943
6944         * scm/define-grob-properties.scm (all-user-grob-properties):
6945         remove callback property.
6946
6947         * lily/include/grob.hh (class Grob): remove property_callbacks_
6948         member. Properties of procedure type are assumed to be callbacks.
6949
6950         * lily/ligature-engraver.cc (override_stencil_callback):
6951         rewrite. Use noteHeadLigaturePrimitive as source.
6952
6953         * scm/define-grob-properties.scm (all-internal-grob-properties):
6954         remove ligature-primitive-callback
6955
6956         * lily/include/dimension-cache.hh (class Dimension_cache): make
6957         class, with Grob as friend.
6958
6959         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6960         has_extent_callback()
6961
6962         * scm/translation-functions.scm (format-new-bass-figure): read
6963         figuredBassPlusDirection
6964
6965         * scm/define-context-properties.scm
6966         (all-user-translation-properties): add figuredBassPlusDirection.
6967
6968         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6969
6970         * lily/align-interface.cc (set_ordered): new function.
6971
6972         * lily/grob.cc (flush_extent_cache): rewrite.
6973
6974         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6975         Interval pointer directly.
6976
6977         * lily/main.cc (setup_paths): insert extra / .
6978         (setup_paths): junk cff entry.
6979
6980         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6981         directories.
6982
6983         * lily/axis-group-engraver.cc (finalize): remove
6984         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6985
6986         * lily/grob.cc (Grob): don't set extent from ctor.
6987         (extent): use property callbacks. 
6988
6989         * lily/axis-group-interface.cc: remove set_axes() function.
6990
6991         * lily/grob-property.cc (del_property): new function.
6992
6993 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6994
6995         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6996         
6997 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6998
6999         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7000
7001 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7002
7003         * mf/SConscript: Updates.
7004
7005         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7006
7007         * stepmake/stepmake/*:
7008         * */GNUmakefile:
7009         * config.make.in:
7010         * GNUmakefile.in:
7011         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7012         from any directory in build-dir.  Cleanups.
7013
7014         * make/srcdir.make.in: Remove.
7015
7016         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7017
7018         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7019         main).
7020
7021         * lily/SConscript: Remove ttftools.
7022
7023         * SConstruct: Resurrect.
7024
7025 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7026
7027         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7028         Y coordinate. 
7029
7030         * lily/paper-book.cc (add_score_title): put Paper_score title into
7031         systems_ list.
7032
7033         * scm/translation-functions.scm (format-new-bass-figure): also
7034         allow plus in combination with _
7035
7036 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7037
7038         * VERSION: 2.7.13 released.
7039
7040         * lily/note-collision.cc (check_meshing_chords): don't wipe
7041         stencil, merely set transparent.
7042
7043         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7044         (Top): document #'callbacks.
7045         (Top): document nested \override.
7046
7047         * input/regression/figured-bass.ly: update for slash and pluses.
7048
7049         * input/regression/figured-bass-continuation-forbid.ly (Module):
7050         new file.
7051
7052         * scm/translation-functions.scm (format-new-bass-figure): use
7053         slashed-digit if diminished is set.
7054         (format-new-bass-figure): add + if 'augmented is set.
7055
7056         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7057
7058         * input/test/piano-staff-distance.ly: remove file.
7059
7060         * Documentation/user/advanced-notation.itely (Formatting cue
7061         notes): use length-fraction for making stems/beams smaller.
7062
7063         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7064         modifications.
7065
7066         * lily/new-figured-bass-engraver.cc: new property
7067         centerFiguredBassContinuations
7068
7069         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7070         use callbacks.
7071
7072         * lily/context-property.cc (execute_general_pushpop_property):
7073         robustness checks.
7074
7075         * input/regression/override-nest.ly: new file.
7076
7077         * python/convertrules.py (FatalConversionError.subber): conversion
7078         rule for #'callbacks
7079
7080         * input/regression/override-nest.ly: new function.
7081
7082         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7083         #c too. 
7084
7085         * lily/context-property.cc (lookup_nested_property): new function.
7086         (evict_from_alist): new function.
7087         (general_pushpop_property): new function.
7088         (execute_general_pushpop_property): rewrite. Support nested
7089         properties too.
7090
7091 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7092
7093         * lily/beam.cc: use length-fraction too.
7094
7095         * scm/define-grob-properties.scm (all-user-grob-properties):
7096         remove property flag-width-function
7097         (all-user-grob-properties): remove space-function.
7098
7099         * scm/layout-beam.scm: remove flag-width-function.
7100
7101         * lily/beam.cc: remove flag-width-function
7102
7103         * scm/layout-beam.scm: remove beam dir functions.
7104
7105         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7106
7107         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7108         for easier grace tweaks.
7109
7110         * lily/beam.cc: remove dir-function.
7111
7112         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7113
7114         * lily/grob.cc: remove spacing-procedure.
7115
7116         * lily/note-head.cc (calc_stem_attachment): new function.
7117         (internal_print): use callback to get glyph-name.
7118
7119         * lily/grob-property.cc (get_interfaces): new function.
7120
7121         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7122
7123         * lily/stem.cc (calc_stem_end_position): new function.
7124         (calc_length): new function.
7125         document details for stem.
7126         remove Stem::get_direction()
7127
7128         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7129
7130         * lily/grob-property.cc (set_callback): new function.
7131
7132         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7133
7134         * lily/item-scheme.cc: new file.
7135
7136         * lily/bar-line.cc (before_line_breaking): remove function.
7137         remove bar-size-procedure, break-glyph-function
7138
7139         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7140
7141         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7142
7143         * lily/system-start-delimiter.cc (print): suicide from
7144         here. Remove after_line_breaking_callback.
7145
7146         * lily/script-interface.cc (calc_direction): use callback for direction.
7147
7148         * lily/side-position-interface.cc (aligned_side): don't use
7149         Side_position_interface::get_direction directly. Use callback. 
7150
7151         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7152         calculate stencil.
7153         (get_print_stencil): rename from get_stencil: create stencil with
7154         transparency, color and cause. 
7155
7156         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7157
7158         * python/convertrules.py (conv): insert temporary warning rule.
7159
7160         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7161
7162         * lily/grob-property.cc (try_callback): remove marker if applicable.
7163
7164         * lily/grob.cc: elucidate doc about after/before-line-breaking
7165
7166         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7167
7168         * lily/stem.cc (height): idem.
7169
7170         * lily/stem-tremolo.cc: idem.
7171
7172         * lily/slur.cc (height): don't use get_uncached_stencil()
7173
7174         * lily/rest.cc (y_offset_callback): use offset callback
7175         iso. after-line-breaking callback.
7176
7177         * lily/grob.cc: change after/before-line-breaking-callback to
7178         after/before-line-breaking dummy properties.
7179
7180         * lily/include/grob.hh: remove Grob_status.
7181
7182         * scm/define-context-properties.scm
7183         (all-user-translation-properties): remove verticalAlignmentChildCallback
7184
7185         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7186         (calc_direction): use callback
7187         (calc_positions): use callback.
7188
7189         * lily/tie.cc (calc_direction): use callback. Only call parent
7190         positioning for more than one tie.
7191
7192         * lily/tie-column.cc (calc_positioning_done): use callback
7193
7194         * lily/slur-scoring.cc (calc_control_points): use callback
7195
7196         * lily/slur.cc (calc_direction): use callback.
7197
7198         * lily/note-collision.cc (force_shift_callback): remove.
7199
7200         * lily/dot-column.cc (force_shift_callback): remove. Use
7201         other_axis_parent_positioning.
7202
7203         * lily/grob.cc (other_axis_parent_positioning): new function.
7204         (same_axis_parent_positioning): new function
7205
7206         * lily/align-interface.cc (alignment_callback): remove function.
7207
7208         * lily/note-collision.cc (calc_positioning_done): use callback.
7209
7210         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7211         (calc_direction): idem.
7212         remove print function.
7213
7214         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7215
7216         * lily/dot-column.cc (calc_positioning_done): use callback.
7217
7218         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7219
7220         * lily/beam.cc (calc_direction): use pseudo-property for beam
7221         direction callback.
7222         (calc_positions): use callback 
7223
7224         * lily/align-interface.cc (calc_positioning_done): use
7225         callback. Fold fixed  distance and normal alignment in one function.
7226
7227         * lily/stem.cc (calc_stem_end_position): use callback.
7228         (calc_positioning_done): idem.
7229         (calc_direction): idem.
7230         (calc_stem_end_position): idem
7231         (calc_stem_info): idem.
7232
7233         * lily/grob-property.cc (get_property_data): new function: 
7234         (try_callback): new function.
7235
7236         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7237         callbacks property.
7238
7239         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7240
7241 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7242
7243         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7244         tie
7245         has no heads.
7246         
7247         * lily/include/*.hh (Module): compile fixes.
7248
7249 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7250
7251         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7252         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7253         instead of (char-syntax nil), thanks to Milan Zamazal.
7254
7255 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7256
7257         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7258         dist.
7259
7260         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7261         themselves.
7262
7263 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7264
7265         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7266         add class_name() method.
7267
7268         * lily/music-scheme.cc: remove ly:music-name.
7269
7270 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7271
7272         * cygwin/postinstall-lilypond.sh: Remove cruft.
7273
7274         * cygwin/postremove-lilypond.sh: Remove.
7275
7276         * cygwin/GNUmakefile (default): Remove postremove rules.
7277
7278 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7279
7280         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7281         even header too.
7282         
7283         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7284         MacOS 9 users.
7285
7286         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7287         consider break index for broken spanner.
7288
7289         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7290         characters from string before splitting.
7291
7292 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7293
7294         * scm/framework-ps.scm (output-preview-framework): use
7295         is-book-title to determine whether to chop off the booktitle.
7296
7297         * lily/paper-book.cc (systems): init from book-title-properties
7298         (add_score_title): init score-title-properties.
7299
7300         * ly/paper-defaults.ly: add {score,book}-title-properties.
7301
7302         * scm/document-backend.scm (lookup-interface): error message if
7303         using unknown interface.
7304
7305         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7306         edge-height.
7307
7308         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7309         make_bracket.
7310         (make_bracket): new function.
7311
7312         * scm/lily.scm (define-scheme-options): add paper-size option.
7313
7314         * ly/declarations-init.ly (laissezVibrer): get paper size from
7315         -dpaper-size
7316
7317         * scm/translation-functions.scm: use \fontsize for changing the
7318         fontsize.
7319
7320         * scm/define-grobs.scm (all-grob-descriptions): set
7321         between-length-limit to 1.0
7322
7323         * lily/tie-helper.cc: add between_length_limit_ detail property.
7324
7325         * mf/feta-bolletjes.mf: typos.
7326
7327         * lily/note-head.cc (internal_print): don't shadow idx
7328         parameter. This fixes wrong attachment for do shape heads.
7329
7330 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7331
7332         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7333
7334         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7335
7336         * scm/layout-slur.scm: rename from slur.scm
7337
7338         * scm/layout-page-layout.scm: rename from page-layout.scm
7339
7340         * scm/layout-beam.scm: rename from beam.scm
7341
7342         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7343         bass-figure-interface
7344
7345         * lily/new-figured-bass-engraver.cc (process_music): add
7346         implicitBassFigures property.
7347         
7348         * scm/define-markup-commands.scm (pad-x): new markup.
7349
7350         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7351         minimumVerticalExtent on FiguredBass context.
7352
7353         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7354         case the continuation crosses a line break.
7355
7356 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7357
7358         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7359         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7360         absolute file name bug.  
7361
7362 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7363
7364         * VERSION (PACKAGE_NAME): release 2.7.12
7365
7366         * input/regression/figured-bass-continuation-center.ly: new file.
7367
7368         * input/regression/beam-outside-beamlets.ly: new file.
7369
7370         * lily/beam.cc (set_beaming): don't clip edges.
7371         (connect_beams): don't clip edges.
7372
7373         * lily/beaming-info.cc (clip_edges): new function.
7374
7375         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7376
7377         * Documentation/user/instrument-notation.itely (Figured bass):
7378         demonstrate extenders, update seealso links.
7379
7380         * scm/titling.scm (marked-up-headfoot): change tagline
7381         handling. tagline = ##f will blank the tagline as well.
7382
7383 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7384
7385         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7386
7387         * lily/new-figured-bass-engraver.cc (struct
7388         New_figured_bass_engraver): add new_music_found_ member.
7389
7390         * lily/lilypond-version.cc (Lilypond_version): deal with
7391         incorrectly formatted version strings. 
7392
7393         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7394         New_figured_bass_engraver by default.
7395
7396         * lily/ttf.cc (print_trailer): only define glyph names when
7397         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7398
7399 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7400
7401         * lily/horizontal-bracket.cc (make_bracket): new function.
7402
7403         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7404         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7405         BassFigureLine, BassFigureAlignment
7406
7407         * lily/new-figured-bass-engraver.cc (process_music): new file.
7408
7409         * lily/figured-bass-continuation.cc: new file.
7410
7411         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7412         new file.
7413
7414 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7415
7416         * scripts/lilypond-book.py: Bug fix, put the quote around the
7417         actual score for LaTeX documents.
7418
7419         * scm/define-grobs.scm (all-grob-descriptions): Change
7420         collapse-height of the SystemStartBracket grob to 5.0, 
7421         so the bracket disappears for single stave score lines (similarly
7422         to SystemStartBraces). 
7423
7424         * Documentation/user/advanced-notation.itely (Polymetric
7425         notation): Clarify the use of compressMusic.
7426
7427         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7428         that the grace spacer note in other staves need the same duration
7429         and document the stroke-style property.
7430
7431 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7432
7433         * Documentation/user/global.itely (Vertical spacing): document
7434         alignment-extra-space and fixed-alignment-extra-space.
7435
7436         * Documentation/topdocs/NEWS.tely (Top): add entry.
7437
7438         * input/regression/alignment-vertical-spacing.ly: new file.
7439
7440         * python/convertrules.py (conv): add rule.
7441
7442         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7443
7444         * lily/align-interface.cc (stretch_after_break): new
7445         function. Read fixed-alignment-extra-space property.
7446         (align_elements_to_extents): read alignment-extra-space property.
7447
7448         * lily/lily-guile.cc (robust_scm2dir): new function.
7449
7450         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7451         (annotate-space-left): new function. Annotate space left on page. 
7452         (annotate-y-interval): new function.
7453         (paper-system-annotate-last): new function. Annotate bottom-space.
7454
7455         * mf/feta-beugel.mf (y): 
7456
7457 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7458
7459         * VERSION (PACKAGE_NAME):  release 2.7.11
7460
7461         * scm/lily-library.scm (interval-translate): new function
7462         (interval-center): new function. 
7463
7464         * scm/page-layout.scm (paper-system-annotate): new function. Add
7465         arrows for dimensions.
7466  
7467         * scm/stencil.scm (dimension-arrows): new function.
7468
7469         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7470
7471         * input/regression/page-spacing.ly: add annotatespacing
7472
7473         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7474         (LY_DEFINE): new function ly:paper-system-set-property!
7475
7476         * Documentation/user/global.itely (Paper size): explain how to add
7477         sizes.
7478
7479         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7480         correspond to GS's definition.
7481
7482         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7483         tuplet bracket.
7484         (print): only connect to next bracket if the next one is alive.
7485         (print): set padding to 0.0 if the bound is a breakable
7486         column. This makes tupletFullLength brackets reach up to the staff
7487         line if it doesn't connect to the next line.
7488
7489 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7490
7491         * lily/bar-number-engraver.cc: correct docs.
7492
7493         * scm/output-lib.scm (first-bar-number-invisible): rename from
7494         default-bar-number-visibility
7495
7496 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7497
7498         * scm/define-music-properties.scm (all-music-properties): remove
7499         predicate property.
7500
7501 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7502
7503         * po/fi.po: refresh.
7504
7505 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7506
7507         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7508         superfluous s1.
7509         (disappear): bugfix.
7510
7511         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7512
7513         * lily/include/paper-system.hh (class Paper_system): remove
7514         staff_extents_ member.
7515
7516         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7517
7518         * lily/include/paper-system.hh (class Paper_system): remove
7519         number_ variable. Remove is_title_. Remove break_before_penalty_
7520
7521         * lily/paper-book.cc (systems): use 'number property iso. number_
7522         member.
7523
7524         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7525         remove ly:paper-system-number.
7526
7527         * scm/lily-library.scm (paper-system-title?): new function.
7528
7529         * lily/book.cc (process): bugfix: flip ?: cases. 
7530
7531         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7532         add outputProperty.
7533
7534         * ly/music-functions-init.ly: add outputProperty music function.
7535
7536         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7537
7538         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7539         and next-padding.
7540         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7541
7542         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7543
7544         * lily/paper-system.cc (internal_get_property): new function.
7545
7546         * Documentation/user/global.itely (Vertical spacing): refer to
7547         page-spacing.ly
7548
7549         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7550         pagetopspace
7551
7552         * input/regression/page-spacing.ly: new file.
7553
7554         * input/regression/page-top-space.ly: new file.
7555
7556         * lily/spacing-spanner.cc: cmath -> math.h
7557
7558         * lily/paper-system.cc (read_left_bound): new function. Read
7559         line-break-system-details from left bound to determine extents.
7560  
7561         * Documentation/user/programming-interface.itely (Using LilyPond
7562         syntax inside Scheme): change applyxxx -> applyXxx.
7563
7564         * ly/music-functions-init.ly: add outputProperty music function.
7565
7566         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7567
7568         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7569
7570         * python/convertrules.py (conv): rule
7571
7572         * ly/music-functions-init.ly: applyxxx -> applyXxx
7573
7574         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7575         TabVoice to Voice.
7576
7577 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7578
7579         * flower/include/real.hh: include <math.h> iso. <cmath>
7580
7581         * flower/include/offset.hh: include real.hh
7582
7583 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7584
7585         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7586         fix example, now that 'interfaces is no longer directly available.
7587
7588         * lily/book.cc (process): don't crash if paper == NULL.
7589
7590         * po/fr.po: update.
7591
7592 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7593
7594         * scm/define-music-types.scm (music-descriptions): set length and
7595         start-callback for QuoteMusic
7596
7597 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7598
7599         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7600         arguments. Fixes compilation error with gcc 3.3.
7601
7602 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7603
7604         * VERSION: release 2.7.10
7605
7606         * stepmake/stepmake/python-module-rules.make
7607         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7608
7609         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7610         real.hh
7611
7612 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7613
7614         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7615         -Werror. Otherwise GCC barfs over various optimizations.
7616
7617         * scm/define-grob-properties.scm (all-internal-grob-properties):
7618         add note-head property
7619
7620         * Documentation/user/instrument-notation.itely (Laissez vibrer
7621         ties): new node.
7622
7623         * input/regression/laissez-vibrer-ties.ly: new file.
7624
7625         * lily/laissez-vibrer-engraver.cc: new file.    
7626
7627         * lily/include/tie-column-format.hh: new file.
7628
7629         * lily/tie-column-format.cc: new file. 
7630
7631         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7632
7633         * lily/laissez-vibrer-tie.cc: new file.
7634
7635         * lily/include/laissez-vibrer-tie.hh: new file.
7636
7637         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7638
7639         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7640
7641         * scm/define-grobs.scm (all-grob-descriptions): add
7642         LaissezVibrerTie, LaissezVibrerTieColumn
7643
7644         * lily/tie-column.cc (set_tie_config_directions): new function
7645         (final_shape_adjustment): new function.
7646         (shift_small_ties): new function.
7647
7648         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7649
7650         * lily/include/tie.hh (struct Tie_details): add x_gap_
7651         (struct Tie_configuration): add head_position_
7652
7653         * lily/tie-column.cc (set_chord_outline): new function.
7654
7655         * mf/cmr.enc.in:  remove file.
7656
7657 2005-09-11  Graham Percival  <gpermus@gmail.com>
7658
7659         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7660
7661 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7662
7663         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7664         reduce aliasing effects.
7665
7666         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7667         box in skyline.
7668
7669 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7670
7671         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7672
7673         * flower/include/real.hh: std::fabs too.
7674
7675 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7676
7677         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7678
7679         * lily, flower: Include C++ iso C headers.  Import namespace std
7680         throughout.
7681
7682         * lily/side-position-interface.cc: 
7683         * lily/scm-hash.cc: 
7684         * lily/note-head.cc: 
7685         * lily/include/includable-lexer.hh: 
7686         * flower/include/string-data.icc: Remove using std::*.
7687
7688         * lily, flower: Include C++ iso C headers.  Import namespace std
7689         throughout.
7690
7691         * lily/side-position-interface.cc: 
7692         * lily/scm-hash.cc: 
7693         * lily/note-head.cc: 
7694         * lily/include/includable-lexer.hh: 
7695         * flower/include/string-data.icc: Remove using std::*.
7696
7697         * Documentation/user/instrument-notation.itely (Entering lyrics):
7698         Multiple latin-1->utf-8 conversion fix.
7699
7700         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7701
7702 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7703
7704         * lily/tie.cc (get_configuration): also avoid dots for non-space
7705         situations.
7706
7707 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7708
7709         * Documentation/user/instrument-notation.itely: Bugfix.
7710
7711 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7712
7713         * tex/GNUmakefile: don't install texinfo.tex
7714
7715         * tex/ : cleanup: remove unused files.
7716
7717         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7718
7719         * flower/include/real.hh: using std::{isnan,isinf}
7720         
7721         * VERSION (PATCH_LEVEL): release 2.7.9
7722
7723 2005-09-05  Graham Percival  <gpermus@gmail.com>
7724
7725         * Documentation/user/ instrument-notation.itely,
7726         advanced-notation.itely: minor tweaks.
7727
7728         * input/test/script-chart.ly: add item padding.
7729
7730 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7731
7732         * flower/offset.cc: use math.h iso. <cmath>
7733
7734         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7735         of IE users.
7736
7737         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7738         (widen-left-stencil-edges): new function. Fix alignment problems
7739         with LaTeX includegraphics.
7740
7741         * lily/text-interface.cc (interpret_markup): use abort().
7742
7743 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7744
7745         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7746
7747         * lily/tie.cc (get_configuration): update bezier shape as we
7748         change Y positions.
7749         (get_configuration): don't move large ties if we're outside of the
7750         staff.
7751
7752 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7753
7754         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7755         
7756 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7757
7758         * .cvsignore: Add auto-generated configure files and then some.
7759
7760 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7761
7762         * scm/define-grobs.scm (DynamicLineSpanner): Add
7763         X-extent-callback.  Fixes hairpin-slur collision.
7764
7765 2005-08-31  Graham Percival  <gpermus@gmail.com>
7766
7767         * Documentation/user/advanced-notation.itely,
7768         basic-notation.itely: minor changes.
7769
7770 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7771
7772         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7773         \linebreak between each .eps file if \betweenLilyPondSystem is
7774         undefined. 
7775
7776         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7777         music): Document the \linebreak
7778
7779         * Documentation/user/lilypond-book.itely,
7780         input/tutorial/lbook-latex-test.tex,
7781         Documentation/user/examples.itely: Remove \usepackage{graphics}
7782
7783 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7784
7785         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7786
7787         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7788         compat bugfix.
7789
7790         * scripts/lilypond-book.py (PREAMBLE_LY): define
7791         inside-lilypond-book
7792         (modify_preamble): new function. Insert \RequirePackage{graphics}
7793         when no {graphics found in preamble.  
7794
7795 2005-08030  Graham Percival  <gpermus@gmail.com>
7796
7797         * Documentation/user/basic-notation.itely, global.itely,
7798         tutorial.itely: misc small changes.
7799
7800 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7801
7802         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7803         VERSION.
7804
7805 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7806
7807         * lily/tie-column.cc (new_directions): put Tie down on center
7808         staff line. 
7809
7810         * lily/script-interface.cc (before_line_breaking): use
7811         Grob::programming_error
7812
7813         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7814
7815         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7816         of splitext.
7817
7818 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7819
7820         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7821
7822 2005-08-29  Werner Lemberg  <wl@gnu.org>
7823
7824         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7825         the `*.scale.pfa' files to avoid warnings.
7826
7827 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7828
7829         * lily/tempo-performer.cc (process_music): idem.
7830
7831         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7832
7833 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7834
7835         * Documentation/user/advanced-notation.itely (Text markup): not a
7836         fragment.
7837
7838         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7839
7840         * lily/staff-performer.cc (initialize): add tempo/name to
7841         audio_staff_
7842
7843
7844 2005-08-26  Graham Percival  <gpermus@gmail.com>
7845
7846         * Documentation/user/advanced.itely: add text-only example.
7847
7848         * Documentation/user/invoking.itely: add index entries for
7849         convert-ly.
7850
7851         * Documentation/user/ tutorial.itely, basic-notation.itely:
7852         small fixes suggested by Steve D.  Thanks!
7853
7854 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7855
7856         * input/regression/markup-bidi-pango.ly: new file.
7857
7858         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7859         standard. Remove #ifdef. Remove memleak.
7860         (text_stencil): use text_dir to decide how to composite items.
7861         (text_stencil): determine uniform text direction for the entire
7862         string.
7863
7864         * scripts/lilypond-book.py (output_name): remove
7865         latex_filter_cmd. Non-portable to non-Unix systems. 
7866         (get_latex_textwidth): use File.write and os.unlink() instead.
7867
7868         * THANKS: add Vicente & Trevor.
7869
7870         * lily/grob.cc (discretionary_processing): look up origin for
7871         programming_error too. 
7872
7873         * input/regression/tie-broken.ly: new file.
7874
7875         * lily/tie-column.cc (set_chord_outlines): set outline for line
7876         break case too.
7877         
7878 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7879
7880         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7881         unscaled transform, just translate stencils.
7882
7883         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7884         MIDI.
7885
7886         * scm/define-markup-commands.scm (wordwrap-string): use
7887         text-direction
7888         (wordwrap-stencils): idem.
7889         (line): idem.
7890         (fill-line): idem.
7891         (wordwrap-stencils): translate last line to right for
7892         text-direction = LEFT.
7893
7894         * scm/define-grob-properties.scm (all-user-grob-properties): add
7895         text-direction.
7896
7897 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7898
7899         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7900         when copying a Lily_parser object.
7901
7902 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7903
7904         * scm/define-markup-commands.scm (null): add null markup.
7905
7906 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7907
7908         * lily/item.cc: Add documentation of center-invisible
7909
7910 2005-08-24  Graham Percival  <gpermus@gmail.com>
7911
7912         * Documentation/user/advanced-notation.itely: add info about
7913         raising text.
7914
7915         * Documentation/user/programming-interface.itely: fix example
7916         involving raised text.
7917
7918 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7919
7920         * lily/beam.cc (print): fix X start/end points of isolated
7921         beamlets.
7922
7923         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7924
7925         * lily/multi-measure-rest.cc (set_text_rods): new function.
7926
7927         * lily/vertical-align-engraver.cc (process_music): call
7928         Align_interface::set_axis(). This forces #'elements to be ordered,
7929         preventing random vertical reordering of staves.
7930
7931         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7932         add avoid-slur property. 
7933
7934         * Documentation/user/basic-notation.itely (Measure repeats): add
7935         countPercentRepeats example.
7936
7937         * Documentation/user/advanced-notation.itely (Other text markup
7938         issues): remove remark about normal-font.  We have \normal-text
7939
7940         * input/regression/tie-chord.ly: add note about remaining bugs.
7941
7942         * lily/tie.cc (print): try Tie_column::set_directions () if
7943         control-points not yet defined.
7944
7945 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7946
7947         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7948         extent. This fixes braces falling out of the EPS bbox.
7949
7950         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7951         exactly to bbox.
7952
7953 2005-08-23  Graham Percival  <gpermus@gmail.com>
7954
7955         * {various} : change #up->#UP and #down->#DOWN.
7956
7957         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7958
7959         * Documentation/user/advanced-notation.itely: clarify
7960         what objects handles text on a multimeasure rest.
7961
7962 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7963
7964         * VERSION (PATCH_LEVEL): release 2.7.7
7965
7966 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7967
7968         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7969
7970         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7971
7972         * input/regression/*.ly: formatting clean-up. Default layout
7973         before music expression.
7974
7975         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7976         romanze28-2 example.
7977
7978         * scm/ps-to-png.scm: remove dir-re function.
7979         (make-ps-images): generate page names, instead of globbing them.
7980         This brings down LilyPond memory usage for make web by a factor
7981         10. 
7982
7983         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7984         don't use glob. With 3000 files, globbing
7985         Documentation/user/out-www/ can take too much time. 
7986         
7987         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7988
7989         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7990
7991         * input/regression/tie-manual.ly: new file
7992
7993         * input/regression/tie-chord.ly: update.
7994
7995         * flower/include/interval.hh (struct Interval_t): 
7996
7997         * lily/tie.cc (distance): new function 
7998         (height): new function.
7999         (init): new function
8000         (Tie_details): new struct.
8001
8002         * lily/skyline.cc (skyline_height): new function.
8003
8004         * lily/tie-column.cc (set_chord_outlines): new function.
8005         (new_directions): read tie-configuration
8006
8007         * lily/skyline.cc: fix ASCII art.
8008         
8009 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8010
8011         * python/convertrules.py (string_or_scheme): Fix spelling error
8012
8013 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8014         
8015         * lily/tie-column.cc (set_directions): set directions only once.
8016         (add_configuration): new function.
8017
8018         * lily/tie.cc (set_control_points): new function
8019
8020         * lily/tie-column.cc (new_directions): new function.
8021
8022         * ly/music-functions-init.ly: set 'pitch property
8023         iso. trill-pitch. This makes \relative work with \pitchedTrill
8024
8025         * lily/tie.cc (get_configuration): new function. Don't generate
8026         control points, rather, generate configuration.
8027         remove head-pair property.
8028
8029         * lily/include/tie.hh (struct Tie_configuration): new struct.
8030
8031 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8032
8033         * Documentation/topdocs/NEWS.tely: clarify.
8034
8035 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8036
8037         * lily/tie.cc: remove minimum-length
8038
8039         * scm/define-grob-properties.scm (all-user-grob-properties):
8040         remove staffline-clearance, y-offset 
8041
8042         * input/regression/tie-dots.ly (Module): remove.
8043
8044         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8045         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8046
8047         * input/regression/tie-single.ly: new file.
8048
8049 2005-08-21  Graham Percival  <gpermus@gmail.com>
8050
8051         * ly/bagpipe.ly: fix compile problem.
8052
8053 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8054
8055         * lily/midi-item.cc (name): new method.
8056
8057         * lily/staff-performer.cc (acknowledge_audio_element): use
8058         signature of baseclass.
8059
8060         * lily/engraver-group.cc (do_announces): move recursion call out
8061         of while loop. 
8062
8063         * lily/drum-note-performer.cc (class Drum_note_performer): use
8064         process_music everywhere.
8065
8066         * ly/performer-init.ly: add default children everywhere.
8067
8068         * lily/paper-book.cc (output): call paper-book-write-midis
8069         directly: always write MIDI, even if no \layout {} block. 
8070
8071 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8072
8073         * VERSION (PACKAGE_NAME): release 2.7.6
8074
8075         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8076         about not being able to handle repeat.
8077
8078 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8079
8080         * Documentation/user/examples.itely (Piano templates):
8081         * lily/include/performer-group.hh: Remove last traces of
8082         Performer_group_performer.  Fixes make web.
8083
8084 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8085
8086         * Documentation/user/examples.itely (Piano templates): change
8087         Engraver_group_engraver -> Engraver_group
8088
8089         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8090         scm_stand_in_procs is not weak_any.
8091
8092         * lily/volta-bracket.cc (print): don't use strcmp().
8093
8094         * lily/volta-engraver.cc (process_music): use
8095         Text_interface::is_markup() for setting the 'text property of the
8096         volta bracket.
8097
8098         * input/mutopia/claop.py (accents): update syntax to 2.6
8099
8100         * scm/define-context-properties.scm
8101         (all-user-translation-properties): add countPercentRepeats.
8102
8103         * Documentation/user/basic-notation.itely (Measure repeats): add
8104         isolated percent example.
8105
8106 2005-08-18  Graham Percival  <gpermus@gmail.com>
8107
8108         * input/ {various}: change direction #1, #-1 to
8109         #up/#down or \fooUp, \fooDown.
8110
8111         * Documentation/user/music-glossary.tely: #-1 to #down.
8112
8113         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8114         to #up, #-1 to #down.
8115
8116 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8117
8118         * lily/include/engraver-group.hh: rename.
8119
8120         * lily/include/performer-group.hh: rename.
8121
8122 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8123
8124         * input/test/script-abbreviations.ly: Removed some old LaTeX
8125         left overs.
8126
8127 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8128
8129         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8130         Remove functions.  Remove if 1: constructs, reindent.
8131
8132         * scripts/convert-ly.py (add_version): Add functions from
8133         convertrules.py
8134
8135         * scm/script.scm (default-script-alist):
8136         s/priority/script-priority.  Fixes script stacking.  Backportme.
8137         (Fermata): Very low priority.
8138
8139 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8140
8141         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8142
8143         * input/regression/slur-script.ly: remove padding tweaks. Add
8144         comment strings.
8145
8146         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8147         time sigs and related stuff.
8148
8149         * scm/define-grob-properties.scm (all-user-grob-properties): add
8150         @code{} tags to property description.
8151
8152         * lily/include/line-group-group-engraver.hh (Module): remove file.
8153
8154         * python/convertrules.py (conv): add rule for
8155         Engraver_group_engraver -> Engraver_group.
8156
8157         * lily/include/performer-group-performer.hh: analogous.
8158
8159         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8160
8161         * lily/context-def.cc (instantiate): check for
8162         Engraver_group_engraver and Performer_group_performer not
8163         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8164  
8165 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8166
8167         * input/les-nereides.ly: Remove three fingering tweaks, update
8168         remaining one.
8169
8170         * input/regression/slur-script-inside.ly: Update, fix doc.
8171
8172         * scm/script.scm: Update to avoid-slur.
8173
8174         * scm/define-grob-properties.scm (avoid-slur): New property.
8175
8176         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8177         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8178         outside_slur_callback if avoid-slur != #'inside.
8179
8180         * scm/define-grobs.scm (Fingering, Textscript): No
8181         inside-slur/outside-slur preference.
8182         (DynamicLineSpanner): Always outside slur.
8183
8184         * input/regression/slur-script.ly: More tests.
8185
8186 2005-08-17  Graham Percival  <gpermus@gmail.com>
8187
8188         * Documentation/user/lilypond-book: fix notime entry.
8189
8190         * Documentation/user/advanced-notation.itely: add info on
8191         getting an I rehearsal mark.
8192
8193         * Documentation/user/putting.itely: reinstate "I", re-enforce
8194         the fact that \override numbers are the result of
8195         experimentation and personal taste.
8196
8197         * Documentation/user/invoking.itely: update convert-ly bugs.
8198
8199 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8200
8201         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8202         to #t.
8203
8204         * lily/timing-translator.cc (initialize): don't initialize timing.
8205
8206         * input/regression/stem-spacing.ly (Module): remove file.
8207
8208         * input/regression/spacing-stick-out.ly: specify Score context for
8209         \override
8210
8211         * input/regression/clefs.ly: remove spurious {}s 
8212
8213 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8214
8215         * Documentation/topdocs/NEWS.tely,
8216         input/regression/repeat-percent-count.ly: clarify a bit.
8217
8218 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8219
8220         * input/no-notation/display-lily-tests.ly: delete
8221         display-lily-init call.
8222
8223         * ly/music-functions-init.ly (displayLilyMusic): move
8224         display-lily-init call at top level, so that the user should not
8225         have to call it.
8226
8227         * scm/define-music-display-methods.scm (note-name->lily-string):
8228         retrieve note names directly from pitchnames using new function `rassoc'.
8229         (display-lily-init): note names list construction removed.
8230
8231 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8232
8233         * THANKS: spello.
8234
8235         * lily/lily-parser.cc (get_header): copy module, instead of
8236         returning it.
8237
8238         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8239         counters.
8240
8241         * Documentation/user/basic-notation.itely (Measure repeats): add
8242         links to Counter grobs.
8243
8244         * scm/define-grobs.scm (all-grob-descriptions): add
8245         DoublePercentRepeatCounter
8246         (all-grob-descriptions): add PercentRepeatCounter
8247
8248         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8249         also create counter grobs.
8250
8251         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8252         return grob without space-alist.
8253
8254         * input/proportional.ly: tune staff-padding.
8255
8256         * input/regression/repeat-percent-count.ly: new file. 
8257
8258 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8259
8260         * input/no-notation/display-lily-tests.ly: moved from
8261         input/regression/ to input/no-notation. Be sure to call
8262         `display-lily-init' before trying to use the display function.
8263
8264 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8265
8266         * scripts/lilypond-book.py (option_definitions): Don't localize
8267         the empty string. Fixes bug when --psfonts was used with
8268         non-English locale.
8269
8270 2005-08-15  Graham Percival  <gpermus@gmail.com>
8271
8272         * lily/tuplet-bracket.cc: simple build fix.
8273
8274         * Documentation/user/putting.itely: use "we" instead of "I".
8275
8276         * Documentation/user/basic-notation.itely: cautionary accidentals
8277         work with naturals, too.
8278
8279 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8280
8281         * lily/tuplet-bracket.cc (calc_position_and_height): add
8282         staff-padding support.
8283
8284         * input/proportional.ly: set staff-padding.
8285         
8286         * VERSION (PATCH_LEVEL): release 2.7.5
8287
8288         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8289         fixes. Remove tweaks.
8290
8291         * input/regression/tuplet-slope.ly: add a test case.
8292
8293         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8294         erroneous fix. Add spanner bounds to offset array with relative X
8295         positions.
8296
8297         * ly/engraver-init.ly: add Rest_engraver only once.
8298
8299         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8300         (*parser*) lookup if (*parser*) != #f.
8301
8302 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8303
8304         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8305         Cut-and paste update.
8306
8307         * input/regression/slur-script.ly: Add example of reverting
8308         inside-slur for fingering.
8309
8310         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8311         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8312
8313         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8314         outside_slur_callback if inside-slur == #f (as opposed to unset).
8315
8316 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8317
8318         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8319         encoding files are already removed.
8320
8321 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8322
8323         * Documentation/user/advanced-notation.itely (Instrument names):
8324         Document a workaround for instrument names that collide with
8325         system start braces/brackets.
8326
8327 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8328
8329         * lily/rest-collision.cc (do_shift): spello.
8330
8331         * input/proportional.ly: use #'used property. Set break-overshoot
8332         property.
8333
8334         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8335
8336         * lily/paper-column.cc: add #'used property
8337
8338         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8339         array for staves found.
8340
8341         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8342         array for stavesFound.
8343
8344         * lily/staff-spacing.cc (next_note_correction): add fixed and
8345         space to calling convention. This fixes spacing of accidentals
8346         after barlines.
8347
8348         * input/regression/spacing-accidental-stretch.ly: add barline -
8349         accidental case.
8350
8351         * scm/framework-ps.scm (page-header): add version number to
8352         creator
8353         (eps-header): idem.
8354
8355         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8356         
8357 2005-08-13  Graham Percival  <gpermus@gmail.com>
8358
8359         * Documentation/user/global.itely: add "fit as much as
8360         possible onto this page" example (Vertical spacing).
8361
8362 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8363
8364         * *: Nitpick run.
8365
8366         * buildscripts/fixcc.py: Fixes.
8367
8368 2005-08-12  Graham Percival  <gpermus@gmail.com>
8369
8370         * Documentation/user/advanced-notation.itely: add markup
8371         example to Text spanners.
8372
8373 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8374
8375         * Documentation/user/basic-notation.itely (Ties): Add example of
8376         tying a tremolo to a chord. Thanks to Steve Doonan. 
8377
8378         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8379         properties and move tieMelismaBusy to the list of written
8380         properties. 
8381
8382 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8383
8384         * po/TODO: suggest to use a dedicated tool like kbabel.
8385
8386         * po/fi.po: update using kbabel.
8387
8388 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8389
8390         * *: Remove obsolete files.  Nitpick run.
8391
8392         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8393
8394 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8395
8396         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8397         too.
8398
8399         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8400
8401         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8402         whitespace as symbol separator.
8403
8404         * lily/side-position-interface.cc: Add slur-padding.
8405
8406         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8407         quite a large fix, and it never worked in a stable release; so not
8408         really a regression.
8409
8410         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8411         Update cut and paste code from Slur_engraver.
8412
8413         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8414         Add.
8415
8416         * scm/define-grobs.scm (DynamicLineSpanner): Add
8417         dynamic-line-spanner-interface.
8418         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8419
8420 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8421
8422         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8423         to_boolean () so that non-set 'inside-slur means false.
8424
8425         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8426         slur has control-points.  Skip script without direction.  Always
8427         do_shift if script inside slur, even if slur not contained in
8428         script y-extent.  Increment k in loop.
8429
8430 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8431
8432         * scm/define-markup-commands.scm: Improved regexp to search for
8433         EPS bounding boxes and corrected call to ly:warning.
8434
8435 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8436
8437         * Documentation/user/programming-interface.itely (Displaying music
8438         expressions): doc for \displayLilyMusic. Also some precisions in
8439         "Markup construction in Scheme"
8440
8441 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8442
8443         * scm/define-markup-commands.scm (normal-text): Added 2 new
8444         markup commands, \normal-text and \medium (the latter thanks to
8445         Bruce Fairchild). 
8446
8447 2005-08-08  Graham Percival  <gpermus@gmail.com>
8448
8449         * Documentation/user/programming-interface.itely: fix @{ @}.
8450
8451         * scm/define-markup-commands.scm: add linewidth info to
8452         \justify and \wordwrap, add "upright is the opposite of italic".
8453
8454         * Documentation/user/advanced-notation.itely: shaped->shape,
8455         add (cons (markup "foo")) type of example to text markup,
8456         reword multi-measure rests section.
8457
8458         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8459         comment.  No actual code was touched.
8460
8461         * Documentation/user/invoking.itely: add more info about
8462         \include.  Thanks, Bruce!
8463
8464         * THANKS: add Bruce Fairchild, alphabetise.
8465
8466         * Documentation/user/global.itely: document \score{\header{}}
8467         behavior.
8468
8469         * Documentation/user/basic-notation.itely: reword multi-measure
8470         rest discussion in Rests.
8471
8472 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8473
8474         * Documentation/user/programming-interface.itely (Markup
8475         construction in Scheme): Corrected example and tried to clarify
8476         the implicit \line in the table.
8477
8478 2005-08-07  Graham Percival  <gpermus@gmail.com>
8479
8480         * Documentation/user/instrument-notation.itely: moved
8481         some bagpipe info back into the bagpipe section.  Somehow
8482         it ended up in the "other vocal issues" section?!  :o_O
8483
8484 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8485
8486         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8487         directories, not paths).
8488
8489 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8490
8491         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8492         plain emmentaler/aybabtu.  Backportme.
8493
8494         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8495         missing dir correction.
8496
8497 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8498
8499         * scm/define-markup-commands: fix reversed justify/wordwrap
8500         doc strings.
8501
8502 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8503
8504         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8505         lily/gregorian-ligature-engaver.cc,
8506         lily/include/ligature-engraver.hh,
8507         lily/include/coherent-ligature-engraver.hh,
8508         lily/include/gregorian-ligature-engraver.hh: make these classes
8509         truely abstract.  This should fix some internal oddities such as
8510         duplicate as well as dead translator/property declarations, and
8511         also some dead code.
8512
8513         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8514         bugfix: avoid message "junking empty ligature" on ligature
8515         brackets by collecting dummy grobs.
8516
8517 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8518
8519         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8520
8521         * input/proportional.ly (staffKind): bugfix.
8522         (staffKind): updates by Trevor Baca.
8523
8524         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8525         default layout. 
8526
8527         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8528         pair.
8529
8530         * lily/beam.cc (rest_collision_callback): call position_beam() if
8531         necessary.
8532
8533         * VERSION: release 2.7.4
8534
8535         * input/regression/spacing-uniform-stretching.ly: new file.
8536
8537         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8538
8539         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8540         contributor.
8541
8542         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8543
8544         * input/proportional.ly: new file.
8545
8546         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8547         columns is empty
8548
8549         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8550         bounds to currentCommandColumn for the last step.
8551         (start_translation_timestep): if tupletFullLength is set, set
8552         bound to Paper Column
8553
8554         * input/regression/tuplet-full-length.ly (indent): new file.
8555
8556         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8557         clique of loose columns, eg. a set of grace notes in strict
8558         notespacing.
8559
8560         * input/regression/spacing-strict-spacing-grace.ly: new file.
8561
8562         * lily/key-signature-interface.cc: change property name to
8563         alteration-alist
8564
8565         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8566         keyAccidentalOrder
8567
8568         * python/convertrules.py (conv): keyAccidentalOrder ->
8569         keyAlterationOrder
8570
8571         * lily/key-engraver.cc (create_key): always print a cancellation
8572         for going to C-major/A-minor, regardless of printKeyCancellation.
8573         (create_key): remove typecheck for visibility. This fixes key
8574         signature not being printed.
8575
8576         * lily/spacing-determine-loose-columns.cc: new file.
8577
8578         * input/regression/spacing-strict-notespacing.ly: new file.
8579
8580         * lily/spacing-spanner.cc (generate_springs): rename from
8581         do_measure. 
8582         (generate_pair_spacing): new function.
8583         (init, generate_pair_spacing): set between-cols for floating
8584         nonmusical columns.
8585
8586         * lily/spaceable-grob.cc (get_spring): new function. 
8587
8588         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8589         relative to the right edge of the prefatory matter.
8590
8591         * lily/beam.cc (print): read break-overshoot to determine where to
8592         stop/start broken beams.
8593
8594         * input/regression/spanner-break-overshoot.ly: new file.
8595
8596 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8597
8598         * ly/bagpipe.ly: updated.
8599
8600         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8601
8602 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8603
8604         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8605         support: now (de)crescs avoid slurs as well.
8606
8607         * Documentation/user/instrument-notation.itely (Bagpipe example):
8608         comment out non-functioning bagpipe example.
8609         (Bagpipe definitions): idem.
8610
8611         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8612         (Top): add proportionalNotationDuration example.
8613
8614         * input/regression/spacing-proportional.ly: new file.
8615
8616         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8617         synched to a beam.
8618
8619         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8620         fixes beams with a single stem (eg. beams across linebreaks.)
8621
8622         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8623
8624         * flower/rational.cc (operator +): prevent overflow. This fixes
8625         heavily nested tuplets.
8626
8627         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8628         have to protect even those unlikely to be corrupted data members.  
8629
8630 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8631
8632         * ly/bagpipe.ly: new file.
8633
8634         * THANKS: added Sven Axelsson.
8635
8636 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8637
8638         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8639         copy proportionalNotationDuration into currentMusicalColumn if
8640         set.
8641
8642         * lily/spacing-spanner.cc (musical_column_spacing): if
8643         uniform-stretching set, fixed space is 0.0
8644
8645         * input/regression/spacing-multi-tuplet.ly: show
8646         uniform-stretching property.
8647
8648         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8649
8650         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8651         (struct Spacing_options): new struct.
8652
8653         * lily/spacing-basic.cc: new file.
8654
8655         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8656         delta_t doesn't have to be smaller than shortest_playing_len
8657
8658 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8659
8660         * input/regression/markup-arrows.ly:  new file.
8661
8662         * lily/tuplet-bracket.cc: document new behavior.
8663
8664         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8665         with line breaks.
8666
8667         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8668
8669         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8670         default 
8671
8672         * lily/tuplet-bracket.cc: add edge-text property.
8673         add break-overshoot.
8674         (print): read break-overshoot.
8675         (print): read edge-text, add stencils.
8676
8677         * mf/feta-arrow.mf: new file.
8678
8679         * mf/feta-generic.mf: add feta-arrow.
8680
8681 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8682
8683         * Documentation/user/lilypond-book.itely (An example of a
8684         musicological document): Added flag -o to dvips for people who use
8685         the default setting in teTeX where output is sent to the printer. 
8686
8687         * Documentation/user/global.itely (Vertical spacing): Added
8688         reference to the Axis_group_engraver which documents the *Extent
8689         properties.
8690
8691 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8692
8693         * Documentation/user/basic-notation.itely (Tuplets): add note
8694         about nested tuplets. Remove BUG. 
8695
8696         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8697
8698         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8699         (print): manually call print() for subtuplets.
8700         (calc_position_and_height): add subtuplets to the
8701         support. Vertically shift outer tuplet 
8702
8703         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8704         remove-first for Lyrics, ChordNames and FiguredBass
8705
8706         * scm/define-grob-properties.scm (all-internal-grob-properties):
8707         use ly:grob-array? iso. grob-list?
8708         (all-internal-grob-properties): add tuplets grob-array.
8709
8710         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8711         new function
8712
8713 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8714
8715         * input/test/time-signature-staff.ly: new file.
8716
8717         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8718         spurious #<Music FingerEvent> errors. Backportme.
8719
8720 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8721
8722         * Documentation/user/programming-interface.itely (Markup
8723         construction in Scheme): Corrected markup syntax in the
8724         translation table.
8725
8726 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8727
8728         * Documentation/user/instrument-notation.itely: small update
8729         to bagpipe notation docs; thanks Sven!
8730
8731         * Documentation/user/basic-notation.itely: add link about trills.
8732
8733 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8734
8735         * Documentation/user/music-glossary: remove accidentally committed
8736         fink patch.
8737
8738 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8739
8740         * lily/lily-parser.cc (get_header): new function. Enable multiple
8741         \header definitions.
8742
8743         * lily/parser.yy (lilypond_header_body): use get_header.
8744
8745         * ly/init.ly:
8746         * scm/lily-library.scm (print-score-with-defaults): renamed
8747         $globalheader to $defaultheader
8748             
8749         * Documentation/user/global.itely (Creating titles): added short
8750         explanation that multiple headers are useable.
8751
8752
8753 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8754
8755         * lily/module-scheme.cc (LY_DEFINE): new file. 
8756
8757         * Documentation/user/advanced-notation.itely (Font selection): add
8758         doco for make-pango-font-tree.
8759
8760 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8761
8762         * Documentation/user/music-glossary: more languages
8763         for tenuto.
8764
8765         * Docuemntation/user/instrument-notation.itely: minor
8766         update for bagpipe example.
8767
8768 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8769
8770         * input/regression/+.ly (TODO): add some text.
8771
8772 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8773
8774         * Documentation/user/invoking.itely: \score begins with music.
8775
8776         * Documentation/user/ basic-notation.itely,
8777         instrument-notation.itely: minor changes.
8778
8779         * Documentation/user/music-glossary.itely: began tenuto entry.
8780
8781 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8782
8783         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8784
8785         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8786
8787 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8788
8789         * Documentation/user/examples.itely: remove bagpipe template.
8790
8791         * Documentation/user/instrument-notation.itely: add bagpipe
8792         section, maybe fix quotes in lyrics.  I hate text encoding.
8793         Clarify chord durations, more bagpipe stuff.
8794
8795 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8796  
8797         * lily/accidental-engraver.cc: formatting fixes.
8798
8799         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8800         grob-array.
8801
8802         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8803
8804         * lily/note-column.cc (arpeggio): new function.
8805
8806         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8807         account for spacing.
8808
8809 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8810
8811         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8812         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8813         mingw build.
8814         
8815 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8816
8817         * scm/lily.scm (lilypond-all): clear anonymous modules after
8818         processing files.
8819
8820 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8821
8822         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8823         SCM_I_CONSP
8824
8825         * VERSION: 2.7.3 released
8826
8827         * Documentation/user/invoking.itely (Invoking lilypond): add
8828         LILYPOND_GC_YIELD documentation.
8829
8830         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8831         scm_from_real / scm_make_real.
8832
8833         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8834         higher. This increases memory footprint, but provides overall
8835         speedup of 15 to 20%. 
8836
8837         * lily/include/translator.hh (class Translator): remove
8838         PRECOMPUTED_VIRTUAL everywhere.
8839
8840         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8841
8842         * lily/context.cc (now_mom): non-recursive now_mom() 
8843
8844         * lily/include/profile.hh: new file.
8845
8846         * lily/profile.cc: new file.
8847
8848         * lily/grob.cc (Grob::Grob): look properties up directly.
8849
8850         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8851         lookups.
8852
8853         * lily/include/box.hh (class Box): smob Box type.
8854
8855         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8856
8857         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8858         protect() and unprotect(). Use throughout.
8859
8860 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8861
8862         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8863
8864         * scm/define-music-display-methods.scm (markup->lily-string):
8865         markup elements can also be strings (without simple-markup
8866         appended)
8867
8868 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8869
8870         * lily/context.cc (where_defined): also assign value in
8871         where_defined().
8872
8873         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8874         (curve_coordinate): new function
8875
8876         * lily/simple-spacer.cc (add_columns): only add rods between
8877         column i and begin/end if keep-inside-line is set (this repleces
8878         allow-outside-line as default)
8879
8880 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8881
8882         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8883         tupletSpannerDuration if applicable.
8884
8885         * lily/font-size-engraver.cc (process_music): read fontSize only
8886         once per timestep.
8887
8888         * lily/engraver*cc: use throughout.
8889         
8890         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8891
8892         * lily/translator.cc (add_acknowledger): new file. Directly jump
8893         into an Engraver::acknowledge_xxx () method based on a grobs
8894         interface-list.
8895
8896         * lily/include/translator-dispatch-list.hh (class
8897         Engraver_dispatch_list): new struct, new file.
8898
8899         * scm/define-context-properties.scm
8900         (all-internal-translation-properties): remove acceptHashTable,
8901         acknowledgeHashTable
8902
8903         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8904
8905         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8906         change acknowledgeHashTable to C++ member. 
8907
8908         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8909
8910 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8911
8912         * scm/display-lily.scm: new file. Define a `display-lily-music'
8913         function, that displays the music expression given as an argument,
8914         using LilyPond notation.
8915
8916         * scm/define-music-display-methods.scm: new file. Implementation
8917         of display methods for each music type.
8918
8919         * ly/music-functions-init.ly (displayLilyMusic): new function for
8920         displaying music with LilyPond notation.
8921
8922         * input/regression/display-lily-tests.ly: new regression test file
8923         for `display-lily-music'.
8924
8925         * scm/markup.scm: remove obsolete debugging code (for printing
8926         markups with LilyPond notation).
8927
8928         * scm/define-music-types.scm (music-name-to-property-table):
8929         * scm/clef.scm (supported-clefs): export, in order to be accessible
8930         from the (scm display-lily) module.
8931
8932 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8933
8934         * Documentation/topdocs/NEWS.tely (Top): Typo.
8935
8936 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8937
8938         * Documentation/index.html.in, Documentation/texinfo.css,
8939           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8940           Documentation/bibliography/index.html.in,
8941           Documentation/bibliography/html-long.bst: revert css-width patch,
8942           it does not work with IE6.
8943
8944 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8945
8946         * Documentation/texinfo.css: revert 760px hack. 
8947
8948         * VERSION: release 2.7.2
8949
8950         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8951
8952         * Documentation/user/basic-notation.itely (Barnumber check): add
8953         section.
8954
8955         * scm/music-functions.scm (skip-to-last): new function. Show only
8956         last showLastLength part of the \score.
8957
8958         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8959
8960         * python/convertrules.py (conv): add ly:x-moment rule
8961
8962         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8963
8964         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8965
8966         * Documentation/user/instrument-notation.itely (Flexibility in
8967         alignment): options in subsections.
8968
8969         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8970         syllable text. Instead, assume that the previous lyric text is a
8971         melismated text.
8972
8973         * Documentation/index.html.in: revert 800x600 change.
8974
8975 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8976
8977         * lily/main.cc (main): Remove invalid handle kludge.
8978
8979         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8980         (lambda): add gui define.
8981
8982 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8983
8984         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8985
8986         * Documentation/user/instrument-notation.itely (Musica ficta
8987         accidentals): add section Musica ficta accidentals
8988
8989         * lily/accidental-engraver.cc (make_suggested_accidental): new
8990         function.
8991         (make_standard_accidental): move into new function.
8992         (create_accidental): new function.
8993
8994         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8995         AccidentalSuggestion
8996
8997         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8998
8999         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9000         undefined.
9001
9002         * Documentation/user/global.itely (Page formatting): document
9003         horizontalshift.
9004
9005         * scm/page-layout.scm (default-page-music-height):
9006         horizontalshift: new variable, shift all systems by
9007         horizontalshift to the right, to make space for instrument names.
9008
9009         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9010
9011         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9012
9013 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9014
9015         * lily/note-column.cc (dir): idem.
9016
9017         * lily/spacing-spanner.cc (Module): idem.
9018
9019         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9020
9021         * lily/include/paper-column.hh (class Paper_column): add
9022         non-static get_rank() member.
9023
9024         * VERSION: release 2.7.1
9025         
9026         * scm/framework-null.scm: new file, used for benchmarking.
9027
9028 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9029
9030         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9031         version dependencies for fontforge and gs.
9032
9033         * Documentation/index.html.in, Documentation/texinfo.css,
9034         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9035         Documentation/bibliography/index.html.in, 
9036         Documentation/bibliography/html-long.bst: optimize width of
9037         html for a 800x600 screen (width:760), increases printability
9038         when 'fit to page' is not set and readability in wide screens.
9039
9040         * stepmake/bin/add-html-footer.py: add missing </p>.
9041
9042 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9043
9044         * scm/define-markup-commands.scm (beam): use polygon in beam
9045         command.
9046
9047         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9048         all acknowledged grobs, and do potentially expensive merge and
9049         write in one go.
9050
9051         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9052
9053         * configure.in (reloc_b): add --enable-static-gxx to statically
9054         link to libstdc++
9055
9056         * lily/GNUmakefile (static-gxx-libs): new target
9057         static-gxx-libs. Create symlink to libstdc++.a
9058
9059         * lily/new-lyric-combine-music-iterator.cc: rename to
9060         Lyric_combine_music_iterator
9061
9062         * lily/lyric-combine-music-iterator.cc
9063         (Old_lyric_combine_music_iterator): rename to
9064         Old_lyric_combine_music_iterator
9065
9066         * lily/*-engraver.cc (various): remove double use of
9067         PRECOMPUTED_VIRTUAL function: only use
9068         start_translation_timestep() and stop_translation_timestep(), not
9069         both.
9070
9071         * lily/break-substitution.cc (fast_substitute_grob_array): do
9072         fast_substitute_grob_array for all unordered grob_arrays.
9073         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9074         (substitute_grob_array): optimize.
9075
9076         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9077
9078         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9079
9080         * lily/parser.yy: revert $globalheader patch.
9081         
9082         * lily/include/translator.icc
9083         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9084         Translator methods, without _static helper.
9085  
9086         * lily/grob-smob.cc (derived_mark): rename from
9087         do_derived_mark(). Return void.
9088
9089         * scm/define-context-properties.scm
9090         (all-internal-translation-properties): remove tweakCount/tweakRank.
9091
9092         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9093         predefined break-visibilities.
9094
9095         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9096         booleans for break-visibility.
9097
9098         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9099
9100         * python/convertrules.py (conv): rule for Timing_translator. 
9101
9102         * lily/include/translator.icc: new file. 
9103
9104         * lily/paper-column-engraver.cc (process_music): new
9105         file. Separate Paper_column factory from Score_engraver.
9106
9107         * lily/vertically-spaced-context-engraver.cc: administer
9108         spaceable-staves property of System.
9109
9110         * lily/translator-group-ctors.cc: new file.
9111
9112         * lily/context-property.cc (make_grob_from_properties): construct
9113         the right Grob class programmatically, looking at the class entry
9114         for the meta property.
9115
9116         * lily/break-align-engraver.cc (stop_translation_timestep): call
9117         Break_align_interface::add_element() directly.
9118
9119         * lily/context.cc (measure_position): measure_position() is now a
9120         normal function.
9121
9122         * lily/include/translator.hh (class Translator): rename
9123         process_acknowledged_grobs() to process_acknowledged() and move to
9124         Translator.
9125
9126         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9127         field for each grob description.
9128
9129         * lily/include/translator-group.hh (class Translator_group):
9130         change to base class. Separate class from Translator. This gets
9131         rid of virtual inheritance for Engravers/Performers.
9132
9133         * lily/staff-performer.cc (class Staff_performer): derive
9134         Staff_performer from Performer, not Performer_group_performer 
9135
9136         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9137         new function.
9138         (precompute_method_bindings): new function. Precompute lists of
9139         Translators, so we only call methods (process_music,
9140         start_translation_timestep, etc.) for Translators needing
9141         it. Also: dispose of pointer-to-member-function calls.
9142
9143         * lily/engraver-group-engraver.cc: remove engraver_each,
9144         recurse_down_engravers ()
9145
9146         * lily/note-head.cc (internal_print): only call
9147         glyph-name-procedure if style != default. 
9148
9149 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9150
9151         * ly/titling-init.ly: add printallheaders option.
9152
9153         * Documentation/user/global.itely: document printallheaders.
9154
9155 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9156
9157         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9158         anymore, but do it centrally.  
9159
9160         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9161         hammer hack.
9162
9163         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9164
9165         * scm/output-lib.scm: remove hammer-print-function.
9166
9167         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9168         macro. Declare a Link_array<Grob> and fill it from a grob.
9169         (extract_item_set): idem for item.
9170
9171         * lily/break-substitution.cc: add header.
9172         (fast_substitute_grob_array): rewrite for Grob_arrays.
9173         (substitute_grob_array): idem.
9174
9175         * lily/group-interface.cc (add_thing): remove file.
9176
9177         * flower/include/parray.hh (class Link_array): slice() is const.
9178
9179         * lily/include/grob-array.hh: new file.
9180
9181         * lily/grob-array.cc (spanner): new file.
9182
9183         * lily/beam-quanting.cc (fill): read details property from beam.
9184
9185         * lily/beam.cc: support details property.
9186
9187         * total speedups below: approx 10%.
9188
9189         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9190
9191         * lily/include/grob.hh (class Grob): add interfaces_ member.
9192
9193         * lily/bezier.cc (init_polynomial_cache): new function: cache
9194         binom(3,j) t^j (1-t)^{3-j}
9195         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9196
9197         * lily/*.cc: substitution throughout.
9198
9199         * lily/grob-property.cc (internal_get_object): new routine.
9200         (internal_set_object): idem. Store grob refrences in separate
9201         alist. This saves processing time, since properties aren't
9202         break-substituted, and the per grob namespace is smaller, both for
9203         grobs and non-grob properties.
9204
9205         * scm/define-grob-properties.scm (all-internal-grob-properties):
9206         remove center-element.
9207
9208         * lily/grob.cc: remove tweak-count, tweak-rank.
9209
9210 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9211
9212         * Documentation/user/lilypond-book.itely: fixes example.
9213
9214 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9215
9216         * Documentation/user/global.itely (Creating titles):    
9217         * Documentation/user/examples.itely (All headers): change the
9218         place of \header in \score blocks (after music block) to make
9219         examples compile (cf. changes on parser.yy on 2005-07-10)
9220
9221 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9222
9223         * python/convertrules.py: add exc -> ecc rule.
9224
9225         * scripts/convert-ly.py: add location of convertrules.py
9226         in a comment.
9227
9228         * Documentation/user/changing-defaults.itely: fix language.
9229
9230 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9231
9232         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9233
9234 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9235
9236         * scm/output-socket.scm (grob-bbox): don't use inf? 
9237
9238         * flower/include/rational.hh: add operator bool() 
9239
9240         * scm/define-music-types.scm (music-descriptions): remove
9241         internal-class-name properties.
9242
9243         * lily/include/event.hh: remove file.
9244
9245         * lily/include/music-constructor.hh: remove file.
9246
9247         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9248         in 'types property.
9249
9250         * lily/music.cc (duration_length_callback): new function.
9251
9252         * lily/event.cc: remove file.
9253
9254         * lily/music-constructor.cc: remove file.
9255
9256         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9257
9258         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9259         (get_context_key): idem.
9260
9261         * scm/lily.scm (lambda): new option object-keys (default to #f)
9262
9263         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9264
9265         * scm/output-gnome.scm: remove beam routine.
9266
9267         * scm/output-ps.scm (scm): idem.
9268
9269         * scm/output-svg.scm: remove beam.
9270
9271         * ps/music-drawing-routines.ps: remove draw_beam.
9272
9273         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9274
9275         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9276         add scm_from_locale_string compatibility glue. 
9277
9278 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9279
9280         * scripts/lilypond-book.py: Prevent occuring error when
9281         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9282         times and target file shoud be overwritten.  (Error message said
9283         'input file and output file is same'.)
9284
9285 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9286
9287         * input/regression/slur-extreme.ly,
9288         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9289         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9290         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9291         "excentricity" to "eccentricity".
9292
9293         * Documentation/user/converters.itely: fix URL for Noteedit and
9294         Rosegarden.
9295
9296         * THANKS: added Yoshinobu Ishizaki.
9297
9298 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9299
9300         * scm/define-markup-commands.scm (justify-field): add. 
9301
9302         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9303
9304 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9305
9306         * lily/lookup.cc (filled_box): express filled_box with
9307         round_filled_box
9308
9309         * scm/midi.scm (paper-book-write-midis): new function. Write all
9310         performances in numbered MIDI files.
9311
9312         * lily/performance-scheme.cc (LY_DEFINE): new file.
9313         (LY_DEFINE): new function ly:performance-write.
9314
9315         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9316         new function.
9317         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9318
9319         * scm/framework-*.scm: use port arguments throughout.
9320
9321         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9322
9323         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9324
9325         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9326
9327         * scm/framework-texstr.scm (output-framework): 
9328
9329         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9330
9331         * scm/output-lib.scm (tablature-stem-attachment-function):
9332         tablature stem attachment fix. 
9333
9334 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9335
9336         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9337
9338         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9339
9340         * scm/define-music-types.scm (music-descriptions): don't use
9341         Music_wrapper type.
9342
9343         * lily/paper-column.cc (print): print moment too.
9344
9345         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9346         remove compatibility cruft.
9347
9348         * lily/parser.yy (score_body): \score can only begin with Music. 
9349
9350         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9351         make-score. Take music argument only. Move parser interaction to
9352         Scheme.
9353
9354         * scm/lily-library.scm (scorify-music): new function.
9355
9356         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9357         (datadir): remove resource import.
9358         (print_environment): remove get_bbox()
9359         (cp_to_dir): remove pre 1.5.2 compat glue.
9360
9361 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9362
9363         * lily/include/simple-spacer.hh (Module): idem.
9364
9365         * lily/include/spring.hh (struct Spring): store inverse
9366         strength. This prevents division by zero.
9367
9368         * VERSION: release 2.7.0
9369         
9370         * lily/include/music.hh (class Music): remove Music::duration_log()
9371
9372         * lily/stem-engraver.cc (make_stem): take duration log from event.
9373
9374         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9375
9376 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9377
9378         * scm/lily.scm (ly:load): load autochange.scm
9379
9380         * Documentation/user/tutorial.itely (Running LilyPond for the
9381         first time): remove reference to DVI/TeX
9382
9383         * scm/define-markup-commands.scm (text): add \text markup command.
9384
9385         * configure.in (reloc_b): bump requirement to Python 2.2.
9386
9387         * lily/include/dots.hh (class Dots): make has_interface() static.
9388
9389         * python/convertrules.py (conv): add rule for ly:grob-default-font
9390
9391         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9392         alphabetical order.
9393
9394         * input/regression/trill-spanner-pitched.ly: new file.
9395
9396         * lily/font-interface-scheme.cc (LY_DEFINE): function
9397         ly:grob-default-font (changed from get-default-font).
9398
9399         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9400
9401         * lily/note-head.cc (internal_print): if style is not a symbol,
9402         set style to 'default. 
9403         (internal_print): no style suffix if glyph-name-procedure not
9404         set. Default to quarter head.
9405
9406         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9407
9408         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9409
9410         * ly/music-functions-init.ly: \pitchedTrill
9411
9412         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9413
9414         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9415
9416         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9417
9418         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9419
9420         * po/fr.po: update
9421
9422         * po/de.po: update.
9423
9424 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9425
9426         * Documentation/user/changing-defaults.itely: add link
9427         to grob-iterface.
9428
9429         * Documentation/user/advanced-notation.itely: add material
9430         to Setting automatic beam behaviour.  Thanks, Joe!
9431
9432         * Documentation/user/lilypond.itely: change encoding to utf-8.
9433
9434 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9435
9436         * Documentation/user/advanced-notation.itely (Setting automatic
9437         beam behavior): Correct the documentation of
9438         revert-auto-beam-setting (backportme)
9439
9440 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9441
9442         * lily/ly-module.cc (ly_make_anonymous_module): define
9443         %module-public-interface of module. 
9444
9445         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9446         without lexer.
9447
9448 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9449
9450         * input/regression/fret-diagrams.ly: stretch example.
9451
9452 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9453
9454         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9455         Fodor).
9456
9457 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9458
9459         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9460
9461         * Documentation/user/examples.itely, lilypond-book.itely:
9462         change \RequirePackage to \usepackage.
9463
9464         * Documentation/user/global.itely: document copyright and tagline.
9465
9466 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9467
9468         * Documentation/user/basic-notation.itely (Transpose): remove link
9469         to nonexistent UntransposableMusic.
9470
9471         * scm/output-svg.scm: remove old definitions.
9472
9473         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9474         invoking.
9475
9476         * python/lilylib.py (search_exe_path): new function.
9477
9478 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9479
9480         * python/lilylib.py (mkdir_p): remove setup_environment()
9481         (backportme)
9482
9483         * buildscripts/mutopia-index.py (headertext): trim text.
9484
9485         * Documentation/topdocs/NEWS.tely (Top): refresh.
9486
9487         * scm/define-markup-commands.scm (wordwrap-string): new function:
9488         split string in paras and words.
9489         (wordwrap-markups): new function.
9490         (wordwrap-stencils): new function. 
9491         (justify): use it.
9492         (wordwrap): use it.
9493         (wordwrap-string): use it
9494         (justify-string): use it.
9495
9496         * scm/lily-library.scm (regexp-split): new function.
9497
9498         * scm/define-markup-commands.scm: remove encoded-simple. 
9499         remove font-markup.
9500         (fontsize): remove old version  of fontsize.
9501         (wordwrap): new markup function. Wrap into paragraphs.
9502
9503         * VERSION: Branch lilypond_2_6
9504         (MINOR_VERSION): go to 2.7.0
9505
9506 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9507
9508         * po/zh_TW.po: update from translation project.
9509
9510 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9511
9512         * scm/midi.scm: compile fix.
9513
9514 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9515
9516         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9517         patch. Now, the tempfile module is loaded too, not only used.
9518
9519 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9520
9521         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9522         0.05 - 1.00 to 0.25 - 1.00
9523
9524         * scm/midi.scm: moved the default-instrument-equalizer procedure
9525         to just under the insturment-equalizer-alist it takes as an
9526         argument.
9527
9528 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9529
9530         * Documentation/user/advanced-notation.itely (Font selection):
9531         remove CMR note.
9532
9533         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9534
9535 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9536
9537         * THANKS: Add UTF-8 marker.
9538
9539         * Documentation/user/point-and-click.itely (http): Update: use
9540         lilypond-invoke-editor.  Fix: instruct to use user.js.
9541
9542 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9543
9544         * ly/titling-init.ly: implements printpagenumber, increases
9545         space between dedication and title (to avoid collisions with
9546         "g" and "q" in dedication), and nicer logic about copyright
9547         and instrument fields being printed on the first page.
9548         Thanks Vincent!
9549
9550         * Documentation/user/global.itely: document printpagenumber.
9551
9552 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9553
9554         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9555
9556 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9557
9558         * THANKS: update to 2.6
9559
9560         * VERSION: 2.6.0 released.
9561
9562 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9563
9564         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9565         rule, errorneously removed probably because of misleading comment.
9566
9567 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9568
9569         * python/lilylib.py (datadir): py2exe comments.
9570
9571         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9572
9573         * configure.in (reloc_b): make fontconfig REQUIRED.
9574
9575 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9576
9577         * po/fi.po: add latest translations.
9578
9579 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9580
9581         * ChangeLog: recode utf-8
9582
9583         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9584         logo.
9585
9586         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9587
9588         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9589
9590         * python/convertrules.py (do_conversion): don't print program_name
9591         from within a module
9592
9593         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9594
9595         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9596
9597 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9598
9599         * Documentation/user/lilypond-book.itely,
9600         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9601
9602         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9603         fixes baseline-skip.  Thanks Vincent!
9604
9605         * Documentation/user/advanced-notation.itely, global.itely:
9606         moved "Selecting font sizes" to global, since it deals with
9607         notation font size, not text fonts.
9608
9609 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9610
9611         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9612         to fonts.
9613
9614 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9615
9616         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9617         workaround since /dev/stdin doesn't work on Cygwin. Using a
9618         temporary file in the current directory since latex doesn't
9619         understand the path name to the default TMP in Cygwin (at least on
9620         win XP).
9621         
9622         * Documentation/user/global.itely (Creating titles): Correct
9623         misprint in example. Thanks to Rob Vlasaty.
9624
9625 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9626
9627         * VERSION (PATCH_LEVEL): release 2.5.32
9628
9629         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9630         variable in lily module
9631
9632         * scm/framework-ps.scm (output-classic-framework): error message
9633         regarding the classic framework.
9634
9635         * Documentation/user/henle-flat-gray.png (Module): new file.
9636
9637         * Documentation/user/baer-flat-gray.png (Module): new file.
9638
9639         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9640         whiteout for markups.
9641
9642         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9643         regex too. This fixes change clef appearance in PDF. 
9644
9645         * ttftool/include/*: remove.
9646
9647         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9648
9649         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9650
9651         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9652
9653         * ttftool/*: remove ttftool subdirectory.
9654
9655         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9656
9657         * lily/ttf.cc (print_header): new file. Convert to type42, using
9658         FreeType to parse the TTF. 
9659
9660         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9661         and post table may differ. Pass around post_nglyphs as well.
9662
9663 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9664
9665         * ly/music-functions-init.ly (musicMap): new music function
9666         musicMap. 
9667         
9668 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9669
9670         * make/mutopia-rules.make: anti-alias-factor = 2
9671
9672         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9673         page switch.
9674
9675         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9676         anti-alias-factor for lilypond-book runs.
9677
9678         * scm/ps-to-png.scm (scale-down-image): new function.
9679         (my-system): new function.
9680         (make-ps-images): blow up GS resolution by anti-alias-factor,
9681         scale down image by anti-alias-factor.  This improves appearance
9682         of bitmaps
9683         (make-ps-images): remove showpage. Fixes spurious empty png at
9684         end.
9685
9686         * scm/framework-ps.scm (write-preamble): downcase filename before
9687         string-matching. Should fix .TTF files (as opposed to ttf files)  
9688
9689         * Documentation/user/tutorial.itely (Running LilyPond for the
9690         first time): separate subsections for windows, macos and unix.  
9691
9692         * Documentation/user/invoking.itely (Updating files with
9693         convert-ly): add MacOS X note.
9694
9695 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9696
9697         * Documentation/user/introduction.itely (Engraving): don't include
9698         file optical-spacing, add directly.
9699
9700         * lily/paper-outputter.cc (file): open file in binary mode. This
9701         fixes OTF embedding on windows.
9702
9703 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9704
9705         * scm/framework-ps.scm (write-preamble): remove debugging output.
9706
9707         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9708
9709         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9710         outdir.
9711         (install-fc-cache): install font cache in installation directories.
9712
9713 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9714
9715         * scm/editor.scm (editor-command-template-alist): Use char iso
9716         column, except for Emacs.
9717         (get-editor-command): Substitute char too (Bertalan Fodor).
9718
9719 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9720
9721         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9722         quoted ~s.  This should fix PNG output on Windows; single quotes
9723         are regular characters on Windows.
9724
9725 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9726
9727         * Documentation/user/basic-notation.itely: include ChoirStaff
9728         in System start delimiters.
9729
9730         * Documentation/user/putting.itely: new doc section on
9731         fixing overlapping notation.
9732
9733 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9734
9735         * Documentation/user/global.itely (Paper size): \paper is in
9736         \book, not \score.
9737
9738         * make/mutopia-rules.make: -ddelete-intermediate-files
9739
9740         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9741
9742 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9743
9744         * ChangeLog: Recode utf-8.
9745
9746         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9747         datadir with .py modules.
9748
9749 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9750
9751         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9752
9753 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9754
9755         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9756         
9757         * scm/framework-ps.scm (write-preamble): remove status check.
9758
9759         * Documentation/user/invoking.itely (Updating files with
9760         convert-ly): remove -o option.
9761
9762         * VERSION (PACKAGE_NAME): release 2.5.31
9763
9764         * scm/framework-ps.scm (write-preamble): use ly:system.
9765         (write-preamble): verbosity.
9766
9767         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9768
9769         * python/convertrules.py: new file. Store conversion rules
9770         separately.
9771
9772 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9773
9774         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9775
9776 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9777
9778         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9779         \musicDisplay 
9780
9781         * Documentation/user/instrument-notation.itely (More stanzas): Add
9782         reference to StanzaNumber.
9783
9784 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9785
9786         * THANKS: separate section for website translators.
9787
9788 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9789
9790         * Documentation/topdocs/INSTALL.texi: update vim info;
9791         thanks Simon Bailey!
9792
9793         * Documentation/user/advanced-notation.itely: included
9794         color names.
9795
9796         * Documentation/user/advanced-notation.itely,
9797         Documentation/usr/notation-appendices.itely: moved
9798         color names into an appendix.
9799
9800 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9801         
9802         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9803
9804         * scm/lily.scm (lambda): initialize program options from here.
9805
9806         * scm/framework-*.scm: add header info.
9807
9808         * lily/main.cc (parse_argv): only set output format to pdf if no
9809         other format specified.
9810
9811         * scm/backend-library.scm (postprocess-output): process
9812         'delete-intermediate-files after running convert-to-*. This fixes
9813         PNG generation when 'delete-intermediate-files is set.
9814         
9815 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9816
9817         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9818         links on website. 
9819
9820 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9821
9822         * Documentation/topdocs/INSTALL.texi,
9823         Documentation/user/lilypond-book.itely: typos.
9824
9825 2005-06-12  Pal Benko  <benkop@freestart.hu>
9826
9827         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9828         added between program name and switch; -b changed to -f not
9829         to generate pdf
9830
9831 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9832
9833         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9834         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9835
9836         * input/sakura-sakura.ly: add \midi.
9837
9838         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9839         iso. python find. 
9840
9841         * ttftool/test.c (main): cosmetics.
9842
9843         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9844
9845         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9846         create a ttf2ps binary.
9847
9848         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9849
9850         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9851         true.
9852
9853 2005-06-11  Graham Percival <gperlist@shaw.ca>
9854
9855         * Documentation/user/lilypond-book.itely: add warning about
9856         the font warnings in dvips.
9857
9858 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9859
9860         * THANKS: typo
9861
9862         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9863
9864         * GNUmakefile.in: remove links for .map, .enc
9865         don't fail if out/ doesn't exist yet.
9866
9867 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9868
9869         * ttftool/util.c (surely_read): return nbytes
9870
9871         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9872
9873         * VERSION (PACKAGE_NAME): release 2.5.30
9874
9875         * flower/string-convert.cc (precision_string): >? fix.
9876
9877         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9878         (make-ps-images): add verbose -q too.
9879
9880         * lily/default-actions.cc (Module): new file. default
9881         {book,score}-print functions.
9882
9883         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9884         pass results via parseStringResult, lookup via ly:parser-lookup.  
9885
9886         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9887         constructors.
9888         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9889         (parse_string): idem.
9890
9891         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9892
9893         * lily/main.cc (main_with_guile): copy be_verbose_global into
9894         ly_set_option()
9895
9896 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9897
9898         * scm/backend-library.scm (postscript->pdf):
9899         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9900         verbose mode.  Search for several names of gs executable.
9901
9902 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9903
9904         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9905         directly. This fixes a massive memory leak, provided you use CVS
9906         GUILE.
9907
9908 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9909
9910         * ly/property-init.ly: Added tieDashed.
9911
9912         * THANKS: Added some bughunters for 2.5.
9913
9914 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9915
9916         * lily/program-option.cc: add debug-gc option.
9917
9918         * lily/include/lily-guile-macros.hh: don't protect exported module
9919         objects.
9920
9921         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9922
9923         * scm/backend-library.scm (postscript->pdf): use
9924         delete-intermediate-files iso. running-from-gui? 
9925
9926         * ttftool/util.c (surely_read): robustness. Allow read() to return
9927         less bytes than requested, as per posix standards.
9928
9929         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9930         program option.
9931
9932         * ttftool/include/ttftool.h ("C"): rename verbosity to
9933         ttf_verbosity. Add to public interface.
9934
9935         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9936
9937         * lily/program-option.cc: rename from scm-option.cc
9938
9939         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9940         (get_help_string): Print pretty help string.
9941
9942         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9943         to snippet preamble.
9944
9945         * lily/scm-option.cc: remove command-line-settings option. Fold
9946         all command-line options plus default settings in a generic
9947         interface. 
9948
9949         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9950         texts too.
9951
9952 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9953
9954         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9955         or EXT_ components non-empty.
9956
9957 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9958
9959         * scm/lily.scm (running-from-gui?): Export.
9960
9961         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9962         output in .ly source directory.
9963
9964 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9965
9966         * ttftool/util.c (surely_lseek): more verbosity.
9967
9968         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9969         compile.
9970
9971         * lily/parser.yy (Repeated_music): remove >? 
9972
9973         * scm/backend-library.scm (postscript->pdf): Support for
9974         -dgs-font-load=1
9975
9976         * scm/framework-ps.scm (write-preamble): make font loading
9977         switchable to GS via --define-default gs-font-load=1
9978
9979 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9980
9981         * Documentation/user/global.itely: added \layout docs.
9982
9983 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9984
9985         * lily/lily-parser-scheme.cc: add unistd.h
9986
9987 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9988
9989         * scm/editor.scm: add char argument.
9990
9991         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9992
9993         * ttftool/util.c (syserror): use errno for better error reporting.
9994
9995         * lily/source-file.cc (get_counts): new function. Calc column,
9996         line and char count in one go.
9997
9998         * lily/binary-source-file.cc (quote_input): rename to quote_input
9999
10000         * lily/input.cc (set): new function.
10001
10002 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10003
10004         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10005         directory part of file name to search directory.
10006
10007         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10008         search path and chdir to DIR if --outname=DIR used.
10009
10010         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10011         existence before appending original path.
10012
10013 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10014
10015         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10016         file" massage.
10017
10018         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10019         texinfo.tex is always used.
10020         
10021 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10022
10023         * flower/include/axis.hh: rename from axes.hh
10024
10025         * lily/include/text-interface.hh (Module): rename from text-item.hh
10026
10027         * VERSION (PATCH_LEVEL): release 2.5.29
10028
10029         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10030
10031         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10032         (handle-macfont): new function. Call fondu for Native mac fonts.
10033
10034         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10035         '() case.
10036
10037 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10038
10039         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10040         multi-page.  Fix .eps regular expression.
10041
10042 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10043
10044         * Documentation/user/putting.itely: add info on modifying templates.
10045
10046         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10047         misc small changes.
10048
10049 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10050
10051         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10052
10053         * scripts/lilypond-ps2png.scm
10054
10055         * VERSION (PACKAGE_NAME): release 2.5.28
10056
10057 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10058
10059         * lily/main.cc (prepend_env_path): Do not append /, that does not
10060         work.  Localedir lives in datadir, not in prefix.
10061
10062         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10063         hack for windows.
10064
10065         * flower/include/file-cookie.hh: Compile fix.
10066
10067 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10068
10069         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10070
10071         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10072         system primitives.
10073         (gulp-port): using read-string!/partial. We don't want to read an
10074         entire PS file  (GUILE 1.6 limits strings to 16M) 
10075
10076         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10077         properties. Add font-interface. 
10078
10079         * scm/define-grob-properties.scm (all-user-grob-properties):
10080         remove old bracket properties.
10081
10082         * scm/x11-color.scm: reformat. 
10083
10084         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10085         LedgerLineSpanner if new StaffSymbol is found. 
10086
10087         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10088         staff-symbol for finishing staff. 
10089
10090         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10091
10092         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10093         change black to currentColor everywhere. This fixes color support
10094         in SVG.
10095
10096 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10097
10098         * input/regression/fret-diagrams.ly: new file to test fret diagram
10099         capability
10100
10101         * scm/output-tex.scm: remove white-dot and white-text
10102
10103         * scm/output-ps.scm: remove white-dot and white-text
10104
10105         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10106         using ly:stencil-in-color instead
10107         (draw-dots) : remove call to white-dot
10108
10109 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10110
10111         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10112         support.
10113
10114         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10115
10116         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10117
10118         * flower/file-cookie.cc: new file. lily_cookie extension.
10119         
10120 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10121
10122         * scm/editor.scm (editor-command-template-alist): Add syn
10123         editor (Jaap [de Vos]).
10124
10125 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10126
10127         * scripts/lilypond-ps2png.scm:
10128         * scm/ps-to-png.scm: New file.
10129
10130         * scm/backend-library.scm (postscript->png): Use it.
10131
10132         * scripts/lilypond-ps-to-png.py: Remove file.
10133
10134         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10135
10136 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10137
10138         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10139
10140         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10141         start on grace moment. Fixes autobeam-grace.ly.
10142
10143         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10144         process anything unless we're at the end of a pending beam. Fixes
10145         syncopated 8ths beamed across a beat.
10146
10147 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10148
10149         * scm/editor.scm (editor-command-template-alist): Start emacs if
10150         emacslient fails.
10151
10152         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10153
10154         * flower/file-path.cc (is_file, is_dir): Export.
10155
10156         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10157
10158 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10159
10160         * lily/easy-notation.cc: Added include cctype to correct
10161         compilation error.
10162
10163 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10164
10165         * scm/backend-library.scm (postscript->pdf): set resolution to
10166         1200, so bitmap fonts aren't that ugly. 
10167
10168         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10169
10170         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10171         parent if we have a notehead. Fixes incorrect offsets when
10172         Paper_column is very wide in the X direction.
10173
10174         * input/regression/font-family-override.ly (Module): new file.
10175
10176         * scm/font.scm (make-pango-font-tree): new function.
10177
10178         * lily/beam.cc (before_line_breaking): remove warning about less
10179         than 2 visible stems. We still get a warning when there is only
10180         one stem.
10181
10182 2005-06-01  Werner Lemberg  <wl@gnu.org>
10183
10184         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10185         correctly.
10186
10187 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10188
10189         * lily/slur-scoring.cc (generate_avoid_offsets): new
10190         function. Generate avoid offsets once per slur.
10191
10192         * lily/slur.cc (add_extra_encompass): add dependency to
10193         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10194
10195         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10196         too. Fixes inf error with added bass notes.
10197
10198         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10199         argument anymore.
10200
10201         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10202
10203         * input/tutorial/lbook-latex-test.tex: add line length test.
10204
10205         * scripts/lilypond-book.py (set_default_options): new
10206         function. Call this before dissecting snippets, so linewidth
10207         settings reach the snippets.
10208
10209 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10210
10211         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10212
10213 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10214
10215         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10216
10217 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10218
10219         * stepmake/aclocal.m4: More autopackage friendliness.
10220
10221 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10222
10223         * Documentation/index.html.in: remove link to LSR.
10224
10225         * Documentation/user/global.itely: remove duplicate
10226         "dedication" \header{} section.
10227
10228 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10229
10230         * VERSION (PACKAGE_NAME): release 2.5.27.
10231
10232         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10233         too. Plugs memory leak.
10234
10235         * make/lilypond.fedora.spec.in (Group): remove
10236         lilypond-pdfpc-helper.
10237
10238         * scripts/GNUmakefile (SEXECUTABLES): remove
10239         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10240
10241         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10242         'typewriter family.
10243
10244         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10245         memory leak.
10246
10247         * lily/parser.yy (score_body): don't clone Score, that's done in
10248         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10249
10250         * lily/score-engraver.cc (derived_mark): new function.
10251         (initialize): unprotect Paper_score. This fixes a memory leak.
10252
10253         * lily/score-performer.cc (derived_mark): new function.
10254
10255         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10256
10257         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10258         spurious warning.
10259
10260         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10261         serif.
10262
10263 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10264
10265         * configure.in (reloc_b): Add --enable-relocation.
10266
10267 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10268
10269         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10270
10271         * input/regression/alignment-order.ly: add Staff example.
10272
10273 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10274
10275         * po/fr.po: update.
10276
10277 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10278
10279         * Documentation/index.html.in: add link to LSR.
10280
10281 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10282
10283         * scm/define-stencil-commands.scm (Module): new file. Register all
10284         allowed stencil expression heads in a central place.
10285
10286         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10287         ly:make-stencil
10288
10289         * lily/stencil-expression.cc (all_stencil_heads): registering
10290         stencil expressions.
10291
10292         * lily/stencil-interpret.cc: new file. Stencil expression
10293         interpreting.
10294
10295         * input/xiao-haizi-guai-guai.ly: move file back.
10296
10297 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10298
10299         * Documentation/user/advanced.itely, converters.itely,
10300         instrument-notation.itely, lilypond-book.itely: misc small
10301         changes.
10302
10303 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10304
10305         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10306
10307         * make/lilypond.fedora.spec.in: Fix source url.
10308
10309         * cygwin: Update from mingw patches.
10310
10311         * scm/editor.scm (editor-command-template-alist): Use jedit
10312         -reuseview (Bertalan), add uedit (Patrick Huberts).
10313
10314         * input/xiao-hai-zi-guai-guai.ly: Rename from
10315         xiao-haizi-guai-guai.ly.
10316
10317         * input/*: Reindent, do not use TAB.
10318
10319         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10320         white background.
10321
10322 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10323
10324         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10325         numerical overflow error.
10326
10327 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10328         
10329         * abc2ly.py: fix to syntax error in multi-part output.
10330
10331 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10332
10333         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10334         with disappearing span bars when alignAboveContext is active
10335
10336         * lily/property-iterator.cc (check_grob): use is-grob?
10337         object-property. Fixes crash-key-sig-font-size.ly. 
10338
10339 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10340
10341         * lily/bar-line.cc (print): don't round barlines; this produces
10342         odd aliasing effects in Acroread.
10343
10344         * lily/timing-engraver.cc (process_music): robustness fix.
10345
10346         * lily/context-def.cc (filter_engravers): bugfix.
10347
10348 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10349
10350         * lily/lilypond.rc.in: Add ly-icon.
10351
10352         * lily/GNUmakefile: 
10353         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10354         rules.
10355
10356 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10357
10358         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10359
10360         * ps/music-drawing-routines.ps: 
10361
10362         * scm/output-ps.scm: remove draw ez_ball.
10363
10364         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10365         EasyNotation context definition.
10366
10367         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10368         Text_interface and color for making easy note heads.
10369
10370         * lily/stencil.cc (with_color): new function.
10371
10372         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10373
10374         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10375         output routine. Zigzag now works in SVG too.
10376
10377         * scm/output-tex.scm (filledbox): idem.
10378
10379         * scm/output-svg.scm (filledbox): idem.
10380
10381         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10382
10383         * lily/lookup.cc (horizontal_line): use draw-line. 
10384
10385         * lily/system-start-delimiter.cc: remove old staff bracket code.
10386
10387         * mf/feta-haak.mf: further tweaks.
10388
10389         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10390
10391         * mf/feta-generic.mf: include feta-haak.
10392
10393         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10394
10395         * scm/framework-ps.scm (write-preamble): only load fonts if their
10396         filename is a string. 
10397
10398 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10399
10400         * scm/output-svg.scm (circle): support circle.
10401         (bracket): stub for bracket.
10402
10403         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10404         correct.
10405
10406 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10407
10408         * Documentation/user/lilypond.tely, advanced-notation.itely,
10409         basic-notation.itely, instrument-notation.itely, global.itely,
10410         introduction.itely, tutorial.itely: rearranging, editing,
10411         clean-up.
10412
10413         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10414         for compiling on FreeBSD.
10415
10416 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10417
10418         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10419         otf files.
10420
10421         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10422         bugfixes.
10423
10424         * VERSION: 2.5.26 released.
10425
10426         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10427
10428 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10429
10430         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10431         if printpagenumber is false.
10432
10433 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10434
10435         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10436         cache warning.
10437
10438         * lily/tie.cc (print): support dotted ties.
10439         
10440 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10441
10442         * scm/define-grobs.scm (all-grob-descriptions): switch off
10443         debugging
10444         (all-grob-descriptions): Arpeggio has Y-extent.
10445
10446         * scm/define-music-properties.scm (all-music-properties): document
10447         length-callback and start-callback as "read-only".
10448
10449         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10450         length-callback after creation. 
10451
10452         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10453         compressmusic -> compressMusic.
10454
10455         * ly/music-functions-init.ly (oldaddlyrics): idem.
10456
10457         * lily/parser.yy: NewLyricCombineMusic ->
10458         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10459
10460 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10461
10462         * ly/Welcome_to_LilyPond.ly: typo.
10463
10464 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10465
10466         * Documentation/user/lilypond.tely: move changing-defaults to be
10467         before global issues.
10468
10469         * Documentation/user/basic-notation.itely: move Transpose section
10470         here from advanced/Other.
10471
10472         * Documentation/user/changing-defaults.itely,
10473         advanced-notation.itely: move Fonts to advanced, edit.
10474
10475 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10476
10477         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10478         # before negative integers.
10479
10480 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10481
10482         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10483
10484         * Documentation/user/lilypond.tely: change Unified index to
10485         LilyPond index.
10486
10487         * Documentation/user/advanced-notation.itely,
10488         instrument-notation.itely: editing.
10489
10490 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10491
10492         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10493
10494         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10495
10496 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10497
10498         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10499         ly:port-move.  Needs to be stderr-specific on mingw.
10500         Run fixcc.
10501
10502 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10503
10504         * lily/general-scheme.cc (ly:port-move): Remove.
10505
10506         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10507         windows.
10508
10509         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10510         variables.  This eliminates the need for a gs.bat wrapper, which
10511         opens a console.
10512
10513         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10514         * scm/lily.scm (running-from-gui?): 
10515         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10516         artifact of not compiling with -mwindows.
10517
10518         * scm/editor.scm: Define PLATFORM.
10519
10520 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10521
10522         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10523         can start to cut & paste lilypond-book fragments.  
10524
10525         * scm/define-music-types.scm (music-descriptions): remove
10526         UntransposableMusic
10527
10528 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10529
10530         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10531
10532 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10533
10534         * Documentation/user/instrument-notation.itely: remove *Engraver.
10535
10536         * Documentation/user/advanced-notation.itely: edit, rearrange.
10537
10538 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10539
10540         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10541         findresource iso. findfont for CID CFF fonts.
10542
10543         * VERSION (PACKAGE_NAME): release 2.5.25
10544
10545         * ly/Welcome_to_LilyPond.ly: add  \version
10546
10547 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10548
10549         * Documentation/user/programming-interface.itely: move
10550         \displayMusic into its own section.
10551
10552         * Documentation/user/basic-notation.itely: finish editing.
10553
10554 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10555
10556         * flower/file-path.cc (find): don't throw away file_name.dir, but
10557         append to it. Fixes \include with directories.
10558
10559         * flower/include/file-path.hh (class File_path): don't derive from
10560         Array<String>.
10561
10562         * flower/include/file-name.hh (class File_name): remove to_str0()
10563
10564         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10565         Hara_kiri_engraver in separate file.
10566
10567         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10568         translation went wrong. Fixes vertically translated slurs.
10569
10570 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10571
10572         * Documentation/user/basic-notaton.itely: editing.
10573
10574 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10575
10576         * Documentation/user/macros.itexi, basic-notation.itely:
10577         add @commonprop (commonly used properties) macro.
10578
10579 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10580
10581         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10582
10583         * scripts/lilypond-book.py (invokes_lilypond): new function
10584         (main): only run fontextract if invokes_lilypond() is true.
10585
10586         * lily/function-documentation.cc (ly_add_function_documentation):
10587         duh, use !=
10588
10589         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10590
10591         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10592
10593         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10594
10595         * lily/function-documentation.cc (ly_add_function_documentation):
10596         use scm_hash_table_p() for checking.
10597
10598 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10599
10600         * Documentation/user/advanced-notation.itely (Text scripts):
10601         Change nonexisting @internalsref{Text markup} to @ref{Text
10602         markup}.  Change @internalsref{Text script} to
10603         @internalsref{TextScript}.
10604
10605         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10606
10607 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10608
10609         * Documentation/user/tutorial.itely, basic-notation.itely,
10610         changing-defaults.itely: remove duplicate cindex entries
10611         that appear on the same page.
10612
10613         * scm/define-grobs.scm: change default padding for TextSpanner.
10614
10615         * Documentation/topdocs/AUTHORS.texi: update email address.
10616
10617         * Documentation/user/global.itely: add info about \include.
10618
10619 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10620
10621         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10622         when running-from-gui.
10623
10624         * scm/editor.scm (get-editor): Add platform defaults.
10625
10626         * scm/backend-library.scm (postscript->pdf): Typo.
10627
10628 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10629
10630         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10631
10632         * lily/font-config.cc (init_fontconfig): add warning about cache.
10633
10634 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10635
10636         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10637
10638 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10639
10640         * lily/horizontal-bracket.cc (print): Take care of the direction
10641         property so brackets above the stave point downwards. 
10642
10643         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10644         for HorizontalBracket so it doesn't end up within the stave.
10645
10646 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10647
10648         * lily/GNUmakefile (default): Typo.
10649
10650         * scm/lily.scm (PLATFORM): Export.
10651
10652         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10653         load-font-via-GS, ttftool or fopencookie is broken on windows.
10654         
10655         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10656         -dSAFER, that is broken on windows.
10657
10658 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10659
10660         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10661         for FlexLexer.h
10662
10663         * scripts/lilypond-invoke-editor.scm: remove stray -
10664
10665 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10666
10667         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10668         Fixes deprecation warning.
10669
10670         * flower/include/string.icc (to_string): Only inline if
10671         -DSTRING_UTILS_INLINED.
10672
10673         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10674         name.  Remove windows comment.
10675
10676         * scm/editor.scm (slashify): New function.
10677         (get-editor-command): Use it.
10678         (get-command-template): Do not alter editor command if
10679         environment value includes `%(file)s' magic.
10680
10681         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10682         (dissect-uri): Use it.
10683         (unquote-uri): Bugfix.
10684
10685 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10686
10687         * scm/framework-ps.scm (write-preamble): add TTF rule.
10688
10689         * Documentation/topdocs/README.texi (Top): remove note about
10690         xdelta.
10691
10692         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10693         requirement.
10694
10695         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10696         function. Figure out where FlexLexer.h lives
10697
10698         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10699         
10700 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10701
10702         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10703         with Windows root in file name.
10704
10705         * scm/backend-library.scm (ly:system): Only redirect output (using
10706         system and shell, ugh) if /dev/null is writable.
10707
10708         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10709         windows icon.
10710
10711         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10712         on Mingw.
10713
10714         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10715         click.
10716
10717         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10718         use result of stat when available.
10719
10720         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10721         absolute file name and root.
10722
10723         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10724
10725         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10726
10727         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10728         slashes in file name.
10729
10730 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10731
10732         * Documentation/user/preface.itely (Preface): Run
10733         texinfo-all-menus-update.
10734
10735         * scm/editor.scm (get-editor-command): Bugfix: allow full
10736         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10737
10738         * Documentation/pictures/lilypond-48.xpm: New file.
10739
10740         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10741
10742         * ly/Welcome_to_LilyPond.ly: New file.
10743
10744         * lily/main.cc (main): Only identify if we have a terminal.
10745
10746         * scm/backend-library.scm (postscript->png)
10747         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10748         non-/bin/sh).
10749
10750 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10751
10752         * Documentation/topdocs/AUTHORS.texi: polish, update.
10753
10754 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10755
10756         * Documentation/user/preface.itely (Notes for version 2.6): new
10757         notes for 2.6
10758
10759         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10760         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10761         is not fully contained" warnings.
10762
10763         * lily/slur-scoring.cc (get_bound_info): remove warning.
10764
10765         * lily/staff-symbol-engraver.cc (process_music): start initial
10766         spanner in process_music(). This fixes overrides of StaffSymbol
10767         properties.
10768
10769         * scm/framework-pdf.scm (Module): remove.
10770
10771         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10772
10773         * lily/ambitus-engraver.cc: formatting cleanups.
10774
10775         * mf/feta-solfa.mf (Module): remove.
10776
10777         * ChangeLog: more details about contributions.
10778
10779 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10780
10781         * lily/align-interface.cc (align_elements_to_extents): warn if
10782         called too early. Fixes: disappearing-staff-lines.ly
10783
10784         * VERSION (PACKAGE_NAME): release 2.5.24
10785
10786 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10787
10788         * stepmake/aclocal.m4: Typo.
10789
10790         * flower/string.cc (substitute): Take two strings or two
10791         characters.  Update callers.
10792
10793 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10794
10795         * flower/file-name.cc (File_name): Slashify.
10796
10797         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10798
10799         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10800
10801         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10802
10803         * configure.in (gui_b): Use it.
10804
10805         * lily/lilypond.rc.in: New file.
10806
10807         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10808
10809 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10810
10811         * Documentation/user/advanced-notation.itely: edit of Text
10812         section; clarify text scripts vs. text markup.
10813
10814 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10815
10816         * lily/multi-measure-rest-engraver.cc
10817         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10818         separation items on start. Fixes mm rests in start of score.
10819
10820         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10821         don't access StaffSymbol if not there.
10822         Fixes: crash-staff-symbol-engraver.ly.
10823
10824         * lily/instrument-name-engraver.cc (class
10825         Instrument_name_engraver): data member first_. Create
10826         InstrumentName on start. 
10827
10828 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10829
10830         * Documentation/user/instrument-notation.itely: add guitar
10831         position.
10832
10833         * Documentation/user/introduction.itely,
10834         Documentation/user/lilypond.tely,
10835         Documentation/user/tutorial.itely: begin pruning
10836         unused (duplicated) cindex entries and misc cleanup.
10837
10838 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10839
10840         * input/test/volta-chord-names.ly: Bring the explanation up to
10841         date.
10842
10843 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10844
10845         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10846         Specify `@documentencoding utf-8' for html, ignore warnings.
10847
10848 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10849
10850         * THANKS: Added bughunters.
10851
10852 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10853
10854         * lily/main.cc: update help string for `lilypond -H'.
10855
10856         * po/fi.po: update.
10857         
10858 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10859
10860         * Documentation/user/advanced-notation.itely: minor fixes.
10861
10862 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10863
10864         * scm/editor.scm: New module.
10865
10866         * scm/lily.scm (gui-main): Use it.
10867
10868         * scm/framework-gnome.scm (spawn-editor): Use it.
10869
10870         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10871
10872 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10873
10874         * scm/framework-ps.scm (load-font-via-GS):  new function.
10875
10876         * lily/pango-font.cc (pango_item_string_stencil): add support for
10877         CID keyed font.
10878
10879         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10880
10881 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10882
10883         * Documentation/user/basic-notation.itely: add @ref.
10884
10885         * Documentation/user/advanced-notation.itely: add example
10886         of 5/8 beaming.
10887
10888 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10889
10890         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10891
10892         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10893         going through ps2pdf wrappers.
10894
10895 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10896
10897         * Documentation/user/instrument-notation.itely: petrucci note
10898         heads: updated docu
10899
10900         * input/regression/note-head-style.ly: updated regression test;
10901         indentation fixes
10902
10903         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10904         heads as default
10905
10906         * mf/parmesan-heads.mf: minor editing; use musicological names
10907         (rather than optical description) as note head names
10908
10909         * scm/output-lib.scm: complete petrucci heads
10910
10911 2005-05-09  Pal Benko  <benkop@freestart.hu>
10912
10913         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10914         heads, but bigger)
10915
10916 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10917
10918         * lily/main.cc (main_with_guile): Remove no files check.
10919
10920         * lily/main.cc (ly:usage): Export to Scheme.
10921
10922         * scm/lily.scm (no-files-handler): New function.
10923
10924         * scm/lily.scm (lilypond-main): Use it.
10925
10926         * configure.in (gui_b): Add mbrtowc checking.
10927         Resurrect [utf8/]wchar.h checking.
10928
10929 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10930
10931         * Documentation/user/advanced-notation.itely (Metronome marks):
10932         Add link to the program reference for MetronomeMark
10933
10934         * Documentation/user/lilypond-book.itely (An example of a
10935         musicological document): Correct the example using psfonts 
10936
10937 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10938
10939         * po/fi.po: update after a lesson how to update entries against
10940         source.
10941         
10942         * po/TODO: document the lesson.
10943
10944 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10945
10946         * configure.in (gui_b): remove wcrtomb checking.
10947
10948         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10949         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10950
10951 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10952
10953         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10954         keep Scheme expressions and strings unmodified when doing the
10955         conversion to postfix notation for slurs and beams. Should
10956         hopefully solve most related conversion problems. 
10957
10958         * Documentation/user/lilypond-book.itely : Clarify and correct how
10959         to call dvips with -h psfonts.
10960
10961 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10962
10963         * Documentation/user/instrument-notation.itely (Entering lyrics):
10964         Typo.  Fixes build.
10965
10966 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10967
10968         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10969
10970         * Documentation/user/lilypond.tely, lilypond-book.itely,
10971         tutorial.itely: change references to 2.5.x to 2.6.x.
10972
10973         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10974         vs \lyricmode.
10975
10976         * Documentation/user/invoking.itely: remove old info about
10977         lilypond-profile.
10978
10979         * Documentation/topdocs/INSTALL.texi: remove old info about
10980         lilypond-profile, add warning about needing international fonts
10981         to build docs.
10982
10983 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10984
10985         * lily/include/grob-info.hh (class Grob_info): make data member
10986         private. Changes throughout.
10987
10988         * input/regression/alignment-order.ly: new file. 
10989
10990         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10991         alignAboveContext and alignBelowContext
10992
10993 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10994
10995         * lily/pfb.cc (LY_DEFINE): add cast.
10996
10997         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10998         matches .otf
10999         (write-preamble): warn about unknown fonts.
11000
11001         * lily/pfb.cc (Module): new function ly:otf->cff
11002
11003         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11004         (get_otf_table): new function.
11005
11006 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11007
11008         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11009         iso. ps2png.
11010
11011 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11012
11013         * po/fi.po: apply second round of update.
11014
11015 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11016
11017         * scm/x11-color.scm (make-x11-color-handler): don't use
11018         #\sp. Apparently doesn't work on all platforms. 
11019
11020 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11021
11022         * Documentation/user/advanced-notation.itely, putting.itely,
11023         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11024
11025 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11026
11027         * VERSION (PACKAGE_NAME): release 2.5.23
11028
11029 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11030
11031         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11032         convert to utf-8.
11033
11034         * THANKS: Add translators for this release, convert to utf-8.
11035
11036         * mf/GNUmakefile (MFTRACE_FLAGS):
11037         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11038         outdir as option (WAS: hardcoded).
11039
11040 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11041
11042         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11043         finished_span_
11044
11045         * THANKS: add Hans Forbrich.
11046
11047         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11048
11049         * Documentation/user/basic-notation.itely (Staff symbol): document
11050         start/stop staff. Reference to ossia.ly
11051
11052         * input/test/ossia.ly: new example using stop and startStaff.
11053
11054         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11055         in other words, don't create "|" barline at start of the score.
11056         (start_translation_timestep): don't set whichBar for start of score.
11057
11058         * input/regression/staff-halfway.ly: use new functionality.
11059
11060         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11061         start and stop staff based on events.
11062
11063         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11064
11065         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11066
11067 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11068
11069         * Documentation/user/programming-interface.itely (How markups work
11070         internally ): remove \encoding reference.
11071
11072 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11073
11074         * scripts/convert-ly.py: Attempt to do a smarter update of 
11075         text markups from versions < 1.9.0 with arbitrary nesting.
11076
11077 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11078
11079         * po/fi.po: convert to utf-8, and update.
11080
11081 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11082
11083         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11084
11085         * lily/*.cc: more <? >? to min/max changes
11086
11087         * lily/include/interpretation-context-handle.hh: rename
11088         Interpretation_context_handle to Context_handle.
11089
11090 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11091
11092         * input/regression/GNUmakefile (local_delete): use `find` together 
11093         with `xargs` to avoid too long argument-lists in cmd line.
11094
11095 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11096
11097         * Documentation/user/introduction.itely: updates "About this manual".
11098
11099         * Documentation/user/advanced-notation.itely,
11100         invoking.itely: minor fixes.
11101
11102 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11103
11104         * COPYING: add font exception. Update FSF address. 
11105
11106         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11107         should be taken without child context.
11108
11109         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11110
11111         * scm/define-markup-commands.scm (triangle): new command, as
11112         robust replacement for unicode Delta/Triangle.
11113
11114 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11115
11116         * ps/music-drawing-routines.ps: add fillp argument.
11117
11118         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11119
11120         * lily/font-config.cc (init_fontconfig): don't add cff/
11121
11122         * VERSION (PACKAGE_NAME): release 2.5.22
11123
11124         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11125
11126         * lily/grace-engraver.cc (consider_change_grace_settings): use
11127         is_alias(). Fixes problem with CueVoice grace notes. 
11128
11129         * lily/simultaneous-music-iterator.cc (construct_children): call
11130         Music_iterator::quit() for iterators that start out invalid. This
11131         fixes indefinitely continuing contexts.
11132
11133         * buildscripts/substitute-encoding.py: new file
11134
11135         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11136         missing @end 
11137
11138         * scripts/lilypond-book.py (write_if_updated): print file name.
11139
11140         * Documentation/user/basic-notation.itely (Explicitly
11141         instantiating voices): idem.
11142
11143         * Documentation/user/advanced-notation.itely (Text spanners):
11144         remove stray { } 
11145
11146         * lily/context.cc (default_child_context_name): the default child
11147         is now first in accepts_list_.
11148
11149         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11150         \defaultchild to all relevant contexts.  This fixes:
11151         drums-pitch.ly.
11152
11153         (Probably also fixes similar problems with ancient
11154         transcriptions getting CueVoices instead of the desired voices.)
11155  
11156         * lily/context-def.cc (get_default_child): new function.
11157         (get_accepted): place default child in front of list.
11158
11159         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11160
11161         * lily/include/context-def.hh (struct Context_def): add
11162         default_accept_
11163
11164 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11165
11166         * scm/define-grobs.scm: remove "remove-first" line, since
11167         the absent property is set to #f anyway.
11168
11169         * Documentation/user/basic-notation.itely,
11170         advanced-notation.itely, instrument-notation.itely: minor
11171         fixes.
11172
11173         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11174
11175         * Documentation/user/advanced-notation.itely,
11176         changing-defaults.itely: consolidate Text stuff in
11177         advanced notation.
11178
11179         * Documentation/user/global.itely: better docs for \header.
11180
11181         * Documentation/user/putting.itely: new chapter; placeholder
11182         for future expansion.
11183
11184         * Documentation/user/examples.itely: moved "suggestions for
11185         writing LP files" section into putting.itely.
11186
11187         * Documentation/user/lilypond.itely: added new chapter,
11188         fixed the short table of contents.
11189
11190 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11191
11192         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11193         infinity for unfeasible beams.
11194
11195         * make/lilypond.fedora.spec.in (Group): idem.
11196
11197         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11198
11199         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11200
11201         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11202         fonts directly.
11203
11204         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11205
11206         * mf/GNUmakefile: remove all CFF rules.
11207
11208         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11209
11210         * lily/open-type-font-scheme.cc (LY_DEFINE):
11211         new function ly:otf-font-table-data.
11212         (LY_DEFINE): new function otf-font?
11213
11214 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11215
11216         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11217         ($(outdir)/Fontmap.lily): idem.
11218
11219         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11220         for PFAEmmentaler-XXX.pfa. 
11221
11222         * Documentation/user/music-glossary.tely (accidental): NL
11223         translation of accidental.
11224
11225 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11226
11227         * flower/include/international.hh: Bugfix: include "string.hh".
11228
11229         * lily/include/mingw-compatibility.hh: New file.
11230
11231         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11232
11233         * configure.in: Search for mingw wcrtomb library.
11234
11235 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11236
11237         * scripts/convert-ly.py: Bug fix
11238
11239         * Documentation/user/changing-defaults.itely (Common tweaks):
11240         Added example where the context has to be specified explicitly
11241         (MetronomeMark). 
11242
11243 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11244
11245         * scripts/lilypond-book.py (ly_options): set timing to #f for
11246         notime option.
11247
11248         * scripts/convert-ly.py (conv): typo.
11249
11250         * flower/*.cc: remove <? and >?
11251         
11252         * lily/*.cc: remove <? and >?
11253
11254         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11255         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11256         editor.
11257
11258 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11259
11260         * lily/part-combine-engraver.cc: add space to variable list.
11261
11262 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11263
11264         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11265         remove-first to false (matches docs)
11266
11267         * Documentation/user/advanced-notation.itely: corrected docs
11268         concerning remove-first.
11269
11270 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11271
11272         * lily/part-combine-engraver.cc: make sure that the relevant
11273         properties are included in the documentation.
11274
11275 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11276
11277         * Documentation/user/lilypond-book.itely: Bernard's docs
11278         for \betweenLilyPondSystem.
11279
11280 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11281
11282         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11283         remarks.
11284
11285 2005-04-28  Pal Benko  <benkop@freestart.hu>
11286
11287         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11288         only on vertical lines of flexa shape, and use a constant
11289         thickness value for horizontal lines (patch slightly modified by
11290         Jürgen Reuter)
11291
11292         * lily/include/mensural-ligature.hh: make 2 comments clearer
11293
11294 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11295
11296         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11297         to need_extra_horizontal_space; bugfix: use class scope to avoid
11298         global namespace pollution
11299
11300         * Documentation/user/instrument-notation.itely (ligatures): added
11301         comment on possible future syntax change and how to work around
11302
11303         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11304         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11305         intervals (fixes agnus dei example)
11306
11307         * Documentation/user/instrument-notation.itely (white mensural
11308         ligatures): selected a more illustrative example
11309
11310 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11311
11312         * Documentation/index.html.in: specify utf-8 charset in meta content.
11313
11314 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11315
11316         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11317         empty 2nd page for single page.
11318
11319         * scm/lily.scm: remove p&c definitions.
11320
11321         * po/zh_TW.po (Module): new translation.
11322
11323         * lily/lily-guile.cc (ly_chain_assoc): remove.
11324
11325         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11326         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11327
11328 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11329
11330         * lily/beaming-info.cc: remove infinity_i
11331
11332         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11333
11334 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11335
11336         * Documentation/user/basic-notation.itely,
11337         instrument-notation.itely, advanced-notation.itely,
11338         changing-defaults.itely: minor fixes.  Added docs
11339         for colors to advanced-notation.itely.
11340
11341         * Documentation/user/advanced-notation.itely: fixed compile
11342         problem and added Bernard's x11-color doc patch.
11343
11344 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11345
11346         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11347         alright this time round.
11348
11349 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11350
11351         * Documentation/topdocs/INSTALL.texi (Top): idem.
11352
11353         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11354
11355         * VERSION (MAJOR_VERSION): release 2.5.21
11356
11357         * scm/output-ps.scm (grob-cause): bugfix.
11358
11359 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11360
11361         * cygwin/*: Update.
11362
11363         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11364         stuff.
11365
11366         * scm/output-ps.scm (grob-cause): Bugfix.
11367
11368         * scm/lily.scm (ly:load): Remove x11-color.
11369
11370         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11371         quote executable, fixes getting version from program --with
11372         --options.
11373         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11374         $ac_exeect.
11375
11376         * Documentation/user/GNUmakefile: Only build music-glossary with
11377         rendered lilypond snippets during web.
11378
11379 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11380
11381         * po/de.po: update.
11382
11383         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11384
11385 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11386  
11387         * scripts/abc2ly:
11388         second title line append with punctuation dash character;
11389         encode abc2ly python strings in utf-8
11390        
11391 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11392
11393         * scripts/abc2ly fix chords (again)
11394  
11395 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11396
11397         * scm/x11-color.scm: new file
11398         All x11 color names can be accessed with:
11399         #(x11-color 'ColorName),
11400         #(x11-color "ColorName") or:
11401         #(x11-color "color name")
11402         If the x11 color name is not recognised then it defaults
11403         to black
11404
11405         * scm/lily.scm: amended to call scm/x11-color.scm
11406
11407 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11408
11409         * Documentation/user/invoking.itely (Reporting bugs): comment out
11410         reference to online PNG bug repository.
11411
11412 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11413
11414         * lily/translator-scheme.cc (ly:translator-property): Remove.
11415         Update callers.
11416
11417         * lily/context-scheme.cc (ly:context-now): Move from translator.
11418         Update callers.
11419
11420 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11421
11422         * input/regression/grid-lines.ly (skips): refine example.
11423
11424         * scm/define-context-properties.scm
11425         (all-user-translation-properties): doc autoBeamCheck
11426
11427         * input/regression/grid-lines.ly (Module): new file.
11428
11429         * lily/grid-point-engraver.cc (Module): new file.
11430
11431         * lily/grid-line.cc (Module): new file.
11432
11433         * lily/grid-line-span-engraver.cc (Module): new file.
11434
11435         * lily/grid-line-interface.cc (Module): new file.
11436
11437 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11438
11439         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11440         missing parameter, actualy cdr through list.  Actually return a
11441         list with ENTRY removed (was '()).
11442
11443         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11444         opened.
11445         (do_conversion): Fix printing of continuation comma.
11446
11447         * Documentation/user/advanced-notation.itely (Beam formatting):
11448         Remove refbugs about compound time and mixed duration.
11449
11450         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11451         modulo moments explicitely.
11452
11453         * lily/moment.cc (operator %): New function.
11454
11455         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11456
11457         * lily/translator-scheme.cc (ly:translator-now,
11458         ly:translator-property): New function.
11459
11460         * scm/auto-beam.scm (default-auto-beam-check): New function.
11461
11462         * lily/auto-beam-engraver.cc (test_moment): Use it.
11463
11464         * flower/rational.cc (operator %): Bugfix.
11465
11466 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11467
11468         * scripts/abc2ly: Bugfix
11469
11470 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11471
11472         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11473         %'s on EndFont comment.
11474
11475         * lily/ledger-line-spanner.cc: some more words of explanation.
11476
11477 2005-04-20  John Williams <williams@tni.com>  
11478         
11479         * scripts/lilypond-book.py: htmlquote bugfix.
11480         Allow snippets to be given distinct filenames.
11481         Allow the default alt text to be overridden.
11482
11483 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11484
11485         * ly/performer-init.ly: Bugfix
11486
11487         * THANKS: Added bughunters.
11488
11489 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11490
11491         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11492
11493         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11494         position (was: use modulo measure length).
11495
11496         * configure.in (no gui_b): Remove optional gtk+ requirement.
11497
11498 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11499
11500         * Documentation/user/basic-notation.itely (Pitches): add
11501         LedgerLineSpanner.
11502
11503         * lily/dynamic-engraver.cc (process_music): set right bound to
11504         script if present. Else, do not set.
11505         (acknowledge_grob): only set right bound of finished spanner to
11506         note column if no other bound is set.
11507
11508         * python/lilylib.py (make_ps_images): switch back to png16m.
11509         
11510 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11511
11512         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11513         writing up to date file.  Add dvips usage suggestion.
11514
11515         * scripts/convert-ly.py: Fix error message.
11516         Print usage if no files on command line.
11517         (usage): Add example usage.
11518
11519         * input/test/compound-time.ly: New file.
11520
11521         * input/test/circle.ly: New file.
11522
11523         * Documentation/topdocs/NEWS.tely: Use them.
11524
11525         * input/test/boxed-stencil.ly: Remove \score.
11526
11527         * buildscripts/mf-to-table.py (base): Add .log dependency.
11528
11529         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11530         pfa's.  Add .log dependency
11531
11532         * scm/define-markup-commands.scm (lower): New command.
11533
11534         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11535         make it default.
11536
11537 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11538
11539         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11540         also to finished cresc as right bound. This fixes:
11541         skip-string-decresc.ly
11542
11543         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11544         relative_coordinate if extent is empty.
11545
11546         * lily/stem.cc (width_callback): determine correct extent if flag
11547         is not there. This fixes slur-no-flag.ly
11548
11549         * lily/grace-engraver.cc (consider_change_grace_settings): new
11550         function.
11551         (initialize): also consider_change_grace_settings() on
11552         initialization. Fixes large grace notes at start of score.
11553
11554         * lily/break-align-interface.cc (do_alignment): don't translate if
11555         total_extent is empty.
11556
11557         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11558
11559 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11560
11561         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11562         with slash.
11563
11564 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11565
11566         * stepmake/aclocal.m4: Remove tfm_path.
11567
11568 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11569
11570         * scm/music-functions.scm (markup-expression->make-markup): fix
11571         bug with cons arguments of markup commands.
11572         (music->make-music): fix music expression property list building
11573
11574 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11575
11576         * aclocal.m4: Massage package names.
11577
11578         * SCons updates.
11579
11580 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11581
11582         * VERSION (PACKAGE_NAME): release 2.5.20
11583
11584         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11585         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11586
11587         * lily/percent-repeat-engraver.cc (try_music): add measure before
11588         next_moment to future processing moment. Fixes:
11589         percent-repeat-mm-rest.ly
11590         (process_music): don't add moment for 2nd time.
11591
11592         * input/regression/repeat-percent.ly: add mmrests as extra test.
11593
11594         * lily/axis-group-engraver.cc (acknowledge_grob): read
11595         keepAliveInterfaces to decide what to kill.
11596
11597         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11598         percent-repeat-interface to keepAliveInterfaces. This fixes
11599         percent-repeat-harakiri.
11600
11601 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11602
11603         * SCons updates.
11604
11605 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11606
11607         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11608
11609         * aclocal.m4: remove --enable-tfm-path configure option
11610
11611         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11612
11613         * scm/backend-library.scm (postscript->png): newline after
11614         finishing command.
11615
11616         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11617         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11618
11619         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11620
11621         * lily/score.cc (default_rendering): use Music_output too.
11622
11623         * input/test/chord-names-languages.ly (Module): rename file.
11624
11625         * lily/text-spanner.cc: add bound-padding.
11626
11627         * lily/paper-book.cc (systems): accept Paper_score
11628         iso. Paper_system vector. 
11629
11630         * input/regression/line-arrows.ly: new file.
11631
11632         * lily/paper-score.cc (process): run get_paper_systems() only once.
11633
11634         * lily/line-spanner.cc (line_stencil): add arrows.
11635
11636 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11637
11638         * lily/line-interface.cc (make_arrow): new function. 
11639         (arrows): idem.
11640
11641 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11642
11643         * input/test/chord-names-german.ly: update for italian/french
11644         chords.
11645         
11646         * Documentation/user/instrument-notation.itely (Printing chord
11647         names): update.
11648
11649 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11650
11651         * lily/include/paper-score.hh (class Paper_score): remove unused
11652         prototypes.
11653
11654         * lily/book.cc (process): add -COUNT to midi output.
11655
11656         * lily/score.cc (book_rendering): remove outname argument
11657         (book_rendering): return list of Music_outputs. 
11658
11659         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11660
11661         * lily/book.cc (process): loop over Music_outputs returned from
11662         Score::book_rendering().
11663
11664         * lily/*.cc (width_callback): remove spurious "unused" warnings
11665         for assert (axis==[XY]_AXIS); 
11666
11667         * lily/include/music-output.hh (class Music_output): smobify class.
11668
11669         * lily/include/paper-score.hh (class Paper_score): make members
11670         private.
11671
11672         * lily/performance.cc (process): return #f iso. #<undefined>. This
11673         prevents #<undefined> leaking into GUILE-userspace.
11674
11675 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11676
11677         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11678
11679 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11680
11681         * scm/chord-name.scm : support for italian and french
11682         chords names.
11683
11684         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11685         a space defined by chordPrefixSpacer when the root name is
11686         direclty followed by a prefix.
11687
11688         * ly/engraver-init.ly : chordPrefixSpacer       
11689         * scm/define-context-properties.scm : chordPrefixSpacer
11690         * ly/property-init.ly : italianChords, frenchChords 
11691
11692 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11693
11694         * mf/feta-din.mf: Remove.
11695
11696         * mf/GNUmakefile (fontdir): Bugfix.
11697
11698         * mf/SConstruct: Some updates.
11699
11700         * SConstruct: Require pkg-config.
11701         (test_program): Bugfix for double digit version compares, use
11702         integer (not string-) compare.
11703         Optionally require gs 8.14.
11704
11705         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11706
11707         * lily/*: s/ifdef HAVE_*/if have/.
11708
11709         * SConstruct (test_lib): New function.  Update pkg-config and some
11710         other requirements.
11711
11712         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11713         freetype, pangof2t.
11714
11715 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11716
11717         * po/lilypond.pot, ...: Update using bison-CVS.
11718
11719         * python/lilylib.py (make_ps_images): Fixo.
11720
11721 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11722
11723         * python/lilylib.py (make_ps_images): typo.
11724
11725         * configure.in (gui_b): make bison optional.
11726
11727         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11728
11729 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11730
11731         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11732         with one parameter can be defined in a LaTeX file when processed
11733         by lilypond-book this will be evaluated between the systems of
11734         a multi-system score. The parameter is the number of systems processed.
11735
11736 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11737
11738         * python/lilylib.py (make_ps_images): Escape newline.
11739
11740         * Documentation/user/music-glossary.tely: Run
11741         texinfo-all-menus-update.
11742
11743 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11744
11745         * scm/lily-library.scm (old-relative-not-used-message)
11746         (version-not-seen-message): Add input-file-name-location to message.
11747
11748         * lily/parser.yy (lilypond): Add token aliases.
11749
11750         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11751         not confuse with alteration.
11752         (alteration): Add.
11753
11754 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11755
11756         * python/lilylib.py (make_ps_images): use -dEPSCrop
11757
11758         * VERSION (PACKAGE_NAME): release 2.5.19 
11759
11760         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11761         only put xrefs in info documentation.
11762
11763         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11764         .pdf rule to tex-rules.make.
11765
11766         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11767         from -systems.* output.
11768
11769         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11770         directly, remove -$(PAGESIZE) target.
11771
11772         * input/test/embedded-postscript.ly: update.
11773
11774 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11775
11776         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11777
11778         * Documentation/user/changing-defaults.itely (Font selection):
11779         document font-name.
11780
11781         * input/regression/font-name.ly: show Pango fonts for
11782         font-name. Update example. 
11783
11784         * lily/pango-select.cc (properties_to_pango_description): don't
11785         convert symbol font-size to number, but use to lookup.
11786
11787         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11788
11789         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11790         (NAME . FILE-NAME) tuples for font descriptions. 
11791         (write-preamble): display BeginFont DSC comments.
11792
11793         * python/fontextract.py (write_extracted_fonts): new file. Extract
11794         font resources from a PS file.
11795
11796         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11797         (Compile_error.process_include): do_file returns chunks.
11798
11799         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11800
11801         * make/lysdoc-targets.make: .texi is .PRECIOUS
11802
11803         * scripts/lilypond-book.py (write_if_updated): new function.
11804
11805 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11806
11807         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11808
11809 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11810
11811         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11812
11813         * input/regression/markup-syntax.ly: remove \score.
11814
11815         * scm/define-markup-commands.scm (draw-circle): add fill argument
11816
11817         * scm/stencil.scm (make-circle-stencil): add fill argument
11818
11819         * ps/music-drawing-routines.ps: add fill argument.
11820
11821         * ly/performer-init.ly: add CueVoice to MIDI too.
11822
11823         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11824         EndEPSF.
11825
11826         * input/regression/markup-eps.ly: new file.
11827
11828         * scm/framework-ps.scm (write-preamble): change order: vars should
11829         be inited before procedures.
11830
11831         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11832         for EPS files.
11833
11834         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11835
11836 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11837
11838         * configure.in (gui_b): add check for ghostscript 8.15
11839
11840 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11841
11842         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11843         start of line. Fixes cresc-after-newline.ly
11844
11845         * lily/source-file.cc (file_line_column_string): use get_column().
11846
11847 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11848
11849         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11850
11851 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11852
11853         * lily/*: use message () iso progress_indication () for messages.
11854         Revise/uniformise user messages.
11855
11856         * flower/warn.cc (progress_indication): New function.
11857         (message): Use it.  Fixes newline problems.
11858
11859         * config.make.in (webdir): Sort out install dirs.
11860
11861         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11862
11863         * python/lilylib.py (command_name): Bugfix.
11864         (make_ps_images):
11865
11866 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11867
11868         * lily/main.cc: --help says what types of backends are availabe
11869
11870 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11871
11872         Fix ./VERSION dependency, and without need to reconfigure.
11873
11874         * lily/main.cc (setup_paths): Update.
11875
11876         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11877
11878         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11879
11880         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11881         Add \line for some simplistic cases.
11882
11883         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11884
11885 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11886
11887         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11888         to compile LY files (useful for adding eg. "-I" args)
11889         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11890         2Gnome command for gnome backend.
11891         (LilyPond-command-formatgnome): call the 2Gnome command. key
11892         binding: C-c C-g
11893
11894 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11895
11896         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11897         depend on all PNG images.
11898
11899 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11900
11901         * GNUmakefile.in: Bugfix: also link .map files.
11902
11903 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11904
11905         * scm/music-functions.scm (music->make-music): generate 
11906         a (make-music ...) sexpr from a music expression.
11907         (display-scheme-music): use guile pretty printer to display the
11908         make-music sexpr.
11909
11910 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11911
11912         * ly/engraver-init.ly: reindent.
11913         Add CueVoice.
11914
11915         * scm/music-functions.scm (music-pretty-string): handle moments
11916         too.
11917         (music-pretty-string): only print non-empty lists.
11918         (cue-substitute): create CueVoice context, which has smaller type.
11919
11920         * lily/moment-scheme.cc (LY_DEFINE): new methods
11921         ly:moment-grace-{numerator,denominator}
11922
11923         * lily/context-handle.cc: remove quit() method. 
11924
11925         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11926         (init_fontconfig): success is 0, not !0
11927
11928 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11929
11930         * mf/feta-nummer-code.mf (code): add plus glyph.
11931
11932         * lily/tie.cc (print): idem.
11933
11934         * lily/slur.cc (print): don't use thickness property for
11935         slur shape-thickness.
11936
11937         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11938         while adding stencils.
11939
11940         * scm/define-markup-commands.scm (with-color): with-color markup
11941         command.
11942         (whiteout): new markup command 
11943         (filled-box): new markup command
11944
11945 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11946
11947         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11948         test for PDF docs.
11949
11950         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11951         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11952         
11953         Notes for tetex-3.0 make web:
11954            psclean.map: s/uhv8a/uhvr8a/
11955            config.ps add:
11956                 p +psfonts_t1.map
11957                 p +psclean.map
11958                 p +typeface.map
11959
11960 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11961
11962         * scm/music-functions.scm (music-pretty-string): fix bug with
11963         string argument.
11964
11965 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11966
11967         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11968
11969 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11970
11971         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11972         only process options if they're there.
11973         (write_file_map): add version-seen? to snippet-map.ly
11974
11975 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11976
11977         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11978         formatting cleanups.
11979
11980         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11981         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11982
11983 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11984
11985         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11986         name directly.
11987
11988         * lily/main.cc (setup_paths): either add mf/out to search path or 
11989         fonts/{otf,type1,etc}
11990         
11991         * lily/font-config.cc (init_fontconfig): either add mf/out to
11992         FontConfig or fonts/{otf,type1,etc}
11993
11994         * GNUmakefile.in: don't put mf/ link in share/ dir.
11995
11996         * lily/staff-spacing.cc: move same-direction-correction to
11997         note-spacing-interface
11998
11999         * scm/lily.scm (lilypond-main): use variable argument count for
12000         exception handler.
12001
12002         * lily/font-config.cc (init_fontconfig): add operator pacification
12003         message.
12004
12005         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12006
12007         * buildscripts/gen-emmentaler-scripts.py (i): generate
12008         PFAEmmentaler as well.
12009
12010         * scm/framework-ps.scm (munge-lily-font-name): new function
12011         (write-preamble): hack: insert PFA equivalent of CFF into
12012         .PS. This makes LilyPond output printable on normal PS printers
12013         again.
12014
12015         * buildscripts/gen-emmentaler-scripts.py (i): generate
12016         PFAEmmentaler.pfa aswell.
12017
12018 2005-04-06  John Williams <williams@tni.com>  
12019         
12020         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12021         
12022 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12023
12024         * scm/page-layout.scm (default-page-make-stencil): always combine
12025         the header stencil, even if empty. This prevents the body text to
12026         reach up to the margins.
12027
12028         * po/rw.po (Module): new file, for Kinyarwanda.
12029
12030         * input/test/spacing-optical.ly (Module): new file.
12031
12032         * lily/staff-spacing.cc: add same-direction-correction
12033
12034 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12035
12036         * Documentation/user/introduction.itely (Engraving): Comment-out
12037         non-existent file.
12038
12039 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12040
12041         * scm/define-grob-properties.scm (all-user-grob-properties): add
12042         same-direction-correction
12043
12044         * VERSION: release 2.5.18
12045
12046 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12047
12048         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12049         dereferencing.  Fixes make web.
12050
12051         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12052         errno.h.
12053
12054         * Documentation/user/: Fix links.
12055
12056 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12057
12058         * lily/text-interface.cc (Module): rename from text-item.cc
12059
12060         * input/regression/apply-output.ly (texidoc): function naming fix.
12061
12062         * lily/time-signature-performer.cc (derived_mark): new function.
12063
12064         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12065
12066         * scripts/lilypond-book.py (find_linestarts): new function.
12067         (find_toplevel_snippets): keep track of line numbers.
12068
12069         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12070         all key changes.
12071
12072         * ly/declarations-init.ly (partCombineListener): use
12073         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12074
12075         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12076
12077 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12078
12079         * lily/text-item.cc: Fix link.
12080
12081         * Documentation/user/changing-defaults.itely (Changing defaults):
12082         Fix programs reference links.
12083
12084         * Documentation/user/music-glossary.tely: Convert to utf-8.
12085
12086 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12087
12088         * make/lilypond-vars.make: remove TEXMF from variables.
12089         remove DEB_BUILD pk font variables.
12090         remove GUILE_LOAD_PATH
12091         remove TeX memory vars.
12092
12093 2005-04-04  Werner Lemberg  <wl@gnu.org>
12094
12095         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12096
12097 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12098
12099         * ps/lilyponddefs.ps: remove reencode-font
12100
12101         * lily/simple-spacer.cc (add_columns): also compare
12102         directly. Column rank doesn't distinguish between broken and
12103         unbroken columns. This fixes large spaces before time sig changes.
12104
12105         * Documentation/user/point-and-click.itely: document ly:set-option.
12106
12107         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12108         point_and_click_global is set.
12109
12110         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12111         ly:set-option argument.
12112
12113 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12114
12115         * GNUmakefile.in: Include symlinks in webball.
12116
12117         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12118         source dir for split and non-split manuals.
12119
12120         * Documentation/user/*y: Fix @uref/@inputfile links for
12121         split/non-split HTML documents.
12122
12123         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12124         .ps.gz.
12125         
12126 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12127
12128         * GNUmakefile.in: Add newline.
12129
12130 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12131
12132         * tex/lilyponddefs.tex: use color instead of xcolor
12133         * scm/output-tex.scm: minor editing
12134
12135 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12136
12137         * scm/music-functions.scm (display-scheme-music): pretty printer
12138         for music expressions.
12139
12140 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12141
12142         * buildscripts/install-info-html.sh (index_file): Fix link.
12143
12144 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12145
12146         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12147
12148         * Documentation/index.html.in: Add size estimates with some big pages.
12149
12150         * Documentation/user/tutorial.itely (Running LilyPond for the
12151         first time): Add/replace some @rglos links.  TODO: add more
12152         @rglos links in tutorial, test non-intrusiveness (.css).
12153
12154         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12155         annoying's indication of referencing external document.
12156
12157         * Documentation/user/GNUmakefile: Split version of glossary too.
12158         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12159         links, not only for html.
12160
12161         * Documentation/user/introduction.itely: Fix some links for other
12162         than html, do not use `here' as link name.
12163
12164 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12165
12166         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12167         @glossaryref.
12168
12169 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12170
12171         * scm/page-layout.scm (default-page-make-stencil): only add header
12172         if existing and not empty. Fixes spurious programming error.
12173
12174         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12175
12176 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12177
12178         * scm/output-tex.scm: implement {re,}setcolor
12179         * tex/lilyponddefs.tex: use color package
12180
12181 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12182
12183         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12184         additions to website.
12185
12186         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12187
12188         * Documentation/user/macros.itexi: Fix @usermanref html links in
12189         split documents: use @inforef.
12190
12191 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12192
12193         * Documentation/user/programming-interface.itely: minor fix.
12194
12195         * Documentation/user/advanced-notation.itely: added info to
12196         Metronome markings.
12197
12198 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12199
12200         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12201         use box-stencil.  Remove y-padding argument.
12202         (make-stencil-circler): New function.
12203
12204         * buildscripts/lilypond-words.py (F): 
12205         * elisp/SConscript (a): 
12206         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12207         * vim/SConscript (a): 
12208         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12209
12210         * lily/general-scheme.cc: Build fix.
12211
12212         * scm/markup.scm:
12213         * input/regression/markup-scheme.ly: 
12214         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12215
12216         * scm/stencil.scm (make-circle-stencil): New function.
12217
12218         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12219         name (was cicle).  Update callers.
12220         (circle): New markup command, similar to box.
12221
12222         * scm/stencil.scm (circle-stencil): New function.
12223
12224 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12225
12226         * configure.in: Detect libutf8/wchar.h variant.
12227
12228         * stepmake/aclocal.m4: Modify shared size test.
12229
12230 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12231
12232         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12233
12234 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12235
12236         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12237         
12238         * VERSION (PACKAGE_NAME):  release 2.5.17
12239
12240 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12241
12242         * scm/backend-library.scm (postscript->png): Fix comment and png
12243         message.
12244
12245         * GNUmakefile.in (link-tree): Fix locales.
12246
12247 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12248
12249         * lily/stencil-scheme.cc (LY_DEFINE): change to
12250         ly:stencil-aligned-to, non mutating.
12251
12252         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12253
12254         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12255
12256         * lily/quote-iterator.cc (derived_mark): call
12257         Music_wrapper_iterator::derived_mark() too.
12258
12259         * lily/grace-engraver.cc (derived_mark): change signature, add
12260         const.
12261
12262 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12263
12264         * SConstruct (symlink): 
12265         * GNUmakefile.in (link-tree): Add scripts to prefix.
12266
12267         * lily/general-scheme.cc (ly:effective-prefix): New function.
12268
12269         * scm/backend-library.scm (postscript->png): Use it.
12270
12271 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12272
12273         * lily/paper-score.cc (process): don't delete grobs after
12274         producing stencils. 
12275
12276         * scm/part-combiner.scm (determine-split-list): switch off
12277         debugging info.
12278
12279         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12280         if available.
12281
12282         * scm/define-context-properties.scm
12283         (all-user-translation-properties): add stringNumberOrientations.
12284
12285         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12286         so fingering and string-numbers are separately controlled.
12287
12288 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12289
12290         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12291         not use debugging.
12292
12293 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12294
12295         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12296
12297         * config.hh.in: add HAVE_FONTCONFIG.
12298
12299         * Documentation/user/instrument-notation.itely (String number
12300         indications): new node.
12301
12302         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12303
12304         * lily/new-fingering-engraver.cc (add_string): new function. 
12305         (acknowledge_grob): accept string-number-event as well.
12306
12307         * scm/define-markup-commands.scm (circle): new markup command.
12308
12309         * scm/output-lib.scm (print-circled-text-callback): new function.
12310
12311         * lily/GNUmakefile: move ifeq after include stepmake.make.
12312
12313 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12314
12315         * config.make.in (HAVE_LIBKPATHSEA_SO):
12316         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12317
12318         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12319         add KPATHSEA_LIBS.
12320
12321         * debian/watch: 
12322         * debian/control: Update.
12323
12324 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12325
12326         * input/test/title-markup.ly (spaceTest): remove.
12327
12328         * input/test/embedded-tex.ly (Module): remove.
12329
12330         * input/test/music-box.ly: use 'name property, not ly:music-name.
12331
12332         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12333
12334         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12335
12336 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12337
12338         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12339         about xdeltas.  Add information about CVS.
12340
12341         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12342         gracefully handle failed files.
12343
12344         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12345
12346         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12347         small fixes.
12348
12349         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12350         No unnecessarily specific i18n messages.  Remove stray `1'.
12351
12352 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12353
12354         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12355         documentencoding
12356
12357         * scm/documentation-lib.scm (texi-file-head): set utf-8
12358         documentencoding.
12359
12360         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12361         Delta, not the Symbol one. 
12362
12363         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12364         for the .map file.
12365
12366         * Documentation/topdocs/INSTALL.texi (Top): add running
12367         requirement as compilation requirement.
12368
12369 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12370
12371         * buildscripts/mutopia-index.py (headertext): add h1 header and
12372         utf-8 charset meta field.
12373
12374         * input/GNUmakefile: prune example list.
12375
12376         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12377         options.
12378
12379         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12380         extent for visible stems.
12381
12382         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12383
12384 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12385
12386         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12387
12388         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12389
12390 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12391
12392         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12393         pass inf/nan into slur scoring.
12394
12395         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12396         page.
12397
12398         * scripts/abc2ly.py (dump_voices): use alphabet().
12399
12400 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12401         
12402         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12403
12404 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12405         
12406         * flower/include/virtual-methods.hh: simplify. Patch by
12407
12408 2005-03-25  John Williams <williams@tni.com>  
12409
12410         * scripts/lilypond-book.py (main): add png for HTML too, guess
12411         only if necessary. 
12412
12413 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12414
12415         * Documentation/topdocs/INSTALL.texi: now recommends
12416         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12417
12418         * Documentation/user/basic-notation.itely,
12419         Documentation/user/tutoria.itely: warn about
12420         only one (phrasing) slur at once.
12421
12422 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12423
12424         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12425
12426 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12427
12428         * Documentation/user/basic-notation.itely: fixed info about
12429         ending a (de)cresc.
12430
12431         * Documentation/user/lilypond-book.itely: fixed
12432         lilypond-book filter example and warned about not doing
12433         --filter and --process at the same time.
12434
12435 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12436
12437         * lily/parser.yy (bass_number),
12438         Documentation/user/instrument-notation.itely (Figured bass): 
12439         Add the possibility to use text markup in figured bass. 
12440
12441 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12442
12443         * Documentation/user/global.itely: added info about naming
12444         identifiers and breakbefore.
12445
12446         * Documentation/user/invoking.itely: added info about batch
12447         processing files with convert-ly, removed references to TeX
12448         in the jail section.
12449
12450         * Documentation/user/examples.itely: possibly fixed piano
12451         dynamics.
12452
12453         * Documentation/user/advanced-notation.itely: added info
12454         about removing other types of Staff.
12455
12456         * Documentation/user/instrument-notation.itely: possibly
12457         fixed piano staff line switch.
12458
12459         * Documentation/user/changing-defaults.itely: added info
12460         about using normal font in titles.
12461
12462 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12463
12464         * VERSION (PATCH_LEVEL): release 2.5.16
12465
12466         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12467         explicitly.
12468
12469 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12470
12471         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12472         whitespace.
12473
12474         * python/lilylib.py (make_ps_images):
12475         * scm/backend-library.scm (postscript->pdf, postscript->png):
12476         Quote file name.  Use format rather than string-append juggling.
12477
12478 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12479
12480         * python/lilylib.py (make_ps_images): add x to -g argument. 
12481
12482         * lily/key-performer.cc (create_audio_elements): don't use
12483         scm_eval_string. Check for minor 3rd directly.
12484   
12485         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12486         (sarabandeCelloGlobal): key is D minor, not F major.
12487
12488 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12489
12490         Fix truncated --png output (Peter Danenberg).
12491         
12492         * python/lilylib.py (make_ps_images):
12493         * scripts/ps2png.py (copyright): Grok --papersize option.
12494
12495         * scm/backend-library.scm (postscript->png): Add parameter
12496         PAPERSIZE.  Update callers.
12497
12498         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12499         Fixes symbol placement.
12500
12501         * lily/spanner.cc: 
12502         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12503         <libc-extension.hh>).
12504
12505 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12506
12507         * Nitpick run.
12508
12509         * buildscripts/fixcc.py: Update.
12510
12511         Builddir run fixes.
12512
12513         * HACKING (datadir): Add VERSION.
12514
12515         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12516         higher up.
12517
12518 2005-03-15  Werner Lemberg  <wl@gnu.org>
12519
12520         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12521         diagonal stem doesn't become thinner.
12522
12523 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12524
12525         * buildscripts/fixcc.py: Fixes (Werner).
12526
12527 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12528
12529         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12530         Emmentaler/Aybabtu.
12531
12532         * GNUmakefile.in: fix lilypond-words path.
12533
12534         * po/tr.po: update to 2.3.21
12535
12536         * lily/new-fingering-engraver.cc (position_scripts): take priority
12537         from head position.
12538
12539         * input/regression/finger-chords-order.ly (texidoc): new file.
12540
12541 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12542
12543         * make/ly-rules.make: 
12544         * stepmake/aclocal.m4: 
12545         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12546
12547         * buildscripts/fixcc.py (rules): Leave space after operator.
12548
12549 2005-03-14  Werner Lemberg  <wl@gnu.org>
12550
12551         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12552         top of the glyph with smooth curve.
12553
12554 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12555
12556         * Documentation/user/global.itely (Page layout): remove
12557         printpagenumber.
12558
12559 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12560
12561         * input/regression/mensural-ligatures.ly: new file (with examples
12562         compiled by Pal Benko).
12563
12564         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12565         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12566         musicglyph access.  Many small beautifications in ancient
12567         examples.
12568
12569         * input/test/divisiones.ly: fixed indentation; small
12570         beautifications
12571
12572         * ly/engraver-init.ly: added FIXME comment
12573
12574         * scripts/lilypond-book.py,
12575         Documentation/user/lilypond-book.itely: added music fragment
12576         option "packed" to lilypond-book
12577
12578         * Documentation/user/instrument-notation.itely: Bugfix: added
12579         missing LedgerLineSpanner color setting in several places.  Added
12580         music fragment option "packed" to VaticanaContext example.
12581
12582 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12583
12584         * scm/define-grobs.scm (all-grob-descriptions): switch off
12585         Hyphen_spanner::set_spacing_rods 
12586
12587         * lily/lyric-hyphen.cc (print): add padding between syllable and
12588         hyphen.
12589         (print): shorten hyphen in tight situations (determine using
12590         minimum-length)
12591
12592         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12593         0.4pt.
12594
12595 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12596
12597         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12598
12599         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12600         header/footer markings for regression-test.
12601
12602         * scm/backend-library.scm (output-scopes, header-to-file): Move
12603         from framework-tex.scm.
12604
12605         * scm/framework-ps.scm (output-framework)
12606         (output-preview-framework):
12607         * scm/framework-eps.scm (output-classic-framework)
12608         (output-framework): Use it.  Fixes collated files.
12609
12610 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12611
12612         * input/sakura-sakura.ly: 
12613         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12614
12615         * buildscripts/guile-gnome.sh: Update.
12616
12617         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12618
12619         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12620
12621 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12622
12623         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12624         culprit: always exit the loop if we find a rod, even if it has
12625         distance < 0. 
12626
12627         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12628         algorithm.
12629
12630         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12631         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12632
12633         * scm/output-svg.scm (dashed-line): new  function body.
12634         
12635         * GNUmakefile.in: create .htaccess.
12636
12637 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12638
12639         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12640
12641 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12642
12643         * VERSION (PACKAGE_NAME): release 2.5.15
12644
12645         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12646
12647         * scm/framework-svg.scm (output-framework): put scaling in
12648         document header. Apply scaling only once.
12649         (output-framework): dump page size in px, not mm. 
12650
12651         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12652         from font-size.
12653
12654         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12655         ly:outputter-output-scheme, new function.
12656
12657         * scm/output-svg.scm (pango-description-to-svg-font): new function
12658
12659 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12660
12661         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12662         target.
12663
12664         * input/typography-demo.ly: new file.
12665
12666 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12667
12668         * Documentation/user/global.itely (File structure): Add markup blocks
12669         to toplevel expressions.
12670         (Multiple movements, Creating titles): Add markup blocks.
12671
12672         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12673         <libc-extension.hh>).
12674
12675         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12676
12677         * flower
12678         * lily
12679         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12680
12681 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12682
12683         * lily/accidental.cc: special bboxes for natural. 
12684
12685         * mf/feta-toevallig.mf: make stems heavier.
12686
12687         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12688         texts as well.
12689
12690         * mf/feta-klef.mf: revise. 
12691
12692         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12693
12694         * mf/feta-klef.mf: add rounded curve at top. 
12695         make thinnib a little heavier.
12696
12697 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12698
12699         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12700
12701         * buildscripts/fixcc.py: New file.
12702
12703         * input/regression/utf8.ly: Update Debian font description.
12704
12705 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12706
12707         * stepmake/aclocal.m4: Fix test.
12708
12709 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12710
12711         * Documentation/user/invoking.itely: added Sebastino Vigna's
12712         docs for the --jail option.
12713
12714 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12715
12716         * lily/stem.cc (print): only produce stemlets if there are no
12717         noteheads on this stem.
12718
12719         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12720         don't crash on stemlet (visible stem without heads).
12721
12722         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12723         unbroken situations. 
12724
12725         * scm/output-lib.scm (center-invisible): new function.
12726
12727         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12728         wishes to determine loose column space.
12729
12730         * lily/font-config.cc (init_fontconfig): add
12731         fonts/{otf,type1,cff}  to path.
12732
12733         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12734
12735         * mf/GNUmakefile (Module): install all fonts under otf/
12736
12737         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12738         replace /fonts/otf/ by /ps/ 
12739
12740         
12741 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12742
12743         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12744
12745         * lily/book.cc (process): Oops, add score_.header_.
12746
12747         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12748
12749         * lily/parser.yy: Handle toplevel and book texts as score.
12750
12751         * scm/page-layout.scm (default-page-make-stencil):
12752         Bugfix: (page-properties rename.
12753
12754         * scm/backend-library.scm (ly:system): Typo.
12755
12756 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12757
12758         * stepmake/stepmake/executable-targets.make (installexe): don't
12759         strip installed executables
12760
12761         * lily/font-select.cc (get_font_by_design_size): revert
12762         pango_description_string as well.
12763
12764         * lily/system.cc (set_loose_columns): put loose column just left
12765         of next column.
12766
12767         * lily/include/group-interface.hh (extract_grob_array): rename
12768         from Pointer_group_interface__extract_grobs
12769
12770         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12771
12772         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12773         function. Keep ledgered note heads at a minimum distance.
12774         Introduce minimum-length-fraction
12775         (print): introduce length-fraction property.
12776
12777 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12778
12779         * tex/GNUmakefile: remove latin1.enc rules.
12780
12781 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12782
12783         * scm/titling.scm: Typo.
12784
12785         * input/regression/score-text.ly: Really add.
12786
12787         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12788
12789 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12790
12791         * lily/open-type-font-scheme.cc:  new file.
12792
12793 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12794
12795         * scm/titling.scm (layout-extract-page-properties): Rename from
12796         page-properties.  Update callers.
12797
12798         * lily/lexer.ll (Lily_lexer):
12799         * lily/parser.yy: Junk lyric_markup state.
12800
12801         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12802
12803         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12804         Add texts parameter.
12805
12806 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12807
12808         * lily/lexer.ll (lyric_markup): New mode.
12809         (Lily_lexer::push_lyric_markup_state): New method.
12810         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12811
12812         * lily/parser.yy (book_body):
12813         (toplevel_expression): Grok \markup texts.
12814
12815         * lily/score-scheme.cc (ly:music-scorify): 
12816         * scm/lily-library.scm (collect-music-for-book): Take texts
12817         parameter.
12818
12819         * lily/score.cc (texts_): New member.
12820
12821         * lily/paper-book.cc (systems): Format score texts.
12822
12823         * score-text.ly: New file.
12824
12825         * ttftool/SConscript:
12826         * kpath-guile/SConscript: New file.
12827
12828         * lily/SConscript:
12829         * SConstruct: Update.
12830
12831 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12832
12833         * VERSION (PACKAGE_NAME): release 2.5.14
12834
12835 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12836
12837         * lily/main.cc: Add dummy xgettext markers.
12838
12839 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12840
12841         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12842         requirements
12843
12844         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12845         executable is < 40k
12846
12847         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12848         hack.
12849
12850 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12851
12852         * flower/libc-extension.cc:
12853         * flower/include/libc-extension.hh: [Open]BSD simply cast
12854         cookie/funopen declarations.
12855
12856         * stepmake/aclocal.m4: Check for libkpathsea.so.
12857
12858         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12859         dl_kpse_find_file.
12860
12861 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12862
12863         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12864         (open_library): alternative for static library.
12865
12866 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12867
12868         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12869
12870         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12871
12872         Drop run-time dependency on teTeX.
12873
12874         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12875
12876         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12877         KPATHSEA_LIBS in LIBS.
12878         (STEPMAKE_DLOPEN): New function.
12879
12880         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12881         not path.
12882
12883         * flower/file-path.cc (directories): Rename from paths, as this
12884         return an array of directories (a single path).
12885
12886 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12887
12888         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12889
12890         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12891         new ly:kpathsea-find-file
12892
12893         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12894
12895         * kpath-guile/GNUmakefile: new file
12896
12897         * buildscripts/gen-emmentaler-scripts.py (i): generate
12898         emmentaler-X.fontname as well.
12899
12900         * buildscripts/ps-embed-cff.py: new script
12901
12902         * scm/lily-library.scm: remove ps-embed-cff.
12903
12904         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12905         font loading. 
12906
12907         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12908         fontconfig as well.
12909
12910         * lily/font-config.cc (init_fontconfig): add cff/ too.
12911
12912         * ly/generate-embedded-cff.ly: capitalize.
12913
12914         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12915         so as to register the pango font.
12916
12917         * lily/font-config.cc (init_fontconfig): add
12918         prefix/{otf,type1,mf/out} to fontconfig path.
12919
12920         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12921         overrides all. 
12922
12923         * configure.in (gui_b): remove ec mftrace check
12924
12925         * config.hh.in: use lilypond-Major.Minor as data directory.
12926
12927         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12928
12929         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12930         name.
12931
12932 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12933
12934         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12935         error messages.
12936
12937         * flower/libc-extension.cc:
12938         * flower/include/libc-extension.hh: [Open]BSD fixes for
12939         cookie/funopen declarations.
12940
12941 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12942
12943         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12944         emmentaler.
12945
12946         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12947         lcrm10.
12948
12949         * scm/define-markup-commands.scm (fontsize): new markup
12950         command. Also set baseline-skip
12951
12952 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12953         
12954         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12955         use.
12956
12957 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12958
12959         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12960
12961         * lily/pdf.cc: remove PDF related files
12962
12963 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12964
12965         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12966         <hamamatsu@gmx.de>
12967
12968 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12969
12970         * Documentation/user/advanced-notation.itely: first draft
12971         of reorg done.
12972
12973         * Documentation/user/global.itely: fixed (sub)section
12974         bits of MIDI.
12975
12976 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12977
12978         * cygwin/mknetrel (extras): Bufix (Bertalan).
12979
12980         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12981         * Documentation/user/instrument-notation.itely (Introducing chord
12982         names): Compile fix: must have unique name.
12983
12984 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12985
12986         * Documentation/user/instrument-notation.itely: reorg.
12987
12988 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12989
12990         * scm/output-gnome.scm:
12991         * scm/output-svg.scm: Fix font scaling.
12992
12993 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12994
12995         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12996         what link to use best.
12997
12998         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12999         * Documentation/user/tutorial.itely (Automatic and manual beams):
13000         Fix @ref.
13001
13002         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13003         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13004         * scm/framework-gnome.scm (tweak): Use it.
13005
13006 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13007
13008         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13009
13010         * scm/output-ps.scm (white-text): reinstate white-text
13011
13012 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13013
13014         * scm/output-ps.scm (offset-add): Remove.
13015
13016         * scm/lily-library.scm (offset-flip-y): New function.
13017         * scm/framework-gnome.scm (tweak): Use it.
13018
13019         * scm/output-gnome.scm (grob-cause): Add parameter.
13020
13021         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13022         * scm/output-ps.scm (url-link): Move.
13023         (white-text): Warn user about brokenness.
13024
13025         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13026         wrt ghostscript.
13027
13028 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13029
13030         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13031         if body length smaller than measure length.
13032
13033         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13034         for Y.
13035
13036         * ly/titling-init.ly (tagline): put default tagline in \paper
13037
13038 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13039
13040         * lily/kpath.cc: 
13041         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13042
13043         * scm/lily-library.scm (version-not-seen-message): New function.
13044         * ly/init.ly: Use it.
13045
13046         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13047         breaks as progess.
13048
13049         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13050         whitespace with l10n message.
13051
13052         * scm/framework-tex.scm (convert-to-ps):
13053         (convert-to-dvi): Do not use overly specific l10n messages.
13054
13055         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13056
13057         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13058         merge stderr with stdout.  
13059
13060 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13061
13062         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13063         Neeracher).
13064
13065 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13066
13067         * Documentation/user/instrument-notation.teily: moved
13068         \arpeggio to Basic.
13069
13070         * Documentation/user/advanced-notation.itely: Articulation to
13071         Basic, a bunch of stuff from Basic moved to Advanced.
13072
13073         * Documentation/user/basic.itely: swapped various sections,
13074         reorganized Basic.
13075
13076 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13077
13078         * flower/memory-stream.cc: 
13079         * flower/libc-extension.cc: Remove obsolete #undefs.
13080
13081         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13082         more carefully.
13083
13084 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13085
13086         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13087         dependency.
13088
13089         * VERSION (PACKAGE_NAME): release 2.5.13
13090
13091         * GNUmakefile.in (web-ext): don't ship ps.gz
13092
13093         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13094         stdout
13095
13096 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13097
13098         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13099         without libintl.  Now it compiles too.
13100
13101 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13102
13103         * Documentation/user/basic-notation.itely,
13104         instument-notation.itely, advanced-notation.itely:
13105         split up contents of notation.itely.
13106
13107         * Documentation/user/notation.itely: file removed.
13108
13109         * Documentation/user/invoking.itely, converters.itely:
13110         moved convert-ly info to invoking.itely.
13111
13112         * Documentation/user/global.itely, changing-defaults.itely,
13113         sound-output.itexi: moved global settings, file layout, and
13114         sound into global.itely.
13115
13116         * Documentation/user/sound-output.itexi: file removed.
13117
13118         * Documentation/user/lilypond.tely: removed links to
13119         notation.itely and sound.itely.
13120
13121 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13122
13123         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13124
13125         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13126  
13127         * THANKS: add sponsor.
13128
13129         * scm/define-markup-commands.scm (with-url): new markup command.
13130
13131         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13132         tagline.
13133         
13134         * scm/output-tex.scm (url-link): stub.
13135
13136         * scm/output-ps.scm (url-link): new function.
13137
13138         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13139         ly:set-point-and-click
13140
13141 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13142
13143         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13144         based on pdf-viewer setting.
13145
13146         * scm/framework-ps.scm (write-preamble): Find and set preferred
13147         pdf-viewer.
13148
13149 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13150
13151         * Documentation/user/point-and-click.itely: update for PDF point &
13152         click.
13153
13154         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13155         editors based on EDITOR setting.
13156
13157 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13158
13159         * scm/*: Oops, more grand 2005 replace bits.
13160
13161 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13162
13163         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13164
13165         * scm/output-ps.scm (grob-cause): point & click support for
13166         PostScript
13167
13168 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13169
13170         * lily/input-scheme.cc (LY_DEFINE): rename to
13171         ly:input-file-line-column
13172
13173 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13174
13175         * Documentation/user/examples.itely: small fix from Steve Doonan.
13176
13177         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13178
13179         * THANKS: added Yuval Harel.
13180
13181         * Documentation/user/{various}: inserted two spaces after a period.
13182
13183         * Documentation/user/lilypond.tely: added framework for reorg.
13184
13185         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13186         advanced-notation.itely, global.itely: new files, placeholder for
13187         future reorg.
13188
13189 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13190
13191         * Documentation/user/notation.itely: revamped Polyphony section
13192         
13193 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13194
13195         * Documentation/user/lilypond-book.itely (Music fragment options):
13196         doc fontload.
13197
13198         * Documentation/user/changing-defaults.itely (Text encoding): add
13199         fontload option to utf8 include
13200
13201         * scripts/lilypond-book.py (compose_ly): add fontload option
13202
13203         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13204         force-eps-font-include option.
13205
13206         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13207         black triangle
13208
13209         * Documentation/user/invoking.itely (Editor support): remove
13210         lilypond-latex section.
13211
13212         * scripts/lilypond-latex.py (Module): remove script.
13213
13214         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13215         overwrite .log. 
13216
13217         * lily/main.cc: remove -m, --no-layout
13218
13219         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13220         to define. We don't want to override fprintf everywhere.
13221
13222 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13223
13224         * cygwin/lilypond.hint: 
13225         * cygwin/README.in: Update dependencies.
13226
13227         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13228         Bugfix: do not pollute CPPFLAGS, LIBS.
13229
13230         * cygwin/mknetrel (extras): Cross compile fixes.
13231
13232         * ttftool/util.c: 
13233         * ttftool/ttfps.c: 
13234         * ttftool/ps.c: #include libc-extension.hh
13235
13236         * flower/include/libc-extension.hh:
13237         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13238         wrapper using funopen.
13239         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13240         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13241
13242         * config.hh.in:
13243         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13244         (AC_CHECK_HEADERS): Add libio.h
13245
13246         * scripts/convert-ly.py: Uniformize, internationalize.
13247         (2.5.2): Remove fatal encoding rule.
13248         (2.5.13): Handle latin1 encoding gracefully.
13249
13250 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13251
13252         * HACKING: Fix line breaks.
13253
13254 2005-02-23  Werner Lemberg  <wl@gnu.org>
13255
13256         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13257         contains those two files.
13258
13259 2005-02-21  Werner Lemberg  <wl@gnu.org>
13260
13261         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13262         to improve overlap removal process.
13263
13264         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13265         left and right ending.  This ensures better overlapping.
13266         Update all callers.
13267         ("lineprall"): Don't use draw_gridline to get better overlapping.
13268
13269 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13270
13271         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13272
13273         * Documentation/topdocs/NEWS.tely (Top): oops.
13274
13275 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13276
13277         * HACKING: new file.
13278
13279         * input/regression/utf8.ly (portuguese): added a portuguese example
13280         to show latin1 accents.
13281
13282 2005-02-21  Pal Benko  <benkop@freestart.hu>
13283
13284         * lily/mensural-ligature-engraver.cc:
13285         * lily/mensural-ligature.cc:
13286         * lily/include/mensural-ligature.hh: new algorithm implemented
13287
13288         * scm/define-grob-properties.scm: join-left killed (add-join may
13289         be used); join-left-amount changed to join-right-amount
13290
13291 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13292
13293         * Documentation/user/notation.itely: small but urgent fix.
13294
13295 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13296
13297         * lily/duration-scheme.cc: bugfix: correct parameters to
13298         SCM_ASSERT_TYPE.
13299
13300         * THANKS: added Pal.
13301
13302         * Documentation/user/notation.itely: bugfix: unTeXified
13303         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13304         "timesig.*x/y" -> "timesig.*xy".
13305
13306 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13307         
13308         * VERSION (PACKAGE_NAME): release 2.5.12
13309
13310 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13311
13312         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13313
13314         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13315
13316         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13317
13318         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13319
13320 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13321
13322         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13323         latin1..utf-8.
13324
13325         * input/regression/stanza-number.ly:
13326         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13327
13328         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13329
13330 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13331
13332         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13333         NEWS. Refer to website for older news.  
13334
13335         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13336         .HTML. This should be done for specific servers only.
13337
13338         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13339         .ly image examples.
13340
13341         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13342         in layer 0 too.
13343
13344         * scm/define-context-properties.scm
13345         (all-user-translation-properties): add tieWaitForNote
13346
13347         * scm/define-grobs.scm (all-grob-descriptions): add
13348         Tie_column::before_line_breaking
13349
13350         * lily/tie.cc (get_column_rank): new function
13351
13352         * lily/tie-column.cc (before_line_breaking): new function.
13353         (werner_directions): take into account ties that start on
13354         different columns.  
13355
13356         * lily/score-engraver.cc (set_columns): move add_column() so we
13357         have column rank available.
13358
13359         * lily/tie.cc (get_column_rank): new function.
13360
13361         * input/regression/utf8.ly (japanese): add japanese lyrics.
13362
13363         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13364
13365         * THANKS: add Steve D
13366
13367         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13368         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13369
13370 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13371
13372         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13373         to show harmonic notes
13374         * scm/define-markup-commands.scm: in \markup-by-number
13375         "dots-dot" -> "dots.dot" to show dotted notes
13376
13377 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13378
13379         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13380
13381         * flower/memory-stream.cc (writer): new file.
13382
13383         * configure.in: add endian test.
13384
13385 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13386
13387         * Documentation/user/examples.itely: small
13388         simplification/beautification
13389
13390         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13391         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13392         notation manual.
13393
13394         * lily/mensural-ligature.cc: bugfix: another few victims of the
13395         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13396
13397         * ly/gregorian-init.ly: commit some experimental code for hi-level
13398         ligature input language lying around here for several months.
13399
13400         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13401         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13402
13403         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13404         "x-y-z"->"x.y.s-z" fixes.
13405
13406 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13407
13408         * scm/framework-pdf.scm (scm): new file
13409
13410         * lily/include/pdf.hh (class Pdf_file): new file.
13411
13412         * lily/pdf.cc (write_trailer): new file.
13413
13414 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13415
13416         * input/regression/color.ly: new file
13417
13418         * lily/stencil.cc (interpret_stencil_expression):
13419         when a color expression is encountered: save current color,
13420         process the rest of the expression, and restore previous color.
13421
13422         * lily/system.cc (get_line): check all grobs for color property and
13423         prepare the stencil scheme expressions for further processing.
13424         Fix layer-loop.
13425
13426         * scm/define-grob-properties.scm: introduce the color property.
13427
13428         * scm/output-lib.scm: color helper functions.
13429
13430         * scm/output-ps.scm: introduce setcolor/resetcolor.
13431
13432 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13433
13434         * ly/*.ly, input/regression/*.ly: Added missing \version
13435         statements in some files.
13436
13437 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13438
13439         * Documentation/user/notation.itely: minor editing.
13440
13441         * Documentation/user/converters.itely: updated convert-ly bugs.
13442
13443         * Documentation/user/lilypond-book.itely: add info about using
13444         feta characters in latex.
13445
13446 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13447
13448         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13449
13450 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13451
13452         * scm/define-grob-properties.scm (all-user-grob-properties):
13453         removed 'dashed property.
13454
13455 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13456
13457         * scm/lily.scm (define-safe-public): new macro for defining
13458         variables that can be used in --safe mode. Use it in *.scm
13459         instead of manually setting safe-objects in safe-lily.scm.
13460
13461 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13462         
13463         * lily/slur.cc: Slur-dash patch by Bertalan.
13464
13465         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13466
13467         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13468
13469 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13470
13471         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13472
13473 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13474
13475         * mf/GNUmakefile: teTeX-3.0 install fix.
13476
13477         * Cygwin patch from Bertalan.
13478
13479         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13480
13481 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13482
13483         * GNUmakefile.in: 
13484         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13485
13486         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13487         2.0.x compatibility.
13488
13489 2005-02-08  Werner Lemberg  <wl@gnu.org>
13490
13491         * mf/feta-din-code.mf: Format; clean up code.
13492         Replace `---' with `--' plus explicit path directions.
13493         (linethickness#, stafflinethickness#): Remove.
13494         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13495         ("dynamic s"): Improve shape.
13496         ("dynamic p"): Improve shape.
13497         Replace `draw' with better outline approximation.
13498         ("dynamic r"): Improve shape.
13499         Don't call `fill' and `draw' at the same time.
13500
13501 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13502
13503         * SConstruct (symlink):
13504         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13505         build fix: add enc symlink.
13506
13507         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13508
13509         Support for DESTDIR besides prefix=/foo
13510
13511         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13512
13513         * stepmake/stepmake/*.make:
13514         * */GNUmakefile:
13515         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13516
13517         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13518
13519         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13520         mawk in fontforge (date) test.
13521
13522 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13523
13524         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13525         font-family=roman. Add Luxi Sans as sans
13526
13527 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13528
13529         * Documentation/user/notation.itely: add warning about
13530         percent repeats and Voice contexts.
13531
13532         * Documentation/user/lilypond-book.itely: clarified the
13533         necessity of dvips -u arguments.
13534
13535 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13536
13537         * THANKS: Added a bunch of bug hunters.
13538
13539 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13540
13541         * scm/framework-ps.scm (output-preview-framework): bugfix.
13542
13543         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13544         o/ for chord modifier..
13545
13546         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13547
13548         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13549         Welsh Duggan). 
13550
13551 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13552
13553         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13554
13555         * ly/titling-init.ly: Do not also print intstrument in header on
13556         first page.  Do not print page number on first and only page.
13557
13558 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13559
13560         * input/regression/*.ly: remove old-relative everywhere
13561
13562         * lily/music-sequence.cc (simultaneous_relative_callback): do
13563         what-if analysis on copy, not on original. Fixes old-relative
13564         compatibility.
13565
13566         * scm/backend-library.scm (postscript->png): space before
13567         --verbose.
13568         
13569 2005-02-05  Werner Lemberg  <wl@gnu.org>
13570
13571         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13572         is defined.
13573
13574         * mf/feta-alphabet.mf: Define `staffsize#'.
13575         Include `feta-params.mf'.
13576         s/staffheight/design_size/.
13577
13578         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13579
13580         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13581
13582         * mf/feta-nummer-code.mf: Reformatted.
13583         (draw_six): Use outline intersection to avoid a self-intersecting
13584         path.
13585         ("Numeral comma"): Fix serious outline glitches.  This slightly
13586         changes the glyph shape.
13587         ("Numeral dash"): Use `draw_rounded_block'.
13588         ("Numeral dot"): Use `drawdot'.
13589         ("Numeral 1"): Assure identical tangent directions for the
13590         intersection points of paths.  The glyph shape improvement is only
13591         visible at very high magnifications.
13592         ("Numeral 2"): Use `solve' macro to make the lower right part of
13593         the glyph outline touch the x axis exactly.  This changes the
13594         glyph shape.
13595         Minor fixes for better overlap removal support.
13596         ("Numeral 4"): Make lefter corner `rounder'.
13597         ("Numeral 5"): Assure identical tangent directions for the
13598         intersection points of paths.  This improves the glyph shape at
13599         high magnifications.
13600         ("Numeral 7"): Use `solve' macro to make the upper right part of
13601         the glyph outline touch the metrics box exactly.  This changes the
13602         glyph shape.
13603         Avoid corner in the upper left part of the glyph (causing a minor
13604         shape change).
13605
13606         * mf/feta-ital-*.mf: Removed.  Unused.
13607
13608 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13609
13610         * VERSION (PATCH_LEVEL): release 2.5.11
13611
13612         * input/regression/fill-line-test.ly: new file.
13613
13614         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13615         emmentaler name, eg. emmentaler-23. 
13616
13617 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13618
13619         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13620         alignment with centered texts
13621
13622         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13623         list of paddings
13624
13625 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13626
13627         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13628
13629         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13630         of parents when translating rests. Fixes: c-chord-rest.ly 
13631
13632         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13633         dimension_callback_ member.
13634
13635         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13636         of extents.
13637
13638 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13639
13640         * all but lily/*: The grand 2004/2005 replace.
13641
13642 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13643
13644         * lily/*: add space after ,  
13645
13646         * scm/music-functions.scm (has-request-chord): don't use
13647         ly:music-name anywhere. Fixes <<\\>> notation. 
13648
13649         * scm/define-markup-commands.scm (box): use font-size for
13650         padding. Fixes boxed-rehearsal-marks.ly
13651
13652         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13653         identifier definition too, so foo = \lyrics { ...   } bar = #1
13654         doesn't complain about "bar" being LYRICS_STRING.
13655
13656         * lily/paper-def.cc (find_pango_font): new routine; Store
13657         pango_fonts in hash tab too. This is necessary for retrieving
13658         Pango_fonts::physical_font_tab() later on.
13659  
13660         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13661         crash if psname is null.
13662
13663         * lily/lily-guile.cc (ly_hash2alist): new function
13664
13665         * Documentation/user/changing-defaults.itely (Text encoding):
13666         rewrite. 
13667
13668         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13669         -> font_filename mapping.
13670
13671         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13672         ly_pango_font_physical_fonts
13673
13674         * scm/framework-ps.scm (supplies-or-needs): extract names from
13675         physical Pango_fonts.
13676
13677         * utf8.ly: new file.
13678
13679 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13680
13681         * Documentation/user/changing-defaults.itely (Page layout): add
13682         doco about systemSeparatorMarkup.
13683
13684         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13685         function.
13686         (default-page-make-stencil): insert system separators.
13687
13688         * scm/define-markup-commands.scm (hcenter): add
13689         (beam): add.
13690
13691 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13692
13693         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13694
13695 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13696
13697         * lily/main.cc: Spell backend consistently.  Sort options.
13698
13699 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13700
13701         * scripts/lilypond-book.py (Module): revert @include.
13702         
13703 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13704
13705         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13706         Bugfix: @include .tex (not .texi).  Small cleanups.
13707
13708         * stepmake/bin/add-html-footer.py (i18n): New function.
13709
13710 2005-01-31  Werner Lemberg  <wl@gnu.org>
13711
13712         * mf/feta-nummer.mf: Removed.  Unused.
13713
13714 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13715
13716         * lily/ : 2004 -> 2005 s&r
13717
13718         * scm/file-cache.scm (cached-file-contents): add file. Read each
13719         file only once.
13720
13721         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13722         now default.
13723
13724         * VERSION: release 2.5.10
13725         
13726         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13727
13728         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13729
13730         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13731         that both X and Y extents of bbox are non-nil.
13732
13733 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13734
13735         * scm/chord-name.scm (alteration->text-accidental-markup): change
13736         - to . 
13737
13738         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13739
13740         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13741
13742         * Documentation/user/invoking.itely (Invoking lilypond): add note
13743         about EPS backend.
13744
13745         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13746         files for inclusion in lilypond-book document.
13747
13748         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13749
13750         * input/tutorial/lbook-texi-test.texi: new file.
13751
13752         * scm/safe-lily.scm (safe-objects): add
13753         {begin,end}-of-line-(in)?visible as safe.
13754  
13755 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13756
13757         * Documentation/user/changing-defaults.itely: fixed example
13758         of (dynamics).
13759
13760 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13761
13762         * lily/main.cc: fix info about -o=FILE.
13763
13764 2005-01-29  Werner Lemberg  <wl@gnu.org>
13765
13766         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13767         construction to assure smooth transition from straight to curved
13768         lines.
13769
13770 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13771
13772         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13773         stencils.
13774
13775         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13776         translate to top of page. Fixes alignment problems of
13777         lilypond-generated EPS files.
13778
13779 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13780
13781         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13782         crescendo-end as well, since Decrescendo maybe ended with Stop
13783         Crescendo.). Fixes: partcombine-diminuendo.ly
13784
13785         * scm/script.scm (default-script-alist): swap portato symbols.
13786
13787         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13788
13789         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13790         ly:outputter-port. New function.
13791
13792         * scm/framework-ps.scm (output-classic-framework): dump a
13793         -systems.texi too
13794         (output-classic-framework): dump multiple systems on an "infinite"
13795         page EPS including fonts. 
13796
13797         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13798         .eps files for both texi and tex formats. Use PNG coming from
13799         lilypond.
13800         
13801 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13802
13803         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13804
13805         * scripts/lilypond-latex.py: fix info about -o=FILE.
13806
13807 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13808
13809         * ly/generate-embedded-cff.ly: write .cff.ps files.
13810
13811         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13812
13813         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13814         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13815
13816 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13817
13818         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13819
13820 2005-01-28  Werner Lemberg  <wl@gnu.org>
13821
13822         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13823         macros.
13824         (draw_bulb): Improved.
13825
13826         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13827         metapost bug.
13828         (draw_pedal_P): Use soft_end_penstroke.
13829         (draw_pedal_d): Use soft_start_penstroke.
13830
13831         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13832         path.
13833         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13834         doesn't change the glyph shape.
13835
13836         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13837         changing the shape) to avoid fontforge warnings.
13838
13839         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13840         soft_end_penstroke and fix glyph shape.
13841
13842 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13843
13844         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13845
13846 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13847
13848         * scm/define-markup-commands.scm (line): filter out empty stencils
13849         from line command.
13850
13851         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13852         amount.
13853
13854 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13855
13856         * Documentation/user/notation.itely: added info about what
13857         \voiceFoo does.  Also rewrote warning about marks at
13858         a line break.
13859
13860         * Documentation/user/changing-defaults.itely: added info
13861         about putting dynamics in parenthesis and brackets.
13862
13863 2005-01-27  Werner Lemberg  <wl@gnu.org>
13864
13865         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13866
13867 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13868
13869         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13870         portato-direction.ly
13871
13872         * lily/beam.cc (consider_auto_knees): add beam height to
13873         threshold. Fixes: knee-multiple-beam.ly
13874
13875         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13876         pedal line spanners. Fixes: instrument-center-pedal.ly
13877
13878         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13879         if encountering barline. Fixes: auto-beam-repeat.ly
13880
13881 2005-01-26  Werner Lemberg  <wl@gnu.org>
13882
13883         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13884         overlapping.
13885
13886         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13887         with inflections for the 1/2 sharp glyph.
13888
13889         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13890         connection between `t' and `r'.
13891         Unify bulb with the rest of `r' to avoid grazing outlines which
13892         confuses the overlap removal algorithm of fontforge.
13893
13894         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13895         inflections.
13896         (draw_cross): Fix shape to have uniform thickness in corners.
13897
13898         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13899         to avoid an uneven number of self-intersections; this confuses
13900         fontforge.
13901         Fix a slight bug in the shape at left bottom (which is visible only
13902         at high magnifications).
13903         `Center' the stem horizontally to avoid overlapping.
13904
13905 2005-01-24  Werner Lemberg  <wl@gnu.org>
13906
13907         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13908         to `asis'.
13909         (fet_begingroup): Save group name in string `feta_group'.
13910         (fet_endgroup): Updated.
13911         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13912
13913         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13914
13915         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13916         in metapost.
13917
13918 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13919
13920         * Documentation/user/notation.itely: really minor editing.
13921
13922 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13923
13924         * Documentation/user/examples.itely: minor editing.
13925
13926         * Documentation/user/changing-defaults.itely: minor editing.
13927
13928         * Documentation/user/notation.itely: clarified info on polyphony
13929         and \addlyrics.
13930
13931 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13932
13933         * scm/output-gnome.scm: 
13934         * scm/output-svg.scm:
13935         * scm/lily-library.scm (font-name-style): Update font name
13936         kludging for fontconfig use.
13937
13938 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13939
13940         * scm/define-markup-commands.scm: Document right-align and
13941         larger markup commands. Remove "TODO" from the topmost comment
13942         "each markup function should have a doc string." More consistent
13943         use of new-lines.
13944
13945 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13946
13947         * Documentation/user/changing-defaults: removed info about
13948         copyright symbol, since it's likely to change soon.
13949         Added info about betweensystemspace.
13950
13951         * Documentation/user/notation.itely: minor fixes.
13952
13953         * Documentation/user/lilypond.tely,
13954         Documentation/user/music-glossary.tely: changed copyright
13955         date to 2005 instead of 2004.
13956
13957         * input/test/volta-chord-names.ly: added old example back.
13958
13959 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13960
13961         * mf/feta-beugel.mf: use design size 20 (not 15).
13962
13963         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13964         change name to aybabtu completely
13965
13966 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13967
13968         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13969         design_size to fontname
13970
13971 2005-01-19  Werner Lemberg  <wl@gnu.org>
13972
13973         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13974         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13975
13976         * mf/feta-autometric.mf (set_char_box): Add code which emits
13977         specials for mf2pt1 if run with metapost.
13978         (to_bp): New macro for mf2pt1.
13979
13980 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13981
13982         * Documentation/user/changing-defaults: added info on
13983         creating a copyright symbol.
13984
13985 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13986
13987         * VERSION: release 2.5.9
13988         
13989 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13990
13991         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13992
13993         * Documentation/user/notation.itely: Document
13994         score-override-auto-beam-setting Fix documentation for
13995         revert-auto-beam-setting.
13996
13997 2005-01-18  Werner Lemberg  <wl@gnu.org>
13998
13999         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14000         (procset): New function to define a procset resource.
14001         (ps-embed-pfa): New function to define a font resource.
14002         (setup): New function to define a `Setup' environment.
14003         (preamble): Use new functions.
14004
14005         * ps/lilypond.defs (init-lilypond-parameters): New function to
14006         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14007
14008 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14009
14010         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14011
14012 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14013
14014         * scm/define-markup-commands.scm: Change number->markletter-string
14015         to take two arguments (vector number). Add number->mark-alphabet-vector
14016         and markalphabet markup command.
14017
14018         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14019         format-mark-alphabet, format-mark-box-barnumbers and
14020         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14021
14022 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14023
14024         * Documentation/user/examples.itely: add SATB automatic piano
14025         reduction template.
14026
14027         * Documentation/user/notation.itely: added info about changing
14028         partcombine texts.  Also adds examples of alternate lyrics.
14029
14030         * Documentation/user/changing-defaults.itely: added warning
14031         about \RemoveEmptyStaffContext overriding previous changes.
14032
14033 2005-01-17  Werner Lemberg  <wl@gnu.org>
14034
14035         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14036         feta-alphabet*.
14037
14038 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14039
14040         * python/lilylib.py (make_ps_images): don't do final showpage for
14041         multi-page documents.
14042         
14043         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14044
14045 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14046
14047         * Documentation/user/lilypond.tely: changed order of appendices;
14048         unified index should be last.
14049
14050         * Documentation/user/notation.itely: add example of key signatures
14051         and info about Staff.printKeyCancellation.
14052
14053 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14054
14055         * lily/include/repeated-music.hh (class Repeated_music): change
14056         into "namespace" class.
14057
14058         * lily/event.cc: remove Key_change_event.
14059
14060         * lily/include/transposed-music.hh (class Transposed_music): remove.
14061
14062         * lily/transposed-music.cc: remove
14063
14064         * lily/include/relative-music.hh: remove.
14065
14066         * lily/include/music-sequence.hh (struct Music_sequence): change
14067         into "namespace" class.
14068
14069         * lily/untransposable-music.cc (Module): remove
14070
14071         * lily/include/un-relativable-music.hh (Module): remove
14072
14073         * lily/include/untransposable-music.hh (Module): remove
14074
14075         * lily/include/music-list.hh (Module): remove file
14076
14077         * lily/un-relativable-music.cc: remove file.
14078
14079 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14080
14081         * lily/parser.yy: Compile fix.
14082
14083 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14084
14085         * lily/include/music.hh (class Music): unvirtualize transpose().
14086
14087         * lily/sequential-music.cc: remove file.
14088
14089         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14090
14091         * lily/slur-scoring.cc (get_best_curve): only switch on
14092         DEBUG_SLUR_SCORING for non NDEBUG builds.
14093
14094         * lily/include/music.hh (class Music): replace Music::start_mom()
14095         by start-callback property
14096
14097         * lily/include/grace-music.hh: remove file. 
14098
14099         * lily/stem.cc (height): robustness fix.
14100
14101         * lily/time-scaled-music.cc: remove file.
14102
14103         * lily/include/music.hh (class Music): include SCM init argument.
14104         (class Music): replace Music::get_length() virtual by
14105         length-callback property everywhere.
14106
14107         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14108
14109         * mf/GNUmakefile: don't install *list.ly
14110
14111 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14112
14113         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14114
14115 2005-01-12  Werner Lemberg  <wl@gnu.org>
14116
14117         This patch addresses the following problems in the feta sources
14118         files which contribute to the fetaXX fonts.
14119
14120         . Many fixes for rasterization at low resolutions (consistent use of
14121           `vround' and `hround', integer shift values for paths, applying
14122           `eps' for mirrored paths, use of `define_whole_pixels' and
14123           friends, etc.) -- while this probably looks like a waste of time
14124           it has revealed deficiencies in some glyph shapes.  See comment at
14125           the end of feta-params.mf how vertical symmetry is achieved.
14126
14127         . The `---' operator has been replaced everywhere with `--'; this
14128           both improves and considerably reduces the font size after
14129           conversion with mf2pt1.
14130
14131         These change aren't explicitly mentioned below since virtually all
14132         glyphs are affected.
14133
14134         Other notable differences:
14135
14136         . Glyphs from feta-accordion.mf now have charboxes around the
14137           outline.
14138
14139         . Fixed incorrect charbox for `accDot'.
14140
14141         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14142
14143         . Fixed position of the bow in the `upprall' glyph and its siblings.
14144
14145         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14146           dependent on the staff line thickness to avoid touching the middle
14147           staff line at smaller sizes.
14148
14149         . Largely extended output for feta-testXX: Where useful, glyphs
14150         are shown both between and on staff lines.
14151
14152
14153         * mf/feta-params.mf (staff_space_rounded,
14154         stafflinethickness_rounded, linethickness_rounded,
14155         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14156         Update all code which uses them where appropriate.
14157         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14158         New variables used to control rasterization at low resolutions.  Set
14159         to zero if feta code is processed with metapost.
14160
14161         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14162         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14163         (flare_path): Updated.
14164         Make it work with `filldraw' (but only circular pens).
14165         (hfloor, vfloor, hceiling, vceiling): New macros.
14166
14167         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14168         Use `draw' again in mf mode to have good pixel dropout control.
14169         Fix intersection points of horizontal lines with circle.
14170         ("accDot"): Fix parameters for set_char_box.
14171         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14172         control.
14173
14174         * mf/feta-banier.mf: Updated.
14175
14176         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14177         testing.
14178         (undraw_inside_ellipse): Remove `center' argument.  Update all
14179         callers.
14180         (draw_brevis): New macro, called by "Brevis notehead".
14181         (draw_whole_triangle_head): New macro, called by "Whole
14182         trianglehead".
14183         (draw_small_triangle_head): Use `filldraw'.
14184
14185         * mf/feta-eindelijk.mf: Remove useless global group.
14186         Updated.
14187
14188         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14189         `filldraw'.
14190
14191         * mf/feta-pendaal.mf: Updated.
14192
14193         * mf/feta-puntje.mf: Updated.
14194
14195         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14196         less points.
14197         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14198         dropout control.
14199         ("Varied Coda"): Use `draw_block'.
14200         (draw_comma): Fix typo.
14201         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14202         pixel dropout control.
14203
14204         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14205         position of bow.
14206
14207         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14208         sizes.
14209
14210         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14211         testing.
14212         (draw_meta_sharp): Much simplified.
14213         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14214
14215         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14216
14217 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14218
14219         * Documentation/user/notation.itely (Ancient rests): Fix typo
14220         (thanks Anthony)
14221
14222 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14223
14224         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14225
14226         * lily/main.cc (setup_paths): Add cff.
14227
14228         * mf/GNUmakefile (foe): Include actual target %.cff.
14229         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14230
14231 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14232
14233         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14234         suffix for main_input_b_.
14235
14236         * scm/music-functions.scm (toplevel-music-functions):
14237         precompute music lengths for music expressions.  
14238
14239 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14240
14241         * lily/include/input.hh (class Input): new `end_' slot for end of
14242         input. Renamed defined_str0_ to start_.
14243
14244         * lily/input.cc (Input): Add Input::Input (Input const &) and
14245         remove Input::Input (Source_file*, char const *). Use the new
14246         slots.
14247         (set_location): method used by bison to propagate input
14248         locations (YYLLOC_DEFAULT).
14249         (end_line_number, end_column_number, step_forward): new methods
14250         
14251         * lily/input-scheme.cc (ly:input-both-locations): new function,
14252         similar to ly:input-location, but also return the end line and
14253         column.
14254
14255         * lily/include/includable-lexer.hh: 
14256         * lily/includable-lexer.cc: 
14257         * lily/include/lily-lexer.hh (class Lily_lexer): 
14258         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14259         Includable_lexer to Lily_lexer, in order to update lexloc (the
14260         yylloc), a new slot of Lily_lexer.
14261         (here_input, LexerError): simplify by using the lexloc slot (aka
14262         yylloc)
14263
14264         * lily/lexer.ll: #define yylloc to use input locations (it may
14265         be useless here?). Fixed the #embedded_scm rule (step the location
14266         forward in order to skip the sharp sign before parsing the scheme
14267         expression)
14268
14269         * lily/include/lily-parser.hh (class Lily_parser): 
14270         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14271         here_input()
14272         (parser_error): overload for more precise locations of errors.
14273
14274         * lily/parser.yy (YYLTYPE): set location type to Input
14275         (YYLLOC_DEFAULT): use Input::set_location()
14276         (yylex): add the YYLTYPE* location parameter.
14277         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14278         Give an Input parameter to THIS->parser-error() for more accurate
14279         messages.
14280
14281 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14282
14283         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14284
14285         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14286         on BEAMQUANTING for non-NDEBUG builds.
14287
14288         * lily/stem.cc (head_count): performance: avoid String::String()
14289         inside oft called function.
14290
14291 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14292
14293         * Documentation/user/examles.itely: attempted fix for broken
14294         string quartet template.
14295
14296         * Documentation/user/notation.itely: remove unnecessary broken
14297         link.
14298
14299 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14300
14301         * VERSION (PACKAGE_NAME): release 2.5.7
14302
14303 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14304
14305         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14306         mf-nowin for teTeX-3.0.  Backportme.
14307
14308         * scm/output-svg.scm (utf8-string): New function.
14309
14310         * scm/output-gnome.scm (utf8-string): New function.
14311         (otf-name-mangling): Remove.
14312
14313         * lily/pango-font.cc (Pango_font): Use font string iso font
14314         filename for utf8-text.
14315
14316         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14317         name.
14318
14319 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14320
14321         * Documentation/user/notation.itely: add info about
14322         Staff.extraNatural = ##f in Pitches section.  Also
14323         fixed some minor issues in the Vocal music section.
14324
14325 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14326
14327         * scm/output-ps.scm (white-text): comment out Helvetica font,
14328         which is broken for my GS install.
14329
14330         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14331         which provides a tighter bbox.
14332
14333         * scm/define-grobs.scm (all-grob-descriptions): remove all
14334         extra-offsets from definitions.
14335
14336 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14337
14338         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14339         add tuning for 4-string bass and some common 4/5-string banjo
14340         tunings.  New function (four-string-banjo) turns a 5-string tuning
14341         into a 4-string tuning.  New function
14342         (fret-number-tablature-format-banjo) computes correct fret numbers
14343         on 5-string banjos.
14344
14345         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14346         Add beam correction to TabVoice.
14347
14348         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14349         using bold font; makes tabs more readable.
14350
14351 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14352
14353         * lily/font-select.cc (get_font_by_design_size): don't make
14354         Modified_font_metric; this causes trouble, since we don't know the
14355         font magnification from inside Pango_font::text_stencil()
14356
14357         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14358
14359         * Documentation/user/notation.itely (The Lyrics context): comment out
14360         broken {Small ensembles} link.
14361
14362         * scm/framework-svg.scm (output-framework): change calling convention.
14363
14364         * lily/object-key-dumper-scheme.cc: new file.
14365
14366         * lily/object-key-undumper-scheme.cc: new file.
14367
14368         * lily/tweak-registration-scheme.cc: new file.
14369
14370         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14371
14372         * Documentation/user/examples.itely (String quartet): uncomment
14373         broken example.
14374
14375         * lily/font-config.cc: new file.
14376
14377 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14378
14379         * scm/output-svg.scm: 
14380         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14381
14382         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14383
14384 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14385
14386         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14387         Add headers.
14388
14389         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14390
14391 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14392
14393         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14394
14395         * lily/include/main.hh: lose _b hungarian suffixes for global
14396         variables.
14397
14398         * lily/include/lily-guile-macros.hh: new file.
14399
14400         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14401
14402         * lily/general-scheme.cc: new file. 
14403
14404         * lily/font-select.cc (get_font_by_design_size): retrieve
14405         PangoFont for (designsize . "pango-descr") entries.
14406
14407         * lily/lily-parser-scheme.cc: new file.
14408
14409         * lily/output-def-scheme.cc: new file.
14410
14411         * lily/paper-book-scheme.cc: new file.
14412
14413         * lily/duration-scheme.cc (LY_DEFINE): new file.
14414
14415         * lily/pitch-scheme.cc:  new file.
14416
14417         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14418
14419 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14420
14421         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14422
14423 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14424
14425         * Documentation/user/notation.itely: minor editing.
14426
14427         * Documentation/user/changing-defaults: minor editing.
14428
14429         * Documentation/user/examples.itely: add template for
14430         string quartet part extraction; demonstrates tag.
14431
14432 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14433
14434         * Documentation/user/notation.itely: documents
14435         format-mark-box-letters and format-mark-box-numbers
14436
14437         * scm/define-context-properties.scm: change comment.
14438
14439 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14440
14441         * scm/framework-ps.scm (output-classic-framework): new function:
14442         dump systems as separate .eps files (without fonts) and write a
14443         single collecting .tex file.
14444
14445 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14446
14447         * Documentation/user/notation.itely (Setting simple songs):
14448         Correct several errors in the equivalent formulation of
14449         \addlyrics. 
14450         (The Lyrics context): Corrected link to the SATB example.
14451
14452 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14453
14454         * scm/lily.scm (completize-formats): new function
14455         (postprocess-output): new function
14456
14457         * lily/paper-book.cc (classic_output): change calling
14458         convention. Give basename as first argument. 
14459         remove Paper_book::post_processing().
14460
14461         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14462
14463 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14464
14465         * lily/paper-outputter.cc (LY_DEFINE): new function
14466         ly:outputter-close.
14467
14468         * lily/main.cc: change --format,-f to --backend,-b
14469
14470         * lily/include/main.hh: rename format to backend.
14471
14472         * scm/translation-functions.scm (format-mark-box-numbers): add.
14473         patch by Erlend Aasland
14474
14475 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14476
14477         * lily/pango-font.cc (text_stencil): dump string as
14478         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14479
14480 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14481
14482         * configure.in (gui_b): Remove handy developer-only
14483         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14484         CVS source installations (but break other non-default but correct
14485         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14486
14487         * SConstruct: 
14488         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14489         compatibility (backportme).
14490
14491         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14492
14493 2005-01-03  Werner Lemberg  <wl@gnu.org>
14494
14495         Prepare glyph shapes for mf2pt1 conversion.
14496
14497         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14498         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14499         `penstroke'.
14500         (accDot): Use `drawdot'.
14501         (accBayanbase): Replace `draw' with `draw_gridline'.
14502         (print_penpos): Moved to feta-macros.mf.
14503         (accOldEE): Replace `filldraw' with `penstroke'.
14504         Replace `draw' with `penstroke' and `drawdot'.
14505
14506         * mf/feta-banier.mf: Code clean-up.
14507         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14508         `fill'.
14509
14510         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14511
14512         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14513         paremeter to control drawing of labels.  Update all callers.
14514
14515         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14516         (new_bulb): Return a bulb as a single path.  To do that, it now
14517         takes some more parameters.  Updated all callers.
14518         (draw_gclef): Major clean-up.  `draw' has been replaced with
14519         `penstroke', unnecessary outlines have been removed.
14520         Remove (unused) gnome-canvas code.
14521
14522         * mf/feta-macros.mf (print_penpos): New macro (from
14523         feta-accordion.mf).
14524         Other minor fixes.
14525
14526         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14527         ("Pedal dot"): Use `drawdot'.
14528         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14529         all callers.
14530         Fix shape at top.
14531         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14532         all callers.
14533         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14534         all callers.
14535         Revert drawing direction.
14536
14537         * mf/feta-schrift.mf (draw_fermata): Use single path.
14538         (draw_short_fermata): Replace `filldraw' with `fill'.
14539         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14540         `draw_rounded_block' with a single path.
14541         ("Thumb"): Draw full circle instead of mirroring segments.
14542         (draw_accent): New macro.
14543         ("> accent", "espr"): Use it.
14544         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14545         ("open (unstopped)"): Draw full circle instead of mirroring
14546         segments.
14547         (draw_vee): Removed.
14548         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14549         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14550         path.
14551         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14552         partial pieces drawn with `fill' -- these do still overlap with the
14553         stem of the `t' but just once, not multiple times so that fontforge
14554         can handle it gracefully.
14555         Change other parts of the glyph so that fontforge's overlapping
14556         algorithm reliably works.
14557         (draw_heel): Replace `draw' with `fill'.
14558         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14559         ("Flageolet"): Replace `draw' with `penstroke'.
14560         ("Segno"): Replace `filldraw' with `penstroke'.
14561         Replace `draw' with `drawdot'.
14562         ("Coda"): Replace `fill' with `penstroke', using a single path.
14563         ("Varied Coda"): Use less overlapping paths.
14564         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14565         single path.
14566
14567         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14568         group to better control the `labels' command.
14569         Rename argument to `offset' and use it actually.  Update all
14570         callers.
14571         Replace `filldraw' with `fill'.
14572         ("mordent", "prallmordent", "upmordent", "downmordent",
14573         "lineprall"): Replace `draw' with `draw_gridline'.
14574         ("upprall", "downprall"): Replace `draw' with `fill'.
14575
14576         * mf/feta-timesig.mf: Formatting.
14577
14578         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14579         to...
14580         ("Flat"): Here.
14581         (draw_paren): Move code to draw labels to...
14582         ("Right Parenthesis"): Here.
14583
14584 2005-01-02  Graham Percival <gperlist@shaw.ca>
14585
14586         * Documentation/user/notation.itely: add example of \setTextDecresc
14587         and \setTextDim.
14588
14589 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14590
14591         * scm/define-markup-commands.scm :  fix glyph-strings of
14592         accidentals and \note-by-number
14593
14594 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14595
14596         * VERSION: 2.5.6 released.
14597         
14598         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14599
14600         * input/regression/new-markup-scheme.ly: oops. font-family=music
14601         -> font-encoding fetaMusic.  
14602
14603         * lily/main.cc: put default to PS.
14604
14605         * lily/tfm.cc: idem.
14606
14607         * lily/afm.cc: idem.
14608
14609         * lily/include/modified-font-metric.hh (struct
14610         Modified_font_metric): remove coding_scheme() method.
14611
14612         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14613
14614         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14615
14616         * input/les-nereides.ly: convert to utf8
14617
14618         * lily/modified-font-metric.cc (text_dimension): idem.
14619
14620         * lily/parser.yy (TODO): idem.
14621
14622         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14623
14624         * lily/lexer.ll: remove encoding
14625
14626         * scm/framework-ps.scm (output-variables): separately scale the
14627         page to mm 
14628
14629         * lily/pango-font.cc (Pango_font): fix scaling.
14630
14631         * lily/font-metric.cc (design_size): design_size returns a
14632         dimension now as well.
14633
14634 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14635
14636         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14637         brace generation. 
14638
14639         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14640
14641 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14642
14643         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14644         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14645
14646 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14647
14648         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14649         in first run as well.
14650
14651         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14652         dimension less points (ie. 12 = 12 point)
14653
14654         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14655
14656         * lily/all-font-metrics.cc (find_pango_font): set description_
14657
14658         * lily/pango-font.cc (text_stencil): export size as well.
14659         (text_stencil): fix scaling and extents box.
14660
14661 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14662
14663         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14664
14665         * Documentation/user/invoking.itely (Invoking lilypond): document
14666         texstr
14667
14668         * scripts/convert-ly.py (conv): add ancient rules.
14669
14670         * scm/clef.scm (c0-pitch-alist): replace - with .
14671
14672         * scripts/lilypond-book.py (process_snippets): add texstr support.
14673
14674         * scm/framework-texstr.scm (header): change extension to .textmetrics
14675
14676         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14677         -f tex.
14678
14679         * lily/text-metrics.cc: new file.
14680         (try_load_text_metrics): new function
14681
14682         * lily/include/text-metrics.hh: new file.
14683
14684 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14685
14686         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14687         ly_scheme_function to ly_lily_module_constant.
14688
14689         * lily/modified-font-metric.cc (text_dimension): try
14690         lookup_tex_text_dimension() first.
14691
14692         * lily/tfm.cc: new function ly:load-text-dimensions
14693
14694 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14695
14696         * scm/output-texstr.scm (text): use \lilygetmetrics
14697
14698         * scm/framework-texstr.scm (header): dump in new format.
14699
14700         * tex/lilypond-tex-metrics: new file.
14701         
14702 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14703
14704         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14705         mapping.
14706         (index_to_charcode): New method.
14707
14708         * scm/output-ps.scm (glyph-string): 
14709         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14710
14711 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14712
14713         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14714         implement fully, need FONT to get to charcode.
14715
14716         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14717
14718         * scm: Cleanups.
14719
14720         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14721         {Tunable context properties},
14722         {All layout objects},
14723         {Music definitions}.
14724
14725 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14726
14727         * VERSION: release 2.5.5
14728         
14729         * lily/main.cc: use TeX as default output format.
14730
14731         * flower/file-path.cc (find): try to open directly as well, so we
14732         find absolute path files. 
14733
14734         * lily/pango-select.cc: new file.
14735
14736         * scm/framework-ps.scm: remove all encoding code. 
14737         load pfb/pfa for PangoFont too.
14738         
14739         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14740
14741 2004-12-22  Werner Lemberg  <wl@gnu.org>
14742
14743         Prepare glyph shapes for mf2pt1 conversion.
14744
14745         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14746
14747         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14748         (define_triangle_shape): Use it to replace `draw' with `fill' and
14749         `unfill'.  Update all callers.
14750         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14751         (draw_cross): Ditto.
14752         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14753         Use penrazor for better conversion with mf2pt1.
14754         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14755         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14756         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14757         draw_la_head, draw_ti_head): Replace `filldraw' with
14758         `fill'.  Update all callers.
14759
14760 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14761
14762         * lily/paper-book.cc (output): revert: only allow a single output
14763         format.
14764
14765         * lily/include/pango-font.hh: new file.
14766
14767         * lily/pango-font.cc: new file.
14768
14769         * lily/font-metric.cc (text_stencil): new routine
14770
14771         * lily/all-font-metrics.cc (find_pango_font): new routine.
14772
14773         * lily/include/font-metric.hh (struct Font_metric): add
14774         text_stencil()
14775
14776         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14777
14778 2004-12-22  Werner Lemberg  <wl@gnu.org>
14779
14780         Prepare glyph shapes for mf2pt1 conversion.
14781
14782         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14783
14784         * mf/feta-toevallig.mf: Formatting.
14785         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14786         ("Natural"): Fix paths to allow better postprocessing.
14787         (draw_meta_flat): Use `z3l' as additional point in path to get
14788         better conversion with mf2pt1.
14789         Other minor cleanups.
14790         ("3/4 Flat"): Add auxiliary points and modify path to replace
14791         `draw' with `fill'.
14792         ("Double Sharp"): Mirror path segments instead of picture elements
14793         to get a single outline.
14794         Modify path to replace `filldraw' with `fill'.
14795
14796 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14797
14798         * input/test/unfold-all-repeats.ly: added file back.
14799
14800         * Documentation/user/notation.itely,
14801         Documentation/user/programming-interface.itely
14802         Documentation/user/changing-defaults.itely: fixed misc broken
14803         links to input/test/ files.
14804
14805 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14806
14807         * tex/texinfo.tex: Update.  We should not be distributing this,
14808         but since we do, use latest version.
14809
14810         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14811         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14812         macros for feta glyphs.
14813
14814 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14815
14816         * Documentation/user/changing-defaults.itely: fix index for set.
14817
14818         * Documentation/user/converters.itely: added convert-ly bugs list
14819         from CVS.
14820
14821 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14822
14823         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14824         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14825         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14826         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14827
14828         * mf/GNUmakefile (pfa_warning): Use less broken check.
14829
14830         * python/lilylib.py (setup_environment): Remove cruft from
14831         GS_FONTPATH.
14832
14833         * configure.in: Bump mftrace requirement to 1.1.1.
14834
14835 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14836
14837         * scm/output-svg.scm (beam): Use polygon.
14838
14839         * scm/lily-library.scm: Bugfix.
14840
14841         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14842
14843         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14844
14845 2004-12-19  Werner Lemberg  <wl@gnu.org>
14846
14847         Prepare glyph shapes for mf2pt1 conversion.
14848
14849         * mf/feta-eindelijk: Some formatting.
14850         (multi_rest_x, multi_beam_height): Removed.  Unused.
14851         ("Quarter rest"): Use `intersectiontimes' to create a single
14852         outline.
14853         (rest_crook): Removed.  Unused.
14854         (draw_rest_bulb): Return path (without filling).  Update callers.
14855         Simplified.
14856         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14857         "128th rest"): Simplify `pat'.
14858         Create single outline.
14859
14860 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14861
14862         * mf/GNUmakefile (ALL_GEN_FILES):
14863         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14864
14865         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14866         function.
14867
14868 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14869
14870         * scm/output-texstr.scm (placebox): add routine
14871
14872         * VERSION (PACKAGE_NAME): release 2.5.4
14873
14874         * scm/framework-texstr.scm (output-framework): new file.  
14875
14876         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14877         processing.
14878
14879         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14880
14881         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14882         rule.
14883
14884         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14885
14886         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14887
14888         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14889
14890 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14891
14892         * scm/framework-svg.scm (dump-page): Implement landscape.
14893
14894 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14895
14896         * lily/main.cc (setup_paths): Add svg to search path.
14897
14898         * scm/output-svg.scm:
14899         * scm/framework-svg.scm: Add pageSet.  Update.
14900         (dump-fonts): New function.
14901         (output-framework): Use it.
14902
14903         * mf/GNUmakefile: 
14904         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14905
14906 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14907
14908         * tex/lilyponddefs.tex: comment out new ifpdf code.
14909
14910 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14911
14912         * GNUmakefile.in: 
14913         * SConstruct (symlink): Replace afm by otf.
14914
14915         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14916         ly:pango-add-afm-decoder.
14917
14918         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14919
14920 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14921
14922         * scm/output-ps.scm (new-text): don't access t glyph for getting
14923         space dimension.
14924
14925         * ly/init.ly: warn about \version
14926
14927         * lily/lexer.ll: set version-seen?
14928
14929 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14930
14931         * scm/output-svg.scm (string->entities): Update.
14932
14933 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14934
14935         * lily/main.cc (setup_paths): replace afm by otf for path. 
14936
14937         * lily/pangofc-afm-decoder.cc: remove.
14938
14939         * lily/include/pangofc-afm-decoder.hh: remove.
14940
14941         * scm/framework-scm.scm (output-framework): new file.
14942
14943         * mf/GNUmakefile: remove SAUTER_FONTS.
14944         remove SVG/sodipodi hacks.
14945
14946         * scm/lily-library.scm (stderr): move stderr.
14947
14948         * mf/GNUmakefile: remove AFM support.
14949
14950         * buildscripts/mf-to-table.py (base): remove AFM support.
14951
14952         * lily/open-type-font.cc (design_size): use design_size
14953
14954 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14955
14956         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14957
14958 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14959
14960         * mf/GNUmakefile: Generate combined aybabtu info.
14961         * mf/aybabtu.pe.in (i): Load it.
14962
14963         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14964         are not symbols.
14965
14966         * lily/include/open-type-font.hh (count): New method.
14967
14968         * mf/aybabtu.pe.in: Typo.
14969
14970         * Documentation/user/out/lilypond-internals.nexi (Scheme
14971         functions): Typo.
14972
14973         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14974
14975 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14976
14977         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14978         subfonts.
14979
14980         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14981
14982         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14983         (tex-font-command-raw): new function.
14984
14985         * lily/include/virtual-font-metric.hh (Module): remove file
14986
14987         * lily/virtual-font-metric.cc (Module): remove file.
14988         
14989
14990         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14991         (get_indexed_char): read bbox from lily table if present.
14992
14993 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14994
14995         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14996         aybabtu.subfonts
14997
14998         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14999         global glyphname. Enables more than 64 glyphs in the OTF.
15000
15001 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15002
15003         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15004         braces.
15005
15006         * lily/open-type-font.cc (design_size): Use 12 as default for
15007         design size.
15008
15009         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15010
15011         * mf/GNUmakefile: Generate aybabtu.
15012
15013         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15014
15015 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15016
15017         * scm/lily-library.scm (char->unicode-index): Remove.
15018
15019         * scm/output-gnome.scm (text): Bugfix for plain string input.
15020         Updates.
15021
15022         * scm/output-svg.scm (svg-font): Add weight to font selection.
15023
15024 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15025
15026         * Documentation/topdocs/INSTALL.texi (Top): Point to
15027         buildscripts/out/clean-fonts instead of
15028         buildscripts/clean-fonts.sh. 
15029
15030 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15031
15032         * input/regression/figured-bass.ly: attempt to clarify text.
15033
15034         * Documentation/user/notation.tely: add cindex for tag, attempt to
15035         add figured bass example.
15036
15037         * Documentation/user/changing-defaults: basic editing.
15038
15039 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15040
15041         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15042
15043         * lily/open-type-font.cc (LY_DEFINE): new function
15044         ly:font-sub-fonts
15045
15046         * lily/include/font-metric.hh (struct Font_metric): new method
15047         sub_fonts()
15048
15049         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15050         . with - in add.stem.
15051         
15052 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15053
15054         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15055         and fetaDynamic.
15056
15057         * lily/rest.cc (glyph_name): Change - to . .
15058
15059         * scm/output-gnome.scm (text): Hello world, again.
15060
15061         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15062
15063         * lily/modified-font-metric.cc (index_to_charcode): New method.
15064
15065         * lily/include/font-metric.hh (index_to_charcode): New function.
15066
15067         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15068         new function.
15069         (ly:font-glyph-to-index): Remove.
15070
15071 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15072
15073         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15074
15075         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15076
15077         * lily/open-type-font.cc (load_scheme_table): new function
15078
15079         * lily/dots.cc (print): replace - 
15080
15081         * lily/open-type-font.cc (attachment_point): new function.
15082         (load_table): read LILC table
15083
15084         * buildscripts/gen-bigcheese-scripts.py (Module): new
15085         file. Generate FF scripts.
15086
15087         * mf/feta-din10.mf: idem.
15088
15089         * mf/feta-nummer10.mf: remove mf files.
15090
15091         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15092
15093 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15094
15095         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15096
15097         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15098         compatibility.
15099
15100 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15101
15102         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15103         design-size and units_per_EM.
15104
15105         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15106
15107 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15108
15109         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15110         does not crash fontforge.
15111
15112         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15113         PUA.
15114
15115 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15116
15117         * scm/framework-ps.scm (ps-embed-cff): new function.
15118
15119         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15120
15121 2004-12-12  Werner Lemberg  <wl@gnu.org>
15122
15123         * mf/bigcheese.pe.in: Add PUA mapping.
15124         Don't create Type 42 but bare CFF font.
15125
15126 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15127
15128         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15129         within canvas boundaries.
15130
15131         * mf/merge.pe.in: Set font names, version, license GPL.
15132
15133         * make/substitute.make: Add FONTFORGE.
15134
15135         * config.make.in (FONTFORGE): Add.
15136
15137         * configure.in (gui_b): Use PATH_PROG for fontforge.
15138
15139 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15140
15141         * scm/define-markup-commands.scm: add baseline-skip to info
15142         about \column.
15143
15144 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15145
15146         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15147
15148         * scm/output-gnome.scm (named-glyph): Use it.
15149
15150         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15151
15152         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15153         (upper_string, lower_string, reverse_string): Remove.
15154
15155         * configure.in (fontforge): Reinstate version check.
15156
15157         * ly/engraver-init.ly: Fix clef glyph names.
15158
15159         * lily/time-signature.cc (special_time_signature): Fix fraction
15160         glyph names.
15161
15162 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15163
15164         * mf/merge.pe: new file.
15165
15166         * lily/freetype.cc: new file.
15167
15168         * lily/include/open-type-font.hh (class Open_type_font): new file.
15169
15170         * lily/include/freetype.hh: new file.
15171
15172         * lily/open-type-font.cc: new file.
15173
15174         * lily/all-font-metrics.cc (find_otf): new function.
15175
15176 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15177
15178         * lily/time-signature.cc (special_time_signature): Fix.
15179
15180         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15181         GTK2 before checking for pango.  Fixes -fgnome.
15182
15183         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15184         Scheme name.
15185
15186         * scm/define-markup-commands.scm:
15187         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15188
15189         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15190
15191         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15192         date versions.  Fixes configure.
15193         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15194         argument.
15195
15196 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15197
15198         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15199         names in .enc
15200
15201         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15202
15203 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15204
15205         * Documentation/user/changing-defaults.itely: add info about
15206         make-dynamic-script
15207
15208         * Documentation/user/notation.itely: add link in dynamics to
15209         section about make-dynamic-script.
15210
15211 2004-12-09  Christian hitz  <chhitz@gmx.net>
15212
15213         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15214
15215 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15216
15217         * buildscripts/mf-to-table.py (parse_logfile): use . for
15218         concatting name and group.
15219         (parse_logfile): use M for Minus (negative.)
15220
15221         * lily/include/type-swallow-translator.hh
15222         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15223
15224         * lily/*.cc: cosmetics around = sign.
15225
15226         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15227         lyric spacing on the penultimate column.
15228
15229 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15230
15231         * configure.in:
15232         * lily/accidental-placement.cc:
15233         * lily/bar-line.cc:
15234         * lily/beam-concave.cc:
15235         * lily/beam-quanting.cc:
15236         * lily/beam.cc:
15237         * lily/bezier-bow.cc:
15238         * lily/bezier.cc:
15239         * lily/break-align-interface.cc:
15240         * lily/custos.cc:
15241         * lily/dimension-cache.cc:
15242         * lily/dot-column.cc:
15243         * lily/font-metric.cc:
15244         * lily/font-select.cc:
15245         * lily/gourlay-breaking.cc:
15246         * lily/grob-property.cc:
15247         * lily/grob.cc:
15248         * lily/lily-guile.cc:
15249         * lily/line-spanner.cc:
15250         * lily/lookup.cc:
15251         * lily/lyric-extender.cc:
15252         * lily/lyric-hyphen.cc:
15253         * lily/mensural-ligature.cc:
15254         * lily/midi-def.cc:
15255         * lily/misc.cc:
15256         * lily/note-collision.cc:
15257         * lily/note-column.cc:
15258         * lily/note-head.cc:
15259         * lily/paper-outputter.cc:
15260         * lily/percent-repeat-item.cc:
15261         * lily/rest-collision.cc:
15262         * lily/side-position-interface.cc:
15263         * lily/simple-spacer.cc:
15264         * lily/slur-configuration.cc:
15265         * lily/slur-scoring.cc:
15266         * lily/slur.cc:
15267         * lily/spaceable-grob.cc:
15268         * lily/spacing-spanner.cc:
15269         * lily/spanner.cc:
15270         * lily/staff-symbol-referencer.cc:
15271         * lily/stem.cc:
15272         * lily/stencil.cc:
15273         * lily/system-start-delimiter.cc:
15274         * lily/system.cc:
15275         * lily/text-item.cc:
15276         * lily/tie.cc:
15277         * lily/tuplet-bracket.cc:
15278         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15279         <cmath> beacause isinf/isnan is undefined in <cmath>
15280
15281 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15282
15283         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15284
15285 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15286
15287         * VERSION: release 2.5.3
15288         
15289 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15290
15291         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15292
15293 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15294
15295         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15296
15297         * lily/note-head.cc (internal_print): always try the "s" head if
15298         u/d not found.
15299
15300         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15301
15302 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15303
15304         * mf/parmesan-heads.mf (overdone_heads): typos.
15305
15306 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15307
15308         * lily/parser.yy (markup): in markups, { .. } without command
15309         before are also flattened, ie \line must be explicitely used.
15310
15311         * Documentation/user/changing-defaults.itely:
15312         * Documentation/user/notation.itely: 
15313         * input/wilhelmus.ly: 
15314         * input/regression/instrument-name-markup.ly: 
15315         * input/regression/markup-score.ly: 
15316         * input/regression/new-markup-scheme.ly: 
15317         * input/regression/new-markup-syntax.ly: 
15318         * input/test/coriolan-margin.ly: use \line in markups where
15319         appropriate
15320         
15321 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15322
15323         * scm/new-markup.scm (map-markup-command-list): helper function
15324         used in parser.yy to map markup commands on a markup list.
15325
15326         * lily/parser.yy: get rid off < > in markups by treating { } as
15327         real lists.
15328
15329         * lily/lexer.ll: remove < > from markup lexer mode.
15330
15331         * scripts/convert-ly.py (conv): add rule for converting 
15332         \markup < > to \markup { }
15333
15334         * ly/titling-init.ly: 
15335         * input/test/coriolan-margin.ly: 
15336         * input/regression/new-markup-syntax.ly: 
15337         * input/regression/new-markup-scheme.ly: 
15338         * input/regression/multi-measure-rest-text.ly: 
15339         * input/regression/markup-stack.ly: 
15340         * input/regression/markup-score.ly: 
15341         * input/regression/instrument-name-markup.ly: 
15342         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15343         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15344         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15345         * input/wilhelmus.ly: 
15346         * Documentation/user/notation.itely: 
15347         * Documentation/user/music-glossary.tely: 
15348         * Documentation/user/changing-defaults.itely: change < > to { } in
15349         markups
15350
15351 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15352
15353         * lily/accidental-placement.cc (position_accidentals): shortcut if
15354         no accidentals to place.
15355
15356 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15357
15358         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15359         typo s/ly:dimension ?/ly:dimension?/
15360
15361         * input/regression/lily-in-scheme.ly: 
15362         * input/regression/music-function.ly: 
15363         * ly/spanners-init.ly (assertBeamSlope): 
15364         * scm/music-functions.scm (def-grace-function): add the paper
15365         argument to music function definitions.
15366
15367 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15368
15369         * lily/moment.cc (LY_DEFINE):
15370         ly:moment-main-{denominator,numberator}, new function.
15371
15372         * lily/score-engraver.cc (typeset_all): assign to column on basis
15373         of axis-group-parent-X setting.
15374
15375         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15376         add_element() on basis of axis-group-parent-Y setting.
15377
15378         * lily/grob.cc: add axis-group-parent-{XY} properties.
15379
15380         * input/regression/spacing-stick-out.ly: new file.
15381
15382         * lily/simple-spacer.cc (add_columns): use binary search for
15383         setting column rods. Changes O(n^2) to O(n log(n)) for
15384         constructing spacing problem from columns.
15385         (add_columns): read allow-outside-line to make sure no texts stick
15386         out.
15387         (solve): Simple_spacer::is_active() only determines
15388         satisfies_constraints_ for non-ragged typesetting.
15389
15390         * lily/simultaneous-music.cc (to_relative_octave): only set
15391         old_relative_used if return pitch actually changed.
15392
15393         * scm/define-context-properties.scm
15394         (all-user-translation-properties): change to match implementation.
15395
15396         * python/lilylib.py: Replace re.match by re.search and adds "-c
15397         showpage" to the gs command line (Johannes Schindelin)
15398
15399         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15400         before processing. Prevents crash when inf is in the extent.
15401
15402         * scm/define-markup-commands.scm (note-by-number): add "s" to
15403         "noteheads-" glyphname.
15404  
15405         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15406         music function as well.
15407         
15408 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15409
15410         * VERSION: release 2.5.2
15411
15412         * Documentation/user/changing-defaults.itely (Creating titles):
15413         add breakbefore variable.
15414
15415         * lily/paper-book.cc (set_system_penalty): new function. Set
15416         penalty_ based on breakBefore setting
15417
15418         * lily/context-specced-music-iterator.cc (construct_children):
15419         interpret special context id $uniqueContextId 
15420
15421         * lily/context.cc (create_unique_context): new method. Move
15422         creation of unique (\new) contexts into interpreting phase. This
15423         makes
15424
15425           foo= \new Staff ..
15426           << \foo \foo >>
15427
15428         produce 2 staves.
15429         
15430
15431         * scm/define-music-properties.scm (all-music-properties): add
15432         quoted-voice-direction
15433
15434         * ly/music-functions-init.ly: killCues function.
15435
15436         * scm/music-functions.scm (cue-substitute): move creation of voice
15437         contexts further to the back. 
15438
15439 2004-11-25  Werner Lemberg  <wl@gnu.org>
15440
15441         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15442         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15443
15444 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15445
15446         * buildscripts/guile-gnome.sh: Fixed typo.
15447
15448 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15449
15450         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15451
15452         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15453
15454         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15455         to regular engraver. 
15456
15457 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15458
15459         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15460
15461 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15462
15463         * scm/define-markup-commands.scm (fill-line): Typo.
15464
15465         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15466         and newer.
15467
15468 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15469
15470         * ly/dynamic-scripts-init.ly: Fixed typo.
15471
15472 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15473
15474         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15475         note-head, to have different attachment points for up and down.
15476
15477         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15478
15479         * mf/feta-generic.mf (else): remove solfa.
15480
15481         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15482
15483         * scm/define-context-properties.scm
15484         (all-user-translation-properties): add shapeNoteStyles property.
15485
15486         * lily/shape-note-heads-engraver.cc (process_music): new file.
15487
15488         * lily/event.cc (transpose): call Event::transpose() for
15489         transposing the tonic.
15490
15491 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15492
15493         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15494         Unicode/OpenType and AFM.
15495
15496         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15497
15498 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15499
15500         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15501
15502         * lily/context.cc (Context): unprotect key from ctor.
15503
15504         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15505         is '()
15506         (stack-stencils): idem.
15507
15508         * Documentation/user/changing-defaults.itely (Creating titles):
15509         document new title layout options.
15510
15511         * lily/parser.yy (lilypond_header_body): copy previous
15512         $globalheader if present.
15513
15514         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15515         ly:module-copy
15516         
15517         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15518
15519         * scm/titling.scm: remove old titling functions
15520
15521         * lily/stencil.cc (translate): remove absolute dimension.
15522
15523         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15524         via markup.
15525
15526         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15527         field from user-supplied markup
15528
15529         * scm/define-markup-commands.scm (on-the-fly): new markup
15530         command. Enter SCM markup procedure directly in Scheme.
15531         (fromproperty): new markup command. Read markup from props argument.
15532
15533         * scm/titling.scm (marked-up-title): create title via
15534         user-specified markup. 
15535
15536         * scm/define-markup-commands.scm (column): remove empty stencils
15537         from column.
15538
15539         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15540         not have side-effect of creating variable stub.
15541
15542         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15543
15544 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15545
15546         * scm/encoding.scm (coding-alist): 
15547         * scm/font.scm (add-ec-fonts):
15548         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15549         Extended-TeX-Font-Encoding---Latin.
15550
15551         * lily/side-position-interface.cc (general_side_position): Add
15552         actual offset to error message (avoid constant error messages).
15553
15554         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15555         block.
15556
15557         * lily/font-select.cc (select_encoded_font)
15558         (get_font_by_mag_step, get_font_by_design_size): 
15559         * lily/modified-font-metric.cc (Modified_font_metric): 
15560         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15561
15562         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15563         (read-encoding-file): Bugfix: do not require space after bracket.
15564
15565         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15566         these do not exist.
15567
15568 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15569
15570         * Documentation/user/notation.itely: added info about typesetting
15571         boxed bar numbers.
15572
15573 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15574
15575         * flower/interval.cc (T_to_string): gcc4 fixes.
15576
15577         * scm/define-markup-commands.scm (fill-line): use
15578         stack-stencils. This fixes problems with putting already centered
15579         stencils in a line.
15580
15581         * VERSION: release 2.5.1
15582
15583         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15584
15585 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15586
15587         * input/example-[1-3].ly: simplify.
15588
15589         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15590
15591         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15592         show glyphs.
15593
15594         * scm/encoding.scm (decode-byte-string): new function.
15595
15596         * scripts/convert-ly.py (conv): add warning about
15597         set-global-staff-size.
15598
15599         * Doxyfile: add. 
15600
15601         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15602         (conv): warn for TextSpanner split.
15603         (conv): warn for textheight.
15604
15605 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15606
15607         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15608         building the documentation, info with images are installed.
15609         (final-install): Fix description.  Mention sourcing of login
15610         scripts (instead of running).
15611
15612 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15613
15614         * Debian lmodern support.  Note that LilyPond will issue warnings
15615         
15616             no such encoding: "FontSpecific"
15617
15618           The font selection mechanism wants to get the encoding from the
15619           font itself, but the idea of lmodern is that it is usable with
15620           different encodings, ie, Lily should get the encoding from the
15621           font tree, rather than the font itself.  This would require some
15622           more work.
15623         
15624         * configure.in: Test for and accept lmodern if EC fonts not found.
15625
15626         * scm/framework-tex.scm (font-load-command): TeX font name
15627         mangling for latin1 encoded cork-lm fonts.
15628         (convert-to-ps): Load lm.map if available.
15629
15630         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15631         available.
15632
15633         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15634
15635         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15636         available.
15637
15638         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15639         path for absolute file name, that is silly.
15640
15641         * lily/score-engraver.cc (initialize): 
15642
15643         * Documentation/user/GNUmakefile (local-install-info): Invoke
15644         install-info --remove first.
15645
15646         * #include cleanup (Andreas Scherer).
15647
15648 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15649
15650         * input/test/script-abbreviations.ly: fix typos.
15651
15652 2004-11-17  Werner Lemberg  <wl@gnu.org>
15653
15654         * python/lilylib.py (options_help_str): Support pretty-printing of
15655         newlines in fourth element of option description.
15656
15657         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15658         feature.
15659         Sort options.
15660
15661         * Documentation/user/lilypond-book.itely: Finish update.
15662
15663 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15664
15665         * Documentation/user/macros.itexi: Add comment about \command.
15666
15667         * Documentation/user/lilypond.tely:
15668         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15669         and lilypond-book nodes, so that `info lilypond' visits the manual
15670         at top level, and `info lilypond-book' visits the lilypond-book
15671         section.
15672
15673         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15674         and packager messages.
15675
15676         * lily/pangofc-afm-decoder.cc: Update test.
15677
15678 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15679
15680         * scm/lily-library.scm (char->unicode-index): New function.
15681
15682         * scm/output-gnome.scm: 
15683         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15684
15685         * Proper naming of file name throughout; s/filename/file[-_]name/.
15686
15687         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15688
15689         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15690
15691 2004-11-16  Werner Lemberg  <wl@gnu.org>
15692
15693         * scripts/lilypond-book.py: The Lord has commanded me to use only
15694         tabs for indentation.  Your humble servant obeys.
15695
15696 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15697
15698         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15699         including font, if LilyPond-feta font is only feta font in path.
15700
15701         * scm/output-gnome.scm (text): Revert to file name of font if font
15702         has no name.  Fixes ec font selection.
15703         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15704
15705         * scm/framework-svg.scm:
15706         * scm/output-svg.scm: New file.  TODO: figure out how to
15707         do character by index in font.
15708
15709         * scm/output-sodipodi.scm: Remove.
15710
15711         * scm/output-ps.scm (stem): Remove.
15712
15713 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15714
15715         * scm/output-gnome.scm (beam): New function.
15716         (slur): Round corners.
15717         (round-filled-box): Round corners.
15718
15719 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15720
15721         * scm/output-gnome.scm (beam): add function.
15722         (draw-line): new routine.
15723         (dashed-line): stub; call draw-line
15724         (polygon): new routine.
15725
15726 2004-11-15  Werner Lemberg  <wl@gnu.org>
15727
15728         * Documentation/user/lilypond-book.itely: Revise section on
15729         lilypond-book options.
15730         Other minor fixes.
15731
15732         * scripts/lilypond-book.py: Change indentation to 4.
15733         Minor formatting.
15734
15735 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15736
15737         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15738         grobs that have tweaks specced.
15739         
15740 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15741
15742         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15743
15744 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15745
15746         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15747         actual char #, not 0 based index.
15748
15749         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15750
15751         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15752         Warning: do make -C mf clean.
15753
15754         * lily/context-property.cc: Compile fix.
15755
15756         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15757         Grok ec-fonts, braces and dynamics.
15758
15759         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15760
15761 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15762
15763         * lily/include/tweak-registration.hh: new file.
15764
15765         * lily/tweak-registration.cc: new file.
15766
15767         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15768         saving tweaks.
15769
15770         * scm/output-gnome.scm (text): comment dribble.
15771
15772 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15773
15774         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15775
15776         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15777         path-def before using.  Fixes muchtomany slurs in wrong places
15778         bug.
15779
15780 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15781
15782         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15783
15784         * lily/include/object-key-undumper.hh (Module): new file.
15785
15786         * lily/object-key-undumper.cc (Module): New file. Deserialize
15787         keys. SCM bindings
15788
15789         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15790         Provide SCM bindings.
15791
15792         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15793         new file. Serialize object keys.
15794         
15795         * lily/object-key.cc (dump): new function.
15796         (as_scheme): new virtual function
15797         (undump): new function
15798         (undumpers): new table.
15799
15800         * lily/include/global-context.hh (Context): take \score key upon init.
15801
15802         * lily/object-key-dumper.cc (serialize_key): new file.
15803
15804         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15805
15806         * lily/lily-lexer.cc: remove \quote.
15807
15808         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15809
15810         * lily/context.cc (Context): take key argument in ctor.
15811         (create_context): new function
15812
15813         * lily/grob.cc (Grob): take key argument in ctor.  
15814
15815         * lily/lilypond-key.cc (do_compare): new file.
15816
15817         * lily/object-key.cc (Object_key): new file.
15818
15819         * lily/include/object-key.hh (class Object_key): new file.
15820
15821         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15822
15823 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15824
15825         * Documentation/user/lilypond-book.itely: add small warning about
15826         noindent default in lilypond-book.
15827
15828         * Documentation/user/converters.itely: add examples for convert-ly.
15829
15830         * Documentation/user/examples.itely: change version string in templates
15831         to 2.4.0.
15832
15833 2004-11-12  Karl Hammar  <karl@aspodata.se>
15834
15835         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15836         cmdline, use xargs instead (backportme)
15837
15838 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15839         
15840         * Documentation/user/: Numerous fixes in the user manual.
15841
15842 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15843
15844         * lily/parser.yy (re_rhythmed_music): search music expression for
15845         context-id, surround by \new Voice if not found. Fixes:
15846         addlyrics-second-staff.ly
15847
15848         * VERSION: 2.5.0 released.
15849         
15850 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15851
15852         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15853
15854         * Documentation/user/GNUmakefile: Separate rules for split and
15855         unsplit html documents.  Remove perl massaging.  (backportme)
15856
15857 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15858
15859         * Documentation/user/lilypond-book.itely: add short warning about
15860         \lilypond{} in LaTeX docs.
15861
15862 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15863
15864         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15865         found.  (backportme)
15866
15867         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15868         version requirement.  (backportme)
15869
15870         * configure.in: Be explicit about old versions of
15871         ec-fonts-mtraced.  (backportme)
15872
15873         * lily/context-selector.cc (set_tweaks): New function.
15874         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15875         web with -DTWEAK.
15876
15877         * Documentation/user/introduction.itely (Automated engraving):
15878         Remove fragment option.  Fixes web.
15879
15880         * lily/context-property.cc (make_item_from_properties):
15881         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15882         #ifdef.
15883
15884         * scm/define-context-properties.scm
15885         (all-internal-translation-properties): Add tweakRank and tweakCount.
15886
15887         * lily/grob.cc: 
15888         * scm/define-grob-properties.scm (all-internal-grob-properties):
15889         Add tweak-rank and tweak-count.
15890
15891 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15892
15893         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15894         New function.
15895         (text): Use them.
15896
15897         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15898         animated/opaque grob dragging tweaks.
15899
15900         * buildscripts/guile-gnome.sh: Update.
15901
15902 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15903
15904         * scm/define-grobs.scm (all-grob-descriptions): Added
15905         line-interface to the LigatureBracket object.
15906
15907 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15908
15909         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15910         dragging tweaks.
15911
15912         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15913
15914         * lily/context-selector.cc (store_context): New function.
15915
15916         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15917         (store_grob): New function.
15918         (identify_grob): Add Moment parameter.
15919
15920         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15921         exists.
15922
15923         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15924
15925 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15926
15927         * scm/framework-gnome.scm (item-event): Print grob id.
15928         (save-tweaks): New function.
15929         (tweak): New funtion.
15930         (item-event): Use it, bound to arrow keys.
15931
15932         * lily/context-property.cc (make_item_from_properties): Register grob.
15933         * lily/context.cc (add_context): Register context.
15934
15935         * lily/include/context-selector.hh:
15936         * lily/include/grob-selector.hh:
15937         * lily/context-selector.cc:
15938         * lily/grob-selector.cc: New file.
15939
15940 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15941
15942         * lily/slur.cc: add 'positions to interface
15943
15944         * lily/main.cc: reinstate PS as standard output format. 
15945
15946         * scm/framework-tex.scm (output-preview-framework): print systems
15947         up to first non title system.
15948
15949         * lily/grace-engraver.cc (start_translation_timestep): split
15950         scm_cadddr
15951         
15952 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15953
15954         * lily/quote-iterator.cc (Module): remove old quote-iterator
15955
15956         * scm/define-music-types.scm (music-descriptions): move
15957         NewQuoteMusic over QuoteMusic
15958
15959         * Documentation/user/notation.itely (Formatting cue notes): use
15960         \cueDuring.
15961
15962         * lily/new-quote-iterator.cc (quote_ok): new function.
15963
15964         * input/regression/quote-cue-during.ly: new file.
15965
15966         * input/regression/quote-grace.ly: new file.
15967
15968         * scm/define-context-properties.scm (Module): change definition of
15969         graceSettings
15970
15971         * lily/context-property.cc (Module): rename from
15972         translator-property.cc
15973
15974         * lily/context.cc (context_name_symbol): new function
15975
15976         * lily/grace-engraver.cc: new file. Set properties for grobs based
15977         on the grace-ness of now_moment().
15978
15979         * scm/music-functions.scm (add-grace-property): use list
15980         iso. vector for graceSettings
15981         remove set-{start,stop}-grace-properties. 
15982
15983         * lily/new-quote-iterator.cc (construct_children): set
15984         quote_outlet_ if no quoted-context-{id,type} specified.
15985
15986         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15987
15988         * lily/parser.yy (command_element): remove \quote.
15989
15990         * ly/music-functions-init.ly (location): add quoteDuring music
15991         function. 
15992
15993         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15994         optional semicolon. (backportme)
15995
15996 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15997
15998         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15999         need to link to GUILE et al.
16000
16001 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16002
16003         * scm/define-music-properties.scm (all-music-properties): add
16004         quoted-context-type, quoted-context-id.
16005
16006         * scm/lily.scm (type-check-list): new function.
16007         
16008         * scm/lily-library.scm: new file. Generic library routines.
16009
16010         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16011         parser.
16012
16013         * ly/music-functions-init.ly: add quoteDuring function.
16014
16015         * lily/include/music-iterator.hh (class Music_iterator): rename
16016         set_translator -> set_context
16017
16018         * lily/parser.yy (Generic_prefix_music_scm): add
16019         MUSIC_FUNCTION_SCM_SCM_MUSIC
16020
16021         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16022
16023         * scm/framework-tex.scm (header): sanitize TeX paper size.
16024         (backportme)
16025
16026 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16027
16028         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16029
16030         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16031
16032         * scm/framework-tex.scm (font-load-command): Use T1 if no
16033         font-encoding set.  (backportme)
16034
16035         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16036         exists before converting.  (backportme)
16037
16038         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16039         exists before converting.  (backportme)
16040         (convert-to-ps): Remove .ps file if it exists before
16041         converting.  (backportme)
16042
16043         * lily/lexer.ll: Remove extra progress newline, use present tense.
16044
16045         * scm/paper.scm (paper-alist): public.
16046         * scm/framework-tex.scm (convert-to-ps):
16047         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16048         command line.
16049
16050 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16051
16052         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16053
16054         * lily/recording-group-engraver.cc (derived_mark): mark
16055         now_events_. (backportme)
16056
16057 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16058
16059         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16060
16061         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16062         invoking latex. (backportme.)
16063
16064         * lily/stem.cc (off_callback): center stems for all rest stems.
16065
16066 2004-11-05  Werner Lemberg  <wl@gnu.org>
16067
16068         * Documentation/user/lilypond.tely: Add more guidelines for writing
16069         lilypond texinfo documents.
16070
16071 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16072
16073         * Documentation/index.html.in: remove <hr>.
16074
16075         * THANKS: change 2.3 to 2.4.
16076
16077 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16078
16079         * scm/output-gnome.scm: More fontconfig comment.
16080
16081 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16082
16083         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16084         <package> directory in $(builddir)/share according with
16085         PACKAGE_NAME defined in the VERSION file.
16086
16087 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16088
16089         * lily/beam.cc (rest_collision_callback): use local beam
16090         multiplicity.
16091
16092         * input/regression/stem-stemlet.ly: new file.
16093
16094         * lily/stem.cc (add_head): store rests as well.
16095
16096         * scm/define-grob-properties.scm (all-user-grob-properties): add
16097         stemlet-length
16098
16099         * lily/stem.cc: store rests as well.
16100         
16101         * input/regression/new-slur.ly: mention forcing.
16102
16103 2004-11-04  Werner Lemberg  <wl@gnu.org>
16104
16105         * Documentation/user/*: A new round of layout fixes and document
16106         structure cleanup.
16107
16108 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16109
16110         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16111
16112 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16113
16114         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16115
16116 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16117
16118         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16119
16120         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16121
16122         * lily/main.cc (main): Invoke identify.
16123
16124         * scm/lily.scm (postscript->pdf): Remove progress newline.
16125         Write progress to stderr.
16126
16127         * lily/paper-book.cc (output): Remove progress newline.
16128
16129         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16130         gettext on user messages, and remove whitespace.
16131
16132         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16133
16134         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16135         argv[0] (Thomas Scharkowski).
16136
16137         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16138         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16139         for ec-fonts-mtraced.
16140
16141         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16142         --srcdir build (Bertalan).
16143
16144         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16145         headers and library too (Laura Conrad).
16146
16147         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16148         package for guile too (Laura Conrad).
16149
16150         * lily/main.cc (usage): Typo.
16151
16152 2004-11-02  Werner Lemberg  <wl@gnu.org>
16153
16154         * Documentation/user/notation.ly: More fixes to improve appearance.
16155
16156         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16157         better output for multicolumn tables.
16158
16159 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16160
16161         * lily/main.cc (dir_info): Fixed typo in the printouts.
16162
16163 2004-11-01  Werner Lemberg  <wl@gnu.org>
16164
16165         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16166         of output.
16167         Set `per_line' to 2; replace hard-coded value with it.
16168
16169         * Documentation/user/*: Many fixes to improve appearance of
16170         printed manual.
16171
16172 2004-11-01  Werner Lemberg  <wl@gnu.org>
16173
16174         * Documentation/user/changing-defaults.itely,
16175         Documentation/user/notation.ly,
16176         Documentation/user/programming-interface.itely: Use @/.
16177         Fix formatting of some lilypond snippets and tables.
16178
16179         * scripts/lilypond-book.py (compose_ly): Provide useful default
16180         for LINEWIDTH in `override'.
16181
16182 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16183
16184         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16185
16186 2004-10-31  Werner Lemberg  <wl@gnu.org>
16187
16188         Resetting @exampleindent to `5' gives ugly results with texinfo's
16189         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16190         (if not quoting) to change @exampleindent only locally.
16191
16192         * scripts/lilypond-book.py (NOQUOTE): New variable.
16193         (output) [LATEX]: Remove AFTER and BEFORE.
16194         [TEXINFO]: Remove AFTER and BEFORE.
16195         Fix QUOTE and VERBATIM pattern.
16196         Add NOQUOTE pattern.
16197         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16198         and BEFORE.
16199         [output_texinfo]: Use NOQUOTE.
16200
16201 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16202
16203         * Documentation/user/changing-defaults.itely: clarify paper
16204         size commands with correct info.
16205
16206         * Documentation/user/lilypond-book.itely: add more docs for
16207         filename extensions.
16208
16209 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16210
16211         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16212         (PATCH_LEVEL): start 2.5.0.
16213
16214 #Local variables:
16215 #coding: utf-8
16216 #End:
16217